From a1fad35f533f5f2718ea810995a8abf25259eaab Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 13:16:24 -0400 Subject: [PATCH 01/14] fix: added api-definitions product --- fern/assets/styles.css | 44 +- fern/docs.yml | 56 +- fern/products/api-def/api-def.yml | 246 ++++++++ fern/products/api-def/asyncapi-pages/auth.mdx | 187 +++++++ .../api-def/asyncapi-pages/automation.mdx | 203 +++++++ .../asyncapi-pages/channels/bindings.mdx | 214 +++++++ .../asyncapi-pages/channels/messages.mdx | 170 ++++++ .../asyncapi-pages/channels/pubsub.mdx | 105 ++++ .../asyncapi-pages/extensions/audiences.mdx | 157 ++++++ .../extensions/method-names.mdx | 94 ++++ .../asyncapi-pages/extensions/others.mdx | 160 ++++++ .../extensions/parameter-names.mdx | 79 +++ .../api-def/asyncapi-pages/overrides.mdx | 168 ++++++ .../api-def/asyncapi-pages/overview.mdx | 130 +++++ .../api-def/asyncapi-pages/servers.mdx | 116 ++++ .../ferndef-pages/api-yml/environments.mdx | 87 +++ .../api-def/ferndef-pages/api-yml/errors.mdx | 54 ++ .../api-yml/global-configuration.mdx | 53 ++ .../ferndef-pages/api-yml/overview.mdx | 57 ++ .../api-def/ferndef-pages/audiences.mdx | 113 ++++ fern/products/api-def/ferndef-pages/auth.mdx | 224 ++++++++ .../api-def/ferndef-pages/availability.mdx | 96 ++++ .../ferndef-pages/depending-on-other-apis.mdx | 67 +++ .../api-def/ferndef-pages/endpoints.mdx | 519 +++++++++++++++++ .../api-def/ferndef-pages/endpoints/bytes.mdx | 60 ++ .../ferndef-pages/endpoints/multipart.mdx | 46 ++ .../api-def/ferndef-pages/endpoints/rest.mdx | 45 ++ .../api-def/ferndef-pages/endpoints/sse.mdx | 101 ++++ .../products/api-def/ferndef-pages/errors.mdx | 25 + .../api-def/ferndef-pages/examples.mdx | 339 +++++++++++ .../api-def/ferndef-pages/export-openapi.mdx | 23 + .../api-def/ferndef-pages/imports.mdx | 22 + .../api-def/ferndef-pages/overview.mdx | 104 ++++ .../api-def/ferndef-pages/packages.mdx | 153 +++++ fern/products/api-def/ferndef-pages/types.mdx | 428 ++++++++++++++ .../api-def/ferndef-pages/webhooks.mdx | 65 +++ .../api-def/ferndef-pages/websocket.png | Bin 0 -> 792611 bytes .../api-def/ferndef-pages/websockets.mdx | 96 ++++ .../api-def/ferndef-pages/wss-reference.png | Bin 0 -> 456280 bytes fern/products/api-def/grpc-pages/auth.mdx | 370 ++++++++++++ .../api-def/grpc-pages/automation.mdx | 472 ++++++++++++++++ .../grpc-pages/extensions/audiences.mdx | 360 ++++++++++++ .../grpc-pages/extensions/method-names.mdx | 330 +++++++++++ .../api-def/grpc-pages/extensions/others.mdx | 403 ++++++++++++++ .../grpc-pages/extensions/parameter-names.mdx | 302 ++++++++++ .../products/api-def/grpc-pages/overrides.mdx | 432 ++++++++++++++ fern/products/api-def/grpc-pages/overview.mdx | 221 ++++++++ fern/products/api-def/grpc-pages/servers.mdx | 427 ++++++++++++++ .../api-def/grpc-pages/services/errors.mdx | 526 ++++++++++++++++++ .../grpc-pages/services/grpc-services.mdx | 419 ++++++++++++++ .../api-def/grpc-pages/services/streaming.mdx | 514 +++++++++++++++++ fern/products/api-def/openapi-pages/auth.mdx | 196 +++++++ .../api-def/openapi-pages/automation.mdx | 54 ++ .../openapi-pages/endpoints/multipart.mdx | 75 +++ .../api-def/openapi-pages/endpoints/rest.mdx | 66 +++ .../api-def/openapi-pages/endpoints/sse.mdx | 109 ++++ .../api-def/openapi-pages/examples.mdx | 93 ++++ .../openapi-pages/extensions/audiences.mdx | 118 ++++ .../openapi-pages/extensions/method-names.mdx | 58 ++ .../openapi-pages/extensions/others.mdx | 416 ++++++++++++++ .../extensions/parameter-names.mdx | 65 +++ .../api-def/openapi-pages/overrides.mdx | 74 +++ .../api-def/openapi-pages/overview.mdx | 128 +++++ .../server-frameworks/fastapi.mdx | 92 +++ .../api-def/openapi-pages/servers.mdx | 84 +++ .../api-def/openapi-pages/webhooks.mdx | 60 ++ fern/products/api-def/openrpc-pages/auth.mdx | 235 ++++++++ .../api-def/openrpc-pages/automation.mdx | 316 +++++++++++ .../openrpc-pages/extensions/audiences.mdx | 295 ++++++++++ .../openrpc-pages/extensions/method-names.mdx | 228 ++++++++ .../openrpc-pages/extensions/others.mdx | 302 ++++++++++ .../extensions/parameter-names.mdx | 280 ++++++++++ .../api-def/openrpc-pages/methods/batch.mdx | 301 ++++++++++ .../openrpc-pages/methods/notifications.mdx | 309 ++++++++++ .../openrpc-pages/methods/rpc-methods.mdx | 277 +++++++++ .../api-def/openrpc-pages/overrides.mdx | 274 +++++++++ .../api-def/openrpc-pages/overview.mdx | 167 ++++++ .../api-def/openrpc-pages/servers.mdx | 194 +++++++ .../api-def/pages/project-structure.mdx | 128 +++++ .../pages/what-is-an-api-definition.mdx | 291 ++++++++++ 80 files changed, 14917 insertions(+), 50 deletions(-) create mode 100644 fern/products/api-def/api-def.yml create mode 100644 fern/products/api-def/asyncapi-pages/auth.mdx create mode 100644 fern/products/api-def/asyncapi-pages/automation.mdx create mode 100644 fern/products/api-def/asyncapi-pages/channels/bindings.mdx create mode 100644 fern/products/api-def/asyncapi-pages/channels/messages.mdx create mode 100644 fern/products/api-def/asyncapi-pages/channels/pubsub.mdx create mode 100644 fern/products/api-def/asyncapi-pages/extensions/audiences.mdx create mode 100644 fern/products/api-def/asyncapi-pages/extensions/method-names.mdx create mode 100644 fern/products/api-def/asyncapi-pages/extensions/others.mdx create mode 100644 fern/products/api-def/asyncapi-pages/extensions/parameter-names.mdx create mode 100644 fern/products/api-def/asyncapi-pages/overrides.mdx create mode 100644 fern/products/api-def/asyncapi-pages/overview.mdx create mode 100644 fern/products/api-def/asyncapi-pages/servers.mdx create mode 100644 fern/products/api-def/ferndef-pages/api-yml/environments.mdx create mode 100644 fern/products/api-def/ferndef-pages/api-yml/errors.mdx create mode 100644 fern/products/api-def/ferndef-pages/api-yml/global-configuration.mdx create mode 100644 fern/products/api-def/ferndef-pages/api-yml/overview.mdx create mode 100644 fern/products/api-def/ferndef-pages/audiences.mdx create mode 100644 fern/products/api-def/ferndef-pages/auth.mdx create mode 100644 fern/products/api-def/ferndef-pages/availability.mdx create mode 100644 fern/products/api-def/ferndef-pages/depending-on-other-apis.mdx create mode 100644 fern/products/api-def/ferndef-pages/endpoints.mdx create mode 100644 fern/products/api-def/ferndef-pages/endpoints/bytes.mdx create mode 100644 fern/products/api-def/ferndef-pages/endpoints/multipart.mdx create mode 100644 fern/products/api-def/ferndef-pages/endpoints/rest.mdx create mode 100644 fern/products/api-def/ferndef-pages/endpoints/sse.mdx create mode 100644 fern/products/api-def/ferndef-pages/errors.mdx create mode 100644 fern/products/api-def/ferndef-pages/examples.mdx create mode 100644 fern/products/api-def/ferndef-pages/export-openapi.mdx create mode 100644 fern/products/api-def/ferndef-pages/imports.mdx create mode 100644 fern/products/api-def/ferndef-pages/overview.mdx create mode 100644 fern/products/api-def/ferndef-pages/packages.mdx create mode 100644 fern/products/api-def/ferndef-pages/types.mdx create mode 100644 fern/products/api-def/ferndef-pages/webhooks.mdx create mode 100644 fern/products/api-def/ferndef-pages/websocket.png create mode 100644 fern/products/api-def/ferndef-pages/websockets.mdx create mode 100644 fern/products/api-def/ferndef-pages/wss-reference.png create mode 100644 fern/products/api-def/grpc-pages/auth.mdx create mode 100644 fern/products/api-def/grpc-pages/automation.mdx create mode 100644 fern/products/api-def/grpc-pages/extensions/audiences.mdx create mode 100644 fern/products/api-def/grpc-pages/extensions/method-names.mdx create mode 100644 fern/products/api-def/grpc-pages/extensions/others.mdx create mode 100644 fern/products/api-def/grpc-pages/extensions/parameter-names.mdx create mode 100644 fern/products/api-def/grpc-pages/overrides.mdx create mode 100644 fern/products/api-def/grpc-pages/overview.mdx create mode 100644 fern/products/api-def/grpc-pages/servers.mdx create mode 100644 fern/products/api-def/grpc-pages/services/errors.mdx create mode 100644 fern/products/api-def/grpc-pages/services/grpc-services.mdx create mode 100644 fern/products/api-def/grpc-pages/services/streaming.mdx create mode 100644 fern/products/api-def/openapi-pages/auth.mdx create mode 100644 fern/products/api-def/openapi-pages/automation.mdx create mode 100644 fern/products/api-def/openapi-pages/endpoints/multipart.mdx create mode 100644 fern/products/api-def/openapi-pages/endpoints/rest.mdx create mode 100644 fern/products/api-def/openapi-pages/endpoints/sse.mdx create mode 100644 fern/products/api-def/openapi-pages/examples.mdx create mode 100644 fern/products/api-def/openapi-pages/extensions/audiences.mdx create mode 100644 fern/products/api-def/openapi-pages/extensions/method-names.mdx create mode 100644 fern/products/api-def/openapi-pages/extensions/others.mdx create mode 100644 fern/products/api-def/openapi-pages/extensions/parameter-names.mdx create mode 100644 fern/products/api-def/openapi-pages/overrides.mdx create mode 100644 fern/products/api-def/openapi-pages/overview.mdx create mode 100644 fern/products/api-def/openapi-pages/server-frameworks/fastapi.mdx create mode 100644 fern/products/api-def/openapi-pages/servers.mdx create mode 100644 fern/products/api-def/openapi-pages/webhooks.mdx create mode 100644 fern/products/api-def/openrpc-pages/auth.mdx create mode 100644 fern/products/api-def/openrpc-pages/automation.mdx create mode 100644 fern/products/api-def/openrpc-pages/extensions/audiences.mdx create mode 100644 fern/products/api-def/openrpc-pages/extensions/method-names.mdx create mode 100644 fern/products/api-def/openrpc-pages/extensions/others.mdx create mode 100644 fern/products/api-def/openrpc-pages/extensions/parameter-names.mdx create mode 100644 fern/products/api-def/openrpc-pages/methods/batch.mdx create mode 100644 fern/products/api-def/openrpc-pages/methods/notifications.mdx create mode 100644 fern/products/api-def/openrpc-pages/methods/rpc-methods.mdx create mode 100644 fern/products/api-def/openrpc-pages/overrides.mdx create mode 100644 fern/products/api-def/openrpc-pages/overview.mdx create mode 100644 fern/products/api-def/openrpc-pages/servers.mdx create mode 100644 fern/products/api-def/pages/project-structure.mdx create mode 100644 fern/products/api-def/pages/what-is-an-api-definition.mdx diff --git a/fern/assets/styles.css b/fern/assets/styles.css index afc6947e..cafa4f31 100644 --- a/fern/assets/styles.css +++ b/fern/assets/styles.css @@ -181,35 +181,21 @@ h1, h2, h3 { } } - > a[href*="fern-def"] { + > a[href*="asyncapi"] { grid-column: 3; grid-row: 2; transform: translateY(-32px); - + .fern-selection-item-icon { width: 1.5rem; height: 1.5rem; } } - /* > a[href*="asyncapi"]:before { - content: "Docs coming soon"; - font-weight: 500; - position: absolute; - top: -1.75rem; - left: 0.5rem; - } */ - - > a[href*="asyncapi"] { + > a[href*="openrpc"] { grid-column: 3; grid-row: 3; transform: translateY(-64px); - pointer-events: none; - cursor: not-allowed; - - /* > div > div > div { - align-items: flex-start; - } */ .fern-selection-item-icon { width: 1.5rem; @@ -217,16 +203,10 @@ h1, h2, h3 { } } - > a[href*="openrpc"] { + > a[href*="grpc"] { grid-column: 3; grid-row: 4; - transform: translateY(-88px); - pointer-events: none; - cursor: not-allowed; - - /* > div > div > div { - align-items: flex-start; - } */ + transform: translateY(-96px); .fern-selection-item-icon { width: 1.5rem; @@ -234,22 +214,20 @@ h1, h2, h3 { } } - > a[href*="grpc"] { + > a[href*="fern-def"] { grid-column: 3; grid-row: 5; - transform: translateY(-88px); - pointer-events: none; - cursor: not-allowed; - - /* > div > div > div { - align-items: flex-start; - } */ + transform: translateY(-96px); .fern-selection-item-icon { width: 1.5rem; height: 1.5rem; } } + + > a[href*="api-definitions"] { + display: none; + } } } diff --git a/fern/docs.yml b/fern/docs.yml index 724f8120..dd2d8817 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -43,46 +43,49 @@ products: slug: ask-fern subtitle: Let users find answers in your documentation instantly - - display-name: OpenAPI - path: ./products/openapi-def/openapi-def.yml - icon: fa-regular fa-book - image: ./images/product-switcher/openapi-definition-light.png - slug: openapi-definition - - - display-name: Fern Definition - path: ./products/fern-def/fern-def.yml - icon: fa-regular fa-seedling - image: ./images/product-switcher/fern-definition-light.png - slug: fern-definition - - display-name: CLI & API Reference - subtitle: Manage and configure your Fern projects via CLI & APIs. + subtitle: Manage and configure your Fern projects path: ./products/cli-api-reference/cli-api-reference.yml icon: fa-regular fa-terminal image: ./images/product-switcher/product-switcher-cliapi-light.png slug: cli-api-reference + - display-name: API Definitions + path: ./products/api-def/api-def.yml + icon: fa-regular fa-book + image: ./images/product-switcher/product-switcher-apireference-light.png + slug: api-definitions + + - display-name: OpenAPI + path: ./products/openapi-def/openapi-def.yml + icon: fa-regular fa-book + image: ./images/product-switcher/openapi-definition-light.png + slug: openapi-definition + - display-name: AsyncAPI - subtitle: Docs coming soon path: ./products/asyncapi-def/asyncapi-def.yml icon: fa-regular fa-bolt image: ./images/product-switcher/asyncapi-light.png slug: asyncapi-definition - + - display-name: OpenRPC - subtitle: Docs coming soon path: ./products/openrpc-def/openrpc-def.yml icon: fa-regular fa-code image: ./images/product-switcher/openrpc-light.png slug: openrpc-definition - display-name: gRPC - subtitle: Docs coming soon path: ./products/grpc-def/grpc-def.yml icon: fa-regular fa-plug image: ./images/product-switcher/grpc-light.png slug: grpc-definition + - display-name: Fern Definition + path: ./products/fern-def/fern-def.yml + icon: fa-regular fa-seedling + image: ./images/product-switcher/fern-definition-light.png + slug: fern-definition + css: ./assets/styles.css @@ -550,3 +553,22 @@ redirects: destination: /learn/cli-api-reference/api-reference/tokens/:slug* permanent: true + # ============================================================================ + # API REFERENCE REDIRECTS + # ============================================================================ + + - source: /learn/openapi-definition/:slug* + destination: /api-definitions/openapi/:slug* + permanent: true + - source: /learn/asyncapi-definition/:slug* + destination: /learn/api-definitions/asyncapi/:slug* + permanent: true + - source: /learn/openrpc-definition/:slug* + destination: /learn/api-definitions/openrpc/:slug* + permanent: true + - source: /learn/grpc-definition/:slug* + destination: /learn/api-definitions/grpc/:slug* + permanent: true + - source: /learn/fern-definition/:slug* + destination: /learn/api-definitions/ferndef/:slug* + permanent: true \ No newline at end of file diff --git a/fern/products/api-def/api-def.yml b/fern/products/api-def/api-def.yml new file mode 100644 index 00000000..ef7a173b --- /dev/null +++ b/fern/products/api-def/api-def.yml @@ -0,0 +1,246 @@ +navigation: + - section: Overview + contents: + - page: What is an API Definition? + path: ./pages/what-is-an-api-definition.mdx + - page: Project Structure + path: ./pages/project-structure.mdx + - section: OpenAPI + slug: openapi + contents: + - page: Overview + path: ./openapi-pages/overview.mdx + - page: Authentication + path: ./openapi-pages/auth.mdx + - page: Servers + path: ./openapi-pages/servers.mdx + - section: Endpoints + slug: endpoints + contents: + - page: HTTP JSON Endpoints + path: ./openapi-pages/endpoints/rest.mdx + slug: http + - page: Webhooks + path: ./openapi-pages/webhooks.mdx + - page: Multipart Form Uploads + path: ./openapi-pages/endpoints/multipart.mdx + slug: multipart + - page: Server-Sent Events + path: ./openapi-pages/endpoints/sse.mdx + slug: sse + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./openapi-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./openapi-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./openapi-pages/extensions/parameter-names.mdx + - page: Other + path: ./openapi-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./openapi-pages/overrides.mdx + - page: Sync your OpenAPI Specification + path: ./openapi-pages/automation.mdx + - section: Integrate your Server Framework + slug: frameworks + contents: + - page: FastAPI + path: ./openapi-pages/server-frameworks/fastapi.mdx + slug: fastapi + - section: AsyncAPI + slug: asyncapi + contents: + - page: Overview + path: ./asyncapi-pages/overview.mdx + - page: Authentication + path: ./asyncapi-pages/auth.mdx + - page: Servers + path: ./asyncapi-pages/servers.mdx + - section: Channels + slug: channels + contents: + - page: Publish/Subscribe Operations + path: ./asyncapi-pages/channels/pubsub.mdx + slug: pubsub + - page: Message Formats + path: ./asyncapi-pages/channels/messages.mdx + slug: messages + - page: Message Bindings + path: ./asyncapi-pages/channels/bindings.mdx + slug: bindings + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./asyncapi-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./asyncapi-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./asyncapi-pages/extensions/parameter-names.mdx + - page: Other + path: ./asyncapi-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./asyncapi-pages/overrides.mdx + - page: Sync your AsyncAPI Specification + path: ./asyncapi-pages/automation.mdx + - section: OpenRPC + collapsed: true + slug: openrpc + contents: + - page: Overview + path: ./openrpc-pages/overview.mdx + - page: Authentication + path: ./openrpc-pages/auth.mdx + - page: Servers + path: ./openrpc-pages/servers.mdx + - section: Methods + slug: methods + contents: + - page: JSON-RPC Methods + path: ./openrpc-pages/methods/rpc-methods.mdx + slug: rpc-methods + - page: Notifications + path: ./openrpc-pages/methods/notifications.mdx + slug: notifications + - page: Batch Requests + path: ./openrpc-pages/methods/batch.mdx + slug: batch + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./openrpc-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./openrpc-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./openrpc-pages/extensions/parameter-names.mdx + - page: Other + path: ./openrpc-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./openrpc-pages/overrides.mdx + - page: Sync your OpenRPC Specification + path: ./openrpc-pages/automation.mdx + - section: gRPC + collapsed: true + slug: grpc + contents: + - page: Overview + path: ./grpc-pages/overview.mdx + - page: Authentication + path: ./grpc-pages/auth.mdx + - page: Servers + path: ./grpc-pages/servers.mdx + - section: Services + slug: services + contents: + - page: gRPC Services + path: ./grpc-pages/services/grpc-services.mdx + slug: grpc-services + - page: Streaming + path: ./grpc-pages/services/streaming.mdx + slug: streaming + - page: Error Handling + path: ./grpc-pages/services/errors.mdx + slug: errors + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./grpc-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./grpc-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./grpc-pages/extensions/parameter-names.mdx + - page: Other + path: ./grpc-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./grpc-pages/overrides.mdx + - page: Sync your gRPC Specification + path: ./grpc-pages/automation.mdx + - section: Fern Definition + collapsed: true + slug: ferndef + contents: + - page: Overview + path: ./ferndef-pages/overview.mdx + - page: Authentication + path: ./ferndef-pages/auth.mdx + - page: Types + path: ./ferndef-pages/types.mdx + - section: Endpoints + contents: + - page: Overview + path: ./ferndef-pages/endpoints.mdx + - page: HTTP JSON Endpoints + path: ./ferndef-pages/endpoints/rest.mdx + slug: http + - page: Multipart Form Uploads + path: ./ferndef-pages/endpoints/multipart.mdx + slug: multipart + - page: Bytes + path: ./ferndef-pages/endpoints/bytes.mdx + slug: bytes + - page: Server-Sent Events + path: ./ferndef-pages/endpoints/sse.mdx + slug: sse + - section: Advanced + skip-slug: true + contents: + - page: Webhooks + path: ./ferndef-pages/webhooks.mdx + - page: WebSockets + path: ./ferndef-pages/websockets.mdx + slug: websockets + - page: Errors + path: ./ferndef-pages/errors.mdx + - page: Imports + path: ./ferndef-pages/imports.mdx + - page: Examples + path: ./ferndef-pages/examples.mdx + - page: Audiences + path: ./ferndef-pages/audiences.mdx + - page: Availability + path: ./ferndef-pages/availability.mdx + - section: api.yml Reference + slug: api-yml + contents: + - page: Overview + path: ./ferndef-pages/api-yml/overview.mdx + - page: Environments + path: ./ferndef-pages/api-yml/environments.mdx + - page: Global Headers + path: ./ferndef-pages/api-yml/global-configuration.mdx + - page: Errors + path: ./ferndef-pages/api-yml/errors.mdx + - section: Integrations + skip-slug: true + contents: + - page: Packages + path: ./ferndef-pages/packages.mdx + - page: Depending on Other APIs + path: ./ferndef-pages/depending-on-other-apis.mdx + - page: Export to OpenAPI + slug: export-openapi + path: ./ferndef-pages/export-openapi.mdx diff --git a/fern/products/api-def/asyncapi-pages/auth.mdx b/fern/products/api-def/asyncapi-pages/auth.mdx new file mode 100644 index 00000000..57f8bde2 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/auth.mdx @@ -0,0 +1,187 @@ +--- +title: Authentication +subtitle: Model auth schemes such as bearer, basic, and api key for your event-driven APIs. +--- + +Configuring authentication schemes happens in the `components.securitySchemes` section of AsyncAPI. + +```yml title="asyncapi.yml" {2-3} +components: + securitySchemes: + ... +``` + + +To apply a security scheme across all operations, reference the `securityScheme` within the `security` section of your AsyncAPI Specification. + +```yml title="asyncapi.yml" {3, 5-6} +components: + securitySchemes: + AuthScheme: + ... +security: + - AuthScheme: [] +``` + + +## Bearer security scheme + +Start by defining a `bearer` security scheme in your `asyncapi.yml`: + +```yml title="asyncapi.yml" {3-5} +components: + securitySchemes: + BearerAuth: + type: http + scheme: bearer +``` + +This will generate an SDK where the user would have to provide +a mandatory argument called `token`. + +```ts index.ts +const client = new Client({ + token: "ey34..." +}) +``` + +If you want to control variable naming and the environment variable to scan, +use the configuration below: + +```yml title="asyncapi.yml" {4-6} +components: + securitySchemes: + BearerAuth: + type: http + scheme: bearer + x-fern-token: + name: authToken + env: AUTH_TOKEN +``` + +## API Key security scheme + +Start by defining an `apiKey` security scheme in your `asyncapi.yml`: + +```yml title="asyncapi.yml" {3-6} +components: + securitySchemes: + ApiKeyAuth: + type: apiKey + in: header + name: X-API-Key +``` + +This will generate an SDK where the user would have to provide +a mandatory argument called `apiKey`. + +```ts index.ts +const client = new Client({ + apiKey: "my-api-key" +}) +``` + +### Custom API Key variable name + +If you want to control variable naming and the environment variable to scan, +use the configuration below: + +```yml title="asyncapi.yml" {5-7} +components: + securitySchemes: + ApiKeyAuth: + type: apiKey + x-fern-api-key: + name: customApiKey + env: CUSTOM_API_KEY + in: header + name: X-API-Key +``` + +## Basic security scheme + +Start by defining a `basic` security scheme in your `asyncapi.yml`: + +```yml title="asyncapi.yml" {3-5} +components: + securitySchemes: + BasicAuth: + type: http + scheme: basic +``` + +This will generate an SDK where the user would have to provide +a `username` and `password`. + +```ts index.ts +const client = new Client({ + username: "john@example.com", + password: "password123" +}) +``` + +### Custom Basic Auth variable names + +If you want to control variable naming and the environment variables to scan, +use the configuration below: + +```yml title="asyncapi.yml" {4-7} +components: + securitySchemes: + BasicAuth: + type: http + scheme: basic + x-fern-username: + name: email + env: EMAIL + x-fern-password: + name: pass + env: PASSWORD +``` + +## OAuth2 security scheme + +OAuth2 authentication is supported for AsyncAPI specifications: + +```yml title="asyncapi.yml" {3-11} +components: + securitySchemes: + OAuth2: + type: oauth2 + flows: + authorizationCode: + authorizationUrl: https://example.com/oauth/authorize + tokenUrl: https://example.com/oauth/token + scopes: + read: Read access to resources + write: Write access to resources +``` + +This will generate an SDK that supports OAuth2 flow for event-driven operations. + +## Multiple security schemes + +You can specify multiple security schemes and apply them to different operations: + +```yml title="asyncapi.yml" {2-12, 16-17} +components: + securitySchemes: + ApiKeyAuth: + type: apiKey + in: header + name: X-API-Key + BearerAuth: + type: http + scheme: bearer + OAuth2: + type: oauth2 + flows: ... + +operations: + sendMessage: + security: + - ApiKeyAuth: [] + - BearerAuth: [] +``` + +This allows different operations to use different authentication methods as needed. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/automation.mdx b/fern/products/api-def/asyncapi-pages/automation.mdx new file mode 100644 index 00000000..ffeb260c --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/automation.mdx @@ -0,0 +1,203 @@ +--- +title: Sync your AsyncAPI Specification +subtitle: Automatically sync your AsyncAPI spec changes to keep SDKs and docs up to date +--- + +Keeping your AsyncAPI specifications in sync with your codebase is crucial for maintaining accurate SDKs and documentation. Fern provides several automation options to streamline this process. + +## GitHub Actions + +Use Fern's GitHub Action to automatically update SDKs and docs when your AsyncAPI spec changes: + +```yaml title=".github/workflows/fern.yml" +name: Fern + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + fern-check: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Check AsyncAPI spec + uses: fern-api/action@v0 + with: + command: check + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} + + fern-generate: + runs-on: ubuntu-latest + if: github.event_name == 'push' && github.ref == 'refs/heads/main' + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Generate SDKs and docs + uses: fern-api/action@v0 + with: + command: generate + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} +``` + +## Webhook integration + +Set up webhooks to trigger SDK generation when your AsyncAPI spec is updated: + +```yaml title="generators.yml" {4-8} +api: + specs: + - spec: asyncapi.yml + github: + repository: your-org/your-repo + webhooks: + - url: https://your-api.com/webhooks/fern + events: [generate] + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: npm + package-name: "@your-org/sdk" +``` + +## Auto-sync from source + +Configure Fern to automatically pull your AsyncAPI specification from various sources: + +### From URL +```yaml title="generators.yml" {3-4} +api: + specs: + - spec: https://api.yourcompany.com/asyncapi.yml + auto-sync: true + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +### From Git repository +```yaml title="generators.yml" {3-7} +api: + specs: + - spec: + git: + repository: https://github.com/your-org/api-specs + path: asyncapi/api.yml + branch: main + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## CI/CD integration + +### CircleCI +```yaml title=".circleci/config.yml" {15-23} +version: 2.1 + +orbs: + fern: fernapi/fern@1.0 + +workflows: + version: 2 + build-and-test: + jobs: + - build + - test: + requires: + - build + - fern/generate: + requires: + - test + filters: + branches: + only: main + context: + - fern-context +``` + +### GitLab CI +```yaml title=".gitlab-ci.yml" {13-20} +stages: + - build + - test + - generate + +variables: + FERN_TOKEN: $FERN_TOKEN + +build: + stage: build + script: + - echo "Building application..." + +generate-sdks: + stage: generate + image: fernapi/fern:latest + script: + - fern generate + only: + - main +``` + +## Scheduled updates + +Set up scheduled updates to ensure your SDKs stay current: + +```yaml title=".github/workflows/scheduled-update.yml" +name: Scheduled AsyncAPI Update + +on: + schedule: + - cron: '0 2 * * 1' # Every Monday at 2 AM UTC + workflow_dispatch: + +jobs: + update-specs: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Update AsyncAPI specs + run: | + curl -o fern/asyncapi/asyncapi.yml https://api.yourcompany.com/asyncapi.yml + + - name: Generate with latest spec + uses: fern-api/action@v0 + with: + command: generate + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} +``` + +## Monitoring changes + +Track changes to your AsyncAPI specification: + +```yaml title="generators.yml" {4-9} +api: + specs: + - spec: asyncapi.yml + change-detection: + enabled: true + breaking-changes: error + notifications: + slack: ${{ secrets.SLACK_WEBHOOK }} + email: team@yourcompany.com + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +This ensures that any breaking changes to your AsyncAPI specification are detected and the appropriate team members are notified before the changes are propagated to your SDKs and documentation. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/channels/bindings.mdx b/fern/products/api-def/asyncapi-pages/channels/bindings.mdx new file mode 100644 index 00000000..aac3ae4e --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/channels/bindings.mdx @@ -0,0 +1,214 @@ +--- +title: Message Bindings +subtitle: Configure protocol-specific settings for WebSocket, MQTT, Kafka, and other protocols +--- + +Bindings in AsyncAPI allow you to specify protocol-specific information for servers, channels, operations, and messages. This enables you to provide detailed configuration for different messaging protocols. + +```yml title="asyncapi.yml" {6-12} +channels: + user/notifications: + address: user/notifications + messages: + UserNotification: + $ref: '#/components/messages/UserNotification' + bindings: + ws: + method: GET + query: + type: object + properties: + token: + type: string + description: Authentication token +``` + +## WebSocket bindings + +Configure WebSocket-specific settings for real-time communication: + +```yml title="asyncapi.yml" {4-10} +channels: + chat/room: + address: chat/room/{roomId} + bindings: + ws: + method: GET + headers: + type: object + properties: + Authorization: + type: string + query: + type: object + properties: + userId: + type: string + roomId: + type: string + +operations: + sendMessage: + action: send + channel: + $ref: '#/channels/chat~1room' + bindings: + ws: + type: request + method: message +``` + +## MQTT bindings + +Configure MQTT-specific settings for IoT and messaging applications: + +```yml title="asyncapi.yml" {4-8} +channels: + device/telemetry: + address: device/{deviceId}/telemetry + bindings: + mqtt: + qos: 1 + retain: true + messageExpiryInterval: 3600 + +servers: + mqtt-broker: + host: mqtt.example.com + protocol: mqtt + bindings: + mqtt: + clientId: device-client + cleanSession: false + keepAlive: 60 + will: + topic: device/status + payload: "offline" + qos: 1 + retain: true +``` + +## Kafka bindings + +Configure Kafka-specific settings for high-throughput event streaming: + +```yml title="asyncapi.yml" {4-12} +channels: + user.events: + address: user.events + bindings: + kafka: + topic: user.events + partitions: 10 + replicas: 3 + topicConfiguration: + cleanup.policy: ["delete"] + retention.ms: 604800000 + segment.ms: 86400000 + +operations: + publishUserEvent: + action: send + channel: + $ref: '#/channels/user.events' + bindings: + kafka: + groupId: user-event-processors + key: + type: string + description: User ID for partitioning +``` + +## Server bindings + +Configure protocol-specific server settings: + +```yml title="asyncapi.yml" {6-16} +servers: + websocket-server: + host: ws.example.com + protocol: wss + description: WebSocket server with SSL + bindings: + ws: + headers: + type: object + properties: + X-API-Version: + type: string + const: "v1" + + kafka-cluster: + host: kafka.example.com:9092 + protocol: kafka + bindings: + kafka: + schemaRegistryUrl: https://schema-registry.example.com + schemaRegistryVendor: confluent +``` + +## Message bindings + +Configure how messages are handled by specific protocols: + +```yml title="asyncapi.yml" {8-15} +components: + messages: + OrderEvent: + name: OrderEvent + contentType: application/json + payload: + $ref: '#/components/schemas/Order' + bindings: + kafka: + key: + type: string + description: Order ID for consistent partitioning + headers: + type: object + properties: + eventType: + type: string + enum: [created, updated, cancelled] + mqtt: + qos: 2 + retain: false +``` + +## HTTP bindings + +For HTTP-based protocols like Server-Sent Events: + +```yml title="asyncapi.yml" {4-8} +channels: + events/stream: + address: /events/stream + bindings: + http: + type: response + method: GET + query: + type: object + properties: + lastEventId: + type: string + description: Last received event ID for resumption + +operations: + streamEvents: + action: send + channel: + $ref: '#/channels/events~1stream' + bindings: + http: + type: response + statusCode: 200 + headers: + type: object + properties: + Content-Type: + type: string + const: text/event-stream +``` + +Bindings provide the flexibility to leverage protocol-specific features while maintaining a unified API specification across different transport mechanisms. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/channels/messages.mdx b/fern/products/api-def/asyncapi-pages/channels/messages.mdx new file mode 100644 index 00000000..d0d182e1 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/channels/messages.mdx @@ -0,0 +1,170 @@ +--- +title: Message Formats +subtitle: Define message schemas, content types, and structure for event-driven communication +--- + +Messages in AsyncAPI are defined in the `components.messages` section and referenced from channels and operations. They define the structure and format of data exchanged through your event-driven API. + +```yml title="asyncapi.yml" {2-12} +components: + messages: + UserEvent: + name: UserEvent + title: User Event Message + summary: Event triggered by user actions + contentType: application/json + payload: + $ref: '#/components/schemas/UserEventPayload' + headers: + $ref: '#/components/schemas/MessageHeaders' +``` + +## Message payload + +The payload defines the structure of the message data: + +```yml title="asyncapi.yml" {4-6} +components: + messages: + OrderCreated: + contentType: application/json + payload: + $ref: '#/components/schemas/Order' + schemas: + Order: + type: object + properties: + id: + type: string + format: uuid + description: Unique order identifier + customerId: + type: string + description: Customer who placed the order + items: + type: array + items: + $ref: '#/components/schemas/OrderItem' + total: + type: number + format: decimal + description: Total order amount + createdAt: + type: string + format: date-time + description: When the order was created + required: + - id + - customerId + - items + - total +``` + +## Message headers + +You can define headers that are sent with your messages: + +```yml title="asyncapi.yml" {6-8} +components: + messages: + NotificationEvent: + contentType: application/json + payload: + $ref: '#/components/schemas/Notification' + headers: + $ref: '#/components/schemas/NotificationHeaders' + schemas: + NotificationHeaders: + type: object + properties: + messageId: + type: string + description: Unique message identifier + timestamp: + type: string + format: date-time + description: Message timestamp + source: + type: string + description: Source service that generated the message + priority: + type: string + enum: [low, medium, high, urgent] + description: Message priority level +``` + +## Content types + +AsyncAPI supports various content types for messages: + +```yml title="asyncapi.yml" {4,10,16} +components: + messages: + JsonMessage: + contentType: application/json + payload: + $ref: '#/components/schemas/JsonPayload' + + BinaryMessage: + contentType: application/octet-stream + payload: + type: string + format: binary + + TextMessage: + contentType: text/plain + payload: + type: string +``` + +## Message examples + +Provide concrete examples to help developers understand your message format: + +```yml title="asyncapi.yml" {8-18} +components: + messages: + UserSignup: + name: UserSignup + title: User Signup Event + contentType: application/json + payload: + $ref: '#/components/schemas/User' + examples: + - name: StandardSignup + summary: Regular user signup + payload: + id: "123e4567-e89b-12d3-a456-426614174000" + email: "john@example.com" + name: "John Doe" + signupSource: "web" + createdAt: "2024-01-15T10:30:00Z" +``` + +## Message traits + +Use traits to share common message properties across multiple messages: + +```yml title="asyncapi.yml" {2-12, 15-19} +components: + messageTraits: + commonHeaders: + headers: + type: object + properties: + messageId: + type: string + timestamp: + type: string + format: date-time + + messages: + UserEvent: + traits: + - $ref: '#/components/messageTraits/commonHeaders' + contentType: application/json + payload: + $ref: '#/components/schemas/UserEventPayload' +``` + +This approach helps maintain consistency across your message definitions while reducing duplication. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/channels/pubsub.mdx b/fern/products/api-def/asyncapi-pages/channels/pubsub.mdx new file mode 100644 index 00000000..cd51ae39 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/channels/pubsub.mdx @@ -0,0 +1,105 @@ +--- +title: Publish/Subscribe Operations +subtitle: Document event-driven APIs with publish and subscribe operations +--- + +Operations in AsyncAPI are defined underneath the `operations` key, with channels defined under the `channels` key. Below is an example of defining publish and subscribe operations: + +```yml title="asyncapi.yml" maxLines=0 {2-22} +channels: + user/notifications: + address: user/notifications + messages: + UserNotification: + $ref: '#/components/messages/UserNotification' + +operations: + onUserNotification: + action: receive + channel: + $ref: '#/channels/user~1notifications' + summary: Receive user notifications + description: Subscribe to user notification events + sendUserNotification: + action: send + channel: + $ref: '#/channels/user~1notifications' + summary: Send user notification + description: Publish a user notification event +``` + +## Message examples + +You can provide examples of messages by using the `examples` key in your message definitions: + +```yaml title="asyncapi.yml" {8-15} +components: + messages: + UserNotification: + name: UserNotification + title: User Notification + summary: Notification sent to a user + contentType: application/json + payload: + $ref: '#/components/schemas/Notification' + examples: + - name: EmailNotification + summary: Example email notification + payload: + userId: "123e4567-e89b-12d3-a456-426614174000" + type: "email" + message: "Welcome to our service!" + priority: "medium" +``` + +## Publish operations + +Publish operations represent messages that your service sends to a channel: + +```yml title="asyncapi.yml" {2-8} +operations: + publishOrderStatus: + action: send + channel: + $ref: '#/channels/order~1status' + summary: Publish order status update + description: Send order status updates to subscribers + message: + $ref: '#/components/messages/OrderStatus' +``` + +## Subscribe operations + +Subscribe operations represent messages that your service receives from a channel: + +```yml title="asyncapi.yml" {2-8} +operations: + subscribeToUserSignups: + action: receive + channel: + $ref: '#/channels/user~1signup' + summary: Subscribe to user signups + description: Receive notifications when users sign up + message: + $ref: '#/components/messages/UserSignup' +``` + +## Bi-directional communication + +You can define both publish and subscribe operations for the same channel to enable bi-directional communication: + +```yml title="asyncapi.yml" {2-15} +operations: + sendChatMessage: + action: send + channel: + $ref: '#/channels/chat~1room' + summary: Send chat message + description: Send a message to a chat room + receiveChatMessage: + action: receive + channel: + $ref: '#/channels/chat~1room' + summary: Receive chat message + description: Receive messages from a chat room +``` \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/extensions/audiences.mdx b/fern/products/api-def/asyncapi-pages/extensions/audiences.mdx new file mode 100644 index 00000000..bc1118a8 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/extensions/audiences.mdx @@ -0,0 +1,157 @@ +--- +title: Use audiences to filter your API +subtitle: Use `x-fern-audiences` to filter to relevant operations, channels and message schemas +--- + +Audiences are a useful tool for segmenting your event-driven API for different consumers. Common examples of audiences include `public` +and `beta`. + + + Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, + nothing will be filtered. + + + + +The following example configures the SDK to filter to the `public` audience: + +```yaml title="generators.yml" {3-4} +groups: + sdks: + audiences: + - public + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + + + +The following example configures the docs to filter to the `public` audience: + +```yaml title="docs.yml" {3-4} +navigation: + - api: API Reference + audiences: + - public +``` + + + + + +## Filter operations + +Add `x-fern-audiences` to operations to control which operations are included for specific audiences: + +```yaml title="asyncapi.yml" {5-6, 12-13} +operations: + sendPublicNotification: + action: send + channel: + $ref: '#/channels/public~1notifications' + x-fern-audiences: + - public + sendBetaAlert: + action: send + channel: + $ref: '#/channels/beta~1alerts' + x-fern-audiences: + - beta +``` + +## Filter channels + +You can also filter entire channels by audience: + +```yaml title="asyncapi.yml" {6-7, 13-14} +channels: + public/events: + address: public/events + messages: + PublicEvent: + $ref: '#/components/messages/PublicEvent' + x-fern-audiences: + - public + internal/events: + address: internal/events + messages: + InternalEvent: + $ref: '#/components/messages/InternalEvent' + x-fern-audiences: + - internal +``` + +## Filter message schemas + +Filter specific message schemas to different audiences: + +```yaml title="asyncapi.yml" {5-6, 13-14} +components: + messages: + PublicUserEvent: + contentType: application/json + payload: + $ref: '#/components/schemas/PublicUser' + x-fern-audiences: + - public + AdminUserEvent: + contentType: application/json + payload: + $ref: '#/components/schemas/AdminUser' + x-fern-audiences: + - admin + schemas: + PublicUser: + type: object + properties: + id: + type: string + name: + type: string + email: + type: string + x-fern-audiences: + - public + AdminUser: + allOf: + - $ref: '#/components/schemas/PublicUser' + - type: object + properties: + role: + type: string + permissions: + type: array + items: + type: string + x-fern-audiences: + - admin +``` + +## Filter schema properties + +You can filter individual properties within schemas: + +```yaml title="asyncapi.yml" {9-10, 13-14} +components: + schemas: + UserEvent: + type: object + properties: + id: + type: string + email: + type: string + x-fern-audiences: + - internal + publicName: + type: string + x-fern-audiences: + - public + internalNotes: + type: string + x-fern-audiences: + - internal +``` + +This allows you to have different views of the same event schema for different audiences, showing only the relevant information to each consumer. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/extensions/method-names.mdx b/fern/products/api-def/asyncapi-pages/extensions/method-names.mdx new file mode 100644 index 00000000..ec423403 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/extensions/method-names.mdx @@ -0,0 +1,94 @@ +--- +title: SDK Method Names +subtitle: Use `x-fern-sdk-method-name` to customize SDK method names for operations +--- + +By default, Fern generates SDK method names based on your operation names in AsyncAPI. You can override this behavior using the `x-fern-sdk-method-name` extension. + +## Customize operation method names + +Use `x-fern-sdk-method-name` to specify custom method names for your operations: + +```yaml title="asyncapi.yml" {6-7, 13-14} +operations: + subscribeToUserEvents: + action: receive + channel: + $ref: '#/channels/user~1events' + x-fern-sdk-method-name: onUserEvent + summary: Subscribe to user events + publishOrderUpdate: + action: send + channel: + $ref: '#/channels/order~1updates' + x-fern-sdk-method-name: sendOrderUpdate + summary: Publish order update +``` + +This will generate SDK methods like: + +```typescript +// Instead of client.subscribeToUserEvents() +client.onUserEvent((event) => { + // Handle user event +}); + +// Instead of client.publishOrderUpdate() +client.sendOrderUpdate(orderData); +``` + +## Method naming conventions + +Follow these conventions when naming SDK methods: + +### Subscribe operations +Use descriptive names that indicate the action: + +```yaml title="asyncapi.yml" {4-5} +operations: + subscribeToNotifications: + action: receive + x-fern-sdk-method-name: onNotification + # Generates: client.onNotification() + + subscribeToOrderUpdates: + action: receive + x-fern-sdk-method-name: watchOrders + # Generates: client.watchOrders() +``` + +### Publish operations +Use action-oriented names: + +```yaml title="asyncapi.yml" {4-5} +operations: + publishUserSignup: + action: send + x-fern-sdk-method-name: createUser + # Generates: client.createUser() + + publishNotification: + action: send + x-fern-sdk-method-name: notify + # Generates: client.notify() +``` + +## Language-specific method names + +You can specify different method names for different programming languages: + +```yaml title="asyncapi.yml" {6-11} +operations: + subscribeToEvents: + action: receive + channel: + $ref: '#/channels/events' + x-fern-sdk-method-name: + python: on_event + typescript: onEvent + go: OnEvent + java: onEvent + csharp: OnEvent +``` + +This ensures method names follow the conventions of each target language. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/extensions/others.mdx b/fern/products/api-def/asyncapi-pages/extensions/others.mdx new file mode 100644 index 00000000..cbc7d15a --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/extensions/others.mdx @@ -0,0 +1,160 @@ +--- +title: Other Extensions +subtitle: Additional Fern extensions for AsyncAPI specifications +--- + +Fern supports various extensions to enhance your AsyncAPI specifications and improve the generated SDKs and documentation. + +## `x-fern-ignore` + +Use `x-fern-ignore` to exclude specific operations, channels, or schemas from SDK generation: + +```yaml title="asyncapi.yml" {6-7, 13-14} +operations: + debugOperation: + action: send + channel: + $ref: '#/channels/debug' + x-fern-ignore: true + summary: Debug operation (internal only) + +channels: + internal/debug: + address: internal/debug + x-fern-ignore: true + messages: + DebugMessage: + $ref: '#/components/messages/DebugMessage' +``` + +## `x-fern-examples` + +Provide additional examples for better SDK documentation: + +```yaml title="asyncapi.yml" {8-20} +components: + messages: + UserEvent: + contentType: application/json + payload: + $ref: '#/components/schemas/User' + x-fern-examples: + - name: NewUserSignup + summary: Example of a new user signup event + payload: + id: "user_123" + email: "john@example.com" + name: "John Doe" + status: "active" + - name: UserDeactivation + summary: Example of user deactivation event + payload: + id: "user_456" + email: "jane@example.com" + name: "Jane Smith" + status: "inactive" +``` + +## `x-fern-pagination` + +Configure pagination for operations that return multiple results: + +```yaml title="asyncapi.yml" {6-11} +operations: + listUserEvents: + action: receive + channel: + $ref: '#/channels/user~1events' + x-fern-pagination: + cursor: next_cursor + results: events + next_cursor: pagination.next_cursor + has_next_page: pagination.has_next_page +``` + +## `x-fern-retry` + +Configure retry behavior for operations: + +```yaml title="asyncapi.yml" {6-10} +operations: + sendCriticalAlert: + action: send + channel: + $ref: '#/channels/alerts' + x-fern-retry: + max_attempts: 3 + exponential_backoff: true + initial_delay: 1000 + max_delay: 30000 +``` + +## `x-fern-streaming` + +Mark operations as streaming for appropriate SDK generation: + +```yaml title="asyncapi.yml" {6-9} +operations: + streamEvents: + action: receive + channel: + $ref: '#/channels/event~1stream' + x-fern-streaming: + type: server_sent_events + termination: client_closes +``` + +## `x-fern-error-handling` + +Configure error handling for operations: + +```yaml title="asyncapi.yml" {6-16} +operations: + sendMessage: + action: send + channel: + $ref: '#/channels/messages' + x-fern-error-handling: + error_schema: + $ref: '#/components/schemas/MessageError' + error_status_codes: + - 400 + - 429 + - 500 + retry_on_errors: + - 429 + - 500 +``` + +## `x-fern-server-name` + +Specify custom names for servers: + +```yaml title="asyncapi.yml" {4-5} +servers: + production: + host: api.yourcompany.com + x-fern-server-name: Production + protocol: wss + staging: + host: staging.api.yourcompany.com + x-fern-server-name: Staging + protocol: wss +``` + +## `x-fern-availability` + +Mark features as available in specific SDK versions: + +```yaml title="asyncapi.yml" {6-8} +operations: + newFeature: + action: send + channel: + $ref: '#/channels/new~1feature' + x-fern-availability: + status: beta + message: "This feature is in beta and may change" +``` + +These extensions help you create more robust and user-friendly SDKs while maintaining full control over the generated code structure and behavior. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/extensions/parameter-names.mdx b/fern/products/api-def/asyncapi-pages/extensions/parameter-names.mdx new file mode 100644 index 00000000..8e5e47a3 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/extensions/parameter-names.mdx @@ -0,0 +1,79 @@ +--- +title: Parameter Names +subtitle: Use `x-fern-parameter-name` to customize SDK parameter names for message properties +--- + +By default, Fern uses the property names from your AsyncAPI message schemas as SDK parameter names. You can customize these using the `x-fern-parameter-name` extension. + +## Customize message property names + +Use `x-fern-parameter-name` to specify custom parameter names for message properties: + +```yaml title="asyncapi.yml" {10-11, 14-15} +components: + schemas: + UserEvent: + type: object + properties: + user_id: + type: string + description: Unique user identifier + x-fern-parameter-name: userId + created_at: + type: string + format: date-time + x-fern-parameter-name: createdAt + notification_type: + type: string + enum: [email, sms, push] + x-fern-parameter-name: notificationType +``` + +This generates SDK methods with cleaner parameter names: + +```typescript +// Instead of send({user_id: "123", created_at: new Date(), notification_type: "email"}) +client.sendNotification({ + userId: "123", + createdAt: new Date(), + notificationType: "email" +}); +``` + +## Language-specific parameter names + +You can specify different parameter names for different programming languages: + +```yaml title="asyncapi.yml" {8-13} +components: + schemas: + OrderEvent: + type: object + properties: + order_id: + type: string + x-fern-parameter-name: + python: order_id + typescript: orderId + go: OrderID + java: orderId + csharp: OrderId +``` + +## Channel parameter names + +Customize parameter names for channel address variables: + +```yaml title="asyncapi.yml" {4-7} +channels: + user/{user_id}/notifications: + address: user/{user_id}/notifications + parameters: + user_id: + description: User identifier + x-fern-parameter-name: userId + schema: + type: string +``` + +This ensures consistent naming conventions across your SDK while maintaining compatibility with your existing message formats. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/overrides.mdx b/fern/products/api-def/asyncapi-pages/overrides.mdx new file mode 100644 index 00000000..0e76d5f1 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/overrides.mdx @@ -0,0 +1,168 @@ +--- +title: Overlay Customizations +subtitle: Use overlay files to modify your AsyncAPI specification without editing the original +--- + +Overlays allow you to modify your AsyncAPI specification without directly editing the original file. This is useful for: +- Adding Fern-specific extensions +- Customizing documentation +- Adding examples and descriptions +- Overriding specific properties + +## Configure overlays + +To use overlays, add them to your `generators.yml` file: + +```yaml title="generators.yml" {3-5} +api: + specs: + - spec: asyncapi.yml + overlays: + - overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## Overlay file structure + +Overlay files follow the [OpenAPI Overlay Specification](https://spec.openapis.org/overlay/v1.0.0) format: + +```yaml title="overlay.yml" +overlay: 1.0.0 +info: + title: AsyncAPI Fern Extensions + version: 1.0.0 +actions: + - target: $.operations.sendNotification + update: + x-fern-sdk-method-name: notify + summary: Send a notification to a user + - target: $.channels['user/events'] + update: + description: Channel for user-related events + x-fern-audiences: + - public +``` + +## Add method names + +Override SDK method names for better developer experience: + +```yaml title="overlay.yml" {7-9} +overlay: 1.0.0 +info: + title: SDK Method Names + version: 1.0.0 +actions: + - target: $.operations.subscribeToUserEvents + update: + x-fern-sdk-method-name: onUserEvent + summary: Subscribe to user events with callback + - target: $.operations.publishOrderUpdate + update: + x-fern-sdk-method-name: updateOrder + summary: Publish order status update +``` + +## Add examples + +Enhance your specification with examples: + +```yaml title="overlay.yml" {7-17} +overlay: 1.0.0 +info: + title: Message Examples + version: 1.0.0 +actions: + - target: $.components.messages.UserSignup + update: + examples: + - name: StandardSignup + summary: Regular user signup + payload: + id: "user_123" + email: "john@example.com" + name: "John Doe" + signupSource: "web" + timestamp: "2024-01-15T10:30:00Z" +``` + +## Filter with audiences + +Add audience filtering to operations and channels: + +```yaml title="overlay.yml" {7-9, 12-14} +overlay: 1.0.0 +info: + title: Audience Filtering + version: 1.0.0 +actions: + - target: $.operations.adminAlert + update: + x-fern-audiences: + - admin + - target: $.channels['internal/debug'] + update: + x-fern-audiences: + - internal +``` + +## Add documentation + +Enhance descriptions and documentation: + +```yaml title="overlay.yml" {7-11} +overlay: 1.0.0 +info: + title: Enhanced Documentation + version: 1.0.0 +actions: + - target: $.operations.sendMessage + update: + description: | + Send a message to the specified channel. This operation supports + real-time delivery with automatic retry on failure. Messages are + guaranteed to be delivered at least once. + summary: Send message with delivery guarantees +``` + +## Server configurations + +Add server-specific configurations: + +```yaml title="overlay.yml" {7-11} +overlay: 1.0.0 +info: + title: Server Extensions + version: 1.0.0 +actions: + - target: $.servers.production + update: + x-fern-server-name: Production + description: Production environment with high availability + bindings: + ws: + headers: + type: object + properties: + X-API-Version: + type: string + const: "v1" +``` + +## Multiple overlays + +You can apply multiple overlay files in sequence: + +```yaml title="generators.yml" {4-7} +api: + specs: + - spec: asyncapi.yml + overlays: + - base-overlay.yml + - sdk-overlay.yml + - docs-overlay.yml +``` + +Overlays are applied in order, allowing you to build up customizations incrementally while keeping your original AsyncAPI specification clean and focused. \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/overview.mdx b/fern/products/api-def/asyncapi-pages/overview.mdx new file mode 100644 index 00000000..e1133708 --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/overview.mdx @@ -0,0 +1,130 @@ +--- +title: What is an AsyncAPI Specification? +subtitle: AsyncAPI is a standard for documenting event-driven APIs +--- + +The AsyncAPI Specification is a framework used by developers to document event-driven APIs. The specification +is written in JSON or YAML and contains all of your channels, messages, schemas, and authentication schemes. +Fern is compatible with AsyncAPI specification [v2.6.0](https://www.asyncapi.com/docs/reference/specification/v2.6.0) and [v3.0.0](https://www.asyncapi.com/docs/reference/specification/v3.0.0). + + Considering options to generate an AsyncAPI spec? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) + +Below is an example of an AsyncAPI file: + +```yaml asyncapi.yml +asyncapi: 3.0.0 +info: + title: User Notification Service + version: 1.0.0 + description: | + Service that handles user notifications through various channels + including email, SMS, and push notifications. +channels: + user/signup: + address: user/signup + messages: + UserSignedUp: + $ref: '#/components/messages/UserSignedUp' + notification/send: + address: notification/send + messages: + SendNotification: + $ref: '#/components/messages/SendNotification' +operations: + onUserSignup: + action: receive + channel: + $ref: '#/channels/user~1signup' + summary: User signup event + description: Triggered when a user signs up for the service + sendNotification: + action: send + channel: + $ref: '#/channels/notification~1send' + summary: Send notification + description: Send a notification to a user +components: + messages: + UserSignedUp: + name: UserSignedUp + title: User Signed Up + summary: User has signed up for the service + contentType: application/json + payload: + $ref: '#/components/schemas/User' + SendNotification: + name: SendNotification + title: Send Notification + summary: Send a notification to a user + contentType: application/json + payload: + $ref: '#/components/schemas/Notification' + schemas: + User: + type: object + properties: + id: + type: string + format: uuid + description: Unique identifier for the user + email: + type: string + format: email + description: User's email address + name: + type: string + description: User's full name + createdAt: + type: string + format: date-time + description: When the user was created + required: + - id + - email + - name + Notification: + type: object + properties: + userId: + type: string + format: uuid + description: ID of the user to notify + type: + type: string + enum: [email, sms, push] + description: Type of notification to send + message: + type: string + description: Message content + priority: + type: string + enum: [low, medium, high, urgent] + default: medium + description: Priority level of the notification + required: + - userId + - type + - message +``` + +## Setup your fern folder + +Start by initializing your fern folder with an AsyncAPI spec + + +```sh file +fern init --asyncapi ./path/to/asyncapi +``` +```sh url +fern init --asyncapi https://host/path/to/asyncapi +``` + + +This will initialize a directory like the following +``` +fern/ + ├─ fern.config.json + ├─ generators.yml + └─ asyncapi/ + ├─ asyncapi.yml +``` \ No newline at end of file diff --git a/fern/products/api-def/asyncapi-pages/servers.mdx b/fern/products/api-def/asyncapi-pages/servers.mdx new file mode 100644 index 00000000..a3a0554e --- /dev/null +++ b/fern/products/api-def/asyncapi-pages/servers.mdx @@ -0,0 +1,116 @@ +--- +title: Servers +description: Configure server URLs and protocols to help users connect to your event-driven API. +subtitle: Define server URLs and protocols to help users connect to your event-driven API. +--- + +AsyncAPI allows you to specify one or more server configurations under the `servers` key. + +```yml asyncapi.yml + +servers: + production: + host: api.yourcompany.com + protocol: wss + description: Production WebSocket server + staging: + host: staging.api.yourcompany.com + protocol: wss + description: Staging WebSocket server +``` + +Specifying servers is valuable for both SDKs and Docs: +- For SDKs, your users won't need to manually specify the server URL at client instantiation +- For Docs, your API playground will automatically connect to the correct server + +## Protocol support + +AsyncAPI supports various protocols for event-driven communication: + +```yml asyncapi.yml {4,8,12} +servers: + websocket-server: + host: ws.api.yourcompany.com + protocol: ws + description: WebSocket server for real-time communication + mqtt-server: + host: mqtt.yourcompany.com + protocol: mqtt + description: MQTT broker for IoT devices + kafka-server: + host: kafka.yourcompany.com + protocol: kafka + description: Kafka cluster for event streaming +``` + +## Naming your servers + +We recommend giving your servers descriptive names to make it clear what each server is for: + +```yml asyncapi.yml +servers: + production: + host: api.yourcompany.com + protocol: wss + description: Production WebSocket server + staging: + host: staging.api.yourcompany.com + protocol: wss + description: Staging environment for testing + development: + host: localhost:8080 + protocol: ws + description: Local development server +``` + +## Server variables + +You can use variables in your server configurations to make them more flexible: + +```yml asyncapi.yml {3-10} +servers: + production: + host: '{environment}.api.yourcompany.com' + protocol: wss + variables: + environment: + default: prod + enum: + - prod + - staging + description: Environment name +``` + +## Multiple protocols for different channels + +If you have different channels that use different protocols, you can specify this in your server configuration: + +```yml asyncapi.yml {2-14, 17-21} +servers: + websocket-server: + host: ws.api.yourcompany.com + protocol: wss + description: WebSocket server for real-time notifications + mqtt-server: + host: mqtt.api.yourcompany.com + protocol: mqtt + description: MQTT broker for IoT device communication + kafka-server: + host: kafka.api.yourcompany.com + protocol: kafka + description: Kafka for high-throughput event streaming + +channels: + user/notifications: + servers: + - websocket-server + address: user/notifications + description: Real-time user notifications via WebSocket + device/telemetry: + servers: + - mqtt-server + address: device/telemetry + description: IoT device telemetry via MQTT +``` + +This allows different channels to use the most appropriate protocol for their use case. \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/api-yml/environments.mdx b/fern/products/api-def/ferndef-pages/api-yml/environments.mdx new file mode 100644 index 00000000..bdb9cc69 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/api-yml/environments.mdx @@ -0,0 +1,87 @@ +--- +title: Environments +description: List environments like production, staging, and development. +--- + +You can specify the environments where your server is deployed. + +## Single URL environments + +```yaml title="api.yml" +name: api +environments: + Production: https://www.yoursite.com + Staging: + docs: This staging environment is helpful for testing! + url: https://www.staging.yoursite.com +``` + +## Multiple URLs per environment + +You can specify multiple URLs per environment. This is helpful if you have a +microservice architecture, and you want a single SDK to interact with multiple +servers. + +```yaml title="api.yml" +environments: + Production: + urls: + Auth: https://auth.yoursite.com + Plants: https://plants.yoursite.com + Staging: + urls: + Auth: https://auth.staging.yoursite.com + Plants: https://plants.staging.yoursite.com +``` + +If you choose to use this feature, you must specify a `url` for each service you define: + +```yaml title="auth.yml" +service: + url: Auth + base-path: /auth + ... +``` + +## Default environment + +You can also provide a default environment: + +```yaml title="api.yml" +name: api +environments: + Production: https://www.yoursite.com + Staging: + docs: This staging environment is helpful for testing! + url: https://www.staging.yoursite.com +default-environment: Production +``` + + By providing a default environment, the generated SDK will be setup to hit that URL out-of-the-box. + +## Base path +If you would like all of your endpoints to be prefixed with a path, use `base-path`. + +In the example below, every endpoint is prefixed with a `/v1`: +```yaml title="api.yml" +name: api +base-path: /v1 +``` + +## Audiences + +If you have listed environments that you want to filter, you can leverage audiences. + +```yaml title="api.yml" +audiences: + - public + +environments: + Dev: + url: https://api.dev.buildwithfern.com + Prod: + url: https://api.buildwithfern.com + audiences: + - external +``` + diff --git a/fern/products/api-def/ferndef-pages/api-yml/errors.mdx b/fern/products/api-def/ferndef-pages/api-yml/errors.mdx new file mode 100644 index 00000000..06ce9ef3 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/api-yml/errors.mdx @@ -0,0 +1,54 @@ +--- +title: Errors +description: Specify error types and schemas +--- + +In order to generate SDKs idiomatically, Fern needs to know how to differentiate +between different errors when parsing an endpoint response. + +### Discriminate by status code + +You can specify Fern to discriminate by status code. This means on each +endpoint, every error that's listed must have a different HTTP status code. + + +```yaml +name: api +error-discrimination: + strategy: status-code +``` + + +### Discriminate by error name + +You can specify Fern to discriminate by error name. If you select this strategy, +then Fern will assume that every error response has an extra property denoting +the error name. + +If you use Fern to generate server-side code, then this option provides +the most flexibility. Otherwise, you'll probably want to use the status code +discrimination strategy. + + +```yaml +name: api +error-discrimination: + strategy: property + property-name: errorName +``` + + +### Global errors + +You can import and list errors that will be thrown by every endpoint. + + +```yaml +imports: + commons: commons.yml + +errors: + - commons.NotFoundError + - commons.BadRequestError +``` + \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/api-yml/global-configuration.mdx b/fern/products/api-def/ferndef-pages/api-yml/global-configuration.mdx new file mode 100644 index 00000000..0f3cc3b7 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/api-yml/global-configuration.mdx @@ -0,0 +1,53 @@ +--- +title: Global Configuration +description: Specify global headers, path parameters or query parameters meant to be included on every request. +--- + +The `api.yml` configuration supports global configuration like headers and path parameters. + +## Global headers + +You can specify headers that are meant to be included on every request: + + +```yaml +name: api +headers: + X-App-Id: string +``` + + +## Global path parameters + +You can specify path parameters that are meant to be included on every request: + + +```yaml +name: api +base-path: /{userId}/{orgId} +path-parameters: + userId: string + orgId: string +``` + + +### Overriding the base path + +If you have certain endpoints that do not live at the configured `base-path`, you can +override the `base-path` at the endpoint level. + +```yml imdb.yml {5} +service: + endpoints: + getMovie: + method: POST + base-path: "override/{arg}" + path: "movies/{movieId}" + path-parameters: + arg: string +``` + +## Global query parameters + +You cannot yet specify query parameters that are meant to be included on every request. +If you'd like to see this feature, please upvote [this issue](https://github.com/fern-api/fern/issues/2930). \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/api-yml/overview.mdx b/fern/products/api-def/ferndef-pages/api-yml/overview.mdx new file mode 100644 index 00000000..d27912ad --- /dev/null +++ b/fern/products/api-def/ferndef-pages/api-yml/overview.mdx @@ -0,0 +1,57 @@ +--- +title: The api.yml configuration file +description: The api.yml file contains general API configuration when using the Fern Definition format. +--- + +A `fern/` folder has a special file called `api.yml`, which includes all the API-wide configuration. + +```bash {5} +fern/ +├─ fern.config.json +├─ generators.yml +└─ definition/ + ├─ api.yml + ├─ pet.yml + ├─ store.yml + └─ user.yml +``` + +## API name + +This name is used to uniquely identify your API in your organization. If you just have one API, then `api` is a sufficient name. + + +```yaml +name: api +``` + + +## API description + +You can define a top level API description. This description will come through in the OpenAPI Specification and Postman collection. + + +```yaml {2-4} +name: api +docs: | + ## Header + This API provides access to... +``` + + +## API version + +You can define your header-based API versioning scheme, such as an `X-API-Version`. The supported versions +and default value are specified like so: + + +```yaml +version: + header: X-API-Version + default: "2.0.0" + values: + - "1.0.0" + - "2.0.0" + - "latest" +``` + \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/audiences.mdx b/fern/products/api-def/ferndef-pages/audiences.mdx new file mode 100644 index 00000000..20f2876a --- /dev/null +++ b/fern/products/api-def/ferndef-pages/audiences.mdx @@ -0,0 +1,113 @@ +--- +title: Audiences in Fern Definition +subtitle: Use audiences in your Fern Definition to segment your API for different groups of consumers. +--- + +Audiences are a useful tool for segmenting your API for different consumers. You can configure your Fern Docs to publish documentation specific to an `Audience`. You can use [audiences in your OpenAPI Specification](/learn/api-definition/openapi/audiences), too. + +Common examples of audiences include: + +- Internal consumers (e.g., frontend developers who use the API) +- Beta testers +- Customers + +By default, if no audience is specified, it will be accessible to all consumers. + +## Configuration + +The Fern Definition has a first-class concept for marking different endpoints, types, and properties for different audiences. + +To use audiences in your Fern Definition, add them to `api.yml`. + +In the example below, we have created audiences for `internal`, `beta`, and `customer` groups: + +```yaml title='api.yml' {2-5} +name: api +audiences: + - internal + - beta + - customers +``` + +## Audiences for endpoints + +To mark an endpoint for a particular consumer, add an `audience` with the relevant groups. + +In this example, the `sendEmail` endpoint is only available to internal consumers: + +```yaml title='user.yml' {6-7} +service: + base-path: /users + auth: true + endpoints: + sendEmail: + audiences: + - internal + path: /send-email + ... +``` + +## Audiences for types + +Types can also be marked for different audiences. + +In this example, the `Email` type is available to internal and beta consumers: + +```yaml title='user.yml' {5-7} +Email: + properties: + subject: string + body: optional + audiences: + - internal + - beta +``` + +## Audiences for properties + +Properties of a type can also be marked for different audiences. + +In this example, the `to` property is available to beta consumers only: + +```yaml title='user.yml' {8-9} +Email: + properties: + subject: string + body: optional + to: + type: string + docs: The recipient of the email + audiences: + - beta +``` + +## Audiences for SDKs + +In `generators.yml`, you can apply audience filters so that only certain +endpoints are passed to the generators. + +The following example configures the SDKs to filter for `customers`: + +```yaml title='generators.yml' {3-4} +groups: + external: + audiences: + - customers + generators: + ... +``` + +## Audiences with docs + +If generating Fern Docs, update your `docs.yml` configuration to include your audiences. + +The following example shows how to configure your `docs.yml` to publish documentation for the `customers` audience: + + +```yaml {3-4} +navigation: + - api: API Reference + audiences: + - customers +``` + diff --git a/fern/products/api-def/ferndef-pages/auth.mdx b/fern/products/api-def/ferndef-pages/auth.mdx new file mode 100644 index 00000000..d6ef9a7c --- /dev/null +++ b/fern/products/api-def/ferndef-pages/auth.mdx @@ -0,0 +1,224 @@ +--- +title: Authentication +subtitle: Model auth schemes such as bearer, basic, custom headers, and oauth. +--- + +Configuring authentication schemes happens in the `api.yml` file. All Fern-generated SDKs support both direct configuration and environment variables for authentication credentials. + +```bash {5} +fern/ +├─ fern.config.json # root-level configuration +├─ generators.yml # generators you're using +└─ definition/ + ├─ api.yml # API-level configuration + └─ imdb.yml # endpoints, types, and errors +``` + +To add an authentication scheme, specify the authentication method under the `auth-schemes` section. + +```yaml api.yml {1-2} +auth-schemes: + AuthScheme: + ... +``` + + +To apply an authentication scheme across all endpoints, reference the `auth-scheme` within the `auth` section of your `api.yml` file. +```yaml api.yml {1} +auth: AuthScheme +auth-schemes: + AuthScheme: + ... +``` + + +## Bearer authentication + +Start by defining a `Bearer` authentication scheme in `api.yml`: + +```yaml api.yml +auth: Bearer +auth-schemes: + Bearer: + scheme: bearer +``` + +This will generate an SDK where the user would have to provide +a mandatory argument called `token`. + +```ts index.ts +const client = new Client({ + token: "ey34..." +}) +``` + +If you want to control variable naming and the environment variable to scan, +use the configuration below: + +```yaml title="api.yml" {5-7} +auth: Bearer +auth-schemes: + Bearer: + scheme: bearer + token: + name: apiKey + env: PLANTSTORE_API_KEY +``` + +The generated SDK would look like: + +```ts index.ts + +// Uses process.env.PLANTSTORE_API_KEY +let client = new Client(); + +// token has been renamed to apiKey +client = new Client({ + apiKey: "ey34..." +}) +``` + +## Basic authentication + +Start by defining a `Basic` authentication scheme in `api.yml`: + +```yaml api.yml +auth: Basic +auth-schemes: + Basic: + scheme: basic +``` + +This will generate an SDK where the user would have to provide +a mandatory arguments called `username` and `password`. + +```ts index.ts +const client = new Client({ + username: "joeschmoe" + password: "ey34..." +}) +``` + +If you want to control variable naming and environment variables to scan, +use the configuration below: + +```yaml title="api.yml" {5-11} +auth: Basic +auth-schemes: + Basic: + scheme: basic + username: + name: clientId + env: PLANTSTORE_CLIENT_ID + password: + name: clientSecret + env: PLANTSTORE_CLIENT_SECRET +``` + +The generated SDK would look like: + +```ts index.ts + +// Uses process.env.PLANTSTORE_CLIENT_ID and process.env.PLANTSTORE_CLIENT_SECRET +let client = new Client(); + +// parameters have been renamed +client = new Client({ + clientId: "joeschmoe", + clientSecret: "ey34..." +}) +``` + +## Custom header (e.g. API key) + +You can also create your own authentication scheme with customized headers. + +```yaml title="api.yml" {3-5} +auth: ApiKeyAuthScheme +auth-schemes: + ApiKeyAuthScheme: + header: X-API-Key + type: string +``` + +This will generate an SDK where the user would have to provide +a mandatory argument called `apiKey`. + +```ts index.ts +const client = new Client({ + xApiKey: "ey34..." +}) +``` + +If you want to control variable naming and environment variables to scan, +use the configuration below: + +```yaml title="api.yml" {7-8} +auth: ApiKeyAuthScheme +auth-schemes: + ApiKeyAuthScheme: + header: X-API-Key + type: string + name: apiKey + env: PLANTSTORE_API_KEY +``` + +The generated SDK would look like: + +```ts index.ts + +// Uses process.env.PLANTSTORE_API_KEY +let client = new Client(); + +// parameters have been renamed +client = new Client({ + apiKey: "ey34..." +}) +``` + +## OAuth client credentials + +If your API uses OAuth, you can specify an oauth scheme. Note that you'll need to define a token retrieval endpoint. + +```yaml api.yml +name: api + +imports: + auth: auth.yml + +auth: OAuthScheme +auth-schemes: + OAuthScheme: + scheme: oauth + type: client-credentials + client-id-env: YOUR_CLIENT_ID + client-secret-env: YOUR_CLIENT_SECRET + get-token: + endpoint: auth.getToken + response-properties: + access-token: $response.access_token + expires-in: $response.expires_in + +``` + +If the `expires-in` property is set, the generated OAuth token provider will automatically refresh the token when it expires. +Otherwise, it's assumed that the access token is valid indefinitely. + +With this, all of the OAuth logic happens automatically in the generated SDKs. As long as you configure these settings, your +client will automatically retrieve an access token and refresh it as needed. + +When using the docs playground, `token-header` and `token-prefix` can optionally be set to customize the header key name and +header value prefix, to match the expected format of the API auth scheme. + +For example, the following would produce a header `Fern-Authorization: Fern-Bearer `: + +```yaml api.yml {5-6} +auth-schemes: + OAuthScheme: + scheme: oauth + type: client-credentials + token-header: Fern-Authorization + token-prefix: Fern-Bearer + get-token: + ... +``` \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/availability.mdx b/fern/products/api-def/ferndef-pages/availability.mdx new file mode 100644 index 00000000..9e335ec1 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/availability.mdx @@ -0,0 +1,96 @@ +--- +title: Availability in Fern Definition +description: Add availability to Fern Definition API services, endpoints, types, or properties to indicate their release status. +--- + +You can add `availability` to an endpoint, type, or property within your Fern Definition. + +Availability can be: +- `in-development` which means it is being worked on; will show a `Beta` tag +- `pre-release` which means it is available; will show a `Beta` tag +- `deprecated` which means it will be removed in the future; will show a `Deprecated` tag +- `generally-available` which means it is stable and available for use; will show a `GA` tag + +## Endpoint + + +```yaml {6} +service: + base-path: /pet + auth: true + endpoints: + add: + availability: deprecated + display-name: Add pet + docs: Add a new Pet to the store + method: POST + path: "" + request: AddPetRequest + response: Pet +``` + + +In Fern Docs, this will look like: + + +![Screenshot showing a deprecated tag next to an endpoint in API Reference docs](https://fern-image-hosting.s3.amazonaws.com/endpoint-deprecated.png) + + +## Type + + +```yaml {15} + Pet: + properties: + id: + type: integer + docs: A unique ID for the Pet + name: + type: string + docs: The first name of the Pet + photoUrls: + type: list + docs: A list of publicly available URLs featuring the Pet + availability: generally-available + category: + type: optional + availability: pre-release + + Category: + properties: + id: optional + name: optional +``` + + +In Fern Docs, this will look like: + + +![Screenshot showing a beta tag next to a type in API Reference docs](https://fern-image-hosting.s3.amazonaws.com/type-beta.png) + + +## Property + + +```yaml {12} + Pet: + properties: + id: + type: integer + docs: A unique ID for the Pet + name: + type: string + docs: The first name of the Pet + photoUrls: + type: list + docs: A list of publicly available URLs featuring the Pet + availability: deprecated + category: optional +``` + + +In Fern Docs, this will look like: + + +![Screenshot showing a deprecated tag next to a type's property in API Reference docs](https://fern-image-hosting.s3.amazonaws.com/property-deprecated.png) + diff --git a/fern/products/api-def/ferndef-pages/depending-on-other-apis.mdx b/fern/products/api-def/ferndef-pages/depending-on-other-apis.mdx new file mode 100644 index 00000000..5a327fea --- /dev/null +++ b/fern/products/api-def/ferndef-pages/depending-on-other-apis.mdx @@ -0,0 +1,67 @@ +--- +title: "Depending on other APIs" +subtitle: Import API Definitions to generate unified SDKs +--- + +Fern allows you to import other APIs into your API. + +This is often useful if: + +- you want to reuse another API's types in your API +- you want to combine multiple microservices' APIs into one SDK (similar to the AWS SDK) + +## Registering the dependency API + +The first step is to **register** the API you want to depend on. To do this, use +the `register` command: + +``` +$ fern register +[some-dependency]: Uploading definition... +[some-dependency]: Registered @fern/some-dependency:0.0.1 +``` + +## Depending on the registered API + +To add a dependency on another API, you must add a `dependencies.yml` to declare which +APIs you wish to depend on. + +```bash {4} +fern/ +├─ fern.config.json +├─ generators.yml +├─ dependencies.yml +└─ definition/ + ├─ api.yml + ├─ imdb.yml +``` + +Your `dependencies.yml` has a list of all the APIs you wish to depend: + +```yaml dependencies.yml +dependencies: + "@fern/some-dependency": "0.0.1" +``` + +Next, you need create a folder in your Fern Definition to house the dependency. Inside the folder, create a special file +`__package__.yml` which specifies the dependency and version you want to add. + +```bash {8-9} +fern/ +├─ fern.config.json +├─ generators.yml +├─ dependencies.yml +└─ definition/ + ├─ api.yml + ├─ imdb.yml + └─ my-folder + └─ __package__.yml +``` + +```yaml __package__.yml +export: + dependency: "@fern/some-dependency" +``` + +When you generate the SDK with `fern generate`, the `__package__.yml` file will +effectively be replaced with the API you're depending on. diff --git a/fern/products/api-def/ferndef-pages/endpoints.mdx b/fern/products/api-def/ferndef-pages/endpoints.mdx new file mode 100644 index 00000000..ad91ab18 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/endpoints.mdx @@ -0,0 +1,519 @@ +--- +title: Endpoints in Fern Definition +description: Organize related API endpoints into a service in Fern Definition and define each endpoint's URL, HTTP method, request, response, errors, and more. +--- + +In Fern, you organize related endpoints into a **Service**. This grouping +improves clarity and makes the generated SDKs more idiomatic. + +## Service definition + +Each service defines: + +1. A **base-path**: A common prefix for all the endpoints' HTTP paths +2. Whether the service requires [authentication](/learn/api-definition/fern/authentication) +3. **Endpoints** + + + ```yaml + service: + base-path: /users + auth: false + endpoints: {} + ``` + + + + To define a service with an empty base path use the empty string: `base-path: ""` + + +## Endpoints + +An endpoint includes: + +- A **URL path** _(Optionally including path parameters)_ +- A **Display Name** _(Optional)_ +- An **HTTP Method** +- **Request information** _(Optional)_ + - **Query-parameters** + - **Headers** + - **Request body** +- **Successful (200) response** information _(Optional)_ +- **Error (non-200) responses** that this endpoint might return _(Optional)_ + +## URL path + +Each endpoint has a URL path. + + +```yaml {6} +service: + base-path: /users + auth: false + endpoints: + getAllUsers: + path: /all + method: GET +``` + + +The full path for the endpoint is the concatenation of: + +- The [environment](/learn/api-definition/fern/api-yml/environments) URL +- The service `base-path` +- The endpoint `path` + +## Display name + +The display name will appear as the title of an endpoint. By default, the display name is equal to the 'Title Case' of the endpoint name. If you would like to customize the endpoint name, you can **set the display name**. + +In the example below, ["Add a new plant to the store"](https://plantstore.dev/api-reference/plant/add-plant) displays as the title of the endpoint page within the API Reference. + + +```yaml {7} +service: + base-path: /v3 + auth: false + endpoints: + addPlant: + path: /plant + display-name: Add a new plant to the store + method: POST +``` + + +## Path parameters + +Supply path parameters for your endpoints to create dynamic URLs. + + +```yaml {6-8} +service: + base-path: /users + auth: false + endpoints: + getUser: + path: /{userId} + path-parameters: + userId: string + method: GET +``` + + +Services can also have path-parameters: + + + ```yaml {2-4} + service: + base-path: /projects/{projectId} + path-parameters: + projectId: string + auth: false + endpoints: + ... + ``` + + +## Query parameters + +Each endpoint can specify query parameters: + + +```yaml +service: + base-path: /users + auth: false + endpoints: + getAllUsers: + path: /all + method: GET + request: + # this name is required for idiomatic SDKs + name: GetAllUsersRequest + query-parameters: + limit: optional +``` + + +### `allow-multiple` + +Use `allow-multiple` to specify that a query parameter is allowed +multiple times in the URL, as in `?filter=jane&filter=smith`. This will alter +the generated SDKs so that consumers can provide multiple values for the query +parameter. + + +```yaml {5} + ... + query-parameters: + filter: + type: string + allow-multiple: true +``` + + +## Auth + +Each endpoint can override the auth behavior specified in the service. + + + ```yaml + service: + base-path: /users + auth: false + endpoints: + getMe: + path: "" + method: GET + # This endpoint will be authed + auth: true + docs: Return the current user based on Authorization header. + ``` + + +## Headers + +Each endpoint can specify request headers: + + + ```yaml + service: + base-path: /users + auth: false + endpoints: + getAllUsers: + path: /all + method: GET + request: + # this name is required for idiomatic SDKs name: + name: GetAllUsersRequest + headers: + X-Endpoint-Header: string + ``` + + +Services can also specify request headers. These headers will cascade to the service's endpoints. + + + ```yaml {4-5} + service: + base-path: /users + auth: false + headers: + X-Service-Header: string + endpoints: + getAllUsers: + path: /all + method: GET + request: + # this name is required for idiomatic SDKs + name: GetAllUsersRequest + headers: + X-Endpoint-Header: string + ``` + + +## Request body + +Endpoints can specify a request body type. + + +```yaml {10} +service: + base-path: /users + auth: false + endpoints: + setUserName: + path: /{userId}/set-name + path-parameters: + userId: string + method: POST + request: string +``` + + +### Inlining a request body + +If the request body is an object, you can **inline the type declaration**. This +makes the generated SDKs a bit more idiomatic. + + + ```yaml + service: + base-path: /users + auth: false + endpoints: + createUser: + path: /create + method: POST + request: + # this name is required for idiomatic SDKs + name: CreateUserRequest + body: + properties: + userName: string + ``` + + +## Success response + +Endpoints can specify a `response`, which is the type of the body that will be +returned on a successful (200) call. + + +```yaml +service: + base-path: /users + auth: false + endpoints: + getAllUsers: + path: /all + method: GET + response: list + +types: + User: + properties: + userId: string + name: string +``` + + +## Response status codes + +You can also use the `status-code` field to specify a custom status code +for a success response. + + +```yaml {11} +service: + base-path: /users + auth: false + endpoints: + create: : + path: "" + method: POST + request: CreateUserRequest + response: + type: User + status-code: 201 + +types: + User: + properties: + userId: string + name: string +``` + + +## Error responses + +Endpoints can specify error responses, which detail the non-200 responses that +the endpoint might return. + + +```yaml +service: + base-path: /users + auth: false + endpoints: + getUser: + path: /{userId} + path-parameters: + userId: string + method: GET + response: User + errors: + - UserNotFoundError + +types: + User: + properties: + userId: string + name: string + +errors: + UserNotFoundError: + status-code: 404 +``` + + +You can learn more about how to define errors on the [Errors](/learn/api-definition/fern/errors) page. + +## Specifying examples + +When you declare an example, you can also specify some examples of how that +endpoint might be used. These are used by the compiler to enhance the generated +outputs. Examples will show up as comments in your SDKs, API documentation, and Postman collection. + +You may add examples for endpoints, types, and errors. + + +```yaml {13-19} +service: + base-path: /users + auth: false + endpoints: + getUser: + path: /{userId} + path-parameters: + userId: string + method: GET + response: User + errors: + - UserNotFoundError + examples: + - path-parameters: + userId: alice-user-id + response: + body: + userId: alice-user-id + name: Alice + +types: + User: + properties: + userId: string + name: string + +errors: + UserNotFoundError: + status-code: 404 +``` + + +If you're adding an example to an endpoint and the type already has an example, you can reference it using `$`. +```yaml +service: + auth: true + base-path: /address + endpoints: + create: + method: POST + path: "" + request: CreateAddress + response: Address + examples: + - request: $CreateAddress.WhiteHouse + response: + body: $Address.WhiteHouseWithID + + CreateAddress: + properties: + street1: string + street2: optional + city: string + state: string + postalCode: string + country: string + isResidential: boolean + examples: + - name: WhiteHouse + value: + street1: 1600 Pennsylvania Avenue NW + city: Washington DC + state: Washington DC + postalCode: "20500" + country: US + isResidential: true + + Address: + extends: CreateAddress + properties: + id: + type: uuid + docs: The unique identifier for the address. + examples: + - name: WhiteHouseWithID + value: + id: 65ce514c-41e3-11ee-be56-0242ac120002 + street1: 1600 Pennsylvania Avenue NW + city: Washington DC + state: Washington DC + postalCode: "20500" + country: US + isResidential: true +```` + +Examples contain all the information about the endpoint call, including +the request body, path parameters, query parameters, headers, and response body. + + + ```yaml + examples: + - path-parameters: + userId: some-user-id + query-parameters: + limit: 50 + headers: + X-My-Header: some-value + response: + body: + response-field: hello + ``` + + +### Failed examples + +You can also specify examples of failed endpoints calls. Add the `error` +property to a response example to designate which failure you're demonstrating. + + +```yaml {5} +examples: + - path-parameters: + userId: missing-user-id + response: + error: UserNotFoundError + +errors: + UserNotFoundError: + status-code: 404 +``` + + +If the error has a body, then you must include the body in the example. + + +```yaml {6, 11} +examples: + - path-parameters: + userId: missing-user-id + response: + error: UserNotFoundError + body: "User with id `missing-user-id` was not found" + +errors: + UserNotFoundError: + status-code: 404 + type: string +``` + + +### Referencing examples from types + +To avoid duplication, you can reference examples from types using `$`. + + +```yaml {12} +service: + base-path: /users + auth: true + endpoints: + getUser: + method: GET + path: /{userId} + path-parameters: + userId: UserId + examples: + - path-parameters: + userId: $UserId.Example1 + +types: + UserId: + type: integer + examples: + - name: Example1 + value: user-id-123 +``` + diff --git a/fern/products/api-def/ferndef-pages/endpoints/bytes.mdx b/fern/products/api-def/ferndef-pages/endpoints/bytes.mdx new file mode 100644 index 00000000..43a1926d --- /dev/null +++ b/fern/products/api-def/ferndef-pages/endpoints/bytes.mdx @@ -0,0 +1,60 @@ +--- +title: Binary Data and Files +subtitle: Use the `bytes` type to handle binary data in your API +--- + + + The `bytes` type allows you to handle binary data in both requests and responses. + + +## Sending bytes + +If your API needs to send a stream of bytes (i.e. typical for assets like audio, images and other files) then +you can use the `bytes` type in the Fern Definition to model this. + +```yml audio.yml +service: + base-path: /audio + endpoints: + upload: + display-name: Upload audio + method: POST + path: /upload + content-type: application/octet-stream + request: + type: bytes + docs: The bytes of the MP3 file that you would like to upload +``` + +## Receiving bytes + + + When handling binary data in responses, use `type: file` instead of `type: bytes`. + + +On the other hand, if your API is returning a stream of bytes, then you can leverage the `bytes` type as a response. + +```yml textToSpeech.yml +service: + base-path: /tts + endpoints: + upload: + display-name: Upload audio + method: POST + path: "" + request: + name: TTSRequest + body: + properties: + text: + type: string + docs: The text that you want converted to speech. + response: + type: file + docs: The bytes of the audio file. +``` + + + + + diff --git a/fern/products/api-def/ferndef-pages/endpoints/multipart.mdx b/fern/products/api-def/ferndef-pages/endpoints/multipart.mdx new file mode 100644 index 00000000..f5270d6c --- /dev/null +++ b/fern/products/api-def/ferndef-pages/endpoints/multipart.mdx @@ -0,0 +1,46 @@ +--- +title: Multipart File Upload +description: Document endpoints with the `multiform` content type. +--- + +Endpoints in Fern are defined underneath the `endpoints` key. If your endpoint request includes file uploads, you can use the `file` type to indicate the request is of a `multiform` content type. The example below demonstrates an endpoint which includes a file in the request body. + + +```yaml {12} +service: + base-path: /documents + auth: false + endpoints: + uploadDocument: + path: /upload + method: POST + request: + name: UploadDocumentRequest + body: + properties: + file: file +``` + + +Within a given multipart request, a string parameter with `format:binary` will represent an arbitrary file. + +## List of Files + +If your endpoint supports a list of files, then your request body must indicate such. + + +```yaml {12} +service: + base-path: /documents + auth: false + endpoints: + uploadDocuments: + path: /upload + method: POST + request: + name: UploadDocumentsRequest + body: + properties: + files: list +``` + diff --git a/fern/products/api-def/ferndef-pages/endpoints/rest.mdx b/fern/products/api-def/ferndef-pages/endpoints/rest.mdx new file mode 100644 index 00000000..3a4459ba --- /dev/null +++ b/fern/products/api-def/ferndef-pages/endpoints/rest.mdx @@ -0,0 +1,45 @@ +--- +title: HTTP JSON Endpoints +--- + +Endpoints in Fern are defined underneath the `endpoints` key. Below is an example of defining +a single REST endpoint: + +```yml title="users.yml" maxLines=0 +service: + base-path: /users + auth: false + endpoints: + createUser: + path: /create + method: POST + request: + body: + properties: + userName: string +``` + +## Examples + +You can provide examples of requests and responses by using the `examples` key. + +```yaml {11-17} +service: + base-path: /users + auth: false + endpoints: + getUser: + path: /{userId} + path-parameters: + userId: string + method: GET + response: User + examples: + - path-parameters: + userId: alice-user-id + response: + body: + userId: alice-user-id + name: Alice +``` + diff --git a/fern/products/api-def/ferndef-pages/endpoints/sse.mdx b/fern/products/api-def/ferndef-pages/endpoints/sse.mdx new file mode 100644 index 00000000..c1ab5377 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/endpoints/sse.mdx @@ -0,0 +1,101 @@ +--- +title: Server-Sent Events and Streaming APIs +subtitle: Use the `response-stream` key to model streaming endpoints +--- + + + Specifying `response-stream` on an endpoints allows you to represent endpoint responses that are streaming. + + + +## JSON streaming + +If your API returns a series of `JSON` chunks as seen below + +```json +{ "text": "Hi, I am a" } +{ "text": "chatbot. Do you have any"} +{ "text": "questions for me"} +``` + +then simply specify the response under `response-stream` for your endpoint. + +```yaml title="chat.yml" {4} +service: + base-path: /chat + endpoints: + stream: + method: POST + path: "" + response-stream: Chat + +types: + Chat: + properties: + text: string +``` + +## Server-sent events + +If your API returns server-sent-events, with the `data` and `event` keys as seen below + +```json +data: { "text": "Hi, I am a" } +data: { "text": "chatbot. Do you have any"} +data: { "text": "questions for me"} +``` + +then make sure to include `format: sse`. + +```yaml title="chat.yml" {9} +service: + base-path: /chat + endpoints: + stream: + method: POST + path: "" + response-stream: + type: Chat + format: sse + +types: + Chat: + properties: + text: string +``` + +## `Stream` parameter + +It has become common practice for endpoints to have a `stream` parameter that +controls whether the response is streamed or not. Fern supports this pattern in a first +class way. + +Simply specify the `stream-condition` as well as the ordinary response and the streaming response: + +```yaml title="chat.yml" {7} +service: + base-path: /chat + endpoints: + stream: + method: POST + path: "" + stream-condition: $request.stream + request: + name: StreamChatRequest + body: + properties: + stream: boolean + response: Chat + response-stream: + type: ChatChunk + format: sse + +types: + Chat: + properties: + text: string + tokens: integer + ChatChunk: + properties: + text: string +``` \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/errors.mdx b/fern/products/api-def/ferndef-pages/errors.mdx new file mode 100644 index 00000000..60fa6e63 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/errors.mdx @@ -0,0 +1,25 @@ +--- +title: Errors in Fern Definition +description: Add errors representing failed responses from API endpoints in Fern Definition. +--- + +Errors represent failed (non-200) responses from endpoints. + +An error has: + +- An HTTP status code +- A body type _(Optional)_ + + +```yaml +errors: + UserNotFoundError: + status-code: 404 + type: UserNotFoundErrorBody + +types: + UserNotFoundErrorBody: + properties: + requestedUserId: string +``` + \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/examples.mdx b/fern/products/api-def/ferndef-pages/examples.mdx new file mode 100644 index 00000000..b16ab493 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/examples.mdx @@ -0,0 +1,339 @@ +--- +title: Examples in Fern Definition +subtitle: Use Fern Definition to add API examples that are shown in comments of SDKs, API Reference documentation, and a Postman collection. +--- + +You can add examples for types and endpoints. Examples are shown as +comments in your SDKs, in the request & response of your documentation, +and in a Postman Collection. + +## Validation + +The Fern CLI validates that your examples match the expected types. The following won't compile: + +```yaml +types: + UserId: + type: integer + examples: + - value: hello # not an integer +``` + +```bash CLI Error Message +[api]: example.yml -> types -> UserId -> examples[0] + Expected example to be an integer. Example is: "hello" +``` + +## Referencing examples + +You can reference an example from another type, endpoint, or error. + +Just like types, you can compose examples. To reference an example from another +type, use `$`. + +```yaml {14} +types: + UserId: + type: integer + examples: + - name: Example1 + value: user-id-123 + + User: + properties: + id: UserId + name: string + examples: + - value: + id: $UserId.Example1 + name: Jane Smith +``` + +## Examples for types + +### Objects + +```yml +types: + ShipTo: + properties: + street1: string + street2: optional + city: string + state: string + postalCode: string + country: Country + isResidential: boolean + examples: + - name: WhiteHouse + value: + street1: 1600 Pennsylvania Avenue NW + city: Washington DC + state: Washington DC + postalCode: "20500" + country: US + isResidential: true + - name: EmpireStateBuilding + value: + street1: 350 5th Ave + street2: Attn: Maintenance Department + city: New York + state: NY + postalCode: "10118" + country: US + isResidential: false +``` + + +```typescript +/** + * Represents a shipping address. + * + * The White House address + * @example { + * street1: "1600 Pennsylvania Avenue NW", + * city: "Washington DC", + * state: "Washington DC", + * postalCode: "20500", + * country: "US", + * isResidential: true + * } + * + * * The Empire State Building address + * @example { + * street1: "350 5th Ave", + * street2: "Attn: Maintenance Department", + * city: "New York", + * state: "NY", + * postalCode: "10118", + * country: "US", + * isResidential: false + * } + */ +type ShipTo = { + street1: string; + street2?: string; + city: string; + state: string; + postalCode: string; + country: Country; + isResidential: boolean; +}; +``` + + +### Lists + +```yml + Shipments: + type: list + examples: + - name: Default + value: + - status: "InTransit" + estimatedDeliveryDate: "2024-01-11" + - status: "Delivered" + estimatedDeliveryDate: "2024-01-13" +``` + +### Unions + +#### Discriminated union + +```yml +types: + Animal: + union: + dog: Dog + cat: Cat + examples: + - value: + type: dog + likesToWoof: true + Dog: + properties: + likesToWoof: boolean + Cat: + properties: + likesToMeow: boolean +``` + + +```typescript +/** + * Represents an animal, which can be either a Dog or a Cat. + * + * Example of a Dog: + * @example { + * type: "dog", + * likesToWoof: true + * } + */ +type Animal = Dog | Cat; +``` + + +#### Undiscriminated union + +```yml +types: + Animal: + discriminated: false + union: + - Dog + - Cat + examples: + - value: + likesToMeow: true + Dog: + properties: + likesToWoof: boolean + Cat: + properties: + likesToMeow: boolean +``` + + +```typescript +/** + * Represents an Animal, which can be either a Dog or a Cat. + * + * Example of an Animal as a Cat: + * @example { + * likesToMeow: true + * } + */ +type Animal = Dog | Cat; +``` + + +### Aliases + +```yml +types: + UserId: + docs: A unique identifier for a user + type: string + examples: + - value: user-id-123 +``` + + + ```typescript + /** + * A unique identifier for a user * + * @example "user-id-123" + */ + type UserId = string; + ``` + + +## Examples for endpoints + +You can add examples of successful and error responses for your endpoints. +Examples can reference the examples of types to avoid duplication. + +```yml +service: + auth: true + base-path: "" + endpoints: + CreateShippingLabel: + docs: Create a new shipping label. + method: POST + path: /shipping + request: CreateShippingLabelRequest + response: ShippingLabel + errors: + - NotAuthorized + - InsufficientFunds + examples: + # A successful response that doesn't reference other examples. + - request: + orderId: "online_789" + weightInOunces: 5 + response: + body: + orderId: "online_789" + weightInOunces: 5 + trackingNumber: "1Z26W8370303469306" + price: 2.50 + + # A successful response that uses references. + - request: $CreateShippingLabelRequest.SuccessfulRequest + response: + body: $ShippingLabel.Default + + # An error response. + - request: $CreateShippingLabelRequest.InsufficientFundsRequest + response: + error: InsufficientFunds + body: $InsufficientFundsBody.Default + +types: + CreateShippingLabelRequest: + properties: + orderId: string + weightInOunces: integer + examples: + - name: SuccessfulRequest + value: + orderId: "online_123" + weightInOunces: 13 + - name: InsufficientFundsRequest + value: + orderId: "online_456" + weightInOunces: 2000 + + ShippingLabel: + properties: + orderId: string + weightInOunces: integer + trackingNumber: string + price: double + examples: + - name: Default + value: + orderId: "online_123" + weightInOunces: 13 + trackingNumber: "1Z12345E0205271688" + price: 12.35 + + InsufficientFundsBody: + properties: + message: string + examples: + - name: Default + value: + message: "Insufficient funds to create shipping label." + +errors: + NotAuthorized: + status-code: 401 + InsufficientFunds: + status-code: 422 + type: InsufficientFundsBody +``` + +## Examples for path parameters + +```yml +service: + auth: true + base-path: "" + endpoints: + TrackShipment: + docs: Track the status of a shipment. + method: GET + path: /shipping/{trackingNumber} + path-parameters: + trackingNumber: string + response: ShipmentStatus + examples: + - path-parameters: + trackingNumber: "1Z26W8370303469306" + response: + body: + status: "InTransit" + estimatedDeliveryDate: "2024-01-11" +``` diff --git a/fern/products/api-def/ferndef-pages/export-openapi.mdx b/fern/products/api-def/ferndef-pages/export-openapi.mdx new file mode 100644 index 00000000..cf5b99cd --- /dev/null +++ b/fern/products/api-def/ferndef-pages/export-openapi.mdx @@ -0,0 +1,23 @@ +--- +title: Export from Fern Definition to OpenAPI +description: Export your Fern Definition files to OpenAPI using Fern's OpenAPI generator. +--- + +To prevent lock-in to the Fern Definition format, we provide a generator that will export your Fern Def files to OpenAPI 3.1. +This lets you switch to using OpenAPI at any time, or use your API definition with OpenAPI tools. +To convert your Fern Definition to OpenAPI, use the `fern-openapi` generator. + +Update your `generators.yml` file: + + +```yaml +- name: fernapi/fern-openapi + version: 0.0.31 + config: + format: yaml # options are yaml or json + output: + location: local-file-system + path: ../openapi # relative path to output location +``` + + diff --git a/fern/products/api-def/ferndef-pages/imports.mdx b/fern/products/api-def/ferndef-pages/imports.mdx new file mode 100644 index 00000000..d52749f8 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/imports.mdx @@ -0,0 +1,22 @@ +--- +title: Imports in Fern Definition +description: Use imports to reference API types and errors from other Fern Definition files. +--- + +Imports allow you to reference types and errors from other files. + +```yaml title="person.yml" +types: + Person: ... +``` + +```yaml title="family.yml" +imports: + person: ./path/to/person.yml +types: + Family: + properties: + people: list # use an imported type +``` + +Note that you can only import files that exist in your Fern Definition (i.e., in the same `definition/` folder). diff --git a/fern/products/api-def/ferndef-pages/overview.mdx b/fern/products/api-def/ferndef-pages/overview.mdx new file mode 100644 index 00000000..25b04a2d --- /dev/null +++ b/fern/products/api-def/ferndef-pages/overview.mdx @@ -0,0 +1,104 @@ +--- +title: What is a Fern Definition? +subtitle: "A Fern Definition is a set of YAML files that describe your API." +--- + +A Fern Definition is a set of YAML files that are the single source of truth for your API. You check your Fern Definition into your repo, +inside of which describes your API requests, responses, models, paths, methods, errors, and authentication scheme. + + + Want to use OpenAPI instead? No worries, we support that [as well](/learn/api-definition/introduction/what-is-an-api-definition#openapi-swagger) + + +## Fern Definition structure + +To initialize a Fern Definition, simply run: + +```sh +npm install -g fern-api +fern init +``` + +This will create the following folder structure in your project: + +```bash +fern/ +├─ fern.config.json # root-level configuration +├─ generators.yml # generators you're using +└─ definition/ + ├─ api.yml # API-level configuration + └─ imdb.yml # endpoints, types, and errors +``` + +## Definition file + +Each **Fern Definition** file may define: + +- **[Custom types](/learn/api-definition/fern/types)**. Use **custom types** to build your data model. +- **[Endpoints](/learn/api-definition/fern/endpoints)**. A **service** is a set of related REST endpoints. +- **[Errors](/learn/api-definition/fern/errors)**. An **error** represents a failed (non-200) response from an endpoint. +- **[Imports](/learn/api-definition/fern/imports)**. Use **imports** to share types across files. + +```yml imdb.yml maxLines=0 +service: + auth: false + base-path: /movies + endpoints: + createMovie: + docs: Add a movie to the database + method: POST + path: /create-movie + request: CreateMovieRequest + response: MovieId + + getMovie: + method: GET + path: /{movieId} + path-parameters: + movieId: MovieId + response: Movie + errors: + - NotFoundError + - UnauthorizedError + +types: + Movie: + properties: + title: string + rating: + type: double + docs: The rating scale from one to five stars + id: + type: MovieId + docs: The unique identifier for a movie + + CreateMovieRequest: + properties: + title: string + rating: double + +errors: + NotFoundError: + http: + statusCode: 404 + type: + properties: + id: MovieId + + UnauthorizedError: + http: + statusCode: 401 +``` + +## Why another format? + +Google built gRPC. Amazon built Smithy. Facebook built GraphQL. Palantir built +Conjure. These companies rejected OpenAPI in favor of a more concise API Definition Language. + +We built Fern to productize this design and make it accessible to all +software companies. + + + Despite being a different format for describing APIs, **you are never locked in to Fern.** It's easy to convert your + [Fern Definition to OpenAPI](/learn/api-definition/fern/export-openapi). + diff --git a/fern/products/api-def/ferndef-pages/packages.mdx b/fern/products/api-def/ferndef-pages/packages.mdx new file mode 100644 index 00000000..d6656456 --- /dev/null +++ b/fern/products/api-def/ferndef-pages/packages.mdx @@ -0,0 +1,153 @@ +--- +title: Packages in Fern Definition +description: Fern Definition enables the reuse of API type and error names across packages, and can configure the structure of your API documentation. +--- + +## What is a package? + +Every folder in your API definition is a package. + + +```bash +fern/ +├─ fern.config.json +├─ generators.yml +└─ definition/ # <--- root package + ├─ api.yml + ├─ projects.yml + └─ roles/ # <--- nested package + └─ admin.yml +``` + + +The generated SDK will match the hierarchy of your API definition. + + +```ts +const client = new Client(); + +// calling endpoint defined in projects.yml +client.projects.get(); + +// calling endpoint defined in roles/admin.yml +client.roles.admin.get(); +``` + + +## Package configuration + +Each package can have a special definition file called `__package__.yml`. Like any +other definition file, it can contain [imports](/learn/api-definition/fern/imports), +[types](/learn/api-definition/fern/types), [endpoints](/learn/api-definition/fern/endpoints), +and [errors](/learn/api-definition/fern/errors). + +Endpoints in `__package__.yml` will appear at the root of the package. +For example, the following generated SDK: + + +```ts +const client = new Client(); + +client.getProjects(); +``` + + +would have a `fern/` folder: + + +```bash {5} +fern/ +├─ fern.config.json +├─ generators.yml +└─ definition/ + ├─ __package__.yml + └─ roles.yml +``` + + +that contains the following `__package__.yml`: + + +```yaml +service: + base-path: "" + auth: false + endpoints: + getProjects: + method: GET + path: "" + response: list +``` + + +## Namespacing + +Each package has its own namespace. This means you can reuse type names and +error names across packages. + +This is useful when versioning your APIs. For example, when you want to +increment your API version, you can copy the existing API +to a new package and start making changes. If the new API version reuses +certain types or errors, that's okay because the two APIs live in different +packages. + + +```bash +fern/ +├─ fern.config.json +├─ generators.yml +└─ definition/ + ├─ api.yml + └─ roles/ + └─ v1/ + └─ admin.yml # type names can overlap with v2/admin.yml + └─ v2/ + └─ admin.yml +``` + + +## Navigation + +`__package__.yml` also allows you to configure the navigation order +of your services. This is relevant when you want to control the display +of your documentation. + +For example, let's say you have the following `fern/` folder: + + +```bash +fern/ +├─ fern.config.json +├─ generators.yml +└─ definition/ + ├─ projects.yml + ├─ roles.yml + └─ users.yml +``` + + +Your API will be sorted alphabetically: projects, roles, then users. If you +want to control the navigation, you can add a `__package__.yml` file +and configure the order: + + +```bash +fern/ +├─ fern.config.json +├─ generators.yml +└─ definition/ + ├─ __package__.yml # <--- New File + ├─ projects.yml + ├─ roles.yml + └─ users.yml +``` + + + +```yaml +navigation: + - users.yml + - roles.yml + - projects.yml +``` + \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/types.mdx b/fern/products/api-def/ferndef-pages/types.mdx new file mode 100644 index 00000000..f623832d --- /dev/null +++ b/fern/products/api-def/ferndef-pages/types.mdx @@ -0,0 +1,428 @@ +--- +title: Types in Fern Definition +description: Types describe the data model of your API. Fern has many built-in types and supports custom types, as well as extending and aliasing objects, and unions. +--- + +Types describe the data model of your API. + +## Built-in types + +| Type | Description | +|------|-------------| +| `string` | Basic string type | +| `integer` | Integer number type | +| `long` | Long integer type | +| `double` | Double precision floating point | +| `boolean` | Boolean true/false | +| `datetime` | An [RFC 3339, section 5.6 datetime](https://ijmacd.github.io/rfc3339-iso8601/). For example, `2017-07-21T17:32:28Z` | +| `date` | An RFC 3339, section 5.6 date (YYYY-MM-DD). For example, `2017-07-21` | +| `uuid` | UUID identifier | +| `base64` | Base64 encoded data | +| `list` | An ordered collection that allows duplicates, e.g., `list` | +| `set` | An unordered collection with unique elements, e.g., `set` | +| `map` | Key-value mapping, e.g., `map` | +| `optional` | Optional value, e.g., `optional` | +| `literal` | Literal value, e.g., `literal<"Plants">` | +| `file` | File upload type, e.g., [file uploads](/learn/api-definition/fern/endpoints/multipart) | +| `unknown` | Represents arbitrary JSON | + +## Custom types + +Creating your own types is easy in Fern! + +### Objects + +The most common custom types are **objects**. + +In Fern, you use the `"properties"` key to create an object: + +```yaml {3,8} +types: + Person: + properties: + name: string + address: Address + + Address: + properties: + line1: string + line2: optional + city: string + state: string + zip: string + country: literal<"USA"> +``` + +These represent JSON objects: + +```json +{ + "name": "Alice", + "address": { + "line1": "123 Happy Lane", + "city": "New York", + "state": "NY", + "zip": "10001", + "country": "USA" + } +} +``` + +You can also use **extends** to compose objects: + +```yaml {6} +types: + Pet: + properties: + name: string + Dog: + extends: Pet + properties: + breed: string +``` + +You can extend multiple objects: + +```yaml {3-5} +types: + GoldenRetriever: + extends: + - Dog + - Pet + properties: + isGoodBoy: boolean +``` + +### Aliases + +An Alias type is a renaming of an existing type. This is usually done for clarity. + +```yaml +types: + # UserId is an alias of string + UserId: string + + User: + properties: + id: UserId + name: string +``` + +### Enums + +An enum represents a string with a set of allowed values. + +In Fern, you use the `"enum"` key to create an enum: + +```yaml {3} +types: + WeatherReport: + enum: + - SUNNY + - CLOUDY + - RAINING + - SNOWING +``` + +Enum names are restricted to `A-Z`, `a-z`, `0-9`, and `_` to ensure that generated code can compile across all of the languages that Fern can output. If you have an enum that doesn't follow this convention, you can use the `"name"` key to specify a custom name: + +```yaml +types: + Operator: + enum: + - name: LESS_THAN # <--- the name that will be used in SDKs + value: '<' # <--- the value that will be serialized + - name: GREATER_THAN + value: '>' + - name: NOT_EQUAL + value: '!=' +``` + +### Discriminated Unions + +Fern supports tagged unions (a.k.a. discriminated unions). Unions are useful for +polymorphism. This is similar to the `oneOf` concept in OpenAPI. + +In Fern, you use the `"union"` key to create an union: + +```yaml {3-5} +types: + Animal: + union: + dog: Dog + cat: Cat + Dog: + properties: + likesToWoof: boolean + Cat: + properties: + likesToMeow: boolean +``` + +In JSON, unions have a **discriminant property** to differentiate between +different members of the union. By default, Fern uses `"type"` as the +discriminant property: + +```json +{ + "type": "dog", + "likesToWoof": true +} +``` + +You can customize the discriminant property using the "discriminant" key: + +```yaml {3} + types: + Animal: + discriminant: animalType + union: + dog: Dog + cat: Cat + Dog: + properties: + likesToWoof: boolean + Cat: + properties: + likesToMeow: boolean +``` + +This corresponds to a JSON object like this: + +```json +{ + "animalType": "dog", + "likesToWoof": true +} +``` + +### Undiscriminated Unions + +Undiscriminated unions are similar to discriminated unions, however you don't +need to define an explicit discriminant property. + +```yaml +MyUnion: + discriminated: false + union: + - string + - integer +``` + +### Generics + +Fern supports shallow generic objects, to minimize code duplication. You can +define a generic for reuse like so: + +```yaml +MySpecialMapItem: + properties: + key: Key, + value: Value, + diagnostics: string +``` + +Now, you can instantiate generic types as a type alias: + +```yml +StringIntegerMapItem: + type: Response + +StringStringMapItem: + type: Response +``` + +You can now freely use this type as if it were any other type! Note, generated +code will not use generics. The above example will be generated in typescript as: + +```typescript +type StringIntegerMapItem = { + key: string, + value: number, + diagnostics: string +} + +type StringStringMapItem = { + key: string, + value: string, + diagnostics: string +} +``` + +### Documenting types + +You can add documentation for types. These docs are passed into the compiler, +and are incredibly useful in the generated outputs (e.g., docstrings in SDKs). + + +```yaml +types: + Person: + docs: A person represents a human being + properties: + name: string + age: + docs: age in years + type: integer +``` + + + +```typescript +/** + * A person represents a human being + */ +interface Person { + name: string; + // age in years + age: number; +} +``` + + +### Validating types + +You can add validation constraints to your types (both aliases and references) to ensure data integrity. Validation constracts are automatically enforced in generated SDKs. + + +```yaml {8-11, 15-17} +types: + Person: + docs: A person represents a human being + properties: + name: + docs: The person's full name + type: string + validation: + minLength: 2 + maxLength: 100 + pattern: "^[A-Za-z ]+$" + age: + docs: Age in years + type: integer + validation: + min: 0 + max: 150 +``` + + + +```typescript +interface Person { + /** The person's full name */ + name: string; + /** Age in years */ + age: number; +} + +// Validation is automatically enforced when creating Person objects +const client = new YourApiClient(); +try { + const person = await client.createPerson({ + name: "A", // Fails minLength validation + age: -5, // Fails min validation + }); +} catch (error) { + if (error instanceof ValidationError) { + console.log(`Validation failed: ${error.message}`); + } +} +``` + + + + + +String types support several validation constraints. + +```yaml {4-6, 11-13, 16-19} +types: + Word: + type: string + validation: + minLength: 2 + maxLength: 26 + User: + properties: + email: + type: string + validation: + format: email + maxLength: 254 + username: + type: string + validation: + minLength: 3 + maxLength: 20 + pattern: "^[a-zA-Z0-9_]+$" +``` + + + Minimum number of characters required + + + + Maximum number of characters allowed + + + + Regular expression pattern that the string must match + + + + String format specification (e.g., "email", "uri", "date-time") + + + + + + +Number types (including `integer`, `long`, and `double`) support several validation constraints. + +```yaml {4-6, 12-15, 18-20} +types: + Age: + type: integer + validation: + min: 0 + max: 150 + Product: + properties: + name: string + price: + type: double + validation: + min: 0 + exclusiveMin: true + multipleOf: 0.01 + quantity: + type: integer + validation: + min: 1 + max: 1000 +``` + + + Minimum value (inclusive by default) + + + + Maximum value (inclusive by default) + + + + When true, the minimum value is exclusive (value must be greater than min) + + + + When true, the maximum value is exclusive (value must be less than max) + + + + Value must be a multiple of this number + + + + + + diff --git a/fern/products/api-def/ferndef-pages/webhooks.mdx b/fern/products/api-def/ferndef-pages/webhooks.mdx new file mode 100644 index 00000000..399c3c2a --- /dev/null +++ b/fern/products/api-def/ferndef-pages/webhooks.mdx @@ -0,0 +1,65 @@ +--- +title: Webhooks in the Fern Definition +description: Learn how to define webhooks in the Fern Definition +--- + +In Fern, you can specify webhooks in your API definition. The webhooks will be included +in both the generated SDKs and the API documentation. + +## Webhook definition + +Each webhook defines: + +1. **Method**: The HTTP Method that the webhook will use (either `GET` or `POST`) +2. **Headers**: The headers that the webhook will send +3. **Payload**: The schema of the webhook payload + + + ```yaml {2-10} + webhooks: + paymentNotification: + display-name: Payment Notification + docs: Receive a notification when a payment changes status + method: POST + headers: + X-Signature-Primary: + type: string + docs: An HMAC signature of the payload + payload: PaymentNotificationPayload + + types: + PaymentNotificationPayload: + discriminant: notificationType + union: + queued: QueuedPaymentNotification + processing: ProcessingPaymentNotification + completed: CompletedPaymentNotification + ``` + + +### Inlined payloads + +You can inline the schema of the payload by doing the following: + + + ```yaml + webhooks: + paymentNotification: + display-name: Payment Notification + docs: Receive a notification when a payment changes status + method: POST + headers: + X-Signature-Primary: + type: string + docs: An HMAC signature of the payload + payload: + name: PaymentNotificationPayload + properties: + id: + type: string + docs: The notification id + amount: double + currency: Currency + ``` + + diff --git a/fern/products/api-def/ferndef-pages/websocket.png b/fern/products/api-def/ferndef-pages/websocket.png new file mode 100644 index 0000000000000000000000000000000000000000..e7f3cc355ee7c8539a483c175d5b5c5e4c051d20 GIT binary patch literal 792611 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�`y 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≶wU0uSIKt2 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 SkH4X3|w~?3QlYJwH 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

t{B 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 }JmS!3h^=MR6=&$JjDdGm(` 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 )^E5>KSv5dU*##}p7rR<^9G3p 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%0DX&GP6D>ff(p}poH5*XBL7>^Di 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 proto/user_service.proto + + - name: Generate SDKs + uses: fern-api/action@v0 + with: + command: generate + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} +``` + +## Monitoring changes + +Track changes to your Protocol Buffer specifications: + +```yaml title="generators.yml" {4-9} +api: + specs: + - spec: proto/user_service.proto + change-detection: + enabled: true + breaking-changes: error + notifications: + slack: ${{ secrets.SLACK_WEBHOOK }} + email: team@yourcompany.com + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## Multi-service sync + +Sync different Protocol Buffer services for different components: + +```yaml title="generators.yml" {3-7, 12-16, 21-25} +environments: + user-service: + specs: + - spec: proto/user_service.proto + overlays: + - user-service-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: npm + package-name: "@yourcompany/user-service-sdk" + order-service: + specs: + - spec: proto/order_service.proto + overlays: + - order-service-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: npm + package-name: "@yourcompany/order-service-sdk" + payment-service: + specs: + - spec: proto/payment_service.proto + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: npm + package-name: "@yourcompany/payment-service-sdk" +``` + +## Buf integration + +Use Buf for Protocol Buffer management and sync: + +```yaml title="buf.yaml" +version: v1 +deps: + - buf.build/googleapis/googleapis + - buf.build/envoyproxy/protoc-gen-validate +lint: + use: + - DEFAULT + except: + - UNARY_RPC +breaking: + use: + - FILE +``` + +```yaml title=".github/workflows/buf-sync.yml" +name: Buf Sync + +on: + push: + paths: + - 'proto/**/*.proto' + - 'buf.yaml' + +jobs: + buf-sync: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Setup Buf + uses: bufbuild/buf-setup-action@v1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Lint Protocol Buffers + run: buf lint + + - name: Check for breaking changes + run: buf breaking --against '.git#branch=main' + + - name: Generate and push to Buf Registry + run: | + buf generate + buf push + env: + BUF_TOKEN: ${{ secrets.BUF_TOKEN }} + + - name: Generate SDKs with Fern + uses: fern-api/action@v0 + with: + command: generate + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} +``` + +## gRPC reflection sync + +For services with gRPC reflection enabled: + +```python title="scripts/sync_from_reflection.py" +import grpc +from grpc_reflection.v1alpha import reflection_pb2 +from grpc_reflection.v1alpha import reflection_pb2_grpc +import subprocess + +def sync_from_grpc_reflection(server_address, output_dir): + """Sync Protocol Buffer definitions from gRPC reflection""" + + channel = grpc.insecure_channel(server_address) + reflection_stub = reflection_pb2_grpc.ServerReflectionStub(channel) + + # List services + request = reflection_pb2.ServerReflectionRequest( + list_services="" + ) + + response = reflection_stub.ServerReflectionInfo(iter([request])) + + for resp in response: + if resp.HasField('list_services_response'): + for service in resp.list_services_response.service: + print(f"Found service: {service.name}") + + # Get file descriptor for service + file_request = reflection_pb2.ServerReflectionRequest( + file_containing_symbol=service.name + ) + + file_response = reflection_stub.ServerReflectionInfo(iter([file_request])) + + for file_resp in file_response: + if file_resp.HasField('file_descriptor_response'): + # Save descriptor to file + descriptor_path = f"{output_dir}/{service.name}.protoset" + with open(descriptor_path, 'wb') as f: + f.write(file_resp.file_descriptor_response.file_descriptor_proto[0]) + + # Convert to text format + proto_path = f"{output_dir}/{service.name}.proto" + subprocess.run([ + 'protoc', + '--decode_raw', + '--proto_path', output_dir, + descriptor_path + ], stdout=open(proto_path, 'w')) + +if __name__ == "__main__": + sync_from_grpc_reflection("localhost:50051", "proto/") +``` + +This ensures that any changes to your gRPC services are automatically reflected in your SDKs and documentation, maintaining consistency across your entire API ecosystem. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/extensions/audiences.mdx b/fern/products/api-def/grpc-pages/extensions/audiences.mdx new file mode 100644 index 00000000..8c18f6ac --- /dev/null +++ b/fern/products/api-def/grpc-pages/extensions/audiences.mdx @@ -0,0 +1,360 @@ +--- +title: Use audiences to filter your API +subtitle: Use `x-fern-audiences` to filter to relevant services, methods and messages +--- + +Audiences are a useful tool for segmenting your gRPC API for different consumers. Common examples of audiences include `public` +and `beta`. + + + Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, + nothing will be filtered. + + + + +The following example configures the SDK to filter to the `public` audience: + +```yaml title="generators.yml" {3-4} +groups: + sdks: + audiences: + - public + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + + + +The following example configures the docs to filter to the `public` audience: + +```yaml title="docs.yml" {3-4} +navigation: + - api: API Reference + audiences: + - public +``` + + + + + +## Filter services + +Add `x-fern-audiences` to services to control which services are included for specific audiences: + +```protobuf title="user_service.proto" +syntax = "proto3"; + +package userservice.v1; + +// Public user service available to all clients +service UserService { + option (x_fern_audiences) = "public"; + + rpc GetUser(GetUserRequest) returns (User); + rpc CreateUser(CreateUserRequest) returns (User); +} + +// Internal admin service for administrative operations +service AdminService { + option (x_fern_audiences) = "admin"; + + rpc ListAllUsers(ListAllUsersRequest) returns (ListAllUsersResponse); + rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty); + rpc BanUser(BanUserRequest) returns (google.protobuf.Empty); +} +``` + +## Filter individual methods + +You can filter specific methods within services: + +```protobuf title="mixed_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Public method available to all + rpc GetUser(GetUserRequest) returns (User) { + option (x_fern_audiences) = "public"; + } + + // Beta method only for beta testers + rpc GetUserAnalytics(GetUserAnalyticsRequest) returns (UserAnalytics) { + option (x_fern_audiences) = "beta"; + } + + // Internal method for debugging + rpc GetUserDebugInfo(GetUserDebugRequest) returns (UserDebugInfo) { + option (x_fern_audiences) = "internal"; + } +} +``` + +## Filter message fields + +Filter specific fields within message types: + +```protobuf title="user_messages.proto" +syntax = "proto3"; + +package userservice.v1; + +message User { + string id = 1; // Available to all audiences + string email = 2; // Available to all audiences + string name = 3; // Available to all audiences + + // Admin-only fields + string internal_id = 4 [(x_fern_audiences) = "admin"]; + repeated string permissions = 5 [(x_fern_audiences) = "admin"]; + google.protobuf.Timestamp created_at = 6 [(x_fern_audiences) = "admin"]; + + // Debug-only fields + map debug_metadata = 7 [(x_fern_audiences) = "debug"]; + string session_id = 8 [(x_fern_audiences) = "debug"]; +} +``` + +## Filter entire messages + +Filter entire message types to different audiences: + +```protobuf title="filtered_messages.proto" +syntax = "proto3"; + +package userservice.v1; + +// Public user data +message PublicUser { + option (x_fern_audiences) = "public"; + + string id = 1; + string name = 2; + string avatar_url = 3; +} + +// Extended user data for authenticated users +message AuthenticatedUser { + option (x_fern_audiences) = "authenticated"; + + string id = 1; + string name = 2; + string email = 3; + string phone = 4; + UserPreferences preferences = 5; +} + +// Full user data for administrators +message AdminUser { + option (x_fern_audiences) = "admin"; + + string id = 1; + string name = 2; + string email = 3; + string phone = 4; + UserPreferences preferences = 5; + repeated string roles = 6; + repeated Permission permissions = 7; + google.protobuf.Timestamp created_at = 8; + google.protobuf.Timestamp last_login = 9; + string created_by = 10; +} +``` + +## Filter enums and enum values + +Filter enum values based on audience: + +```protobuf title="user_enums.proto" +syntax = "proto3"; + +package userservice.v1; + +enum UserStatus { + USER_STATUS_UNSPECIFIED = 0; + + // Public statuses + USER_STATUS_ACTIVE = 1 [(x_fern_audiences) = "public"]; + USER_STATUS_INACTIVE = 2 [(x_fern_audiences) = "public"]; + + // Admin-only statuses + USER_STATUS_SUSPENDED = 3 [(x_fern_audiences) = "admin"]; + USER_STATUS_BANNED = 4 [(x_fern_audiences) = "admin"]; + USER_STATUS_PENDING_VERIFICATION = 5 [(x_fern_audiences) = "admin"]; + + // Internal debugging statuses + USER_STATUS_DEBUG = 6 [(x_fern_audiences) = "debug"]; + USER_STATUS_TEST = 7 [(x_fern_audiences) = "debug"]; +} + +enum OperationType { + OPERATION_TYPE_UNSPECIFIED = 0; + + // Available to beta users + OPERATION_TYPE_EXPERIMENTAL_FEATURE = 1 [(x_fern_audiences) = "beta"]; + OPERATION_TYPE_ADVANCED_ANALYTICS = 2 [(x_fern_audiences) = "beta"]; + + // Internal operations + OPERATION_TYPE_SYSTEM_MAINTENANCE = 3 [(x_fern_audiences) = "internal"]; +} +``` + +## Request/Response filtering + +Filter request and response messages based on audience: + +```protobuf title="request_response.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Method with different request/response based on audience + rpc GetUserProfile(GetUserProfileRequest) returns (GetUserProfileResponse); +} + +message GetUserProfileRequest { + string user_id = 1; + + // Admin can request additional data + bool include_internal_data = 2 [(x_fern_audiences) = "admin"]; + bool include_audit_log = 3 [(x_fern_audiences) = "admin"]; + + // Debug fields + bool include_debug_info = 4 [(x_fern_audiences) = "debug"]; +} + +message GetUserProfileResponse { + PublicUserProfile public_profile = 1; // Always included + + AdminUserProfile admin_profile = 2 [(x_fern_audiences) = "admin"]; // Admin only + repeated AuditLogEntry audit_log = 3 [(x_fern_audiences) = "admin"]; // Admin only + + DebugInfo debug_info = 4 [(x_fern_audiences) = "debug"]; // Debug only +} +``` + +## Conditional method definitions + +Use audiences to expose different versions of methods: + +```protobuf title="conditional_methods.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Basic user creation for public + rpc CreateUser(CreateUserRequest) returns (User) { + option (x_fern_audiences) = "public"; + } + + // Enhanced user creation for admin + rpc CreateUserWithPermissions(CreateUserWithPermissionsRequest) returns (AdminUser) { + option (x_fern_audiences) = "admin"; + } + + // Bulk user creation for enterprise + rpc BulkCreateUsers(BulkCreateUsersRequest) returns (BulkCreateUsersResponse) { + option (x_fern_audiences) = "enterprise"; + } + + // Beta features + rpc CreateUserWithAI(CreateUserWithAIRequest) returns (User) { + option (x_fern_audiences) = "beta"; + } +} +``` + +## Streaming method filtering + +Filter streaming methods by audience: + +```protobuf title="streaming_methods.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserStreamingService { + // Public event streaming + rpc StreamUserEvents(StreamUserEventsRequest) returns (stream PublicUserEvent) { + option (x_fern_audiences) = "public"; + } + + // Admin event streaming with more details + rpc StreamAdminEvents(StreamAdminEventsRequest) returns (stream AdminEvent) { + option (x_fern_audiences) = "admin"; + } + + // Internal debugging stream + rpc StreamDebugEvents(StreamDebugEventsRequest) returns (stream DebugEvent) { + option (x_fern_audiences) = "debug"; + } +} +``` + +## Multiple audience support + +Assign multiple audiences to services or methods: + +```protobuf title="multiple_audiences.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Available to both public and authenticated users + rpc GetPublicUserInfo(GetPublicUserInfoRequest) returns (PublicUserInfo) { + option (x_fern_audiences) = "public,authenticated"; + } + + // Available to admin and support staff + rpc GetUserSupportInfo(GetUserSupportInfoRequest) returns (UserSupportInfo) { + option (x_fern_audiences) = "admin,support"; + } + + // Available to beta and internal users + rpc TestNewFeature(TestNewFeatureRequest) returns (TestNewFeatureResponse) { + option (x_fern_audiences) = "beta,internal"; + } +} +``` + +## Using custom extensions + +Define custom Fern extensions for audience filtering: + +```protobuf title="custom_extensions.proto" +syntax = "proto3"; + +package userservice.v1; + +import "google/protobuf/descriptor.proto"; + +// Define custom option for audience filtering +extend google.protobuf.ServiceOptions { + string x_fern_audiences = 50001; +} + +extend google.protobuf.MethodOptions { + string x_fern_audiences = 50002; +} + +extend google.protobuf.FieldOptions { + string x_fern_audiences = 50003; +} + +extend google.protobuf.MessageOptions { + string x_fern_audiences = 50004; +} + +extend google.protobuf.EnumValueOptions { + string x_fern_audiences = 50005; +} +``` + +This allows you to create different views of the same gRPC API for different types of consumers, ensuring each audience only sees the services, methods, and data relevant to their use case. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/extensions/method-names.mdx b/fern/products/api-def/grpc-pages/extensions/method-names.mdx new file mode 100644 index 00000000..3fe83e3a --- /dev/null +++ b/fern/products/api-def/grpc-pages/extensions/method-names.mdx @@ -0,0 +1,330 @@ +--- +title: SDK Method Names +subtitle: Use `x-fern-sdk-method-name` to customize SDK method names for gRPC methods +--- + +By default, Fern generates SDK method names based on your gRPC service and method names. You can override this behavior using the `x-fern-sdk-method-name` extension. + +## Customize method names + +Use `x-fern-sdk-method-name` to specify custom method names for your gRPC methods: + +```protobuf title="user_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Customize the SDK method name + rpc GetUserById(GetUserByIdRequest) returns (User) { + option (x_fern_sdk_method_name) = "getUser"; + } + + // Another customized method name + rpc CreateNewUser(CreateNewUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "create"; + } + + // Remove redundant service name from method + rpc UpdateUserProfile(UpdateUserProfileRequest) returns (User) { + option (x_fern_sdk_method_name) = "updateProfile"; + } +} +``` + +This will generate SDK methods like: + +```typescript +// Instead of client.userService.getUserById() +const user = await client.userService.getUser({ id: "user_123" }); + +// Instead of client.userService.createNewUser() +const newUser = await client.userService.create({ userData: {...} }); + +// Instead of client.userService.updateUserProfile() +const updatedUser = await client.userService.updateProfile({ profileData: {...} }); +``` + +## Method naming conventions + +Follow these conventions when naming SDK methods: + +### CRUD operations +Use standard CRUD naming for common operations: + +```protobuf title="crud_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc CreateUser(CreateUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "create"; + } + + rpc GetUser(GetUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "get"; + } + + rpc UpdateUser(UpdateUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "update"; + } + + rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty) { + option (x_fern_sdk_method_name) = "delete"; + } + + rpc ListUsers(ListUsersRequest) returns (ListUsersResponse) { + option (x_fern_sdk_method_name) = "list"; + } +} +``` + +### Search and query operations +Use descriptive names for search operations: + +```protobuf title="search_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc SearchUsers(SearchUsersRequest) returns (SearchUsersResponse) { + option (x_fern_sdk_method_name) = "search"; + } + + rpc FindUserByEmail(FindUserByEmailRequest) returns (User) { + option (x_fern_sdk_method_name) = "findByEmail"; + } + + rpc QueryUsersByRole(QueryUsersByRoleRequest) returns (QueryUsersResponse) { + option (x_fern_sdk_method_name) = "queryByRole"; + } +} +``` + +### Action operations +Use action-oriented names for business operations: + +```protobuf title="action_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc ActivateUserAccount(ActivateUserAccountRequest) returns (User) { + option (x_fern_sdk_method_name) = "activate"; + } + + rpc DeactivateUserAccount(DeactivateUserAccountRequest) returns (User) { + option (x_fern_sdk_method_name) = "deactivate"; + } + + rpc ResetUserPassword(ResetUserPasswordRequest) returns (ResetPasswordResponse) { + option (x_fern_sdk_method_name) = "resetPassword"; + } + + rpc SendVerificationEmail(SendVerificationEmailRequest) returns (google.protobuf.Empty) { + option (x_fern_sdk_method_name) = "sendVerification"; + } +} +``` + +## Language-specific method names + +You can specify different method names for different programming languages: + +```protobuf title="language_specific.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc GetUserPreferences(GetUserPreferencesRequest) returns (UserPreferences) { + option (x_fern_sdk_method_name_python) = "get_preferences"; + option (x_fern_sdk_method_name_typescript) = "getPreferences"; + option (x_fern_sdk_method_name_go) = "GetPreferences"; + option (x_fern_sdk_method_name_java) = "getPreferences"; + option (x_fern_sdk_method_name_csharp) = "GetPreferences"; + } + + rpc UpdateUserPreferences(UpdateUserPreferencesRequest) returns (UserPreferences) { + option (x_fern_sdk_method_name_python) = "update_preferences"; + option (x_fern_sdk_method_name_typescript) = "updatePreferences"; + option (x_fern_sdk_method_name_go) = "UpdatePreferences"; + option (x_fern_sdk_method_name_java) = "updatePreferences"; + option (x_fern_sdk_method_name_csharp) = "UpdatePreferences"; + } +} +``` + +## Streaming method names + +For streaming methods, use appropriate naming: + +```protobuf title="streaming_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserStreamingService { + // Server streaming + rpc StreamUserEvents(StreamUserEventsRequest) returns (stream UserEvent) { + option (x_fern_sdk_method_name) = "streamEvents"; + } + + // Client streaming + rpc UploadUserData(stream UploadUserDataRequest) returns (UploadUserDataResponse) { + option (x_fern_sdk_method_name) = "upload"; + } + + // Bidirectional streaming + rpc ChatWithUser(stream ChatMessage) returns (stream ChatMessage) { + option (x_fern_sdk_method_name) = "chat"; + } + + // Real-time notifications + rpc SubscribeToNotifications(SubscribeRequest) returns (stream Notification) { + option (x_fern_sdk_method_name) = "subscribe"; + } +} +``` + +## Service-level naming + +Customize the service name for better SDK organization: + +```protobuf title="service_naming.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserManagementService { + option (x_fern_sdk_service_name) = "users"; + + rpc CreateUser(CreateUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "create"; + } + + rpc GetUser(GetUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "get"; + } +} + +service AuthenticationService { + option (x_fern_sdk_service_name) = "auth"; + + rpc LoginUser(LoginUserRequest) returns (LoginResponse) { + option (x_fern_sdk_method_name) = "login"; + } + + rpc LogoutUser(LogoutUserRequest) returns (google.protobuf.Empty) { + option (x_fern_sdk_method_name) = "logout"; + } +} +``` + +This generates cleaner SDK interfaces: + +```typescript +// Instead of client.userManagementService.createUser() +await client.users.create({ userData: {...} }); + +// Instead of client.authenticationService.loginUser() +await client.auth.login({ credentials: {...} }); +``` + +## Handling method overloading + +For services with similar methods, use descriptive names to avoid conflicts: + +```protobuf title="overloaded_methods.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Get user by ID + rpc GetUser(GetUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "get"; + } + + // Get user by email + rpc GetUserByEmail(GetUserByEmailRequest) returns (User) { + option (x_fern_sdk_method_name) = "getByEmail"; + } + + // Get user by username + rpc GetUserByUsername(GetUserByUsernameRequest) returns (User) { + option (x_fern_sdk_method_name) = "getByUsername"; + } + + // Get multiple users + rpc GetUsers(GetUsersRequest) returns (GetUsersResponse) { + option (x_fern_sdk_method_name) = "getMany"; + } +} +``` + +## Async method naming + +For long-running operations, consider async naming: + +```protobuf title="async_methods.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Quick operation + rpc GetUser(GetUserRequest) returns (User) { + option (x_fern_sdk_method_name) = "get"; + } + + // Long-running operation + rpc GenerateUserReport(GenerateUserReportRequest) returns (Operation) { + option (x_fern_sdk_method_name) = "generateReportAsync"; + } + + // Batch operation + rpc BatchUpdateUsers(BatchUpdateUsersRequest) returns (Operation) { + option (x_fern_sdk_method_name) = "batchUpdateAsync"; + } +} +``` + +## Grouping related methods + +Use consistent naming for related operations: + +```protobuf title="grouped_methods.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + // Profile operations + rpc GetUserProfile(GetUserProfileRequest) returns (UserProfile) { + option (x_fern_sdk_method_name) = "getProfile"; + } + + rpc UpdateUserProfile(UpdateUserProfileRequest) returns (UserProfile) { + option (x_fern_sdk_method_name) = "updateProfile"; + } + + rpc DeleteUserProfile(DeleteUserProfileRequest) returns (google.protobuf.Empty) { + option (x_fern_sdk_method_name) = "deleteProfile"; + } + + // Settings operations + rpc GetUserSettings(GetUserSettingsRequest) returns (UserSettings) { + option (x_fern_sdk_method_name) = "getSettings"; + } + + rpc UpdateUserSettings(UpdateUserSettingsRequest) returns (UserSettings) { + option (x_fern_sdk_method_name) = "updateSettings"; + } +} +``` + +This ensures method names follow the conventions of each target language while maintaining clear and intuitive APIs for developers. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/extensions/others.mdx b/fern/products/api-def/grpc-pages/extensions/others.mdx new file mode 100644 index 00000000..56d7dbf7 --- /dev/null +++ b/fern/products/api-def/grpc-pages/extensions/others.mdx @@ -0,0 +1,403 @@ +--- +title: Other Extensions +subtitle: Additional Fern extensions for gRPC specifications +--- + +Fern supports various extensions to enhance your gRPC specifications and improve the generated SDKs and documentation. + +## `x-fern-ignore` + +Use `x-fern-ignore` to exclude specific services, methods or messages from SDK generation: + +```protobuf title="user_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc GetUser(GetUserRequest) returns (User); + + // Exclude internal debugging method + rpc DebugUserData(DebugUserRequest) returns (DebugUserResponse) { + option (x_fern_ignore) = true; + } + + // Exclude experimental method + rpc ExperimentalFeature(ExperimentalRequest) returns (ExperimentalResponse) { + option (x_fern_ignore) = true; + } +} + +// Exclude internal message from SDK +message InternalUserData { + option (x_fern_ignore) = true; + + string internal_id = 1; + repeated string debug_flags = 2; + map system_metadata = 3; +} +``` + +## `x-fern-examples` + +Provide additional examples for better SDK documentation: + +```protobuf title="user_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc CreateUser(CreateUserRequest) returns (User) { + option (x_fern_examples) = '{ + "StandardUser": { + "description": "Create a regular user account", + "request": { + "email": "john@example.com", + "name": "John Doe", + "age": 30, + "preferences": { + "theme": "dark", + "notifications": true + } + }, + "response": { + "id": "user_123", + "email": "john@example.com", + "name": "John Doe", + "created_at": "2024-01-15T10:30:00Z" + } + }, + "AdminUser": { + "description": "Create an admin user with special permissions", + "request": { + "email": "admin@example.com", + "name": "Admin User", + "role": "admin", + "permissions": ["read", "write", "delete"] + }, + "response": { + "id": "user_456", + "email": "admin@example.com", + "name": "Admin User", + "role": "admin", + "created_at": "2024-01-15T10:30:00Z" + } + } + }'; + } +} +``` + +## `x-fern-pagination` + +Configure pagination for methods that return lists: + +```protobuf title="pagination_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc ListUsers(ListUsersRequest) returns (ListUsersResponse) { + option (x_fern_pagination) = '{ + "cursor": "page_token", + "results": "users", + "next_cursor": "next_page_token", + "has_next_page": "has_more" + }'; + } +} + +message ListUsersRequest { + int32 page_size = 1; + string page_token = 2; + string filter = 3; +} + +message ListUsersResponse { + repeated User users = 1; + string next_page_token = 2; + bool has_more = 3; + int32 total_count = 4; +} +``` + +## `x-fern-retry` + +Configure retry behavior for methods: + +```protobuf title="retry_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc ProcessPayment(ProcessPaymentRequest) returns (PaymentResult) { + option (x_fern_retry) = '{ + "max_attempts": 3, + "exponential_backoff": true, + "initial_delay_ms": 1000, + "max_delay_ms": 30000, + "retry_on_status": ["UNAVAILABLE", "DEADLINE_EXCEEDED", "INTERNAL"] + }'; + } + + rpc UploadFile(UploadFileRequest) returns (UploadFileResponse) { + option (x_fern_retry) = '{ + "max_attempts": 5, + "exponential_backoff": true, + "initial_delay_ms": 2000, + "max_delay_ms": 60000 + }'; + } +} +``` + +## `x-fern-timeout` + +Configure timeout settings for methods: + +```protobuf title="timeout_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc GenerateReport(GenerateReportRequest) returns (ReportResult) { + option (x_fern_timeout) = '{ + "seconds": 300, + "description": "Report generation can take up to 5 minutes" + }'; + } + + rpc QuickUserLookup(UserLookupRequest) returns (User) { + option (x_fern_timeout) = '{ + "seconds": 5, + "description": "Quick lookup should complete within 5 seconds" + }'; + } +} +``` + +## `x-fern-error-handling` + +Configure error handling for methods: + +```protobuf title="error_handling_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc CreateUser(CreateUserRequest) returns (User) { + option (x_fern_error_handling) = '{ + "ALREADY_EXISTS": { + "error_name": "UserAlreadyExistsError", + "user_friendly_message": "A user with this email already exists" + }, + "INVALID_ARGUMENT": { + "error_name": "ValidationError", + "user_friendly_message": "Please check your input and try again" + }, + "RESOURCE_EXHAUSTED": { + "error_name": "RateLimitError", + "retry_after_seconds": 60 + } + }'; + } +} +``` + +## `x-fern-availability` + +Mark features as available in specific SDK versions: + +```protobuf title="availability_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc GetUser(GetUserRequest) returns (User); + + rpc GetUserAnalytics(GetUserAnalyticsRequest) returns (UserAnalytics) { + option (x_fern_availability) = '{ + "status": "beta", + "message": "This feature is in beta and may change" + }'; + } + + rpc ExperimentalSearch(ExperimentalSearchRequest) returns (SearchResults) { + option (x_fern_availability) = '{ + "status": "experimental", + "message": "This is an experimental feature and may be removed" + }'; + } +} +``` + +## `x-fern-streaming` + +Mark methods as streaming for appropriate SDK generation: + +```protobuf title="streaming_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + rpc StreamEvents(StreamEventsRequest) returns (stream Event) { + option (x_fern_streaming) = '{ + "type": "server_streaming", + "termination": "client_closes" + }'; + } + + rpc UploadData(stream UploadDataRequest) returns (UploadResult) { + option (x_fern_streaming) = '{ + "type": "client_streaming", + "termination": "client_closes" + }'; + } + + rpc Chat(stream ChatMessage) returns (stream ChatMessage) { + option (x_fern_streaming) = '{ + "type": "bidirectional_streaming", + "termination": "either_closes" + }'; + } +} +``` + +## `x-fern-server-name` + +Specify custom names for different server environments: + +```protobuf title="server_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + option (x_fern_server_name_production) = "Production"; + option (x_fern_server_name_staging) = "Staging"; + option (x_fern_server_name_development) = "Development"; + + rpc GetUser(GetUserRequest) returns (User); +} +``` + +## `x-fern-base-path` + +Configure base paths for generated SDK clients: + +```protobuf title="base_path_service.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + option (x_fern_base_path) = "/api/v1"; + + rpc GetUser(GetUserRequest) returns (User); +} +``` + +## `x-fern-sdk-group-name` + +Group related services in the SDK: + +```protobuf title="grouped_services.proto" +syntax = "proto3"; + +package userservice.v1; + +service UserService { + option (x_fern_sdk_group_name) = "users"; + + rpc CreateUser(CreateUserRequest) returns (User); + rpc GetUser(GetUserRequest) returns (User); +} + +service UserProfileService { + option (x_fern_sdk_group_name) = "users"; + + rpc GetProfile(GetProfileRequest) returns (UserProfile); + rpc UpdateProfile(UpdateProfileRequest) returns (UserProfile); +} + +service AuthService { + option (x_fern_sdk_group_name) = "auth"; + + rpc Login(LoginRequest) returns (LoginResponse); + rpc Logout(LogoutRequest) returns (google.protobuf.Empty); +} +``` + +This generates SDKs with grouped services: + +```typescript +client.users.createUser(...) +client.users.getUser(...) +client.users.getProfile(...) +client.users.updateProfile(...) +client.auth.login(...) +client.auth.logout(...) +``` + +## `x-fern-union-naming` + +Configure naming for oneof fields in SDKs: + +```protobuf title="union_naming.proto" +syntax = "proto3"; + +package userservice.v1; + +message NotificationTarget { + oneof target { + option (x_fern_union_naming) = "discriminated"; + + string user_id = 1 [(x_fern_parameter_name) = "userId"]; + string group_id = 2 [(x_fern_parameter_name) = "groupId"]; + BroadcastTarget broadcast = 3; + } +} +``` + +## `x-fern-validation` + +Add validation rules for message fields: + +```protobuf title="validation_service.proto" +syntax = "proto3"; + +package userservice.v1; + +message CreateUserRequest { + string email = 1 [ + (x_fern_validation) = '{ + "format": "email", + "required": true + }' + ]; + + string name = 2 [ + (x_fern_validation) = '{ + "min_length": 1, + "max_length": 100, + "required": true + }' + ]; + + int32 age = 3 [ + (x_fern_validation) = '{ + "minimum": 0, + "maximum": 120 + }' + ]; +} +``` + +These extensions help you create more robust and user-friendly SDKs while maintaining full control over the generated code structure and behavior. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/extensions/parameter-names.mdx b/fern/products/api-def/grpc-pages/extensions/parameter-names.mdx new file mode 100644 index 00000000..de31f385 --- /dev/null +++ b/fern/products/api-def/grpc-pages/extensions/parameter-names.mdx @@ -0,0 +1,302 @@ +--- +title: Parameter Names +subtitle: Use `x-fern-parameter-name` to customize SDK parameter names for gRPC message fields +--- + +By default, Fern uses the field names from your Protocol Buffer message definitions as SDK parameter names. You can customize these using the `x-fern-parameter-name` extension. + +## Customize field names + +Use `x-fern-parameter-name` to specify custom parameter names for message fields: + +```protobuf title="user_service.proto" +syntax = "proto3"; + +package userservice.v1; + +message CreateUserRequest { + string email_address = 1 [(x_fern_parameter_name) = "email"]; + string full_name = 2 [(x_fern_parameter_name) = "name"]; + int32 age_in_years = 3 [(x_fern_parameter_name) = "age"]; + string phone_number = 4 [(x_fern_parameter_name) = "phone"]; + UserPreferences user_preferences = 5 [(x_fern_parameter_name) = "preferences"]; +} + +message User { + string user_id = 1 [(x_fern_parameter_name) = "id"]; + string email_address = 2 [(x_fern_parameter_name) = "email"]; + string full_name = 3 [(x_fern_parameter_name) = "name"]; + google.protobuf.Timestamp created_timestamp = 4 [(x_fern_parameter_name) = "createdAt"]; + google.protobuf.Timestamp updated_timestamp = 5 [(x_fern_parameter_name) = "updatedAt"]; +} +``` + +This generates SDK methods with cleaner parameter names: + +```typescript +// Instead of email_address, full_name, age_in_years, phone_number, user_preferences +await client.users.create({ + email: "john@example.com", + name: "John Doe", + age: 30, + phone: "+1-555-0123", + preferences: { theme: "dark" } +}); +``` + +## Language-specific parameter names + +You can specify different parameter names for different programming languages: + +```protobuf title="language_specific.proto" +syntax = "proto3"; + +package userservice.v1; + +message SearchUsersRequest { + string search_query = 1 [ + (x_fern_parameter_name_python) = "search_query", + (x_fern_parameter_name_typescript) = "searchQuery", + (x_fern_parameter_name_go) = "SearchQuery", + (x_fern_parameter_name_java) = "searchQuery", + (x_fern_parameter_name_csharp) = "SearchQuery" + ]; + + int32 page_size = 2 [ + (x_fern_parameter_name_python) = "page_size", + (x_fern_parameter_name_typescript) = "pageSize", + (x_fern_parameter_name_go) = "PageSize", + (x_fern_parameter_name_java) = "pageSize", + (x_fern_parameter_name_csharp) = "PageSize" + ]; + + string page_token = 3 [ + (x_fern_parameter_name_python) = "page_token", + (x_fern_parameter_name_typescript) = "pageToken", + (x_fern_parameter_name_go) = "PageToken", + (x_fern_parameter_name_java) = "pageToken", + (x_fern_parameter_name_csharp) = "PageToken" + ]; +} +``` + +## Nested message naming + +Customize parameter names for nested message fields: + +```protobuf title="nested_messages.proto" +syntax = "proto3"; + +package userservice.v1; + +message CreateUserRequest { + UserProfile user_profile = 1 [(x_fern_parameter_name) = "profile"]; + ContactInfo contact_info = 2 [(x_fern_parameter_name) = "contact"]; + AccountSettings account_settings = 3 [(x_fern_parameter_name) = "settings"]; +} + +message UserProfile { + string first_name = 1 [(x_fern_parameter_name) = "firstName"]; + string last_name = 2 [(x_fern_parameter_name) = "lastName"]; + string display_name = 3 [(x_fern_parameter_name) = "displayName"]; + string bio_text = 4 [(x_fern_parameter_name) = "bio"]; + string avatar_url = 5 [(x_fern_parameter_name) = "avatarUrl"]; +} + +message ContactInfo { + string email_address = 1 [(x_fern_parameter_name) = "email"]; + string phone_number = 2 [(x_fern_parameter_name) = "phone"]; + Address mailing_address = 3 [(x_fern_parameter_name) = "address"]; +} + +message Address { + string street_address = 1 [(x_fern_parameter_name) = "street"]; + string city_name = 2 [(x_fern_parameter_name) = "city"]; + string state_province = 3 [(x_fern_parameter_name) = "state"]; + string postal_code = 4 [(x_fern_parameter_name) = "zipCode"]; + string country_code = 5 [(x_fern_parameter_name) = "country"]; +} +``` + +## Repeated field naming + +Handle repeated fields with custom naming: + +```protobuf title="repeated_fields.proto" +syntax = "proto3"; + +package userservice.v1; + +message User { + string user_id = 1 [(x_fern_parameter_name) = "id"]; + repeated string role_names = 2 [(x_fern_parameter_name) = "roles"]; + repeated string permission_codes = 3 [(x_fern_parameter_name) = "permissions"]; + repeated SocialAccount social_accounts = 4 [(x_fern_parameter_name) = "socialAccounts"]; + repeated string tag_list = 5 [(x_fern_parameter_name) = "tags"]; +} + +message SocialAccount { + string platform_name = 1 [(x_fern_parameter_name) = "platform"]; + string account_handle = 2 [(x_fern_parameter_name) = "handle"]; + string profile_url = 3 [(x_fern_parameter_name) = "url"]; + bool is_verified = 4 [(x_fern_parameter_name) = "verified"]; +} + +message BatchCreateUsersRequest { + repeated CreateUserRequest user_requests = 1 [(x_fern_parameter_name) = "users"]; + bool send_welcome_email = 2 [(x_fern_parameter_name) = "sendWelcomeEmail"]; + bool skip_validation = 3 [(x_fern_parameter_name) = "skipValidation"]; +} +``` + +## Map field naming + +Customize names for map fields: + +```protobuf title="map_fields.proto" +syntax = "proto3"; + +package userservice.v1; + +message UserPreferences { + map notification_settings = 1 [(x_fern_parameter_name) = "notifications"]; + map feature_flags = 2 [(x_fern_parameter_name) = "features"]; + map display_settings = 3 [(x_fern_parameter_name) = "display"]; + map theme_overrides = 4 [(x_fern_parameter_name) = "themes"]; +} + +message MetricsData { + map performance_metrics = 1 [(x_fern_parameter_name) = "performance"]; + map usage_counters = 2 [(x_fern_parameter_name) = "usage"]; + map event_timestamps = 3 [(x_fern_parameter_name) = "events"]; +} +``` + +## Optional and required field naming + +Customize names for optional and required fields: + +```protobuf title="optional_fields.proto" +syntax = "proto3"; + +package userservice.v1; + +message UpdateUserRequest { + // Required fields + string user_id = 1 [(x_fern_parameter_name) = "id"]; + + // Optional fields with custom names + optional string email_address = 2 [(x_fern_parameter_name) = "email"]; + optional string full_name = 3 [(x_fern_parameter_name) = "name"]; + optional int32 age_in_years = 4 [(x_fern_parameter_name) = "age"]; + optional string profile_picture_url = 5 [(x_fern_parameter_name) = "avatarUrl"]; + + // Field mask for partial updates + google.protobuf.FieldMask update_mask = 6 [(x_fern_parameter_name) = "updateMask"]; +} +``` + +## Oneof field naming + +Handle oneof fields with meaningful names: + +```protobuf title="oneof_fields.proto" +syntax = "proto3"; + +package userservice.v1; + +message SearchRequest { + oneof search_criteria { + string search_by_email = 1 [(x_fern_parameter_name) = "email"]; + string search_by_username = 2 [(x_fern_parameter_name) = "username"]; + string search_by_phone = 3 [(x_fern_parameter_name) = "phone"]; + UserIdSearch search_by_id = 4 [(x_fern_parameter_name) = "id"]; + } + + SearchOptions search_options = 5 [(x_fern_parameter_name) = "options"]; +} + +message UserIdSearch { + string user_id = 1 [(x_fern_parameter_name) = "id"]; + bool include_deleted = 2 [(x_fern_parameter_name) = "includeDeleted"]; +} + +message NotificationRequest { + oneof notification_target { + string target_user_id = 1 [(x_fern_parameter_name) = "userId"]; + string target_group_id = 2 [(x_fern_parameter_name) = "groupId"]; + BroadcastTarget target_broadcast = 3 [(x_fern_parameter_name) = "broadcast"]; + } + + string message_content = 4 [(x_fern_parameter_name) = "message"]; + NotificationPriority priority_level = 5 [(x_fern_parameter_name) = "priority"]; +} +``` + +## Timestamp and duration naming + +Customize names for time-related fields: + +```protobuf title="time_fields.proto" +syntax = "proto3"; + +package userservice.v1; + +message UserSession { + string session_id = 1 [(x_fern_parameter_name) = "id"]; + string user_id = 2 [(x_fern_parameter_name) = "userId"]; + google.protobuf.Timestamp created_timestamp = 3 [(x_fern_parameter_name) = "createdAt"]; + google.protobuf.Timestamp last_accessed_timestamp = 4 [(x_fern_parameter_name) = "lastAccessedAt"]; + google.protobuf.Timestamp expires_timestamp = 5 [(x_fern_parameter_name) = "expiresAt"]; + google.protobuf.Duration session_duration = 6 [(x_fern_parameter_name) = "duration"]; + google.protobuf.Duration idle_timeout = 7 [(x_fern_parameter_name) = "idleTimeout"]; +} + +message ScheduledTask { + string task_id = 1 [(x_fern_parameter_name) = "id"]; + google.protobuf.Timestamp scheduled_time = 2 [(x_fern_parameter_name) = "scheduledAt"]; + google.protobuf.Duration execution_timeout = 3 [(x_fern_parameter_name) = "timeout"]; + google.protobuf.Duration retry_delay = 4 [(x_fern_parameter_name) = "retryDelay"]; +} +``` + +## Complex nested naming + +Handle complex nested structures: + +```protobuf title="complex_nested.proto" +syntax = "proto3"; + +package userservice.v1; + +message CreateOrderRequest { + OrderDetails order_details = 1 [(x_fern_parameter_name) = "order"]; + PaymentInfo payment_info = 2 [(x_fern_parameter_name) = "payment"]; + ShippingInfo shipping_info = 3 [(x_fern_parameter_name) = "shipping"]; +} + +message OrderDetails { + repeated OrderItem order_items = 1 [(x_fern_parameter_name) = "items"]; + string promo_code = 2 [(x_fern_parameter_name) = "promoCode"]; + string special_instructions = 3 [(x_fern_parameter_name) = "instructions"]; +} + +message OrderItem { + string product_id = 1 [(x_fern_parameter_name) = "productId"]; + int32 quantity_ordered = 2 [(x_fern_parameter_name) = "quantity"]; + double unit_price = 3 [(x_fern_parameter_name) = "price"]; + repeated string product_options = 4 [(x_fern_parameter_name) = "options"]; +} + +message PaymentInfo { + oneof payment_method { + CreditCardInfo credit_card_info = 1 [(x_fern_parameter_name) = "creditCard"]; + PayPalInfo paypal_info = 2 [(x_fern_parameter_name) = "paypal"]; + BankTransferInfo bank_transfer_info = 3 [(x_fern_parameter_name) = "bankTransfer"]; + } + + BillingAddress billing_address = 4 [(x_fern_parameter_name) = "billingAddress"]; +} +``` + +Using custom parameter names ensures consistent naming conventions across your SDK while maintaining compatibility with your existing Protocol Buffer schemas. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/overrides.mdx b/fern/products/api-def/grpc-pages/overrides.mdx new file mode 100644 index 00000000..beda30a9 --- /dev/null +++ b/fern/products/api-def/grpc-pages/overrides.mdx @@ -0,0 +1,432 @@ +--- +title: Overlay Customizations +subtitle: Use overlay files to modify your gRPC specifications without editing the original Proto files +--- + +Overlays allow you to modify your gRPC specifications without directly editing the original Protocol Buffer files. This is useful for: +- Adding Fern-specific extensions +- Customizing SDK method and parameter names +- Adding examples and documentation +- Configuring audiences and filtering + +## Configure overlays + +To use overlays, add them to your `generators.yml` file: + +```yaml title="generators.yml" {3-5} +api: + specs: + - spec: proto/user_service.proto + overlays: + - overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## Overlay file structure + +Overlay files use Protocol Buffer text format with Fern extensions: + +```protobuf title="overlay.yml" +# Add SDK method names to existing gRPC methods +service UserService { + rpc CreateUser { + option (x_fern_sdk_method_name) = "create"; + } + + rpc GetUser { + option (x_fern_sdk_method_name) = "get"; + } + + rpc ListUsers { + option (x_fern_sdk_method_name) = "list"; + option (x_fern_pagination) = '{ + "cursor": "page_token", + "results": "users", + "next_cursor": "next_page_token" + }'; + } +} +``` + +## Add method names + +Override SDK method names for better developer experience: + +```protobuf title="overlay.yml" +service UserService { + rpc GetUserById { + option (x_fern_sdk_method_name) = "getUser"; + } + + rpc CreateNewUser { + option (x_fern_sdk_method_name) = "create"; + } + + rpc UpdateUserProfile { + option (x_fern_sdk_method_name) = "updateProfile"; + } + + rpc DeleteUserAccount { + option (x_fern_sdk_method_name) = "delete"; + } +} + +service AuthenticationService { + option (x_fern_sdk_service_name) = "auth"; + + rpc LoginUser { + option (x_fern_sdk_method_name) = "login"; + } + + rpc LogoutUser { + option (x_fern_sdk_method_name) = "logout"; + } +} +``` + +## Add parameter names + +Customize parameter names for better SDK ergonomics: + +```protobuf title="overlay.yml" +message CreateUserRequest { + string email_address { + option (x_fern_parameter_name) = "email"; + } + + string full_name { + option (x_fern_parameter_name) = "name"; + } + + int32 age_in_years { + option (x_fern_parameter_name) = "age"; + } + + UserPreferences user_preferences { + option (x_fern_parameter_name) = "preferences"; + } +} + +message User { + string user_id { + option (x_fern_parameter_name) = "id"; + } + + google.protobuf.Timestamp created_timestamp { + option (x_fern_parameter_name) = "createdAt"; + } + + google.protobuf.Timestamp updated_timestamp { + option (x_fern_parameter_name) = "updatedAt"; + } +} +``` + +## Add examples + +Enhance your specification with comprehensive examples: + +```protobuf title="overlay.yml" +service UserService { + rpc CreateUser { + option (x_fern_examples) = '{ + "StandardUser": { + "description": "Create a regular user account", + "request": { + "email": "john@example.com", + "name": "John Doe", + "age": 30, + "preferences": { + "theme": "dark", + "notifications": true + } + }, + "response": { + "id": "user_123", + "email": "john@example.com", + "name": "John Doe", + "created_at": "2024-01-15T10:30:00Z" + } + }, + "AdminUser": { + "description": "Create an admin user with permissions", + "request": { + "email": "admin@example.com", + "name": "Admin User", + "role": "admin", + "permissions": ["read", "write", "delete"] + }, + "response": { + "id": "user_456", + "email": "admin@example.com", + "name": "Admin User", + "role": "admin", + "created_at": "2024-01-15T10:30:00Z" + } + } + }'; + } +} +``` + +## Filter with audiences + +Add audience filtering to services and methods: + +```protobuf title="overlay.yml" +service UserService { + option (x_fern_audiences) = "public"; + + rpc GetUser { + option (x_fern_audiences) = "public"; + } + + rpc CreateUser { + option (x_fern_audiences) = "public"; + } +} + +service AdminService { + option (x_fern_audiences) = "admin"; + + rpc ListAllUsers { + option (x_fern_audiences) = "admin"; + } + + rpc DeleteUser { + option (x_fern_audiences) = "admin"; + } +} + +service DebugService { + option (x_fern_audiences) = "internal"; + + rpc GetSystemInfo { + option (x_fern_audiences) = "internal"; + } +} +``` + +## Add error handling + +Configure custom error handling for methods: + +```protobuf title="overlay.yml" +service UserService { + rpc CreateUser { + option (x_fern_error_handling) = '{ + "ALREADY_EXISTS": { + "error_name": "UserAlreadyExistsError", + "user_friendly_message": "A user with this email already exists" + }, + "INVALID_ARGUMENT": { + "error_name": "ValidationError", + "user_friendly_message": "Please check your input and try again" + }, + "RESOURCE_EXHAUSTED": { + "error_name": "RateLimitError", + "retry_after_seconds": 60 + } + }'; + } + + rpc ProcessPayment { + option (x_fern_retry) = '{ + "max_attempts": 3, + "exponential_backoff": true, + "initial_delay_ms": 1000, + "max_delay_ms": 30000 + }'; + } +} +``` + +## Add documentation + +Enhance descriptions and documentation: + +```protobuf title="overlay.yml" +service UserService { + option (x_fern_service_description) = "User management service for creating, updating, and managing user accounts with comprehensive authentication and profile management capabilities."; + + rpc CreateUser { + option (x_fern_method_description) = "Create a new user account with email verification and automatic profile setup. Supports custom preferences and role assignment."; + } + + rpc GetUser { + option (x_fern_method_description) = "Retrieve user information by ID with optional inclusion of profile data, preferences, and activity history."; + } + + rpc UpdateUser { + option (x_fern_method_description) = "Update user profile information with field-level updates using Protocol Buffer field masks for efficient partial updates."; + } +} +``` + +## Configure timeouts and retries + +Add timeout and retry configurations: + +```protobuf title="overlay.yml" +service UserService { + rpc GenerateUserReport { + option (x_fern_timeout) = '{ + "seconds": 300, + "description": "Report generation can take up to 5 minutes for large datasets" + }'; + } + + rpc QuickUserLookup { + option (x_fern_timeout) = '{ + "seconds": 5, + "description": "Quick lookup operations should complete within 5 seconds" + }'; + } + + rpc ImportUsers { + option (x_fern_retry) = '{ + "max_attempts": 5, + "exponential_backoff": true, + "initial_delay_ms": 2000, + "max_delay_ms": 60000, + "retry_on_status": ["UNAVAILABLE", "DEADLINE_EXCEEDED", "INTERNAL"] + }'; + } +} +``` + +## Streaming configurations + +Configure streaming methods: + +```protobuf title="overlay.yml" +service UserStreamingService { + rpc StreamUserEvents { + option (x_fern_streaming) = '{ + "type": "server_streaming", + "termination": "client_closes", + "description": "Real-time stream of user events with automatic reconnection" + }'; + } + + rpc UploadUserData { + option (x_fern_streaming) = '{ + "type": "client_streaming", + "termination": "client_closes", + "max_message_size": "10MB" + }'; + } + + rpc ChatWithSupport { + option (x_fern_streaming) = '{ + "type": "bidirectional_streaming", + "termination": "either_closes", + "heartbeat_interval": "30s" + }'; + } +} +``` + +## Multiple overlays + +You can apply multiple overlay files in sequence: + +```yaml title="generators.yml" {4-8} +api: + specs: + - spec: proto/user_service.proto + overlays: + - base-overlay.yml + - sdk-overlay.yml + - docs-overlay.yml + - examples-overlay.yml +``` + +## Environment-specific overlays + +Use different overlays for different environments: + +```yaml title="generators.yml" {4-7, 12-15} +groups: + production: + audiences: [public] + specs: + - spec: proto/user_service.proto + overlays: + - production-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + internal: + audiences: [admin, internal] + specs: + - spec: proto/user_service.proto + overlays: + - internal-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## Field-level overlays + +Apply overlays to specific message fields: + +```protobuf title="overlay.yml" +message UserPreferences { + map notification_settings { + option (x_fern_parameter_name) = "notifications"; + option (x_fern_field_description) = "User notification preferences with support for email, SMS, and push notifications"; + } + + map feature_flags { + option (x_fern_parameter_name) = "features"; + option (x_fern_field_description) = "Feature flags controlling access to beta and experimental features"; + } + + string preferred_language { + option (x_fern_parameter_name) = "language"; + option (x_fern_validation) = '{ + "enum": ["en", "es", "fr", "de", "zh"], + "default": "en" + }'; + } +} +``` + +## Validation overlays + +Add validation rules to existing fields: + +```protobuf title="overlay.yml" +message CreateUserRequest { + string email { + option (x_fern_validation) = '{ + "format": "email", + "required": true, + "description": "Must be a valid email address" + }'; + } + + string name { + option (x_fern_validation) = '{ + "min_length": 1, + "max_length": 100, + "required": true, + "pattern": "^[a-zA-Z\\s]+$" + }'; + } + + int32 age { + option (x_fern_validation) = '{ + "minimum": 0, + "maximum": 120, + "description": "Age in years" + }'; + } +} +``` + +Overlays are applied in order, allowing you to build up customizations incrementally while keeping your original Protocol Buffer files clean and focused on the core service definition. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/overview.mdx b/fern/products/api-def/grpc-pages/overview.mdx new file mode 100644 index 00000000..a25da7a3 --- /dev/null +++ b/fern/products/api-def/grpc-pages/overview.mdx @@ -0,0 +1,221 @@ +--- +title: What is gRPC? +subtitle: gRPC is a high-performance RPC framework that uses Protocol Buffers +--- + +gRPC is a modern, open-source, high-performance Remote Procedure Call (RPC) framework that can run in any environment. It uses Protocol Buffers (protobuf) as the interface definition language and supports multiple programming languages. +Fern is compatible with gRPC services and can generate SDKs and documentation from your `.proto` files. + + Need help getting started with gRPC and Fern? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) + +Below is an example of a gRPC service definition: + +```protobuf user_service.proto +syntax = "proto3"; + +package userservice.v1; + +// User service for managing user accounts +service UserService { + // Create a new user account + rpc CreateUser(CreateUserRequest) returns (User); + + // Get user by ID + rpc GetUser(GetUserRequest) returns (User); + + // List users with pagination + rpc ListUsers(ListUsersRequest) returns (ListUsersResponse); + + // Update user information + rpc UpdateUser(UpdateUserRequest) returns (User); + + // Delete a user account + rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty); + + // Stream user events (server streaming) + rpc StreamUserEvents(StreamUserEventsRequest) returns (stream UserEvent); + + // Upload user data (client streaming) + rpc UploadUserData(stream UploadUserDataRequest) returns (UploadUserDataResponse); + + // Real-time chat (bidirectional streaming) + rpc Chat(stream ChatMessage) returns (stream ChatMessage); +} + +// Messages for user operations +message User { + string id = 1; + string email = 2; + string name = 3; + int32 age = 4; + google.protobuf.Timestamp created_at = 5; + UserStatus status = 6; +} + +message CreateUserRequest { + string email = 1; + string name = 2; + int32 age = 3; +} + +message GetUserRequest { + string id = 1; +} + +message ListUsersRequest { + int32 page_size = 1; + string page_token = 2; + string filter = 3; +} + +message ListUsersResponse { + repeated User users = 1; + string next_page_token = 2; + int32 total_count = 3; +} + +message UpdateUserRequest { + string id = 1; + User user = 2; + google.protobuf.FieldMask update_mask = 3; +} + +message DeleteUserRequest { + string id = 1; +} + +message StreamUserEventsRequest { + string user_id = 1; + repeated UserEventType event_types = 2; +} + +message UserEvent { + string id = 1; + string user_id = 2; + UserEventType type = 3; + google.protobuf.Timestamp timestamp = 4; + google.protobuf.Any data = 5; +} + +message UploadUserDataRequest { + oneof data { + UserDataChunk chunk = 1; + UserDataMetadata metadata = 2; + } +} + +message UserDataChunk { + bytes data = 1; + int64 offset = 2; +} + +message UserDataMetadata { + string filename = 1; + int64 total_size = 2; + string content_type = 3; +} + +message UploadUserDataResponse { + string file_id = 1; + int64 bytes_uploaded = 2; +} + +message ChatMessage { + string id = 1; + string user_id = 2; + string room_id = 3; + string content = 4; + google.protobuf.Timestamp timestamp = 5; + ChatMessageType type = 6; +} + +// Enums +enum UserStatus { + USER_STATUS_UNSPECIFIED = 0; + USER_STATUS_ACTIVE = 1; + USER_STATUS_INACTIVE = 2; + USER_STATUS_SUSPENDED = 3; +} + +enum UserEventType { + USER_EVENT_TYPE_UNSPECIFIED = 0; + USER_EVENT_TYPE_CREATED = 1; + USER_EVENT_TYPE_UPDATED = 2; + USER_EVENT_TYPE_DELETED = 3; + USER_EVENT_TYPE_LOGIN = 4; + USER_EVENT_TYPE_LOGOUT = 5; +} + +enum ChatMessageType { + CHAT_MESSAGE_TYPE_UNSPECIFIED = 0; + CHAT_MESSAGE_TYPE_TEXT = 1; + CHAT_MESSAGE_TYPE_IMAGE = 2; + CHAT_MESSAGE_TYPE_FILE = 3; + CHAT_MESSAGE_TYPE_SYSTEM = 4; +} +``` + +## gRPC Features + +gRPC offers several key features that make it ideal for modern applications: + +### High Performance +- Binary protocol with Protocol Buffers +- HTTP/2 transport for multiplexing and flow control +- Efficient serialization and deserialization + +### Multiple Communication Patterns +- **Unary RPCs**: Simple request/response +- **Server Streaming**: Server sends stream of responses +- **Client Streaming**: Client sends stream of requests +- **Bidirectional Streaming**: Both sides send streams + +### Cross-Platform Support +- Native support for 10+ programming languages +- Generated client libraries and server stubs +- Consistent API across all platforms + +## Setup your fern folder + +Start by initializing your fern folder with a gRPC service + + +```sh protobuf +fern init --proto ./path/to/service.proto +``` +```sh directory +fern init --proto-directory ./path/to/proto/files +``` + + +This will initialize a directory like the following +``` +fern/ + ├─ fern.config.json + ├─ generators.yml + └─ proto/ + ├─ user_service.proto + └─ common.proto +``` + +## gRPC vs REST + +| Feature | gRPC | REST | +|---------|------|------| +| Protocol | HTTP/2 | HTTP/1.1 | +| Data Format | Protocol Buffers | JSON | +| Performance | High | Moderate | +| Streaming | Native support | Limited | +| Browser Support | Limited | Full | +| Schema | Strongly typed | Flexible | +| Code Generation | Built-in | Third-party tools | + +## Common Use Cases + +gRPC is particularly well-suited for: + +- **Microservices Communication**: High-performance inter-service communication +- **Real-time Applications**: Streaming for live updates and real-time features +- **Mobile Applications**: Efficient mobile-to-server communication +- **IoT Systems**: Lightweight communication for resource-constrained devices +- **APIs with Strong Contracts**: Type-safe communication with schema evolution \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/servers.mdx b/fern/products/api-def/grpc-pages/servers.mdx new file mode 100644 index 00000000..3e1b6c41 --- /dev/null +++ b/fern/products/api-def/grpc-pages/servers.mdx @@ -0,0 +1,427 @@ +--- +title: Servers +description: Configure gRPC servers with TLS, load balancing, and deployment options +subtitle: Set up and configure gRPC servers for production deployments +--- + +gRPC servers can be configured with various options for security, performance, and scalability. Proper server configuration is crucial for production deployments. + +## Basic Server Setup + +Set up a basic gRPC server with multiple services: + +```python title="server.py" +import grpc +from concurrent import futures +import user_service_pb2_grpc +import auth_service_pb2_grpc +from user_service import UserServiceServicer +from auth_service import AuthServiceServicer + +def create_server(): + server = grpc.server(futures.ThreadPoolExecutor(max_workers=10)) + + # Add services + user_service_pb2_grpc.add_UserServiceServicer_to_server( + UserServiceServicer(), server + ) + auth_service_pb2_grpc.add_AuthServiceServicer_to_server( + AuthServiceServicer(), server + ) + + # Listen on insecure port for development + server.add_insecure_port('[::]:50051') + + return server + +if __name__ == '__main__': + server = create_server() + server.start() + print("gRPC server started on port 50051") + server.wait_for_termination() +``` + +## TLS Configuration + +Configure TLS for secure production deployments: + +```python title="secure_server.py" +import grpc +from grpc import ssl_server_credentials + +def create_secure_server(): + # Load TLS certificates + with open('server-key.pem', 'rb') as f: + private_key = f.read() + with open('server-cert.pem', 'rb') as f: + certificate_chain = f.read() + with open('ca-cert.pem', 'rb') as f: + root_certificates = f.read() + + # Create server credentials + server_credentials = ssl_server_credentials( + [(private_key, certificate_chain)], + root_certificates=root_certificates, + require_client_auth=True # Mutual TLS + ) + + server = grpc.server(futures.ThreadPoolExecutor(max_workers=50)) + + # Add services + user_service_pb2_grpc.add_UserServiceServicer_to_server( + UserServiceServicer(), server + ) + + # Listen on secure port + server.add_secure_port('[::]:443', server_credentials) + + return server +``` + +## Server Options + +Configure various server options for performance and behavior: + +```python title="configured_server.py" +import grpc +from grpc import compression + +def create_configured_server(): + # Define server options + options = [ + ('grpc.keepalive_time_ms', 30000), + ('grpc.keepalive_timeout_ms', 5000), + ('grpc.keepalive_permit_without_calls', True), + ('grpc.http2.max_pings_without_data', 0), + ('grpc.http2.min_time_between_pings_ms', 10000), + ('grpc.http2.min_ping_interval_without_data_ms', 300000), + ('grpc.max_connection_idle_ms', 60000), + ('grpc.max_connection_age_ms', 300000), + ('grpc.max_connection_age_grace_ms', 30000), + ('grpc.max_receive_message_length', 4 * 1024 * 1024), + ('grpc.max_send_message_length', 4 * 1024 * 1024), + ] + + server = grpc.server( + futures.ThreadPoolExecutor(max_workers=100), + options=options, + compression=compression.Gzip + ) + + return server +``` + +## Health Checking + +Implement health checking for load balancer integration: + +```protobuf health.proto +syntax = "proto3"; + +package grpc.health.v1; + +service Health { + // Check health status + rpc Check(HealthCheckRequest) returns (HealthCheckResponse); + + // Watch health status changes + rpc Watch(HealthCheckRequest) returns (stream HealthCheckResponse); +} + +message HealthCheckRequest { + string service = 1; +} + +message HealthCheckResponse { + enum ServingStatus { + UNKNOWN = 0; + SERVING = 1; + NOT_SERVING = 2; + SERVICE_UNKNOWN = 3; + } + ServingStatus status = 1; +} +``` + +Health service implementation: + +```python title="health_service.py" +import grpc +from grpc_health.v1 import health_pb2 +from grpc_health.v1 import health_pb2_grpc + +class HealthServicer(health_pb2_grpc.HealthServicer): + + def __init__(self): + self._service_status = {} + + def Check(self, request, context): + service_name = request.service + status = self._service_status.get( + service_name, + health_pb2.HealthCheckResponse.SERVING + ) + + return health_pb2.HealthCheckResponse(status=status) + + def Watch(self, request, context): + # Implementation for streaming health updates + service_name = request.service + + while not context.is_active(): + status = self._service_status.get( + service_name, + health_pb2.HealthCheckResponse.SERVING + ) + + yield health_pb2.HealthCheckResponse(status=status) + time.sleep(5) # Check every 5 seconds + + def set_service_status(self, service_name, status): + self._service_status[service_name] = status +``` + +## Reflection + +Enable gRPC reflection for development and debugging: + +```python title="reflection_server.py" +import grpc +from grpc_reflection.v1alpha import reflection + +def create_server_with_reflection(): + server = grpc.server(futures.ThreadPoolExecutor(max_workers=10)) + + # Add services + user_service_pb2_grpc.add_UserServiceServicer_to_server( + UserServiceServicer(), server + ) + + # Enable reflection + SERVICE_NAMES = ( + user_service_pb2.DESCRIPTOR.services_by_name['UserService'].full_name, + reflection.SERVICE_NAME, + ) + reflection.enable_server_reflection(SERVICE_NAMES, server) + + server.add_insecure_port('[::]:50051') + return server +``` + +## Load Balancing + +Configure client-side load balancing: + +```python title="load_balanced_client.py" +import grpc + +def create_load_balanced_channel(): + # DNS-based load balancing + channel = grpc.insecure_channel( + 'dns:///user-service.example.com:50051', + options=[ + ('grpc.lb_policy_name', 'round_robin'), + ('grpc.dns_enable_srv_queries', True), + ] + ) + + return channel + +# Using a load balancer with multiple targets +def create_multi_target_channel(): + targets = [ + 'user-service-1.example.com:50051', + 'user-service-2.example.com:50051', + 'user-service-3.example.com:50051', + ] + + # Use a service mesh or load balancer + channel = grpc.insecure_channel( + f'ipv4:///{",".join(targets)}', + options=[('grpc.lb_policy_name', 'round_robin')] + ) + + return channel +``` + +## Kubernetes Deployment + +Deploy gRPC services on Kubernetes: + +```yaml title="grpc-service.yaml" +apiVersion: apps/v1 +kind: Deployment +metadata: + name: user-service +spec: + replicas: 3 + selector: + matchLabels: + app: user-service + template: + metadata: + labels: + app: user-service + spec: + containers: + - name: user-service + image: user-service:latest + ports: + - containerPort: 50051 + name: grpc + env: + - name: GRPC_PORT + value: "50051" + livenessProbe: + exec: + command: ["/bin/grpc_health_probe", "-addr=:50051"] + initialDelaySeconds: 30 + readinessProbe: + exec: + command: ["/bin/grpc_health_probe", "-addr=:50051"] + initialDelaySeconds: 5 +--- +apiVersion: v1 +kind: Service +metadata: + name: user-service +spec: + selector: + app: user-service + ports: + - port: 50051 + targetPort: 50051 + name: grpc + type: ClusterIP +``` + +## Monitoring and Observability + +Add monitoring and tracing to your gRPC server: + +```python title="monitored_server.py" +import grpc +import time +from prometheus_client import Counter, Histogram, start_http_server + +# Prometheus metrics +REQUEST_COUNT = Counter( + 'grpc_requests_total', + 'Total gRPC requests', + ['method', 'status'] +) + +REQUEST_DURATION = Histogram( + 'grpc_request_duration_seconds', + 'gRPC request duration', + ['method'] +) + +class MonitoringInterceptor(grpc.ServerInterceptor): + + def intercept_service(self, continuation, handler_call_details): + method = handler_call_details.method + start_time = time.time() + + def monitor_wrapper(behavior): + def wrapper(request, context): + try: + response = behavior(request, context) + REQUEST_COUNT.labels(method=method, status='OK').inc() + return response + except Exception as e: + REQUEST_COUNT.labels(method=method, status='ERROR').inc() + raise + finally: + duration = time.time() - start_time + REQUEST_DURATION.labels(method=method).observe(duration) + + return wrapper + + return grpc.unary_unary_rpc_method_handler( + monitor_wrapper(continuation(handler_call_details).unary_unary) + ) + +def create_monitored_server(): + # Start Prometheus metrics server + start_http_server(8000) + + server = grpc.server( + futures.ThreadPoolExecutor(max_workers=10), + interceptors=[MonitoringInterceptor()] + ) + + return server +``` + +## Environment-specific Configuration + +Configure servers for different environments: + +```python title="config.py" +import os +from dataclasses import dataclass + +@dataclass +class ServerConfig: + port: int + max_workers: int + enable_tls: bool + cert_file: str = None + key_file: str = None + enable_reflection: bool = False + enable_health_check: bool = True + +def get_config() -> ServerConfig: + env = os.getenv('ENVIRONMENT', 'development') + + if env == 'production': + return ServerConfig( + port=50051, + max_workers=100, + enable_tls=True, + cert_file='/etc/ssl/certs/server.crt', + key_file='/etc/ssl/private/server.key', + enable_reflection=False, + enable_health_check=True + ) + elif env == 'staging': + return ServerConfig( + port=50051, + max_workers=50, + enable_tls=True, + cert_file='/etc/ssl/certs/staging.crt', + key_file='/etc/ssl/private/staging.key', + enable_reflection=True, + enable_health_check=True + ) + else: # development + return ServerConfig( + port=50051, + max_workers=10, + enable_tls=False, + enable_reflection=True, + enable_health_check=True + ) + +def create_server_from_config(config: ServerConfig): + server = grpc.server(futures.ThreadPoolExecutor(max_workers=config.max_workers)) + + # Add services... + + if config.enable_tls: + # Configure TLS + with open(config.cert_file, 'rb') as f: + cert = f.read() + with open(config.key_file, 'rb') as f: + key = f.read() + + credentials = grpc.ssl_server_credentials([(key, cert)]) + server.add_secure_port(f'[::]:{config.port}', credentials) + else: + server.add_insecure_port(f'[::]:{config.port}') + + return server +``` + +Proper server configuration ensures your gRPC services are secure, performant, and ready for production workloads. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/services/errors.mdx b/fern/products/api-def/grpc-pages/services/errors.mdx new file mode 100644 index 00000000..91b3c15f --- /dev/null +++ b/fern/products/api-def/grpc-pages/services/errors.mdx @@ -0,0 +1,526 @@ +--- +title: Error Handling +subtitle: Implement robust error handling with gRPC status codes and custom error details +--- + +gRPC provides a comprehensive error handling system using status codes, error messages, and optional error details. Proper error handling ensures clients can respond appropriately to different failure scenarios. + +## gRPC Status Codes + +gRPC uses standard status codes to indicate the outcome of RPC calls: + +```protobuf title="error_service.proto" +syntax = "proto3"; + +package errors.v1; + +import "google/rpc/status.proto"; +import "google/rpc/error_details.proto"; + +service ErrorDemoService { + // Demonstrates various error scenarios + rpc ValidateUser(ValidateUserRequest) returns (ValidateUserResponse); + + // May return rate limiting errors + rpc RateLimitedOperation(OperationRequest) returns (OperationResponse); + + // May return resource exhausted errors + rpc ResourceIntensiveOperation(ResourceRequest) returns (ResourceResponse); +} + +message ValidateUserRequest { + string user_id = 1; + string email = 2; +} + +message ValidateUserResponse { + bool valid = 1; + repeated ValidationError errors = 2; +} + +message ValidationError { + string field = 1; + string message = 2; + ErrorCode code = 3; +} + +enum ErrorCode { + ERROR_CODE_UNSPECIFIED = 0; + ERROR_CODE_REQUIRED_FIELD = 1; + ERROR_CODE_INVALID_FORMAT = 2; + ERROR_CODE_DUPLICATE_VALUE = 3; + ERROR_CODE_OUT_OF_RANGE = 4; +} +``` + +## Standard Error Handling + +Implement standard gRPC error responses: + +```python title="error_handling.py" +import grpc +from grpc import ServicerContext +from google.rpc import status_pb2, error_details_pb2 +from google.protobuf import any_pb2 + +class ErrorDemoServiceServicer(errors_pb2_grpc.ErrorDemoServiceServicer): + + def ValidateUser( + self, + request: errors_pb2.ValidateUserRequest, + context: ServicerContext + ) -> errors_pb2.ValidateUserResponse: + """Demonstrate validation errors.""" + + validation_errors = [] + + # Check required fields + if not request.user_id: + validation_errors.append(errors_pb2.ValidationError( + field="user_id", + message="User ID is required", + code=errors_pb2.ERROR_CODE_REQUIRED_FIELD + )) + + if not request.email: + validation_errors.append(errors_pb2.ValidationError( + field="email", + message="Email is required", + code=errors_pb2.ERROR_CODE_REQUIRED_FIELD + )) + + # Validate email format + if request.email and not self._is_valid_email(request.email): + validation_errors.append(errors_pb2.ValidationError( + field="email", + message="Invalid email format", + code=errors_pb2.ERROR_CODE_INVALID_FORMAT + )) + + # Check for duplicate user + if request.user_id and self.user_exists(request.user_id): + validation_errors.append(errors_pb2.ValidationError( + field="user_id", + message="User ID already exists", + code=errors_pb2.ERROR_CODE_DUPLICATE_VALUE + )) + + # Return validation errors if any + if validation_errors: + context.set_code(grpc.StatusCode.INVALID_ARGUMENT) + context.set_details("Validation failed") + + return errors_pb2.ValidateUserResponse( + valid=False, + errors=validation_errors + ) + + return errors_pb2.ValidateUserResponse(valid=True) + + def RateLimitedOperation( + self, + request: errors_pb2.OperationRequest, + context: ServicerContext + ) -> errors_pb2.OperationResponse: + """Demonstrate rate limiting errors.""" + + # Check rate limit + if not self.rate_limiter.is_allowed(request.client_id): + # Create detailed error information + retry_info = error_details_pb2.RetryInfo() + retry_info.retry_delay.seconds = 60 # Retry after 60 seconds + + quota_failure = error_details_pb2.QuotaFailure() + violation = quota_failure.violations.add() + violation.subject = f"client:{request.client_id}" + violation.description = "API rate limit exceeded" + + # Set error with details + context.set_code(grpc.StatusCode.RESOURCE_EXHAUSTED) + context.set_details("Rate limit exceeded") + + # Add error details (rich error information) + self._add_error_details(context, [retry_info, quota_failure]) + + return errors_pb2.OperationResponse() + + # Process operation normally + return self._process_operation(request) + + def ResourceIntensiveOperation( + self, + request: errors_pb2.ResourceRequest, + context: ServicerContext + ) -> errors_pb2.ResourceResponse: + """Demonstrate resource exhaustion errors.""" + + try: + # Check system resources + if not self.resource_manager.has_capacity(): + context.set_code(grpc.StatusCode.RESOURCE_EXHAUSTED) + context.set_details("System overloaded, please try again later") + return errors_pb2.ResourceResponse() + + # Process intensive operation + result = self._process_intensive_operation(request) + return errors_pb2.ResourceResponse(result=result) + + except TimeoutError: + context.set_code(grpc.StatusCode.DEADLINE_EXCEEDED) + context.set_details("Operation timed out") + return errors_pb2.ResourceResponse() + + except PermissionError: + context.set_code(grpc.StatusCode.PERMISSION_DENIED) + context.set_details("Insufficient permissions for this operation") + return errors_pb2.ResourceResponse() + + except FileNotFoundError as e: + context.set_code(grpc.StatusCode.NOT_FOUND) + context.set_details(f"Required resource not found: {str(e)}") + return errors_pb2.ResourceResponse() + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f"Internal server error: {str(e)}") + return errors_pb2.ResourceResponse() + + def _add_error_details(self, context: ServicerContext, details): + """Add rich error details to gRPC response.""" + rich_status = status_pb2.Status() + rich_status.code = context._state.code.value[0] + rich_status.message = context._state.details + + for detail in details: + detail_any = any_pb2.Any() + detail_any.Pack(detail) + rich_status.details.append(detail_any) + + # Add to trailing metadata + context.set_trailing_metadata([ + ('grpc-status-details-bin', rich_status.SerializeToString()) + ]) +``` + +## Custom Error Types + +Define custom error types for domain-specific errors: + +```protobuf title="custom_errors.proto" +syntax = "proto3"; + +package errors.v1; + +// Custom error details +message BusinessLogicError { + string error_code = 1; + string error_message = 2; + map error_context = 3; + repeated string suggested_actions = 4; +} + +message ValidationFailure { + repeated FieldError field_errors = 1; + string global_error = 2; +} + +message FieldError { + string field_path = 1; + string error_message = 2; + string error_code = 3; + google.protobuf.Any invalid_value = 4; +} + +message ServiceUnavailableError { + string service_name = 1; + google.protobuf.Timestamp estimated_recovery_time = 2; + repeated string alternative_endpoints = 3; +} +``` + +Custom error implementation: + +```python title="custom_errors.py" +class CustomErrorHandler: + + @staticmethod + def business_logic_error( + context: ServicerContext, + error_code: str, + message: str, + error_context: dict = None, + suggested_actions: list = None + ): + """Create a business logic error.""" + + business_error = errors_pb2.BusinessLogicError( + error_code=error_code, + error_message=message, + error_context=error_context or {}, + suggested_actions=suggested_actions or [] + ) + + context.set_code(grpc.StatusCode.FAILED_PRECONDITION) + context.set_details(message) + + # Add custom error details + CustomErrorHandler._add_custom_details(context, business_error) + + @staticmethod + def validation_failure( + context: ServicerContext, + field_errors: list, + global_error: str = None + ): + """Create a validation failure error.""" + + validation_error = errors_pb2.ValidationFailure( + field_errors=field_errors, + global_error=global_error or "" + ) + + context.set_code(grpc.StatusCode.INVALID_ARGUMENT) + context.set_details("Validation failed") + + CustomErrorHandler._add_custom_details(context, validation_error) + + @staticmethod + def service_unavailable( + context: ServicerContext, + service_name: str, + estimated_recovery: datetime = None, + alternatives: list = None + ): + """Create a service unavailable error.""" + + error = errors_pb2.ServiceUnavailableError( + service_name=service_name, + alternative_endpoints=alternatives or [] + ) + + if estimated_recovery: + error.estimated_recovery_time.FromDatetime(estimated_recovery) + + context.set_code(grpc.StatusCode.UNAVAILABLE) + context.set_details(f"Service {service_name} is currently unavailable") + + CustomErrorHandler._add_custom_details(context, error) + + @staticmethod + def _add_custom_details(context: ServicerContext, error_detail): + """Add custom error details to response.""" + detail_any = any_pb2.Any() + detail_any.Pack(error_detail) + + rich_status = status_pb2.Status() + rich_status.code = context._state.code.value[0] + rich_status.message = context._state.details + rich_status.details.append(detail_any) + + context.set_trailing_metadata([ + ('grpc-status-details-bin', rich_status.SerializeToString()) + ]) + +# Usage example +class UserService(user_pb2_grpc.UserServiceServicer): + + def CreateUser(self, request, context): + # Validate business rules + if self.user_repository.email_exists(request.email): + CustomErrorHandler.business_logic_error( + context, + error_code="DUPLICATE_EMAIL", + message="Email address is already registered", + error_context={"email": request.email}, + suggested_actions=[ + "Use a different email address", + "Reset password if you forgot your account" + ] + ) + return user_pb2.User() + + # Continue with user creation... +``` + +## Error Interceptors + +Implement global error handling with interceptors: + +```python title="error_interceptor.py" +import logging +import traceback +from grpc import ServicerContext, StatusCode + +class ErrorInterceptor(grpc.ServerInterceptor): + + def __init__(self, logger=None): + self.logger = logger or logging.getLogger(__name__) + + def intercept_service(self, continuation, handler_call_details): + def error_wrapper(behavior): + def wrapper(request, context): + try: + return behavior(request, context) + + except ValueError as e: + # Convert Python ValueError to gRPC INVALID_ARGUMENT + context.set_code(StatusCode.INVALID_ARGUMENT) + context.set_details(f"Invalid input: {str(e)}") + self.logger.warning(f"Validation error in {handler_call_details.method}: {e}") + return self._get_default_response(behavior) + + except PermissionError as e: + context.set_code(StatusCode.PERMISSION_DENIED) + context.set_details("Access denied") + self.logger.warning(f"Permission denied in {handler_call_details.method}: {e}") + return self._get_default_response(behavior) + + except TimeoutError as e: + context.set_code(StatusCode.DEADLINE_EXCEEDED) + context.set_details("Operation timed out") + self.logger.error(f"Timeout in {handler_call_details.method}: {e}") + return self._get_default_response(behavior) + + except Exception as e: + # Log unexpected errors + self.logger.error( + f"Unexpected error in {handler_call_details.method}: {e}\n" + f"Traceback: {traceback.format_exc()}" + ) + + context.set_code(StatusCode.INTERNAL) + context.set_details("Internal server error") + return self._get_default_response(behavior) + + return wrapper + + return grpc.unary_unary_rpc_method_handler( + error_wrapper(continuation(handler_call_details).unary_unary) + ) + + def _get_default_response(self, behavior): + """Return an empty response of the correct type.""" + # This would need to be implemented based on your service methods + return None +``` + +## Client-side Error Handling + +Handle errors on the client side: + +```python title="client_error_handling.py" +import grpc +from google.rpc import status_pb2, error_details_pb2 +from google.protobuf import any_pb2 + +def handle_grpc_errors(stub_method, request): + """Generic error handling for gRPC client calls.""" + + try: + response = stub_method(request) + return response, None + + except grpc.RpcError as e: + error_info = { + 'code': e.code(), + 'details': e.details(), + 'status': e.code().name + } + + # Extract rich error details if available + metadata = dict(e.trailing_metadata()) + if 'grpc-status-details-bin' in metadata: + try: + status_detail = status_pb2.Status() + status_detail.ParseFromString(metadata['grpc-status-details-bin']) + + error_info['rich_details'] = [] + for detail in status_detail.details: + # Try to unpack common error types + if detail.Is(error_details_pb2.RetryInfo.DESCRIPTOR): + retry_info = error_details_pb2.RetryInfo() + detail.Unpack(retry_info) + error_info['rich_details'].append({ + 'type': 'retry_info', + 'retry_delay_seconds': retry_info.retry_delay.seconds + }) + elif detail.Is(error_details_pb2.QuotaFailure.DESCRIPTOR): + quota_failure = error_details_pb2.QuotaFailure() + detail.Unpack(quota_failure) + error_info['rich_details'].append({ + 'type': 'quota_failure', + 'violations': [ + { + 'subject': v.subject, + 'description': v.description + } for v in quota_failure.violations + ] + }) + + except Exception: + # If we can't parse rich details, that's okay + pass + + return None, error_info + +# Usage example +def create_user_with_error_handling(stub, user_data): + """Create user with comprehensive error handling.""" + + request = user_pb2.CreateUserRequest(**user_data) + response, error = handle_grpc_errors(stub.CreateUser, request) + + if error: + if error['code'] == grpc.StatusCode.INVALID_ARGUMENT: + print(f"Validation failed: {error['details']}") + return None + + elif error['code'] == grpc.StatusCode.ALREADY_EXISTS: + print(f"User already exists: {error['details']}") + return None + + elif error['code'] == grpc.StatusCode.RESOURCE_EXHAUSTED: + # Check for retry information + for detail in error.get('rich_details', []): + if detail['type'] == 'retry_info': + retry_delay = detail['retry_delay_seconds'] + print(f"Rate limited. Retry after {retry_delay} seconds") + return None + + print("Resource exhausted") + return None + + else: + print(f"Unexpected error: {error['status']} - {error['details']}") + return None + + return response +``` + +## Error Response Patterns + +Define consistent error response patterns: + +```protobuf title="error_responses.proto" +syntax = "proto3"; + +// Standard error response envelope +message ErrorResponse { + string error_code = 1; + string error_message = 2; + map error_context = 3; + repeated string suggestions = 4; + google.protobuf.Timestamp timestamp = 5; + string request_id = 6; +} + +// Union response pattern +message CreateUserResult { + oneof result { + User success = 1; + ErrorResponse error = 2; + } +} +``` + +Proper error handling in gRPC ensures robust, maintainable services that provide clear feedback to clients about what went wrong and how to fix it. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/services/grpc-services.mdx b/fern/products/api-def/grpc-pages/services/grpc-services.mdx new file mode 100644 index 00000000..0a80e65e --- /dev/null +++ b/fern/products/api-def/grpc-pages/services/grpc-services.mdx @@ -0,0 +1,419 @@ +--- +title: gRPC Services +subtitle: Define gRPC services with RPCs, messages, and Protocol Buffer schemas +--- + +gRPC services are the core building blocks of your API. Each service defines a collection of remote procedure calls (RPCs) that clients can invoke, along with the message types used for requests and responses. + +## Service Definition + +Define a gRPC service in a `.proto` file: + +```protobuf title="user_service.proto" +syntax = "proto3"; + +package userservice.v1; + +import "google/protobuf/empty.proto"; +import "google/protobuf/timestamp.proto"; +import "google/protobuf/field_mask.proto"; + +// User management service +service UserService { + // Create a new user account + rpc CreateUser(CreateUserRequest) returns (User) { + option deprecated = false; + } + + // Get user by ID + rpc GetUser(GetUserRequest) returns (User); + + // Update user information + rpc UpdateUser(UpdateUserRequest) returns (User); + + // Delete a user account + rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty); + + // List users with pagination + rpc ListUsers(ListUsersRequest) returns (ListUsersResponse); + + // Search users by various criteria + rpc SearchUsers(SearchUsersRequest) returns (SearchUsersResponse); +} + +// User message definition +message User { + string id = 1; + string email = 2; + string name = 3; + int32 age = 4; + UserStatus status = 5; + google.protobuf.Timestamp created_at = 6; + google.protobuf.Timestamp updated_at = 7; + repeated string roles = 8; + UserPreferences preferences = 9; +} + +// User status enumeration +enum UserStatus { + USER_STATUS_UNSPECIFIED = 0; + USER_STATUS_ACTIVE = 1; + USER_STATUS_INACTIVE = 2; + USER_STATUS_SUSPENDED = 3; + USER_STATUS_DELETED = 4; +} + +// Nested message for user preferences +message UserPreferences { + bool email_notifications = 1; + string timezone = 2; + string language = 3; + ThemeMode theme = 4; +} + +enum ThemeMode { + THEME_MODE_UNSPECIFIED = 0; + THEME_MODE_LIGHT = 1; + THEME_MODE_DARK = 2; + THEME_MODE_AUTO = 3; +} +``` + +## Request and Response Messages + +Define clear request and response message types: + +```protobuf title="user_messages.proto" +// Create user request +message CreateUserRequest { + string email = 1 [(validate.rules).string.email = true]; + string name = 2 [(validate.rules).string.min_len = 1]; + int32 age = 3 [(validate.rules).int32.gte = 0]; + UserPreferences preferences = 4; +} + +// Get user request +message GetUserRequest { + string id = 1 [(validate.rules).string.uuid = true]; +} + +// Update user request +message UpdateUserRequest { + string id = 1 [(validate.rules).string.uuid = true]; + User user = 2; + google.protobuf.FieldMask update_mask = 3; +} + +// Delete user request +message DeleteUserRequest { + string id = 1 [(validate.rules).string.uuid = true]; +} + +// List users request with pagination +message ListUsersRequest { + int32 page_size = 1 [(validate.rules).int32 = {gte: 1, lte: 100}]; + string page_token = 2; + string filter = 3; + string order_by = 4; +} + +// List users response +message ListUsersResponse { + repeated User users = 1; + string next_page_token = 2; + int32 total_count = 3; +} + +// Search users request +message SearchUsersRequest { + string query = 1 [(validate.rules).string.min_len = 1]; + repeated UserStatus status_filter = 2; + repeated string role_filter = 3; + int32 page_size = 4 [(validate.rules).int32 = {gte: 1, lte: 100}]; + string page_token = 5; +} + +// Search users response +message SearchUsersResponse { + repeated User users = 1; + string next_page_token = 2; + int32 total_count = 3; + SearchMetadata metadata = 4; +} + +message SearchMetadata { + int32 search_time_ms = 1; + repeated string suggested_corrections = 2; +} +``` + +## Service Implementation + +Implement the service in your preferred language: + +```python title="user_service.py" +import grpc +from grpc import ServicerContext +import user_service_pb2 +import user_service_pb2_grpc +from google.protobuf import empty_pb2 +from typing import Iterator + +class UserServiceServicer(user_service_pb2_grpc.UserServiceServicer): + + def __init__(self, user_repository): + self.user_repository = user_repository + + def CreateUser( + self, + request: user_service_pb2.CreateUserRequest, + context: ServicerContext + ) -> user_service_pb2.User: + """Create a new user account.""" + try: + # Validate request + if not request.email or not request.name: + context.set_code(grpc.StatusCode.INVALID_ARGUMENT) + context.set_details('Email and name are required') + return user_service_pb2.User() + + # Check if user already exists + if self.user_repository.get_by_email(request.email): + context.set_code(grpc.StatusCode.ALREADY_EXISTS) + context.set_details(f'User with email {request.email} already exists') + return user_service_pb2.User() + + # Create user + user = self.user_repository.create_user( + email=request.email, + name=request.name, + age=request.age, + preferences=request.preferences + ) + + return user + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Failed to create user: {str(e)}') + return user_service_pb2.User() + + def GetUser( + self, + request: user_service_pb2.GetUserRequest, + context: ServicerContext + ) -> user_service_pb2.User: + """Get user by ID.""" + try: + user = self.user_repository.get_by_id(request.id) + if not user: + context.set_code(grpc.StatusCode.NOT_FOUND) + context.set_details(f'User with ID {request.id} not found') + return user_service_pb2.User() + + return user + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Failed to get user: {str(e)}') + return user_service_pb2.User() + + def UpdateUser( + self, + request: user_service_pb2.UpdateUserRequest, + context: ServicerContext + ) -> user_service_pb2.User: + """Update user information.""" + try: + # Check if user exists + existing_user = self.user_repository.get_by_id(request.id) + if not existing_user: + context.set_code(grpc.StatusCode.NOT_FOUND) + context.set_details(f'User with ID {request.id} not found') + return user_service_pb2.User() + + # Apply field mask for partial updates + updated_user = self.user_repository.update_user( + user_id=request.id, + updates=request.user, + field_mask=request.update_mask + ) + + return updated_user + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Failed to update user: {str(e)}') + return user_service_pb2.User() + + def DeleteUser( + self, + request: user_service_pb2.DeleteUserRequest, + context: ServicerContext + ) -> empty_pb2.Empty: + """Delete a user account.""" + try: + # Check if user exists + user = self.user_repository.get_by_id(request.id) + if not user: + context.set_code(grpc.StatusCode.NOT_FOUND) + context.set_details(f'User with ID {request.id} not found') + return empty_pb2.Empty() + + # Soft delete user + self.user_repository.delete_user(request.id) + + return empty_pb2.Empty() + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Failed to delete user: {str(e)}') + return empty_pb2.Empty() + + def ListUsers( + self, + request: user_service_pb2.ListUsersRequest, + context: ServicerContext + ) -> user_service_pb2.ListUsersResponse: + """List users with pagination.""" + try: + # Apply pagination + page_size = min(request.page_size or 20, 100) + + users, next_page_token, total_count = self.user_repository.list_users( + page_size=page_size, + page_token=request.page_token, + filter_expr=request.filter, + order_by=request.order_by + ) + + return user_service_pb2.ListUsersResponse( + users=users, + next_page_token=next_page_token, + total_count=total_count + ) + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Failed to list users: {str(e)}') + return user_service_pb2.ListUsersResponse() + + def SearchUsers( + self, + request: user_service_pb2.SearchUsersRequest, + context: ServicerContext + ) -> user_service_pb2.SearchUsersResponse: + """Search users by various criteria.""" + try: + start_time = time.time() + + users, next_page_token, total_count = self.user_repository.search_users( + query=request.query, + status_filter=request.status_filter, + role_filter=request.role_filter, + page_size=request.page_size or 20, + page_token=request.page_token + ) + + search_time_ms = int((time.time() - start_time) * 1000) + + metadata = user_service_pb2.SearchMetadata( + search_time_ms=search_time_ms, + suggested_corrections=[] # Add spell check suggestions if needed + ) + + return user_service_pb2.SearchUsersResponse( + users=users, + next_page_token=next_page_token, + total_count=total_count, + metadata=metadata + ) + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Failed to search users: {str(e)}') + return user_service_pb2.SearchUsersResponse() +``` + +## Protocol Buffer Best Practices + +### Field Numbers +- Use field numbers 1-15 for frequently used fields (more efficient encoding) +- Reserve field numbers for removed fields to maintain compatibility +- Never reuse field numbers + +```protobuf +message User { + // Frequently used fields (1-15) + string id = 1; + string email = 2; + string name = 3; + + // Less frequently used fields + UserPreferences preferences = 16; + repeated string tags = 17; + + // Reserved fields + reserved 4, 5, 6; + reserved "old_field_name", "deprecated_field"; +} +``` + +### Naming Conventions +- Use `snake_case` for field names +- Use `PascalCase` for message and service names +- Use `UPPER_SNAKE_CASE` for enum values + +```protobuf +service UserManagementService { // PascalCase + rpc GetUser(GetUserRequest) returns (User); +} + +message User { // PascalCase + string first_name = 1; // snake_case + UserStatus status = 2; +} + +enum UserStatus { + USER_STATUS_UNSPECIFIED = 0; // UPPER_SNAKE_CASE + USER_STATUS_ACTIVE = 1; +} +``` + +### Versioning +- Include version in package names +- Use semantic versioning for breaking changes + +```protobuf +syntax = "proto3"; + +package userservice.v1; // Version in package name + +option go_package = "example.com/userservice/v1"; +``` + +## Multiple Services + +Organize related functionality into separate services: + +```protobuf title="services.proto" +// User management +service UserService { + rpc CreateUser(CreateUserRequest) returns (User); + rpc GetUser(GetUserRequest) returns (User); +} + +// Authentication +service AuthService { + rpc Login(LoginRequest) returns (LoginResponse); + rpc RefreshToken(RefreshTokenRequest) returns (RefreshTokenResponse); +} + +// Notification service +service NotificationService { + rpc SendNotification(SendNotificationRequest) returns (SendNotificationResponse); + rpc GetNotificationPreferences(GetNotificationPreferencesRequest) returns (NotificationPreferences); +} +``` + +gRPC services provide a strongly-typed, high-performance foundation for building distributed systems with clear contracts between clients and servers. \ No newline at end of file diff --git a/fern/products/api-def/grpc-pages/services/streaming.mdx b/fern/products/api-def/grpc-pages/services/streaming.mdx new file mode 100644 index 00000000..69344d7a --- /dev/null +++ b/fern/products/api-def/grpc-pages/services/streaming.mdx @@ -0,0 +1,514 @@ +--- +title: Streaming +subtitle: Implement server streaming, client streaming, and bidirectional streaming with gRPC +--- + +gRPC supports four types of service methods: unary, server streaming, client streaming, and bidirectional streaming. Streaming enables efficient real-time communication and large data transfers. + +## Server Streaming + +Server streaming allows the server to send multiple responses to a single client request: + +```protobuf title="streaming_service.proto" +syntax = "proto3"; + +package streaming.v1; + +service StreamingService { + // Server streaming: send multiple events to client + rpc StreamUserEvents(StreamUserEventsRequest) returns (stream UserEvent); + + // Server streaming: download large file in chunks + rpc DownloadFile(DownloadFileRequest) returns (stream FileChunk); + + // Server streaming: real-time notifications + rpc SubscribeToNotifications(SubscribeRequest) returns (stream Notification); +} + +message StreamUserEventsRequest { + string user_id = 1; + repeated UserEventType event_types = 2; + google.protobuf.Timestamp start_time = 3; +} + +message UserEvent { + string id = 1; + string user_id = 2; + UserEventType type = 3; + google.protobuf.Timestamp timestamp = 4; + google.protobuf.Any data = 5; +} + +enum UserEventType { + USER_EVENT_TYPE_UNSPECIFIED = 0; + USER_EVENT_TYPE_LOGIN = 1; + USER_EVENT_TYPE_LOGOUT = 2; + USER_EVENT_TYPE_PROFILE_UPDATE = 3; + USER_EVENT_TYPE_PASSWORD_CHANGE = 4; +} +``` + +Server streaming implementation: + +```python title="server_streaming.py" +import grpc +import time +import asyncio +from grpc import ServicerContext +from typing import Iterator + +class StreamingServiceServicer(streaming_pb2_grpc.StreamingServiceServicer): + + def StreamUserEvents( + self, + request: streaming_pb2.StreamUserEventsRequest, + context: ServicerContext + ) -> Iterator[streaming_pb2.UserEvent]: + """Stream user events in real-time.""" + + # Validate request + if not request.user_id: + context.set_code(grpc.StatusCode.INVALID_ARGUMENT) + context.set_details('User ID is required') + return + + # Subscribe to event stream + event_subscriber = self.event_store.subscribe( + user_id=request.user_id, + event_types=request.event_types, + start_time=request.start_time + ) + + try: + while context.is_active(): + # Wait for next event (with timeout) + try: + event = event_subscriber.get_next_event(timeout=30) + if event: + yield event + else: + # Send heartbeat to keep connection alive + continue + + except TimeoutError: + # Check if client is still connected + if not context.is_active(): + break + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Error streaming events: {str(e)}') + break + + finally: + # Clean up subscription + event_subscriber.close() + + def DownloadFile( + self, + request: streaming_pb2.DownloadFileRequest, + context: ServicerContext + ) -> Iterator[streaming_pb2.FileChunk]: + """Download file in chunks.""" + + try: + file_path = self.file_store.get_file_path(request.file_id) + if not file_path or not os.path.exists(file_path): + context.set_code(grpc.StatusCode.NOT_FOUND) + context.set_details(f'File {request.file_id} not found') + return + + chunk_size = 64 * 1024 # 64KB chunks + + with open(file_path, 'rb') as f: + while True: + chunk_data = f.read(chunk_size) + if not chunk_data: + break + + # Check if client disconnected + if not context.is_active(): + break + + yield streaming_pb2.FileChunk( + data=chunk_data, + offset=f.tell() - len(chunk_data), + size=len(chunk_data) + ) + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Error downloading file: {str(e)}') +``` + +## Client Streaming + +Client streaming allows the client to send multiple requests and receive a single response: + +```protobuf title="client_streaming.proto" +service StreamingService { + // Client streaming: upload large file in chunks + rpc UploadFile(stream FileChunk) returns (UploadFileResponse); + + // Client streaming: batch data processing + rpc ProcessDataBatch(stream DataRecord) returns (BatchProcessingResult); + + // Client streaming: real-time metrics collection + rpc CollectMetrics(stream MetricData) returns (MetricsCollectionResult); +} + +message FileChunk { + oneof data { + FileMetadata metadata = 1; + bytes chunk = 2; + } +} + +message FileMetadata { + string filename = 1; + int64 total_size = 2; + string content_type = 3; + string checksum = 4; +} + +message UploadFileResponse { + string file_id = 1; + int64 bytes_uploaded = 2; + string download_url = 3; + bool checksum_verified = 4; +} +``` + +Client streaming implementation: + +```python title="client_streaming.py" +class StreamingServiceServicer(streaming_pb2_grpc.StreamingServiceServicer): + + def UploadFile( + self, + request_iterator: Iterator[streaming_pb2.FileChunk], + context: ServicerContext + ) -> streaming_pb2.UploadFileResponse: + """Upload file from client stream.""" + + file_metadata = None + total_bytes = 0 + file_path = None + hasher = hashlib.sha256() + + try: + for chunk in request_iterator: + if chunk.HasField('metadata'): + # First chunk contains metadata + file_metadata = chunk.metadata + + # Create temporary file + file_id = str(uuid.uuid4()) + file_path = f'/tmp/uploads/{file_id}' + os.makedirs(os.path.dirname(file_path), exist_ok=True) + + elif chunk.HasField('chunk'): + # Subsequent chunks contain file data + if not file_metadata: + context.set_code(grpc.StatusCode.INVALID_ARGUMENT) + context.set_details('File metadata must be sent first') + return streaming_pb2.UploadFileResponse() + + # Write chunk to file + with open(file_path, 'ab') as f: + f.write(chunk.chunk) + + total_bytes += len(chunk.chunk) + hasher.update(chunk.chunk) + + # Check size limit + if total_bytes > file_metadata.total_size: + context.set_code(grpc.StatusCode.INVALID_ARGUMENT) + context.set_details('File size exceeds declared size') + return streaming_pb2.UploadFileResponse() + + # Verify checksum + computed_checksum = hasher.hexdigest() + checksum_verified = computed_checksum == file_metadata.checksum + + if not checksum_verified: + context.set_code(grpc.StatusCode.DATA_LOSS) + context.set_details('File checksum verification failed') + return streaming_pb2.UploadFileResponse() + + # Move file to permanent storage + permanent_path = self.file_store.store_file(file_id, file_path) + download_url = self.file_store.get_download_url(file_id) + + return streaming_pb2.UploadFileResponse( + file_id=file_id, + bytes_uploaded=total_bytes, + download_url=download_url, + checksum_verified=True + ) + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Error uploading file: {str(e)}') + return streaming_pb2.UploadFileResponse() + + finally: + # Clean up temporary file + if file_path and os.path.exists(file_path): + os.remove(file_path) +``` + +## Bidirectional Streaming + +Bidirectional streaming allows both client and server to send multiple messages: + +```protobuf title="bidirectional_streaming.proto" +service StreamingService { + // Bidirectional streaming: real-time chat + rpc Chat(stream ChatMessage) returns (stream ChatMessage); + + // Bidirectional streaming: real-time collaboration + rpc Collaborate(stream CollaborationEvent) returns (stream CollaborationEvent); + + // Bidirectional streaming: live data processing + rpc ProcessLiveData(stream DataInput) returns (stream ProcessingResult); +} + +message ChatMessage { + string id = 1; + string user_id = 2; + string room_id = 3; + string content = 4; + google.protobuf.Timestamp timestamp = 5; + ChatMessageType type = 6; +} + +enum ChatMessageType { + CHAT_MESSAGE_TYPE_UNSPECIFIED = 0; + CHAT_MESSAGE_TYPE_TEXT = 1; + CHAT_MESSAGE_TYPE_IMAGE = 2; + CHAT_MESSAGE_TYPE_FILE = 3; + CHAT_MESSAGE_TYPE_SYSTEM = 4; + CHAT_MESSAGE_TYPE_TYPING = 5; +} +``` + +Bidirectional streaming implementation: + +```python title="bidirectional_streaming.py" +import asyncio +import queue +import threading + +class StreamingServiceServicer(streaming_pb2_grpc.StreamingServiceServicer): + + def Chat( + self, + request_iterator: Iterator[streaming_pb2.ChatMessage], + context: ServicerContext + ) -> Iterator[streaming_pb2.ChatMessage]: + """Bidirectional chat streaming.""" + + # Message queue for outgoing messages + outgoing_queue = queue.Queue() + + # Track user session + user_session = None + + def handle_incoming_messages(): + """Process incoming messages from client.""" + nonlocal user_session + + try: + for message in request_iterator: + if not user_session: + # First message establishes session + user_session = self.chat_service.join_room( + user_id=message.user_id, + room_id=message.room_id + ) + + # Send welcome message + welcome_msg = streaming_pb2.ChatMessage( + id=str(uuid.uuid4()), + user_id="system", + room_id=message.room_id, + content=f"User {message.user_id} joined the chat", + timestamp=google.protobuf.timestamp_pb2.Timestamp(), + type=streaming_pb2.CHAT_MESSAGE_TYPE_SYSTEM + ) + outgoing_queue.put(welcome_msg) + + # Process message + if message.type == streaming_pb2.CHAT_MESSAGE_TYPE_TEXT: + # Broadcast to other users in room + self.chat_service.broadcast_message(message) + + elif message.type == streaming_pb2.CHAT_MESSAGE_TYPE_TYPING: + # Send typing indicator to other users + self.chat_service.broadcast_typing(message) + + except Exception as e: + print(f"Error handling incoming messages: {e}") + finally: + # Clean up session + if user_session: + self.chat_service.leave_room(user_session) + + # Start background thread for incoming messages + incoming_thread = threading.Thread(target=handle_incoming_messages) + incoming_thread.daemon = True + incoming_thread.start() + + # Subscribe to room messages + message_subscriber = None + if user_session: + message_subscriber = self.chat_service.subscribe_to_room( + user_session.room_id, + exclude_user=user_session.user_id + ) + + try: + while context.is_active(): + # Check for outgoing messages from queue + try: + message = outgoing_queue.get(timeout=1) + yield message + except queue.Empty: + pass + + # Check for messages from other users + if message_subscriber: + try: + room_message = message_subscriber.get_message(timeout=1) + if room_message: + yield room_message + except TimeoutError: + pass + + finally: + # Clean up + if message_subscriber: + message_subscriber.close() + if user_session: + self.chat_service.leave_room(user_session) +``` + +## Streaming Best Practices + +### Flow Control +Implement proper flow control to prevent overwhelming clients: + +```python title="flow_control.py" +def StreamData(self, request, context): + """Stream with flow control.""" + + # Use a bounded queue to control memory usage + data_queue = queue.Queue(maxsize=100) + + def data_producer(): + """Background thread that produces data.""" + for item in self.data_source.get_items(): + try: + data_queue.put(item, timeout=5) + except queue.Full: + # Apply backpressure + print("Client is too slow, dropping data") + break + + producer_thread = threading.Thread(target=data_producer) + producer_thread.start() + + try: + while context.is_active(): + try: + item = data_queue.get(timeout=30) + yield item + except queue.Empty: + # Send heartbeat or check client connection + if not context.is_active(): + break + finally: + producer_thread.join(timeout=1) +``` + +### Error Handling in Streams +Handle errors gracefully in streaming operations: + +```python title="stream_error_handling.py" +def StreamWithErrorHandling(self, request, context): + """Stream with robust error handling.""" + + try: + for item in self.get_stream_data(request): + if not context.is_active(): + break + + try: + # Process item + processed_item = self.process_item(item) + yield processed_item + + except ProcessingError as e: + # Send error as part of response + error_response = create_error_response(e) + yield error_response + + except Exception as e: + # Critical error - abort stream + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Processing failed: {str(e)}') + break + + except Exception as e: + context.set_code(grpc.StatusCode.INTERNAL) + context.set_details(f'Stream failed: {str(e)}') +``` + +### Client-side Streaming + +Handle streaming on the client side: + +```python title="streaming_client.py" +import grpc + +def stream_chat_client(): + """Example bidirectional streaming client.""" + + channel = grpc.insecure_channel('localhost:50051') + stub = streaming_pb2_grpc.StreamingServiceStub(channel) + + def message_generator(): + """Generate outgoing messages.""" + # Send initial message + yield streaming_pb2.ChatMessage( + user_id="user123", + room_id="general", + content="Hello, world!", + type=streaming_pb2.CHAT_MESSAGE_TYPE_TEXT + ) + + # Keep connection alive and send periodic messages + while True: + user_input = input("Enter message: ") + if user_input.lower() == 'quit': + break + + yield streaming_pb2.ChatMessage( + user_id="user123", + room_id="general", + content=user_input, + type=streaming_pb2.CHAT_MESSAGE_TYPE_TEXT + ) + + # Start bidirectional stream + responses = stub.Chat(message_generator()) + + try: + for response in responses: + print(f"Received: {response.content}") + except grpc.RpcError as e: + print(f"RPC failed: {e}") +``` + +Streaming in gRPC enables powerful real-time applications while maintaining the benefits of strongly-typed contracts and efficient binary protocols. \ No newline at end of file diff --git a/fern/products/api-def/openapi-pages/auth.mdx b/fern/products/api-def/openapi-pages/auth.mdx new file mode 100644 index 00000000..69d9f899 --- /dev/null +++ b/fern/products/api-def/openapi-pages/auth.mdx @@ -0,0 +1,196 @@ +--- +title: Authentication +subtitle: Model auth schemes such as bearer, basic, and api key. +--- + +Configuring authentication schemes happens in the `components.securitySchemes` section of OpenAPI. All Fern-generated SDKs support both direct configuration and environment variables for authentication credentials. + +```yml title="openapi.yml" {2-3} +components: + securitySchemes: + ... +``` + + +To apply a security scheme across all endpoints, reference the `securityScheme` within the `security` section of your OpenAPI Specification. + +```yml title="openapi.yml" {3, 5-6} +components: + securitySchemes: + AuthScheme: + ... +security: + - AuthScheme: [] +``` + + +## Bearer security scheme + +Start by defining a `bearer` security scheme in your `openapi.yml`: + +```yml title="openapi.yml" {3-5} +components: + securitySchemes: + BearerAuth: + type: http + scheme: bearer +``` + +This will generate an SDK where the user would have to provide +a mandatory argument called `token`. + +```ts index.ts +const client = new Client({ + token: "ey34..." +}) +``` + +If you want to control variable naming and the environment variable to scan, +use the configuration below: + +```yaml title="openapi.yml" {6-8} +components: + securitySchemes: + BearerAuth: + type: http + scheme: bearer + x-fern-bearer: + name: apiKey + env: PLANTSTORE_API_KEY +``` + +The generated SDK would look like: + +```ts index.ts + +// Uses process.env.PLANTSTORE_API_KEY +let client = new Client(); + +// token has been renamed to apiKey +client = new Client({ + apiKey: "ey34..." +}) +``` + +## Basic security scheme + +Start by defining a `basic` security scheme in your `openapi.yml`: + +```yaml title="openapi.yml" {3-5} +components: + securitySchemes: + BasicAuth: + type: http + scheme: basic +``` + +This will generate an SDK where the user would have to provide +a mandatory arguments called `username` and `password`. + +```ts index.ts +const client = new Client({ + username: "joeschmoe" + password: "ey34..." +}) +``` + +If you want to control variable naming and environment variables to scan, +use the configuration below: + +```yaml title="openapi.yml" {6-12} +components: + securitySchemes: + BasicAuth: + type: http + scheme: basic + x-fern-basic: + username: + name: clientId + env: PLANTSTORE_CLIENT_ID + password: + name: clientSecret + env: PLANTSTORE_CLIENT_SECRET +``` + +The generated SDK would look like: + +```ts index.ts + +// Uses process.env.PLANTSTORE_CLIENT_ID and process.env.PLANTSTORE_CLIENT_SECRET +let client = new Client(); + +// parameters have been renamed +client = new Client({ + clientId: "joeschmoe", + clientSecret: "ey34..." +}) +``` + +## ApiKey security scheme + +Start by defining an `apiKey` security scheme in your `openapi.yml`: + +```yml title="openapi.yml" {3-5} +components: + securitySchemes: + ApiKey: + type: apiKey + in: header + name: X_API_KEY +``` + +This will generate an SDK where the user would have to provide +a mandatory argument called `apiKey`. + +```ts index.ts +const client = new Client({ + apiKey: "ey34..." +}) +``` + +If you want to control variable naming and environment variables to scan, +use the configuration below: + +```yaml title="openapi.yml" {7-10} +components: + securitySchemes: + ApiKey: + type: apiKey + in: header + name: X_API_KEY + x-fern-header: + name: apiToken + env: PLANTSTORE_API_KEY + prefix: "Token " # Optional +``` + +The generated SDK would look like: + +```ts index.ts + +// Uses process.env.PLANTSTORE_API_KEY +let client = new Client(); + +// parameters have been renamed +client = new Client({ + apiToken: "ey34..." +}) +``` + +## Multiple security schemes + +If you would like to define multiple security schemes, simply +list them under `components.securitySchemes`. For example, if you wanted to support +`basic` and `apiKey` security schemes, see the example below: + +```yaml title="openapi.yml" {3,6} +components: + securitySchemes: + BearerAuth: + type: http + scheme: bearer + ApiKey: + type: apiKey + in: header + name: X_API_KEY +``` \ No newline at end of file diff --git a/fern/products/api-def/openapi-pages/automation.mdx b/fern/products/api-def/openapi-pages/automation.mdx new file mode 100644 index 00000000..23a319a9 --- /dev/null +++ b/fern/products/api-def/openapi-pages/automation.mdx @@ -0,0 +1,54 @@ +--- +title: Sync your OpenAPI Specification +subtitle: Pull your latest OpenAPI Specification into your Fern Folder automatically. +--- + +If you host your OpenAPI Specification at a publicly available URL, you can have Fern programmatically fetch the latest spec on a preconfigured cadence through the [sync-openapi GitHub Action](https://github.com/fern-api/sync-openapi). This ensures your committed OpenAPI spec stays up to date with your live API. +## Setup + + + Add the origin field to your generators.yml to specify where your OpenAPI spec is hosted: + ```yml title="generators.yml" + api: + path: openapi/openapi.json + origin: https://api.example.com/openapi.json + ``` + + + Create `.github/workflows/sync-openapi.yml` in your repository: + ```yml + name: Sync OpenAPI Specs # can be customized + on: # additional custom triggers can be configured + workflow_dispatch: # manual dispatch + push: + branches: + - main # on push to main + schedule: + - cron: '0 3 * * *' # everyday at 3:00 AM UTC + jobs: + update-from-source: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + token: ${{ secrets.OPENAPI_SYNC_TOKEN }} + - name: Update API with Fern + uses: fern-api/sync-openapi@v2 + with: + update_from_source: true + token: ${{ secrets.OPENAPI_SYNC_TOKEN }} + branch: 'update-api' + auto_merge: false + add_timestamp: true +``` + + + Generate a [fine-grained personal access token](https://github.com/settings/personal-access-tokens) with read/write access to your repository. + + + Navigate to your repository's `Settings > Secrets and variables > Actions`. Select **New repository secret**, name it `OPENAPI_SYNC_TOKEN`, add your token, and click **Add secret**. + + +By default, this will create daily PRs with API spec updates to the repo containing your fern folder. If you would like to adjust the frequency, learn more about GitHub's [schedule event](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#schedule). + + For detailed configuration options and other use cases, see the [sync-openapi GitHub Action README](https://github.com/fern-api/sync-openapi). diff --git a/fern/products/api-def/openapi-pages/endpoints/multipart.mdx b/fern/products/api-def/openapi-pages/endpoints/multipart.mdx new file mode 100644 index 00000000..800fa0fa --- /dev/null +++ b/fern/products/api-def/openapi-pages/endpoints/multipart.mdx @@ -0,0 +1,75 @@ +--- +title: Multipart File Upload +subtitle: Document endpoints with the `multipart/form-data` content type +--- + +Multipart requests combine one or more sets of data into a single body, separated by boundaries. +You typically use these requests for file uploads and for transferring data of several types in a single request +(for example, a file along with a JSON object). + +```yml title="openapi.yml" maxLines=0 {12-24} +paths: + /upload: + post: + summary: Upload a file + description: Upload a file using multipart/form-data encoding + operationId: uploadFile + tags: + - file + requestBody: + required: true + content: + multipart/form-data: + schema: + type: object + properties: + file: + type: string + format: binary + description: The file to upload + description: + type: string + description: A description of the file (optional) + required: + - file + responses: + "200": + description: Successful upload + content: + application/json: + schema: + type: object + properties: + message: + type: string + fileId: + type: string +``` +Any request body that is defined with a `multipart/form-data` content type, will be +treated as a multipart request. Within a given multipart request, a string parameter with +`format:binary` will represent an arbitrary file. + +## Array of Files + +If your endpoint supports an array of files, then your request body must use +an array type. + +```yml openapi.yml {12-17} +paths: + /upload: + post: + summary: Upload multiple files + operationId: uploadFiles + requestBody: + content: + multipart/form-data: + schema: + type: object + properties: + files: + type: array + items: + type: string + format: binary + description: An array of files to upload +``` diff --git a/fern/products/api-def/openapi-pages/endpoints/rest.mdx b/fern/products/api-def/openapi-pages/endpoints/rest.mdx new file mode 100644 index 00000000..a4dd8fcb --- /dev/null +++ b/fern/products/api-def/openapi-pages/endpoints/rest.mdx @@ -0,0 +1,66 @@ +--- +title: HTTP JSON Endpoints +subtitle: Document HTTP JSON APIs with the `application/json` content type +--- + +Endpoints in OpenAPI are defined underneath the `paths` key. Below is an example of defining +a single endpoint: + +```yml title="openapi.yml" maxLines=0 {2-18} +paths: + /pets: + post: + summary: Create a new pet + description: Creates a new pet with the provided information + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + responses: + '200': + description: User created successfully + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' +``` + +## Examples + +You can provide examples of requests and responses by using the `examples` key. + +```yaml title="openapi.yml" {12-17,25-30} +paths: + /pets: + post: + summary: Create a new pet + description: Creates a new pet with the provided information + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + examples: + PetExample: + summary: This is an example of a Pet + value: + name: Markley + id: 44 + responses: + '200': + description: A Pet object + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + examples: + PetExample: + summary: This is an example of a Pet + value: + name: Markley + id: 44 +``` + diff --git a/fern/products/api-def/openapi-pages/endpoints/sse.mdx b/fern/products/api-def/openapi-pages/endpoints/sse.mdx new file mode 100644 index 00000000..bc680cfe --- /dev/null +++ b/fern/products/api-def/openapi-pages/endpoints/sse.mdx @@ -0,0 +1,109 @@ +--- +title: Server-Sent Events and Streaming APIs +subtitle: Use the `x-fern-streaming` extension to model streaming endpoints +--- + + + The `x-fern-streaming` extension allows you to represent endpoints that are streaming. + + + +## JSON streaming + +If your API returns a series of `JSON` chunks as seen below + +```json +{ "text": "Hi, I am a" } +{ "text": "chatbot. Do you have any"} +{ "text": "questions for me"} +``` + +then simply add the `x-fern-streaming: true` to your OpenAPI operation. + +```yaml title="openapi.yml" {4} +paths: + /logs: + post: + x-fern-streaming: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Chat" +components: + schemas: + Chat: + type: object + properties: + text: + type: string +``` + +## Server-sent events + +If your API returns server-sent-events, with the `data` and `event` keys as seen below + +```json +data: { "text": "Hi, I am a" } +data: { "text": "chatbot. Do you have any"} +data: { "text": "questions for me"} +``` + +then make sure to include `format: sse`. + +```yaml title="openapi.yml" {4-5} +paths: + /logs: + post: + x-fern-streaming: + format: sse + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Chat" +components: + schemas: + Chat: + type: object + properties: + text: + type: string +``` + +## `Stream` parameter + +It has become common practice for endpoints to have a `stream` parameter that +controls whether the response is streamed or not. Fern supports this pattern in a first +class way. + +Simply specify the `stream-condition` as well as the ordinary response and the streaming response: + +```yaml title="openapi.yml" {4-10} +paths: + /logs: + post: + x-fern-streaming: + format: sse + stream-condition: $request.stream + response: + $ref: '#/components/schemas/Chat' + response-stream: + $ref: '#/components/schemas/ChatChunk' +components: + schemas: + Chat: + type: object + properties: + text: + type: string + tokens: + type: number + ChatChunk: + type: object + properties: + text: + type: string +``` \ No newline at end of file diff --git a/fern/products/api-def/openapi-pages/examples.mdx b/fern/products/api-def/openapi-pages/examples.mdx new file mode 100644 index 00000000..e4a77240 --- /dev/null +++ b/fern/products/api-def/openapi-pages/examples.mdx @@ -0,0 +1,93 @@ +--- +title: How to use examples in OpenAPI +description: Use the examples feature of OpenAPI to add example values in your API definition. Fern then uses your examples when generating SDKs and documentation. +--- + +Using examples in OpenAPI shows API consumers what requests and responses look like. They can be provided for request bodies, response bodies, and individual parameters. + +## Inline examples + +Examples can be placed directly within the operation definition under `paths`. Here's an example: + +```yaml +paths: + /pet: + post: + summary: Add a new pet to the store + operationId: addPet + responses: + '200': + description: A Pet object + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + examples: + PetExample: + summary: This is an example of a Pet + value: + name: Markley + id: 44 +``` + +## Reusable examples + +For more general examples that apply to multiple parts of the API, you can define them under the `components/examples` section. These can be referenced elsewhere in the documentation. + +```yaml +components: + examples: + PetExample: + summary: Example of a Pet object + value: + name: Markley + id: 44 + +paths: + /pet: + post: + summary: Add a new pet to the store + operationId: addPet + responses: + '200': + description: Successful operation + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + examples: + PetExample: + $ref: '#/components/examples/PetExample' +``` + +## How examples are used in Fern SDKs + +Fern SDKs use examples from your OpenAPI document to generate comments that show up in your IDE. For example, in a Node.js SDK: + + +```ts + +import * as Petstore from "../../.."; + +/** + * @example + * { + * name: "Markley", + * id: "44" + * } + */ +``` + + +Here's an [example in GitHub](https://github.com/FlatFilers/flatfile-node/blob/ab955a0a337c40ea00755e24df08f8c9a146c39c/src/api/resources/documents/types/DocumentResponse.ts#L8-L27) from Flatfile's Node.js SDK. + +## How examples are used in Fern Docs + +In the request and response code snippets, you'll see the example values used. + + +![Screenshot of an example used in response code in Fern Docs API reference](https://fern-image-hosting.s3.amazonaws.com/movie+example.png) + + +If you generate SDKs with Fern, the code examples for each language will also be populated with the example values. [Check out Flatfile's Docs to see this in action](https://reference.flatfile.com/api-reference/documents/create). Change the language toggle to see the examples in different languages. + diff --git a/fern/products/api-def/openapi-pages/extensions/audiences.mdx b/fern/products/api-def/openapi-pages/extensions/audiences.mdx new file mode 100644 index 00000000..8bd80fc5 --- /dev/null +++ b/fern/products/api-def/openapi-pages/extensions/audiences.mdx @@ -0,0 +1,118 @@ +--- +title: Use audiences to filter your API +subtitle: Use `x-fern-audiences` to filter to relevant endpoints, schemas and properties +--- + +Audiences are a useful tool for segmenting your API for different consumers. Common examples of audiences include `public` +and `beta`. + + + Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, + nothing will be filtered. + + + + +The following example configures the SDK to filter to the `public` audience: + +```yaml title="generators.yml" {3-4} +groups: + sdks: + audiences: + - public + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + + + +The following example configures the docs to filter to the `public` audience: + +```yaml title="docs.yml" {3-4} +navigation: + - api: API Reference + audiences: + - public +``` + + + + + + +## Audiences for servers + +To mark a server with a particular audience, add the `x-fern-server-name` and `x-fern-audiences` extension to the relevant server. + +In the example below, the `Production` server is only available to public consumers: + +```yaml title="openapi.yml" {3-5} +servers: + - url: https://api.com + x-fern-server-name: Production + x-fern-audiences: + - public +``` + +## Audiences for endpoints + +To mark an endpoint with a particular audience, add the `x-fern-audiences` extension to the relevant endpoint. + +In the example below, the `POST /users/sendEmail` endpoint is only available to public consumers: + +```yaml title="openapi.yml" {4-5} +paths: + /users/sendEmail: + post: + x-fern-audiences: + - public + operationId: send_email +``` + +## Audiences for schemas + +Schemas can be marked for different audiences, as well. + +In this example, the `Email` type is available to both public and beta customers. + +```yaml title="openapi.yml" {13-15} +components: + schemas: + Email: + title: Email + type: object + properties: + subject: + type: string + body: + type: string + to: + type: string + x-fern-audiences: + - public + - beta +``` + +## Audiences for properties + +Properties can be marked for different audiences, as well. + +In this example, the `to` property is available to beta customers only. + +```yaml title="openapi.yml" {13-17} +components: + schemas: + Email: + title: Email + type: object + properties: + subject: + type: string + body: + type: string + to: + type: string + x-fern-audiences: + - beta +``` diff --git a/fern/products/api-def/openapi-pages/extensions/method-names.mdx b/fern/products/api-def/openapi-pages/extensions/method-names.mdx new file mode 100644 index 00000000..6a5c4230 --- /dev/null +++ b/fern/products/api-def/openapi-pages/extensions/method-names.mdx @@ -0,0 +1,58 @@ +--- +title: Customize SDK Method Names +description: Use `x-fern-sdk-method-name` and `x-fern-sdk-group-name` to finetune SDK naming. +--- + +## Operation IDs + +By default, if you have no extensions present, Fern will try to use your operation ID to generate idiomatic +method names for the SDK. We typically recommend formatting your operation IDs like `{tag_name}_{operation_name}`. + +For example, for an endpoint that has the tag `users` and the operation id `users_get`, we will generate an SDK +method that is `users.get()`. If your operation id does not start with a tag, then we will simply use it as the method name. + +## Usage + + + The `x-fern-sdk-group-name` and `x-fern-sdk-method-name` extensions allow you to customize the generated SDK method + names. + + +In the example below, Fern will generate a method called `client.users.create()` for the `POST /users` endpoint. + +```yaml title="openapi.yaml" +paths: + /users: + post: + x-fern-sdk-group-name: users + x-fern-sdk-method-name: create +``` + +## Top level methods + +If you omit the `x-fern-sdk-group-name` extension, then the generated SDK method will live at the root. +In the example below, Fern will generate a method called `client.send()`: + +```yaml title="openapi.yaml" +paths: + /send: + post: + x-fern-sdk-method-name: send +``` + +## Multiple levels of nesting + +If you add more than one `x-fern-sdk-group-name` extension, then the generated SDK will nest group names. +The order of the group names is preserved in the generated SDK method. + +In the example below, Fern will generate a method called `client.users.notifications.send()`: + +```yaml title="openapi.yaml" +paths: + /users/notifications: + post: + x-fern-sdk-group-name: + - users + - notifications + x-fern-sdk-method-name: send +``` diff --git a/fern/products/api-def/openapi-pages/extensions/others.mdx b/fern/products/api-def/openapi-pages/extensions/others.mdx new file mode 100644 index 00000000..b3aa4b3e --- /dev/null +++ b/fern/products/api-def/openapi-pages/extensions/others.mdx @@ -0,0 +1,416 @@ +--- +title: Other extensions +description: Learn about Fern's OpenAPI extensions for authentication overrides, global headers, enum descriptions and names, audiences, and more. +--- + +Fern supports different OpenAPI extensions so that you can generate higher-quality SDKs. + +## API version + +You can define your API version scheme, such as a `X-API-Version` header. The supported versions and default value are specified like so: + +```yaml title="openapi.yaml" +x-fern-version: + version: + header: X-API-Version + default: "2.0.0" + values: + - "1.0.0" + - "2.0.0" + - "latest" +paths: ... +``` + +## Global headers + +At times, your API will leverage certain headers for every endpoint, or the majority of them, we call these "global headers". For convenience, generated Fern SDKs expose "global headers" to easily be updated on API calls. Take for example an API key, if we declare the API key as a global header, a user will be able to plug theirs in easily: + +```python +import os + +class Client: + + def __init__(self, *, apiKey: str): +``` + +To configure global headers, Fern will automatically pull out headers that are used in every request, or the majority of requests, and mark them as global. +In order to label additional headers as global, or to alias the names of global headers, you can leverage the `x-fern-global-headers` extension: + +```yaml title="openapi.yml" +x-fern-global-headers: + - header: custom_api_key + name: api_key + - header: userpool_id + optional: true +``` + +yields the following client: + +```python +import os + +class Client: + + def __init__(self, *, apiKey: str, userpoolId: typing.Optional[str]) +``` + +## Enum descriptions and names + +OpenAPI doesn't natively support adding descriptions to enum values. To do this in Fern you can use the `x-fern-enum` +extension. + +In the example below, we've added some descriptions to enum values. These descriptions will +propagate into the generated SDK and docs website. + +```yaml title="openapi.yml" {9-13} +components: + schemas: + CardSuit: + enum: + - clubs + - diamonds + - hearts + - spades + x-fern-enum: + clubs: + description: Some docs about clubs + spades: + description: Some docs about spades +``` + +`x-fern-enum` also supports a `name` field that allows you to customize the name of the enum in code. +This is particularly useful when you have enums that rely on symbolic characters that would otherwise cause +generated code not to compile. + +For example, the following OpenAPI + +```yaml title="openapi.yml" {9,12} +components: + schemas: + Operand: + enum: + - '>' + - '<' + x-fern-enum: + '>': + name: GreaterThan + description: Checks if value is greater than + '<': + name: LessThan + description: Checks if value is less than +``` + +would generate + +```typescript title="operand.ts" +export enum Operand { + GreaterThan = ">", + LessThan = "<" +} +``` + +## Schema names + +OpenAPI allows you to define inlined schemas that do not have names. + +```yaml title="Inline type in openapi.yml" {11} +components: + schemas: + Movie: + type: object + properties: + name: + type: string + cast: + type: array + items: + type: object + properties: + firstName: + type: string + lastName: + type: string + age: + type: integer +``` + +Fern automatically generates names for all the inlined schemas. For example, in this example, +Fern would generate the name `CastItem` for the inlined array item schema. + +```typescript title="Auto-generated name" {6} +export interface Movie { + name?: string; + cast?: CastItem[]; +} + +export interface CastItem { + firstName?: string; + lastName?: string; + age?: integer; +} +``` + +If you want to override the generated name, you can use the extension `x-fern-type-name`. + +```yaml title="openapi.yml" {12} +components: + schemas: + Movie: + type: object + properties: + name: + type: string + cast: + type: array + items: + type: object + x-fern-type-name: Person + properties: + firstName: + type: string + lastName: + type: string + age: + type: integer +``` + +This would replace `CastItem` with `Person` and the generated code would read more idiomatically: + +```typescript title="Overridden name" {6} +export interface Movie { + name?: string; + cast?: Person[]; +} + +export interface Person { + firstName?: string; + lastName?: string; + age?: integer; +} +``` + +## Property names + +The `x-fern-property-name` extension allows you to customize the variable name for object +properties. + +For example, if you had a property called `_metadata` in your schema but you wanted the +variable to be called `data` in your SDK you would do the following: + +```yaml {6} +components: + schemas: + MyUser: + _metadata: + type: object + x-fern-property-name: data +``` + +## Server names + +The `x-fern-server-name` extension is used to name your servers. + +```yaml title="openapi.yml" +servers: + - url: https://api.example.com + x-fern-server-name: Production + - url: https://sandbox.example.com + x-fern-server-name: Sandbox +``` + +In a generated TypeScript SDK, you'd see: + +```typescript title="environment.ts" +export const ExampleEnvironment = { + Production: "https://api.example.com" +} as const; + +export type ExampleEnvironment = typeof ExampleEnvironment.Production; +``` + +## Base path + +The `x-fern-base-path` extension is used to configure the base path prepended to every endpoint. + +In the example below, we have configured the `/v1` base path so the full endpoint path is +`https://api.example.com/v1/users`. + +```yaml title="Set the base path in openapi.yml" {1} +x-fern-base-path: /v1 +servers: + - url: https://api.example.com +paths: + /users: ... +``` + +## Ignoring schemas or endpoints + +If you want Fern to skip reading any endpoints or schemas, use the `x-fern-ignore` extension. + +To skip an endpoint, add `x-fern-ignore: true` at the operation level. + +```yaml title="x-fern-ignore at operation level in openapi.yml" {4} +paths: + /users: + get: + x-fern-ignore: true + ... +``` + +To skip a schema, add `x-fern-ignore: true` at the schema level. + +```yaml title="x-fern-ignore at schema level in openapi.yml" {4} +components: + schemas: + SchemaToSkip: + x-fern-ignore: true + ... +``` + +## Overlaying extensions + +Because of the number of tools that use OpenAPI, it may be more convenient to +"overlay" your fern specific OpenAPI extensions onto your original definition. \ +In order to do this you can specify your overrides file in `generators.yml`. + +Below is an example of how someone can overlay the extensions `x-fern-sdk-method-name` and +`x-fern-sdk-group-name` without polluting their original OpenAPI. The combined result is +shown in the third tab. + + + ```yaml title="generators.yml" {3} + api: + path: ./openapi/openapi.yaml + overrides: ./openapi/overrides.yaml + default-group: sdk + groups: + sdk: + generators: + - name: fernapi/fern-python-sdk + version: 2.2.0 + ``` + + ```yaml title="overrides.yml" + paths: + /users: + get: + x-fern-sdk-group-name: users + x-fern-sdk-method-name: get + ``` + + ```yaml title="Overlaid OpenAPI" {4-5} + paths: + /users: + get: + x-fern-sdk-group-name: users + x-fern-sdk-method-name: get + summary: Get a list of users + description: Retrieve a list of users from the system. + responses: + '200': + description: Successful response + '500': + description: Internal Server Error + ``` + + + +## Embedding extensions + +If instead of overlaying your extensions within an overrides file, as mentioned above. Certain frameworks that generate OpenAPI Specifications make it easy to embed extensions directly from code. + +### FastAPI + +Please view our page on [FastAPI](/learn/api-definition/openapi/frameworks/fastapi) for more information on how to extend your OpenAPI Specification within FastAPI. + +## Request + response examples + +While OpenAPI has several fields for examples, there is no easy way +to associate a request with a response. This is especially useful when +you want to show more than one example in your documentation. + +`x-fern-examples` is an array of examples. Each element of the array +can contain `path-parameters`, `query-parameters`, `request` and `response` +examples values that are all associated. + +```yaml title="openapi.yml" {5-16} +paths: + /users/{userId}: + get: + x-fern-examples: + - path-parameters: + userId: user-1234 + response: + body: + name: Foo + ssn: 1234 + - path-parameters: + userId: user-4567 + response: + body: + name: Foo + ssn: 4567 +components: + schemas: + User: + type: object + properties: + name: + type: string + ssn: + type: integer +``` + +### Code samples + +If you'd like to specify custom code samples for your example, use `code-samples`. + +```yaml title="openapi.yml" {11-16} +paths: + /users/{userId}: + get: + x-fern-examples: + - path-parameters: + userId: user-1234 + response: + body: + name: Foo + ssn: 1234 + code-samples: + - sdk: typescript + code: | + import { UserClient } from "..."; + + client.users.get("user-1234") +``` + +If you're on the Fern Basic plan or higher for SDKs you won't have to worry about manually adding code samples! Our generators do that for you. + +## Availability + +The `x-fern-availability` extension is used to mark the availability of an endpoint. The availability information propagates into the generated Fern Docs website as visual tags. + +The options are: + +- `beta` +- `generally-available` +- `deprecated` + +The example below marks that the `POST /pet` endpoint is `deprecated`. + +```yaml title="x-fern-availability in openapi.yml" {4} +paths: + /pet: + post: + x-fern-availability: deprecated +``` + +This renders as: + + +![Screenshot of API Reference endpoint with tag showing deprecated](https://fern-image-hosting.s3.amazonaws.com/fern/x-fern-availability-example.png) + + +### Request new extensions + +If there's an extension you want that doesn't already exist, file an [issue](https://github.com/fern-api/fern/issues/new) to start a discussion about it. diff --git a/fern/products/api-def/openapi-pages/extensions/parameter-names.mdx b/fern/products/api-def/openapi-pages/extensions/parameter-names.mdx new file mode 100644 index 00000000..ff60bf61 --- /dev/null +++ b/fern/products/api-def/openapi-pages/extensions/parameter-names.mdx @@ -0,0 +1,65 @@ +--- +title: Customize parameter names +description: Use `x-fern-parameter-name` to customize query parameter, header and path parameter naming. +--- + + + The `x-fern-parameter-name` extension allows you to customize the variable names of parameters in your generated SDKs. + + +## Headers + +In the example below, the header `X-API-Version` is renamed to `version` in the +generated SDK. The rename makes the SDK more human readable. + +```yaml {8} +paths: + "/user": + get: + operationId: list_user + parameters: + - in: header + name: X-API-Version + x-fern-parameter-name: version + schema: + type: string + required: true +``` + +## Query parameters + +In the example below, the query parameter `q` is renamed to `search_terms` in the +generated SDK. The rename makes the parameter more approachable for end users. + +```yaml {8} +paths: + "/user/search": + get: + operationId: search_user + parameters: + - in: query + name: q + x-fern-parameter-name: search_terms + schema: + type: string + required: false +``` + +## Path parameters + +In the example below, the path parameter `userId` is renamed to `id` in the +generated SDK. The rename makes the SDK less verbose. + +```yaml {8} +paths: + "/user/{userId}": + get: + operationId: get_user + parameters: + - in: path + name: userId + x-fern-parameter-name: id + schema: + type: string + required: false +``` diff --git a/fern/products/api-def/openapi-pages/overrides.mdx b/fern/products/api-def/openapi-pages/overrides.mdx new file mode 100644 index 00000000..50d6462d --- /dev/null +++ b/fern/products/api-def/openapi-pages/overrides.mdx @@ -0,0 +1,74 @@ +--- +title: Overlay customizations on an existing OpenAPI spec +subtitle: Can't directly modify your OpenAPI spec? No worries, use an overrides file instead. +--- + +If you generate your OpenAPI from server code, you may want to tweak your OpenAPI Spec without having to +touch the generated file. Fern supports this via an `overrides` file. + + +```yml openapi.yml +paths: + /users: + post: + description: Create a User + operationId: users_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/User' +``` +```yml title="overrides.yml" {4-5} +paths: + /users: + post: + x-fern-sdk-group-name: users + x-fern-sdk-method-name: create +``` +```yml title="combined" {4-5} +paths: + /users/post: + post: + x-fern-sdk-group-name: users + x-fern-sdk-method-name: create + description: Create a User + operationId: users_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/User' +``` + + +## Configuration + +Follow the steps below to configure your OpenAPI overrides: + + +### Create an `overrides.yml` + +Simply create a yaml file and write down all the overrides you want to add: + +```yaml overrides.yml +paths: + /v1/history: + get: + x-fern-sdk-group-name: + - history + x-fern-sdk-method-name: get_all +``` + +### Reference the file in your `generators.yml` + +```yml generators.yml +api: + path: ../openapi.yml + overrides: ../overrides.yml +``` + + The format of the overrides file is independent from the spec. For example, even if your OpenAPI spec is in JSON format, you can write the overrides in yaml. + + + diff --git a/fern/products/api-def/openapi-pages/overview.mdx b/fern/products/api-def/openapi-pages/overview.mdx new file mode 100644 index 00000000..c6cc053e --- /dev/null +++ b/fern/products/api-def/openapi-pages/overview.mdx @@ -0,0 +1,128 @@ +--- +title: What is an OpenAPI Specification? +subtitle: OpenAPI is a standard for documenting REST APIs +--- + +The OpenAPI Specification (OAS) is a framework used by developers to document REST APIs. The specification +written in JSON or YAML and contains all of your endpoints, parameters, schemas, and authentication schemes. +Fern is compatible with the latest OAS release, which is currently [v3.1.1](https://spec.openapis.org/#openapi-specification). + + Considering options to generate an OpenAPI spec? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) + +Below is an example of an OpenAPI file: + +```yaml openapi.yml +openapi: 3.0.2 +info: + title: Petstore - OpenAPI 3.0 + description: |- + This is a sample Pet Store Server based on the OpenAPI 3.0 specification. +paths: + "/pet": + put: + tags: + - pet + summary: Update an existing pet + description: Update an existing pet by Id + operationId: updatePet + requestBody: + description: Update an existent pet in the store + content: + application/json: + schema: + "$ref": "#/components/schemas/Pet" + required: true + responses: + '200': + description: Successful operation + content: + application/json: + schema: + "$ref": "#/components/schemas/Pet" + '400': + description: Invalid ID supplied + '404': + description: Pet not found + '405': + description: Validation exception + security: + - api_key +components: + schemas: + Category: + type: object + properties: + id: + type: integer + format: int64 + example: 1 + name: + type: string + example: Dogs + Tag: + type: object + properties: + id: + type: integer + format: int64 + name: + type: string + Pet: + required: + - name + - photoUrls + type: object + properties: + id: + type: integer + format: int64 + example: 10 + name: + type: string + example: doggie + category: + "$ref": "#/components/schemas/Category" + photoUrls: + type: array + items: + type: string + tags: + type: array + items: + "$ref": "#/components/schemas/Tag" + status: + type: string + description: pet status in the store + enum: + - available + - pending + - sold + securitySchemes: + api_key: + type: apiKey + name: api_key + in: header +``` + +## Setup your fern folder + +Start by initializing your fern folder with an OpenAPI spec + + +```sh file +fern init --openapi ./path/to/openapi +``` +```sh url +fern init --openapi https://host/path/to/openapi +``` + + +This will initialize a directory like the following +``` +fern/ + ├─ fern.config.json + ├─ generators.yml + └─ openapi/ + ├─ openapi.yml +``` + diff --git a/fern/products/api-def/openapi-pages/server-frameworks/fastapi.mdx b/fern/products/api-def/openapi-pages/server-frameworks/fastapi.mdx new file mode 100644 index 00000000..df5bcbe3 --- /dev/null +++ b/fern/products/api-def/openapi-pages/server-frameworks/fastapi.mdx @@ -0,0 +1,92 @@ +--- +title: FastAPI Instrumentation +description: Learn about best practices for creating rich OpenAPI Specifications when instrumenting FastAPI applications. +--- + +[FastAPI](https://fastapi.tiangolo.com/) is a popular Python web framework developed by [tiangolo](https://github.com/tiangolo). + +The offering brands itself as + +> FastAPI is a modern, fast (high-performance), web framework for building APIs with Python based on standard Python type hints. + +FastAPI plays very nicely with Fern because it has the power to output OpenAPI Specifications! Below we'll outline some tips for generating a rich OpenAPI with FastAPI. + + +## OpenAPI generation + +By default, FastAPI will generate an OpenAPI Specification for you based on your routes and your data models! You can access this spec by visiting `/docs` on your FastAPI server. + +If you are not seeing any OpenAPI Specification (or the Swagger UI), you may need to review your FastAPI server configuration as the path may have been changed, or completely omitted. + +```python {6-8} +from fastapi import FastAPI + +... + +FastAPI( + openapi_url="/openapi.json", # <-- this is the file and URL needed to access the OpenAPI Specification, `docs_url` and `redoc_url` are convenient wrappers that display the file in a UI! + docs_url="/docs", # <-- this is the URL to access the Swagger UI, which will point to your OpenAPI Specification + redoc_url="/redoc" # <-- this is the URL to access the ReDoc UI, which will point to your OpenAPI Specification +) +``` + +## Specifying servers + +Fern will automatically generate clients that point to the servers you configure within your OpenAPI Specification, so it's important to specify the servers that your API will be hosted on. + +```python {5} +from fastapi import FastAPI + +... + +app = FastAPI(servers=[{"url": "http://prod.test.com", "description": "Production server"}]) +# This creates the following server object in your OpenAPI Specification: +# "servers":[{"url":"http://prod.test.com","description":"Production server"}], +``` + +## OpenAPI extensions + +FastAPI allows you to add in extra OpenAPI configuration directly within your route, through the use of the `openapi_extra` parameter. +Below, we've annotated a "good" route within FastAPI that has it's typings as well as Fern extensions to assist in naming. + +```python {5-9} +@router.post( + "/your/post/endpoint", + response_model=YourResponseModel, # <-- with FastAPI, it is important to specify your response model so that it comes through to the OpenAPI Specification + summary="Get some response for your req", # <-- if you'd like to add a description to your endpoint, you can do so here + openapi_extra={ # <-- finally, you can add in your Fern extensions here, these extensions will produce SDK code that looks something like: `client.endpoints.create(...)` in python + "x-fern-sdk-method-name": "create", + "x-fern-sdk-group-name": "endpoints", + "x-fern-availability": "beta", + }, +) +async def your_post_endpoint( + payload: YourRequestModel, +) -> YourResponseModel: +``` + +## Specifying examples + +FastAPI allows you to specify examples for your data models, which Fern will pick up and use within your generated SDKs and documentation automatically. + +For more information on leveraging examples within Fern, please refer to the [Fern documentation](/learn/api-definition/openapi/extensions/others#request--response-examples). + +For more information on this FastAPI functionality, please refer to the [FastAPI documentation](https://fastapi.tiangolo.com/tutorial/schema-extra-example/). + +```python {7-11} +from pydantic import BaseModel + +class MyObject(BaseModel): + id: str + + class Config: + schema_extra = { + "example": { + "id": "a-cool-uuid", + } + } +``` + +## Additional customization + +FastAPI has a lot of flexibility in how you can customize your OpenAPI Specification. Please refer to the [FastAPI documentation](https://fastapi.tiangolo.com/how-to/extending-openapi/#modify-the-openapi-schema) for more information. diff --git a/fern/products/api-def/openapi-pages/servers.mdx b/fern/products/api-def/openapi-pages/servers.mdx new file mode 100644 index 00000000..28ce155a --- /dev/null +++ b/fern/products/api-def/openapi-pages/servers.mdx @@ -0,0 +1,84 @@ +--- +title: Servers +description: Configure server URLs and environments to help users connect to your API. +subtitle: Define server URLs and environments to help users connect to your API. +--- + +OpenAPI allows you to specify one or more base URLs under the `servers` key. + +```yml openapi.yml + +servers: + - url: https://api.yourcompany.com/ + - url: https://api.eu.yourcompany.com/ +``` + +Specifying servers is valuable for both SDKs and Docs: +- For SDKs, your users won't need to manually specify the baseURL at client instantiation +- For Docs, your API playground will automatically hit the correct server + +## Naming your servers + +If you have more than one server, we recommend specifying an `x-fern-server-name` to name +the server. + +```yml openapi.yml {3,5} +servers: + - x-fern-server-name: Production + url: https://api.yourcompany.com/ + - x-fern-server-name: Production_EU + url: https://api.eu.yourcompany.com/ +``` + +## Multiple Base URLs for a single API + +If you have a microservice architecture, it is possible that you may have different endpoints hosted +at different URLs. For example, your AI endpoints might be hosted at `ai.yourcompany.com` and the rest +of your endpoints might be hosted at `api.yourcompany.com`. + +To specify this, you will need to add configuration to both your `generators.yml` and OpenAPI spec. The +snippet directly below shows how to configure an environment with multiple urls in your `generators.yml`. + +```yml generators.yml {3-8} +api: + default-environment: Production + default-url: api + environments: + Production: + api: api.yourcompany.com + ai: ai.yourcompany.com + specs: + - openapi: ./path/to/your/openapi + overrides: ./path/to/your/overrides # optional +``` + +Once you've specified the environments in your `generators.yml`, you can use the `x-fern-server-name` +extension to specify which server the operation belongs to. + +```yml openapi.yml {4} +paths: + /chat: + post: + x-fern-server-name: ai +``` + +If you have multiple environments like development or staging, you can model those in your `generators.yml` +as well. + +```yml generators.yml {7-12} +api: + default-environment: Production + default-url: api + environments: + Production: + api: api.yourcompany.com + ai: ai.yourcompany.com + Staging: + api: api.staging.yourcompany.com + ai: ai.staging.yourcompany.com + Dev: + api: api.dev.yourcompany.com + ai: ai.dev.yourcompany.com +``` + +To see an example of this in production, check out the Chariot [generators.yml](https://github.com/chariot-giving/chariot-openapi/blob/main/fern/apis/2025-02-24/generators.yml) \ No newline at end of file diff --git a/fern/products/api-def/openapi-pages/webhooks.mdx b/fern/products/api-def/openapi-pages/webhooks.mdx new file mode 100644 index 00000000..a6d9ebdd --- /dev/null +++ b/fern/products/api-def/openapi-pages/webhooks.mdx @@ -0,0 +1,60 @@ +--- +title: Webhooks +subtitle: Define webhooks using OpenAPI 3.1+ native webhook support or Fern's extensions +--- + +Fern supports two methods for defining webhooks in your OpenAPI specification: + +1. Using OpenAPI 3.1's native webhook support (recommended) +2. Using Fern's `x-fern-webhook` extension + +## OpenAPI 3.1 Webhooks + +For OpenAPI 3.1 specifications, use the `webhooks` top-level field to define your webhook operations. Each webhook requires an `operationId` to be properly processed by Fern. + +```yaml openapi.yml {4} +webhooks: + newPlant: + post: + operationId: newPlantWebhook + requestBody: + description: Information about a new Plant in the system + content: + application/json: + schema: + $ref: '#/components/schemas/Plant' + responses: + '200': + description: Return a 200 status to indicate that the data was received successfully +``` + +## Fern Webhook Extension + +For OpenAPI 3.0, use the `x-fern-webhook: true` extension to define webhooks. Fern will treat the `requestBody` as the webhook payload. + +```yaml openapi.yml {6} +paths: + /payment/updated/: + post: + summary: Payment Initiated + operationId: initiatePayment + x-fern-webhook: true + requestBody: + content: + application/json: + schema: + type: object + properties: + amount: + type: number + currency: + $ref: '#/components/schemas/Currency' + required: + - amount + - currency +``` + + +The path that you choose when defining a webhook can be arbitrary. Since webhooks +can be sent to any server, Fern just ignores the path. + diff --git a/fern/products/api-def/openrpc-pages/auth.mdx b/fern/products/api-def/openrpc-pages/auth.mdx new file mode 100644 index 00000000..aefa3f0e --- /dev/null +++ b/fern/products/api-def/openrpc-pages/auth.mdx @@ -0,0 +1,235 @@ +--- +title: Authentication +subtitle: Model auth schemes for JSON-RPC APIs including bearer, basic, and api key authentication +--- + +Authentication in OpenRPC can be configured at the server level or method level, depending on your JSON-RPC implementation. Unlike REST APIs, JSON-RPC typically handles authentication through the transport layer (HTTP headers) or within the JSON-RPC request payload. + +## HTTP Transport Authentication + +When using HTTP as the transport for JSON-RPC, you can use standard HTTP authentication schemes. + +### Bearer Token Authentication + +Configure bearer token authentication for HTTP-based JSON-RPC: + +```yml title="openrpc.yml" {4-9} +servers: + - name: production + url: https://api.example.com/rpc + description: Production JSON-RPC server + security: + - bearerAuth: [] +components: + securitySchemes: + bearerAuth: + type: http + scheme: bearer + bearerFormat: JWT +``` + +This generates SDK methods that require a token: + +```typescript +const client = new JSONRPCClient({ + url: "https://api.example.com/rpc", + auth: { + bearer: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." + } +}); + +// Call JSON-RPC method +const result = await client.call("calculate.add", { a: 5, b: 3 }); +``` + +### API Key Authentication + +Configure API key authentication: + +```yml title="openrpc.yml" {4-9} +servers: + - name: production + url: https://api.example.com/rpc + description: Production JSON-RPC server + security: + - apiKeyAuth: [] +components: + securitySchemes: + apiKeyAuth: + type: apiKey + in: header + name: X-API-Key +``` + +Usage in SDK: + +```typescript +const client = new JSONRPCClient({ + url: "https://api.example.com/rpc", + auth: { + apiKey: "your-api-key-here" + } +}); +``` + +### Basic Authentication + +Configure basic authentication: + +```yml title="openrpc.yml" {4-9} +servers: + - name: production + url: https://api.example.com/rpc + description: Production JSON-RPC server + security: + - basicAuth: [] +components: + securitySchemes: + basicAuth: + type: http + scheme: basic +``` + +Usage in SDK: + +```typescript +const client = new JSONRPCClient({ + url: "https://api.example.com/rpc", + auth: { + username: "user@example.com", + password: "password123" + } +}); +``` + +## Method-Level Authentication + +Some JSON-RPC implementations may require different authentication for specific methods: + +```yml title="openrpc.yml" {6-7, 15-16} +methods: + - name: public.getInfo + summary: Get public information + description: Publicly accessible method (no auth required) + params: [] + result: + name: info + schema: + type: object + - name: user.getProfile + summary: Get user profile + description: Requires user authentication + security: + - bearerAuth: [] + params: + - name: userId + schema: + type: string + required: true + result: + name: profile + schema: + $ref: '#/components/schemas/UserProfile' +``` + +## WebSocket Authentication + +For WebSocket transport, authentication typically happens during connection establishment: + +```yml title="openrpc.yml" {4-8} +servers: + - name: websocket + url: wss://api.example.com/rpc + description: WebSocket JSON-RPC server + variables: + token: + description: Authentication token for WebSocket connection + default: "" + security: + - wsAuth: [] +components: + securitySchemes: + wsAuth: + type: apiKey + in: query + name: token + description: Authentication token passed as query parameter +``` + +## Custom Authentication Parameters + +For JSON-RPC APIs that handle authentication within the request payload: + +```yml title="openrpc.yml" {8-16} +methods: + - name: auth.login + summary: Authenticate user + description: Login method that returns authentication token + params: + - name: credentials + schema: + type: object + properties: + username: + type: string + password: + type: string + required: + - username + - password + result: + name: authResult + schema: + type: object + properties: + token: + type: string + expiresIn: + type: integer + refreshToken: + type: string +``` + +## Fern Extensions for Authentication + +Use Fern extensions to customize authentication behavior: + +```yml title="openrpc.yml" {5-8} +components: + securitySchemes: + bearerAuth: + type: http + scheme: bearer + x-fern-token: + name: authToken + env: AUTH_TOKEN +``` + +This allows users to set authentication via environment variables or constructor parameters, making the SDK more flexible and secure. + +## Error Handling for Authentication + +Define standardized error responses for authentication failures: + +```yml title="openrpc.yml" {2-12} +components: + errors: + - code: -32001 + message: Authentication required + data: + type: object + properties: + error: + type: string + const: "Authentication token is required" + - code: -32002 + message: Invalid authentication + data: + type: object + properties: + error: + type: string + const: "Invalid or expired authentication token" +``` + +These error codes follow JSON-RPC 2.0 conventions while providing clear authentication feedback to API consumers. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/automation.mdx b/fern/products/api-def/openrpc-pages/automation.mdx new file mode 100644 index 00000000..b967c544 --- /dev/null +++ b/fern/products/api-def/openrpc-pages/automation.mdx @@ -0,0 +1,316 @@ +--- +title: Sync your OpenRPC Specification +subtitle: Automatically sync your OpenRPC spec changes to keep SDKs and docs up to date +--- + +Keeping your OpenRPC specifications in sync with your codebase is crucial for maintaining accurate SDKs and documentation. Fern provides several automation options to streamline this process. + +## GitHub Actions + +Use Fern's GitHub Action to automatically update SDKs and docs when your OpenRPC spec changes: + +```yaml title=".github/workflows/fern.yml" +name: Fern + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + fern-check: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Check OpenRPC spec + uses: fern-api/action@v0 + with: + command: check + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} + + fern-generate: + runs-on: ubuntu-latest + if: github.event_name == 'push' && github.ref == 'refs/heads/main' + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Generate SDKs and docs + uses: fern-api/action@v0 + with: + command: generate + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} +``` + +## Webhook integration + +Set up webhooks to trigger SDK generation when your OpenRPC spec is updated: + +```yaml title="generators.yml" {4-8} +api: + specs: + - spec: openrpc.yml + github: + repository: your-org/your-repo + webhooks: + - url: https://your-api.com/webhooks/fern + events: [generate] + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: npm + package-name: "@your-org/jsonrpc-sdk" +``` + +## Auto-sync from source + +Configure Fern to automatically pull your OpenRPC specification from various sources: + +### From URL +```yaml title="generators.yml" {3-4} +api: + specs: + - spec: https://api.yourcompany.com/openrpc.yml + auto-sync: true + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +### From Git repository +```yaml title="generators.yml" {3-7} +api: + specs: + - spec: + git: + repository: https://github.com/your-org/api-specs + path: openrpc/api.yml + branch: main + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## CI/CD integration + +### CircleCI +```yaml title=".circleci/config.yml" {15-23} +version: 2.1 + +orbs: + fern: fernapi/fern@1.0 + +workflows: + version: 2 + build-and-test: + jobs: + - build + - test: + requires: + - build + - fern/generate: + requires: + - test + filters: + branches: + only: main + context: + - fern-context +``` + +### GitLab CI +```yaml title=".gitlab-ci.yml" {13-20} +stages: + - build + - test + - generate + +variables: + FERN_TOKEN: $FERN_TOKEN + +build: + stage: build + script: + - echo "Building JSON-RPC service..." + +generate-sdks: + stage: generate + image: fernapi/fern:latest + script: + - fern generate + only: + - main +``` + +## Scheduled updates + +Set up scheduled updates to ensure your SDKs stay current: + +```yaml title=".github/workflows/scheduled-update.yml" +name: Scheduled OpenRPC Update + +on: + schedule: + - cron: '0 2 * * 1' # Every Monday at 2 AM UTC + workflow_dispatch: + +jobs: + update-specs: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Update OpenRPC specs + run: | + curl -o fern/openrpc/openrpc.yml https://api.yourcompany.com/openrpc.yml + + - name: Generate with latest spec + uses: fern-api/action@v0 + with: + command: generate + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} +``` + +## Code generation from JSON-RPC server + +For servers that can generate their own OpenRPC specifications: + +```yaml title=".github/workflows/auto-generate.yml" +name: Auto-generate from JSON-RPC server + +on: + push: + paths: + - 'src/**/*.py' # Trigger on server code changes + - 'src/**/*.js' + - 'src/**/*.ts' + +jobs: + generate-spec: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Setup environment + uses: actions/setup-python@v4 + with: + python-version: '3.9' + + - name: Install dependencies + run: | + pip install -r requirements.txt + + - name: Generate OpenRPC spec + run: | + python scripts/generate_openrpc.py --output fern/openrpc/openrpc.yml + + - name: Generate SDKs + uses: fern-api/action@v0 + with: + command: generate + env: + FERN_TOKEN: ${{ secrets.FERN_TOKEN }} +``` + +## Monitoring changes + +Track changes to your OpenRPC specification: + +```yaml title="generators.yml" {4-9} +api: + specs: + - spec: openrpc.yml + change-detection: + enabled: true + breaking-changes: error + notifications: + slack: ${{ secrets.SLACK_WEBHOOK }} + email: team@yourcompany.com + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## Multi-environment sync + +Sync different specifications for different environments: + +```yaml title="generators.yml" {3-7, 12-16, 21-25} +environments: + production: + specs: + - spec: https://api.prod.yourcompany.com/openrpc.yml + overlays: + - prod-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: npm + package-name: "@yourcompany/prod-sdk" + staging: + specs: + - spec: https://api.staging.yourcompany.com/openrpc.yml + overlays: + - staging-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: npm + package-name: "@yourcompany/staging-sdk" + development: + specs: + - spec: http://localhost:8080/openrpc.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + output: + location: local + path: ./generated-sdk +``` + +## JSON-RPC server introspection + +For servers that support OpenRPC discovery: + +```python title="scripts/sync_from_server.py" +import requests +import yaml +import json + +def fetch_openrpc_spec(server_url): + """Fetch OpenRPC spec from a JSON-RPC server that supports introspection""" + payload = { + "jsonrpc": "2.0", + "method": "rpc.discover", + "id": 1 + } + + response = requests.post(f"{server_url}/rpc", json=payload) + spec = response.json()["result"] + + return spec + +def save_spec_as_yaml(spec, output_path): + """Convert JSON spec to YAML and save""" + with open(output_path, 'w') as f: + yaml.dump(spec, f, default_flow_style=False) + +if __name__ == "__main__": + spec = fetch_openrpc_spec("https://api.yourcompany.com") + save_spec_as_yaml(spec, "fern/openrpc/openrpc.yml") +``` + +This ensures that any breaking changes to your OpenRPC specification are detected and the appropriate team members are notified before the changes are propagated to your SDKs and documentation. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/extensions/audiences.mdx b/fern/products/api-def/openrpc-pages/extensions/audiences.mdx new file mode 100644 index 00000000..6e7afb97 --- /dev/null +++ b/fern/products/api-def/openrpc-pages/extensions/audiences.mdx @@ -0,0 +1,295 @@ +--- +title: Use audiences to filter your API +subtitle: Use `x-fern-audiences` to filter to relevant methods, parameters and schemas +--- + +Audiences are a useful tool for segmenting your JSON-RPC API for different consumers. Common examples of audiences include `public` +and `beta`. + + + Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, + nothing will be filtered. + + + + +The following example configures the SDK to filter to the `public` audience: + +```yaml title="generators.yml" {3-4} +groups: + sdks: + audiences: + - public + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + + + +The following example configures the docs to filter to the `public` audience: + +```yaml title="docs.yml" {3-4} +navigation: + - api: API Reference + audiences: + - public +``` + + + + + +## Filter methods + +Add `x-fern-audiences` to methods to control which methods are included for specific audiences: + +```yaml title="openrpc.yml" {5-6, 12-13} +methods: + - name: public.getInfo + summary: Get public API information + description: Publicly available information about the API + x-fern-audiences: + - public + params: [] + result: + name: info + schema: + $ref: '#/components/schemas/ApiInfo' + - name: admin.getUsers + summary: Get all users (admin only) + x-fern-audiences: + - admin + params: + - name: limit + schema: + type: integer + default: 100 + result: + name: users + schema: + type: array + items: + $ref: '#/components/schemas/User' +``` + +## Filter method parameters + +You can filter specific parameters within methods: + +```yaml title="openrpc.yml" {8-9, 14-15} +methods: + - name: user.create + summary: Create a new user + params: + - name: userData + schema: + type: object + properties: + email: + type: string + format: email + name: + type: string + adminNotes: + type: string + x-fern-audiences: + - admin + internalId: + type: string + x-fern-audiences: + - internal + required: + - email + - name + required: true + result: + name: user + schema: + $ref: '#/components/schemas/User' +``` + +## Filter schemas + +Filter entire schemas to different audiences: + +```yaml title="openrpc.yml" {5-6, 20-21} +components: + schemas: + PublicUser: + type: object + x-fern-audiences: + - public + properties: + id: + type: string + name: + type: string + email: + type: string + required: + - id + - name + - email + AdminUser: + allOf: + - $ref: '#/components/schemas/PublicUser' + - type: object + x-fern-audiences: + - admin + properties: + role: + type: string + permissions: + type: array + items: + type: string + createdAt: + type: string + format: date-time + lastLoginAt: + type: string + format: date-time +``` + +## Filter schema properties + +You can filter individual properties within schemas: + +```yaml title="openrpc.yml" {9-10, 13-14, 17-18} +components: + schemas: + Order: + type: object + properties: + id: + type: string + amount: + type: number + x-fern-audiences: + - public + internalCost: + type: number + x-fern-audiences: + - internal + debugInfo: + type: object + x-fern-audiences: + - debug + customerInfo: + type: object + properties: + id: + type: string + email: + type: string + x-fern-audiences: + - admin +``` + +## Filter error responses + +Filter error information based on audience: + +```yaml title="openrpc.yml" {7-12, 14-19} +methods: + - name: payment.process + summary: Process a payment + params: + - name: paymentData + schema: + $ref: '#/components/schemas/PaymentRequest' + errors: + - code: -32001 + message: Payment failed + x-fern-audiences: + - public + data: + type: object + properties: + error: + type: string + const: "Payment could not be processed" + - code: -32001 + message: Payment failed + x-fern-audiences: + - admin + data: + type: object + properties: + error: + type: string + errorCode: + type: string + gatewayResponse: + type: object + debugTrace: + type: string +``` + +## Server-level filtering + +Apply audience filtering at the server level: + +```yaml title="openrpc.yml" {4-5, 10-11} +servers: + - name: public-api + url: https://api.example.com/rpc + x-fern-audiences: + - public + description: Public API server + - name: admin-api + url: https://admin-api.example.com/rpc + x-fern-audiences: + - admin + description: Admin API server with additional privileges +``` + +## Conditional method availability + +Use audiences to make methods available only in certain contexts: + +```yaml title="openrpc.yml" {5-6, 15-16, 25-26} +methods: + - name: debug.getSystemInfo + summary: Get system debug information + description: Internal system information for debugging + x-fern-audiences: + - debug + params: [] + result: + name: systemInfo + schema: + type: object + additionalProperties: true + - name: beta.advancedSearch + summary: Advanced search functionality + x-fern-audiences: + - beta + params: + - name: query + schema: + type: object + properties: + text: + type: string + filters: + type: object + additionalProperties: true + result: + name: results + schema: + $ref: '#/components/schemas/SearchResults' + - name: internal.resetCache + summary: Reset internal caches + x-fern-audiences: + - internal + params: + - name: cacheType + schema: + type: string + enum: [user, product, session, all] + # Notification - no result expected +``` + +This allows you to create different views of the same JSON-RPC API for different types of consumers, ensuring each audience only sees the methods and data relevant to their use case. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/extensions/method-names.mdx b/fern/products/api-def/openrpc-pages/extensions/method-names.mdx new file mode 100644 index 00000000..d9e0528d --- /dev/null +++ b/fern/products/api-def/openrpc-pages/extensions/method-names.mdx @@ -0,0 +1,228 @@ +--- +title: SDK Method Names +subtitle: Use `x-fern-sdk-method-name` to customize SDK method names for JSON-RPC methods +--- + +By default, Fern generates SDK method names based on your OpenRPC method names. You can override this behavior using the `x-fern-sdk-method-name` extension. + +## Customize method names + +Use `x-fern-sdk-method-name` to specify custom method names for your JSON-RPC methods: + +```yaml title="openrpc.yml" {4-5, 12-13} +methods: + - name: user.getById + summary: Get user by ID + x-fern-sdk-method-name: getUser + params: + - name: id + schema: + type: string + required: true + result: + name: user + schema: + $ref: '#/components/schemas/User' + - name: order.createNew + summary: Create a new order + x-fern-sdk-method-name: create + params: + - name: orderData + schema: + $ref: '#/components/schemas/CreateOrderRequest' + required: true + result: + name: order + schema: + $ref: '#/components/schemas/Order' +``` + +This will generate SDK methods like: + +```typescript +// Instead of client.user.getById() +const user = await client.user.getUser({ id: "user_123" }); + +// Instead of client.order.createNew() +const order = await client.order.create({ orderData: {...} }); +``` + +## Method naming conventions + +Follow these conventions when naming SDK methods: + +### CRUD operations +Use standard CRUD naming: + +```yaml title="openrpc.yml" {4-5} +methods: + - name: user.createUser + summary: Create a new user + x-fern-sdk-method-name: create + # Generates: client.user.create() + + - name: user.getUserById + summary: Get user by ID + x-fern-sdk-method-name: get + # Generates: client.user.get() + + - name: user.updateUser + summary: Update user information + x-fern-sdk-method-name: update + # Generates: client.user.update() + + - name: user.deleteUser + summary: Delete a user + x-fern-sdk-method-name: delete + # Generates: client.user.delete() +``` + +### List operations +Use descriptive names for list operations: + +```yaml title="openrpc.yml" {4-5} +methods: + - name: user.getAllUsers + summary: Get all users + x-fern-sdk-method-name: list + # Generates: client.user.list() + + - name: user.searchUsers + summary: Search for users + x-fern-sdk-method-name: search + # Generates: client.user.search() + + - name: order.getUserOrders + summary: Get orders for a user + x-fern-sdk-method-name: listByUser + # Generates: client.order.listByUser() +``` + +### Action operations +Use action-oriented names: + +```yaml title="openrpc.yml" {4-5} +methods: + - name: email.sendNotification + summary: Send email notification + x-fern-sdk-method-name: send + # Generates: client.email.send() + + - name: payment.processPayment + summary: Process a payment + x-fern-sdk-method-name: process + # Generates: client.payment.process() + + - name: cache.invalidateCache + summary: Invalidate cache entries + x-fern-sdk-method-name: invalidate + # Generates: client.cache.invalidate() +``` + +## Language-specific method names + +You can specify different method names for different programming languages: + +```yaml title="openrpc.yml" {4-9} +methods: + - name: user.getUserPreferences + summary: Get user preferences + x-fern-sdk-method-name: + python: get_preferences + typescript: getPreferences + go: GetPreferences + java: getPreferences + csharp: GetPreferences + params: + - name: userId + schema: + type: string + required: true + result: + name: preferences + schema: + $ref: '#/components/schemas/UserPreferences' +``` + +## Namespaced method names + +For methods with namespace prefixes, customize the final method name: + +```yaml title="openrpc.yml" {4-5, 12-13} +methods: + - name: analytics.track.pageView + summary: Track page view event + x-fern-sdk-method-name: trackPageView + params: + - name: eventData + schema: + $ref: '#/components/schemas/PageViewEvent' + required: true + - name: analytics.track.conversion + summary: Track conversion event + x-fern-sdk-method-name: trackConversion + params: + - name: eventData + schema: + $ref: '#/components/schemas/ConversionEvent' + required: true +``` + +Generates: +```typescript +await client.analytics.trackPageView({ eventData: {...} }); +await client.analytics.trackConversion({ eventData: {...} }); +``` + +## Notification method names + +For notification methods (one-way calls), use appropriate naming: + +```yaml title="openrpc.yml" {4-5, 12-13} +methods: + - name: log.recordError + summary: Record an error event + x-fern-sdk-method-name: logError + params: + - name: errorData + schema: + $ref: '#/components/schemas/ErrorData' + required: true + # No result - this is a notification + - name: metrics.incrementCounter + summary: Increment a metric counter + x-fern-sdk-method-name: increment + params: + - name: metric + schema: + type: string + required: true + - name: value + schema: + type: number + default: 1 + # No result - this is a notification +``` + +## Async method naming + +For methods that return promises or futures, consider async naming: + +```yaml title="openrpc.yml" {4-5} +methods: + - name: report.generateReport + summary: Generate a report (long-running) + x-fern-sdk-method-name: generateAsync + params: + - name: reportConfig + schema: + $ref: '#/components/schemas/ReportConfig' + required: true + result: + name: jobId + schema: + type: string + description: Job ID for tracking report generation +``` + +This ensures method names follow the conventions of each target language while maintaining clear and intuitive APIs for developers. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/extensions/others.mdx b/fern/products/api-def/openrpc-pages/extensions/others.mdx new file mode 100644 index 00000000..365ae046 --- /dev/null +++ b/fern/products/api-def/openrpc-pages/extensions/others.mdx @@ -0,0 +1,302 @@ +--- +title: Other Extensions +subtitle: Additional Fern extensions for OpenRPC specifications +--- + +Fern supports various extensions to enhance your OpenRPC specifications and improve the generated SDKs and documentation. + +## `x-fern-ignore` + +Use `x-fern-ignore` to exclude specific methods or schemas from SDK generation: + +```yaml title="openrpc.yml" {4-5, 12-13} +methods: + - name: debug.internalMethod + summary: Internal debugging method + x-fern-ignore: true + params: + - name: debugData + schema: + type: object + result: + name: debugResult + schema: + type: object + - name: test.experimentalFeature + summary: Experimental feature (not ready for public use) + x-fern-ignore: true + params: [] + result: + name: result + schema: + type: string +``` + +## `x-fern-examples` + +Provide additional examples for better SDK documentation: + +```yaml title="openrpc.yml" {8-25} +methods: + - name: user.create + summary: Create a new user + params: + - name: userData + schema: + $ref: '#/components/schemas/CreateUserRequest' + required: true + x-fern-examples: + - name: StandardUser + description: Create a regular user account + params: + userData: + email: "john@example.com" + name: "John Doe" + role: "user" + result: + id: "user_123" + email: "john@example.com" + name: "John Doe" + role: "user" + createdAt: "2024-01-15T10:30:00Z" + - name: AdminUser + description: Create an admin user account + params: + userData: + email: "admin@example.com" + name: "Admin User" + role: "admin" + permissions: ["read", "write", "delete"] + result: + id: "user_456" + email: "admin@example.com" + name: "Admin User" + role: "admin" + createdAt: "2024-01-15T10:30:00Z" + result: + name: user + schema: + $ref: '#/components/schemas/User' +``` + +## `x-fern-pagination` + +Configure pagination for methods that return multiple results: + +```yaml title="openrpc.yml" {6-11} +methods: + - name: user.list + summary: List users with pagination + params: + - name: pagination + schema: + type: object + properties: + cursor: + type: string + limit: + type: integer + default: 20 + x-fern-pagination: + cursor: pagination.cursor + results: users + next_cursor: pagination.nextCursor + has_next_page: pagination.hasMore + result: + name: userList + schema: + type: object + properties: + users: + type: array + items: + $ref: '#/components/schemas/User' + pagination: + type: object + properties: + nextCursor: + type: string + hasMore: + type: boolean +``` + +## `x-fern-retry` + +Configure retry behavior for methods: + +```yaml title="openrpc.yml" {6-10} +methods: + - name: payment.process + summary: Process payment with retry logic + params: + - name: paymentData + schema: + $ref: '#/components/schemas/PaymentRequest' + x-fern-retry: + max_attempts: 3 + exponential_backoff: true + initial_delay: 1000 + max_delay: 30000 + result: + name: paymentResult + schema: + $ref: '#/components/schemas/PaymentResult' +``` + +## `x-fern-timeout` + +Configure timeout settings for methods: + +```yaml title="openrpc.yml" {6-8} +methods: + - name: report.generate + summary: Generate large report (may take time) + params: + - name: reportConfig + schema: + $ref: '#/components/schemas/ReportConfig' + x-fern-timeout: + seconds: 300 + description: "Report generation can take up to 5 minutes" + result: + name: report + schema: + $ref: '#/components/schemas/Report' +``` + +## `x-fern-error-handling` + +Configure error handling for methods: + +```yaml title="openrpc.yml" {10-20} +methods: + - name: order.create + summary: Create a new order + params: + - name: orderData + schema: + $ref: '#/components/schemas/CreateOrderRequest' + errors: + - code: -32001 + message: Insufficient inventory + x-fern-error-handling: + error_name: InsufficientInventoryError + retry_after_seconds: 60 + - code: -32002 + message: Payment failed + x-fern-error-handling: + error_name: PaymentFailedError + user_friendly_message: "Payment could not be processed. Please check your payment information." + result: + name: order + schema: + $ref: '#/components/schemas/Order' +``` + +## `x-fern-availability` + +Mark features as available in specific SDK versions: + +```yaml title="openrpc.yml" {4-6} +methods: + - name: beta.advancedSearch + summary: Advanced search functionality + x-fern-availability: + status: beta + message: "This feature is in beta and may change" + params: + - name: searchQuery + schema: + $ref: '#/components/schemas/AdvancedSearchQuery' + result: + name: searchResults + schema: + $ref: '#/components/schemas/SearchResults' +``` + +## `x-fern-streaming` + +Mark methods as streaming for appropriate SDK generation: + +```yaml title="openrpc.yml" {4-6} +methods: + - name: logs.stream + summary: Stream log events + x-fern-streaming: + type: server_sent_events + termination: client_closes + params: + - name: filters + schema: + type: object + properties: + level: + type: string + enum: [debug, info, warn, error] + service: + type: string + # Note: Streaming methods typically don't have a traditional result +``` + +## `x-fern-server-name` + +Specify custom names for servers: + +```yaml title="openrpc.yml" {3-4} +servers: + - name: production + url: https://api.yourcompany.com/rpc + x-fern-server-name: Production + description: Production JSON-RPC server + - name: staging + url: https://staging-api.yourcompany.com/rpc + x-fern-server-name: Staging + description: Staging environment +``` + +## `x-fern-base-path` + +Configure base paths for generated SDK clients: + +```yaml title="openrpc.yml" {3-4} +info: + title: My JSON-RPC API + version: 1.0.0 + x-fern-base-path: /api/v1/rpc + description: JSON-RPC API with custom base path +``` + +## `x-fern-sdk-group-name` + +Group related methods in the SDK: + +```yaml title="openrpc.yml" {4-5, 12-13} +methods: + - name: user.create + summary: Create user + x-fern-sdk-group-name: users + params: [...] + result: {...} + + - name: user.get + summary: Get user + x-fern-sdk-group-name: users + params: [...] + result: {...} + + - name: order.create + summary: Create order + x-fern-sdk-group-name: orders + params: [...] + result: {...} +``` + +This generates SDKs with grouped methods: + +```typescript +client.users.create(...) +client.users.get(...) +client.orders.create(...) +``` + +These extensions help you create more robust and user-friendly SDKs while maintaining full control over the generated code structure and behavior. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/extensions/parameter-names.mdx b/fern/products/api-def/openrpc-pages/extensions/parameter-names.mdx new file mode 100644 index 00000000..d99aeedf --- /dev/null +++ b/fern/products/api-def/openrpc-pages/extensions/parameter-names.mdx @@ -0,0 +1,280 @@ +--- +title: Parameter Names +subtitle: Use `x-fern-parameter-name` to customize SDK parameter names for JSON-RPC method parameters +--- + +By default, Fern uses the parameter names from your OpenRPC method definitions as SDK parameter names. You can customize these using the `x-fern-parameter-name` extension. + +## Customize parameter names + +Use `x-fern-parameter-name` to specify custom parameter names for method parameters: + +```yaml title="openrpc.yml" {8-9, 14-15} +methods: + - name: user.create + summary: Create a new user + params: + - name: user_data + schema: + type: object + properties: + email_address: + type: string + format: email + x-fern-parameter-name: email + full_name: + type: string + x-fern-parameter-name: name + date_of_birth: + type: string + format: date + x-fern-parameter-name: dateOfBirth + required: + - email_address + - full_name + x-fern-parameter-name: userData + required: true + result: + name: user + schema: + $ref: '#/components/schemas/User' +``` + +This generates SDK methods with cleaner parameter names: + +```typescript +// Instead of user_data with email_address, full_name, date_of_birth +await client.user.create({ + userData: { + email: "john@example.com", + name: "John Doe", + dateOfBirth: "1990-01-15" + } +}); +``` + +## Language-specific parameter names + +You can specify different parameter names for different programming languages: + +```yaml title="openrpc.yml" {8-13} +methods: + - name: order.search + summary: Search for orders + params: + - name: search_criteria + schema: + type: object + properties: + customer_id: + type: string + x-fern-parameter-name: + python: customer_id + typescript: customerId + go: CustomerID + java: customerId + csharp: CustomerId + order_status: + type: string + enum: [pending, processing, shipped, delivered] + x-fern-parameter-name: + python: order_status + typescript: orderStatus + go: OrderStatus + java: orderStatus + csharp: OrderStatus + x-fern-parameter-name: + python: search_criteria + typescript: searchCriteria + go: SearchCriteria + java: searchCriteria + csharp: SearchCriteria + required: true + result: + name: orders + schema: + type: array + items: + $ref: '#/components/schemas/Order' +``` + +## Nested parameter naming + +Customize parameter names for nested objects: + +```yaml title="openrpc.yml" {10-11, 16-17, 22-23} +methods: + - name: payment.process + summary: Process a payment + params: + - name: payment_data + schema: + type: object + properties: + payment_method: + type: object + x-fern-parameter-name: paymentMethod + properties: + card_number: + type: string + x-fern-parameter-name: cardNumber + expiry_date: + type: string + x-fern-parameter-name: expiryDate + cvv: + type: string + billing_address: + type: object + x-fern-parameter-name: billingAddress + properties: + street_address: + type: string + x-fern-parameter-name: streetAddress + postal_code: + type: string + x-fern-parameter-name: postalCode + amount: + type: number + currency: + type: string + enum: [USD, EUR, GBP] + x-fern-parameter-name: paymentData + required: true + result: + name: paymentResult + schema: + $ref: '#/components/schemas/PaymentResult' +``` + +## Array parameter naming + +Handle array parameters with custom naming: + +```yaml title="openrpc.yml" {6-7, 14-15} +methods: + - name: bulk.createUsers + summary: Create multiple users + params: + - name: user_list + schema: + type: array + items: + type: object + properties: + email_addr: + type: string + format: email + x-fern-parameter-name: email + user_name: + type: string + x-fern-parameter-name: username + required: + - email_addr + - user_name + x-fern-parameter-name: users + minItems: 1 + maxItems: 100 + required: true + result: + name: createdUsers + schema: + type: array + items: + $ref: '#/components/schemas/User' +``` + +## Optional parameter naming + +Customize names for optional parameters with defaults: + +```yaml title="openrpc.yml" {8-9, 15-16, 22-23} +methods: + - name: report.generate + summary: Generate a report + params: + - name: report_type + schema: + type: string + enum: [daily, weekly, monthly, yearly] + x-fern-parameter-name: reportType + required: true + - name: output_format + schema: + type: string + enum: [pdf, csv, json, excel] + default: pdf + x-fern-parameter-name: format + required: false + description: Output format (defaults to PDF) + - name: include_charts + schema: + type: boolean + default: true + x-fern-parameter-name: includeCharts + required: false + description: Include charts in the report + - name: date_range + schema: + type: object + properties: + start_date: + type: string + format: date + x-fern-parameter-name: startDate + end_date: + type: string + format: date + x-fern-parameter-name: endDate + x-fern-parameter-name: dateRange + required: false + description: Optional date range filter + result: + name: report + schema: + $ref: '#/components/schemas/Report' +``` + +## Positional parameter naming + +For methods using positional parameters, customize the generated parameter names: + +```yaml title="openrpc.yml" {4-6, 8-10} +methods: + - name: math.calculate + summary: Perform mathematical calculation + paramStructure: by-position + params: + - schema: + type: number + description: First operand + x-fern-parameter-name: operandA + - schema: + type: number + description: Second operand + x-fern-parameter-name: operandB + - schema: + type: string + enum: [add, subtract, multiply, divide] + description: Operation to perform + x-fern-parameter-name: operation + result: + name: result + schema: + type: number +``` + +This generates cleaner SDK interfaces: + +```typescript +// Instead of unnamed positional parameters +await client.math.calculate(10, 5, "add"); + +// With named parameters +await client.math.calculate({ + operandA: 10, + operandB: 5, + operation: "add" +}); +``` + +Using custom parameter names ensures consistent naming conventions across your SDK while maintaining compatibility with your existing JSON-RPC method signatures. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/methods/batch.mdx b/fern/products/api-def/openrpc-pages/methods/batch.mdx new file mode 100644 index 00000000..3ec3720d --- /dev/null +++ b/fern/products/api-def/openrpc-pages/methods/batch.mdx @@ -0,0 +1,301 @@ +--- +title: Batch Requests +subtitle: Document how to handle multiple JSON-RPC calls in a single request +--- + +Batch requests in JSON-RPC allow clients to send multiple method calls in a single HTTP request, improving efficiency and reducing network overhead. OpenRPC supports documenting batch request capabilities. + +## Batch request structure + +While individual methods are documented separately, batch requests combine multiple calls: + +```json title="Batch Request Example" +[ + { + "jsonrpc": "2.0", + "method": "user.get", + "params": { "id": "user_123" }, + "id": 1 + }, + { + "jsonrpc": "2.0", + "method": "order.list", + "params": { "userId": "user_123", "limit": 10 }, + "id": 2 + }, + { + "jsonrpc": "2.0", + "method": "analytics.track", + "params": { + "event": { + "userId": "user_123", + "eventType": "api_call", + "properties": { "endpoint": "batch_request" } + } + } + } +] +``` + +## Documenting batch-capable methods + +Mark methods that work well in batch scenarios: + +```yml title="openrpc.yml" {4-5, 14-15} +methods: + - name: user.get + summary: Get user by ID + x-fern-batch-compatible: true + x-fern-batch-description: "Efficiently retrieve multiple users in a single batch" + params: + - name: id + schema: + type: string + required: true + result: + name: user + schema: + $ref: '#/components/schemas/User' + - name: product.get + summary: Get product by ID + x-fern-batch-compatible: true + x-fern-batch-description: "Retrieve multiple products with a single request" + params: + - name: id + schema: + type: string + required: true + result: + name: product + schema: + $ref: '#/components/schemas/Product' +``` + +## Batch response handling + +Document how batch responses are structured: + +```yml title="openrpc.yml" {6-12} +info: + title: E-commerce API + version: 1.0.0 + description: | + This API supports JSON-RPC batch requests for improved performance. + + Batch responses maintain the same order as requests and include: + - Successful results with matching request IDs + - Error responses for failed calls + - No response for notification calls (calls without IDs) + + Example batch response: + ```json + [ + { + "jsonrpc": "2.0", + "result": { "id": "user_123", "name": "John Doe" }, + "id": 1 + }, + { + "jsonrpc": "2.0", + "result": [{ "id": "order_456", "total": 99.99 }], + "id": 2 + } + ] + ``` +``` + +## Mixed batch requests + +Document scenarios with regular methods and notifications: + +```yml title="openrpc.yml" {2-23} +methods: + - name: order.create + summary: Create a new order + description: Can be used in batch requests with order.calculate for atomic operations + x-fern-batch-compatible: true + params: + - name: orderData + schema: + $ref: '#/components/schemas/CreateOrderRequest' + required: true + result: + name: order + schema: + $ref: '#/components/schemas/Order' + - name: order.calculate + summary: Calculate order totals + description: Often used before order.create in batch requests + x-fern-batch-compatible: true + params: + - name: items + schema: + type: array + items: + $ref: '#/components/schemas/OrderItem' + required: true + result: + name: calculation + schema: + $ref: '#/components/schemas/OrderCalculation' + examples: + - name: BatchOrderProcessing + description: Calculate and create order in a single batch + params: + items: + - productId: "prod_123" + quantity: 2 + price: 29.99 + - productId: "prod_456" + quantity: 1 + price: 15.50 + result: + subtotal: 75.48 + tax: 6.04 + shipping: 5.99 + total: 87.51 +``` + +## Error handling in batches + +Document how errors are handled in batch scenarios: + +```yml title="openrpc.yml" {6-15} +info: + title: API Documentation + version: 1.0.0 + description: | + ## Batch Error Handling + + When processing batch requests: + - Each call is processed independently + - Successful calls return normal results + - Failed calls return error objects + - Notifications (calls without ID) produce no response + - Partial failures are allowed - some calls can succeed while others fail + + Error response example: + ```json + { + "jsonrpc": "2.0", + "error": { + "code": -32602, + "message": "Invalid params", + "data": { "field": "email", "error": "Invalid email format" } + }, + "id": 3 + } + ``` +``` + +## Batch optimization methods + +Document methods specifically designed for batch operations: + +```yml title="openrpc.yml" {2-19} +methods: + - name: users.getBatch + summary: Get multiple users by IDs + description: Optimized method for retrieving multiple users in a single call + params: + - name: userIds + schema: + type: array + items: + type: string + maxItems: 100 + minItems: 1 + required: true + description: Array of user IDs to retrieve (max 100) + result: + name: users + schema: + type: object + properties: + users: + type: array + items: + $ref: '#/components/schemas/User' + notFound: + type: array + items: + type: string + description: IDs that were not found + required: + - users + - notFound + examples: + - name: GetMultipleUsers + description: Retrieve several users at once + params: + userIds: ["user_123", "user_456", "user_789"] + result: + users: + - id: "user_123" + name: "John Doe" + email: "john@example.com" + - id: "user_456" + name: "Jane Smith" + email: "jane@example.com" + notFound: ["user_789"] +``` + +## Batch size limitations + +Document batch request limits and recommendations: + +```yml title="openrpc.yml" {4-8} +info: + title: API with Batch Support + version: 1.0.0 + x-fern-batch-limits: + maxBatchSize: 50 + maxPayloadSize: "1MB" + timeoutSeconds: 30 + description: "Batch requests are limited to 50 operations or 1MB payload size" + description: | + ## Batch Request Guidelines + + - Maximum 50 operations per batch request + - Total payload size limited to 1MB + - Batch processing timeout: 30 seconds + - Use batch requests for: + - Retrieving related data in a single round-trip + - Performing multiple updates atomically + - Reducing network overhead for mobile applications + + - Avoid batch requests for: + - Long-running operations (use individual calls) + - Operations that don't benefit from batching + - Calls that might exceed timeout limits +``` + +## SDK batch support + +Configure how SDKs handle batch requests: + +```yml title="openrpc.yml" {5-8} +components: + x-fern-batch-config: + enableBatchMethods: true + generateBatchHelpers: true + batchMethodNaming: "batch{MethodName}" + maxBatchSize: 50 +``` + +This configuration would generate SDK methods like: + +```typescript +// Individual calls +const user = await client.user.get({ id: "user_123" }); +const product = await client.product.get({ id: "prod_456" }); + +// Batch call +const results = await client.batch([ + { method: "user.get", params: { id: "user_123" } }, + { method: "product.get", params: { id: "prod_456" } }, + { method: "analytics.track", params: { event: {...} } } // notification +]); +``` + +Batch requests are essential for high-performance applications that need to minimize network round-trips while maintaining the flexibility of individual method calls. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/methods/notifications.mdx b/fern/products/api-def/openrpc-pages/methods/notifications.mdx new file mode 100644 index 00000000..56ca7bdb --- /dev/null +++ b/fern/products/api-def/openrpc-pages/methods/notifications.mdx @@ -0,0 +1,309 @@ +--- +title: Notifications +subtitle: Document one-way JSON-RPC calls that don't expect a response +--- + +Notifications in JSON-RPC are one-way method calls that don't expect a response from the server. They're useful for fire-and-forget operations like logging, analytics, or triggering background processes. + +## Basic notifications + +Define a notification by omitting the `result` property: + +```yml title="openrpc.yml" {2-12} +methods: + - name: analytics.track + summary: Track user analytics event + description: Send an analytics event (no response expected) + params: + - name: event + schema: + type: object + properties: + userId: + type: string + eventType: + type: string + enum: [page_view, click, conversion, signup] + properties: + type: object + additionalProperties: true + timestamp: + type: string + format: date-time + required: + - userId + - eventType + required: true + # Note: No result property - this makes it a notification + examples: + - name: PageViewEvent + description: Track a page view + params: + event: + userId: "user_123" + eventType: "page_view" + properties: + page: "/dashboard" + referrer: "https://google.com" + timestamp: "2024-01-15T10:30:00Z" +``` + +## Logging notifications + +Use notifications for logging and monitoring: + +```yml title="openrpc.yml" {2-15} +methods: + - name: log.error + summary: Log an error event + description: Send error information for monitoring (fire and forget) + params: + - name: errorData + schema: + type: object + properties: + level: + type: string + enum: [error, warning, info, debug] + message: + type: string + stackTrace: + type: string + userId: + type: string + sessionId: + type: string + metadata: + type: object + additionalProperties: true + required: + - level + - message + required: true + examples: + - name: ApplicationError + description: Log an application error + params: + errorData: + level: "error" + message: "Database connection failed" + stackTrace: "Error: Connection timeout\n at Database.connect (db.js:45)" + userId: "user_456" + sessionId: "session_789" + metadata: + component: "user-service" + version: "1.2.3" +``` + +## Real-time updates + +Send real-time updates without expecting responses: + +```yml title="openrpc.yml" {2-16} +methods: + - name: presence.update + summary: Update user presence status + description: Notify about user presence changes + params: + - name: presenceData + schema: + type: object + properties: + userId: + type: string + status: + type: string + enum: [online, away, busy, offline] + lastSeen: + type: string + format: date-time + customMessage: + type: string + maxLength: 100 + required: + - userId + - status + required: true + examples: + - name: UserOnline + description: User comes online + params: + presenceData: + userId: "user_123" + status: "online" + lastSeen: "2024-01-15T10:30:00Z" + customMessage: "Working on the new feature" +``` + +## Background processing + +Trigger background tasks without waiting for completion: + +```yml title="openrpc.yml" {2-20} +methods: + - name: email.send + summary: Send email notification + description: Queue an email for sending (background processing) + params: + - name: emailRequest + schema: + type: object + properties: + to: + type: array + items: + type: string + format: email + minItems: 1 + subject: + type: string + body: + type: string + templateId: + type: string + variables: + type: object + additionalProperties: true + priority: + type: string + enum: [low, normal, high, urgent] + default: normal + required: + - to + - subject + - body + required: true + examples: + - name: WelcomeEmail + description: Send welcome email to new user + params: + emailRequest: + to: ["newuser@example.com"] + subject: "Welcome to our platform!" + body: "Thank you for signing up..." + templateId: "welcome_template" + variables: + userName: "John Doe" + activationLink: "https://app.example.com/activate/123" + priority: "normal" +``` + +## Cache invalidation + +Notify about cache invalidation events: + +```yml title="openrpc.yml" {2-15} +methods: + - name: cache.invalidate + summary: Invalidate cache entries + description: Notify cache system to invalidate specific entries + params: + - name: invalidationRequest + schema: + type: object + properties: + keys: + type: array + items: + type: string + description: Cache keys to invalidate + pattern: + type: string + description: Pattern for batch invalidation + namespace: + type: string + description: Cache namespace + anyOf: + - required: [keys] + - required: [pattern] + required: true + examples: + - name: InvalidateUserCache + description: Invalidate user-related cache entries + params: + invalidationRequest: + keys: ["user:123", "user:123:profile", "user:123:settings"] + namespace: "users" + - name: InvalidatePatternCache + description: Invalidate all product cache entries + params: + invalidationRequest: + pattern: "product:*" + namespace: "catalog" +``` + +## Audit logging + +Record audit events for compliance: + +```yml title="openrpc.yml" {2-18} +methods: + - name: audit.record + summary: Record audit event + description: Log security and compliance events + params: + - name: auditEvent + schema: + type: object + properties: + eventType: + type: string + enum: [login, logout, data_access, data_modification, permission_change] + actor: + type: object + properties: + userId: + type: string + email: + type: string + ipAddress: + type: string + userAgent: + type: string + required: [userId] + resource: + type: object + properties: + type: + type: string + id: + type: string + name: + type: string + timestamp: + type: string + format: date-time + metadata: + type: object + additionalProperties: true + required: + - eventType + - actor + - timestamp + required: true + examples: + - name: LoginAudit + description: Record user login event + params: + auditEvent: + eventType: "login" + actor: + userId: "user_123" + email: "john@example.com" + ipAddress: "192.168.1.100" + userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + timestamp: "2024-01-15T10:30:00Z" + metadata: + loginMethod: "password" + mfaUsed: true +``` + +## Notification best practices + +- Use notifications for fire-and-forget operations where you don't need to know if the operation succeeded +- Consider using regular methods with results for critical operations that need confirmation +- Include enough context in notification parameters for proper processing +- Use structured schemas even for notifications to maintain API consistency +- Consider implementing client-side queuing for notifications in unreliable network conditions + +Notifications are perfect for decoupling systems and improving performance by not waiting for non-critical operations to complete. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/methods/rpc-methods.mdx b/fern/products/api-def/openrpc-pages/methods/rpc-methods.mdx new file mode 100644 index 00000000..3f655553 --- /dev/null +++ b/fern/products/api-def/openrpc-pages/methods/rpc-methods.mdx @@ -0,0 +1,277 @@ +--- +title: JSON-RPC Methods +subtitle: Document JSON-RPC methods with parameters, results, and error handling +--- + +Methods in OpenRPC are the core building blocks of your JSON-RPC API. Each method defines the procedure name, parameters, return values, and potential errors. + +```yml title="openrpc.yml" {2-19} +methods: + - name: user.create + summary: Create a new user + description: Creates a new user account with the provided information + params: + - name: userData + schema: + $ref: '#/components/schemas/CreateUserRequest' + required: true + description: User data for account creation + result: + name: createdUser + schema: + $ref: '#/components/schemas/User' + description: The newly created user object + examples: + - name: CreateUserExample + description: Example of creating a user + params: + userData: + email: "john@example.com" + name: "John Doe" + age: 30 + result: + id: "user_123" + email: "john@example.com" + name: "John Doe" + age: 30 + createdAt: "2024-01-15T10:30:00Z" +``` + +## Method parameters + +Parameters in JSON-RPC can be positional (by-position) or named (by-name): + +### Named parameters +```yml title="openrpc.yml" {4-14} +methods: + - name: calculate.add + summary: Add two numbers + paramStructure: by-name + params: + - name: a + schema: + type: number + required: true + description: First number + - name: b + schema: + type: number + required: true + description: Second number + result: + name: sum + schema: + type: number +``` + +### Positional parameters +```yml title="openrpc.yml" {4-12} +methods: + - name: calculate.multiply + summary: Multiply two numbers + paramStructure: by-position + params: + - schema: + type: number + description: First number (multiplicand) + - schema: + type: number + description: Second number (multiplier) + result: + name: product + schema: + type: number +``` + +## Complex parameter types + +Use complex schemas for method parameters: + +```yml title="openrpc.yml" {6-24} +methods: + - name: order.create + summary: Create a new order + description: Creates a new order with items and shipping information + params: + - name: orderData + schema: + type: object + properties: + items: + type: array + items: + $ref: '#/components/schemas/OrderItem' + minItems: 1 + shippingAddress: + $ref: '#/components/schemas/Address' + paymentMethod: + type: string + enum: [credit_card, paypal, bank_transfer] + notes: + type: string + maxLength: 500 + required: + - items + - shippingAddress + - paymentMethod + required: true + result: + name: order + schema: + $ref: '#/components/schemas/Order' +``` + +## Method results + +Define the structure of successful method responses: + +```yml title="openrpc.yml" {8-20} +methods: + - name: search.products + summary: Search for products + params: + - name: query + schema: + type: string + required: true + result: + name: searchResults + schema: + type: object + properties: + products: + type: array + items: + $ref: '#/components/schemas/Product' + totalCount: + type: integer + hasMore: + type: boolean + nextCursor: + type: string + required: + - products + - totalCount + - hasMore +``` + +## Error handling + +Define custom errors for your methods: + +```yml title="openrpc.yml" {10-24} +methods: + - name: user.login + summary: Authenticate user + params: + - name: email + schema: + type: string + format: email + required: true + errors: + - code: -32001 + message: Invalid credentials + data: + type: object + properties: + error: + type: string + const: "Email or password is incorrect" + - code: -32002 + message: Account locked + data: + type: object + properties: + error: + type: string + const: "Account temporarily locked due to failed login attempts" + unlockTime: + type: string + format: date-time + result: + name: authResult + schema: + $ref: '#/components/schemas/AuthToken' +``` + +## Method examples + +Provide comprehensive examples for better documentation: + +```yml title="openrpc.yml" {12-35} +methods: + - name: file.upload + summary: Upload a file + params: + - name: fileData + schema: + type: object + properties: + filename: + type: string + content: + type: string + format: base64 + mimeType: + type: string + required: true + examples: + - name: ImageUpload + description: Upload a JPEG image + params: + fileData: + filename: "photo.jpg" + content: "/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAABAAEDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAv/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFQEBAQAAAAAAAAAAAAAAAAAAAAX/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwC/gA==" + mimeType: "image/jpeg" + result: + fileId: "file_abc123" + url: "https://cdn.example.com/files/file_abc123.jpg" + size: 1024000 + - name: DocumentUpload + description: Upload a PDF document + params: + fileData: + filename: "document.pdf" + content: "JVBERi0xLjQKJdPr6eEKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCgoyIDAgb2JqCjw8Ci9UeXBlIC9QYWdlcwo=" + mimeType: "application/pdf" + result: + fileId: "file_def456" + url: "https://cdn.example.com/files/file_def456.pdf" + size: 256000 +``` + +## Optional parameters + +Define optional parameters with default values: + +```yml title="openrpc.yml" {6-19} +methods: + - name: report.generate + summary: Generate a report + params: + - name: reportType + schema: + type: string + enum: [daily, weekly, monthly, yearly] + required: true + - name: format + schema: + type: string + enum: [pdf, csv, json] + default: pdf + required: false + description: Output format (defaults to PDF) + - name: includeCharts + schema: + type: boolean + default: true + required: false + description: Include charts in the report + result: + name: report + schema: + $ref: '#/components/schemas/Report' +``` + +Methods are the foundation of your JSON-RPC API, providing a clear contract for what operations are available, what data they expect, and what they return. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/overrides.mdx b/fern/products/api-def/openrpc-pages/overrides.mdx new file mode 100644 index 00000000..a3ae23e5 --- /dev/null +++ b/fern/products/api-def/openrpc-pages/overrides.mdx @@ -0,0 +1,274 @@ +--- +title: Overlay Customizations +subtitle: Use overlay files to modify your OpenRPC specification without editing the original +--- + +Overlays allow you to modify your OpenRPC specification without directly editing the original file. This is useful for: +- Adding Fern-specific extensions +- Customizing documentation +- Adding examples and descriptions +- Overriding specific properties + +## Configure overlays + +To use overlays, add them to your `generators.yml` file: + +```yaml title="generators.yml" {3-5} +api: + specs: + - spec: openrpc.yml + overlays: + - overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +## Overlay file structure + +Overlay files follow the [OpenAPI Overlay Specification](https://spec.openapis.org/overlay/v1.0.0) format: + +```yaml title="overlay.yml" +overlay: 1.0.0 +info: + title: OpenRPC Fern Extensions + version: 1.0.0 +actions: + - target: $.methods[?(@.name == 'user.create')] + update: + x-fern-sdk-method-name: create + summary: Create a new user account + - target: $.methods[?(@.name == 'order.list')] + update: + description: Retrieve orders with optional filtering and pagination + x-fern-audiences: + - public +``` + +## Add method names + +Override SDK method names for better developer experience: + +```yaml title="overlay.yml" {7-9} +overlay: 1.0.0 +info: + title: SDK Method Names + version: 1.0.0 +actions: + - target: $.methods[?(@.name == 'user.getById')] + update: + x-fern-sdk-method-name: getUser + summary: Retrieve user by ID with enhanced details + - target: $.methods[?(@.name == 'order.createNew')] + update: + x-fern-sdk-method-name: create + summary: Create order with automatic validation +``` + +## Add examples + +Enhance your specification with examples: + +```yaml title="overlay.yml" {7-20} +overlay: 1.0.0 +info: + title: Method Examples + version: 1.0.0 +actions: + - target: $.methods[?(@.name == 'user.create')] + update: + examples: + - name: StandardUser + description: Create a regular user + params: + userData: + email: "john@example.com" + name: "John Doe" + role: "user" + result: + id: "user_123" + email: "john@example.com" + name: "John Doe" + createdAt: "2024-01-15T10:30:00Z" +``` + +## Filter with audiences + +Add audience filtering to methods: + +```yaml title="overlay.yml" {7-9, 12-14} +overlay: 1.0.0 +info: + title: Audience Filtering + version: 1.0.0 +actions: + - target: $.methods[?(@.name == 'admin.getUsers')] + update: + x-fern-audiences: + - admin + - target: $.methods[?(@.name == 'debug.getSystemInfo')] + update: + x-fern-audiences: + - internal +``` + +## Add documentation + +Enhance descriptions and documentation: + +```yaml title="overlay.yml" {7-14} +overlay: 1.0.0 +info: + title: Enhanced Documentation + version: 1.0.0 +actions: + - target: $.methods[?(@.name == 'payment.process')] + update: + description: | + Process a payment transaction with comprehensive validation and fraud detection. + + This method supports multiple payment methods including credit cards, + digital wallets, and bank transfers. All transactions are processed + securely with PCI DSS compliance. + + Returns a payment result with transaction details or error information. + summary: Process payment with fraud detection +``` + +## Server configurations + +Add server-specific configurations: + +```yaml title="overlay.yml" {7-12} +overlay: 1.0.0 +info: + title: Server Extensions + version: 1.0.0 +actions: + - target: $.servers[?(@.name == 'production')] + update: + x-fern-server-name: Production + description: Production environment with high availability and monitoring + variables: + region: + default: us-east-1 + enum: [us-east-1, us-west-2, eu-west-1] + description: AWS region for the API server +``` + +## Add parameter customizations + +Customize parameter names and descriptions: + +```yaml title="overlay.yml" {7-18} +overlay: 1.0.0 +info: + title: Parameter Customizations + version: 1.0.0 +actions: + - target: $.methods[?(@.name == 'user.search')].params[?(@.name == 'search_criteria')] + update: + x-fern-parameter-name: searchCriteria + description: | + Search criteria for finding users. Supports multiple filters: + - name: Partial name matching (case-insensitive) + - email: Exact or partial email matching + - role: Filter by user role + - status: Filter by account status + - dateRange: Filter by creation date range + schema: + type: object + properties: + name: + type: string + description: Partial name search (minimum 2 characters) + email: + type: string + description: Email search pattern + role: + type: string + enum: [user, admin, moderator] + status: + type: string + enum: [active, inactive, suspended] +``` + +## Add error documentation + +Enhance error handling information: + +```yaml title="overlay.yml" {7-25} +overlay: 1.0.0 +info: + title: Error Documentation + version: 1.0.0 +actions: + - target: $.methods[?(@.name == 'order.create')] + update: + errors: + - code: -32001 + message: Insufficient inventory + data: + type: object + properties: + productId: + type: string + availableQuantity: + type: integer + requestedQuantity: + type: integer + - code: -32002 + message: Payment authorization failed + data: + type: object + properties: + paymentMethod: + type: string + errorCode: + type: string + retryAllowed: + type: boolean +``` + +## Multiple overlays + +You can apply multiple overlay files in sequence: + +```yaml title="generators.yml" {4-8} +api: + specs: + - spec: openrpc.yml + overlays: + - base-overlay.yml + - sdk-overlay.yml + - docs-overlay.yml + - examples-overlay.yml +``` + +## Environment-specific overlays + +Use different overlays for different environments: + +```yaml title="generators.yml" {4-7, 12-15} +groups: + production: + audiences: [public] + specs: + - spec: openrpc.yml + overlays: + - production-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 + internal: + audiences: [admin, internal] + specs: + - spec: openrpc.yml + overlays: + - internal-overlay.yml + generators: + - name: fernapi/fern-typescript-node-sdk + version: 0.8.8 +``` + +Overlays are applied in order, allowing you to build up customizations incrementally while keeping your original OpenRPC specification clean and focused on the core API definition. \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/overview.mdx b/fern/products/api-def/openrpc-pages/overview.mdx new file mode 100644 index 00000000..17341b14 --- /dev/null +++ b/fern/products/api-def/openrpc-pages/overview.mdx @@ -0,0 +1,167 @@ +--- +title: What is an OpenRPC Specification? +subtitle: OpenRPC is a standard for documenting JSON-RPC APIs +--- + +The OpenRPC Specification is a framework used by developers to document JSON-RPC APIs. The specification +is written in JSON or YAML and contains all of your methods, parameters, schemas, and server configurations. +Fern is compatible with OpenRPC specification [v1.3.2](https://spec.open-rpc.org/) and [v1.2.6](https://github.com/open-rpc/spec/releases/tag/1.2.6). + + Considering options to generate an OpenRPC spec? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) + +Below is an example of an OpenRPC file: + +```yaml openrpc.yml +openrpc: 1.3.2 +info: + title: Calculator API + version: 1.0.0 + description: | + A simple calculator API that performs basic arithmetic operations + using JSON-RPC 2.0 protocol. +servers: + - name: production + url: https://api.calculator.com/rpc + description: Production JSON-RPC server + - name: development + url: http://localhost:8080/rpc + description: Development server +methods: + - name: add + summary: Add two numbers + description: Performs addition of two numeric values + params: + - name: a + schema: + type: number + required: true + description: First number to add + - name: b + schema: + type: number + required: true + description: Second number to add + result: + name: sum + schema: + type: number + description: The sum of the two numbers + examples: + - name: AddExample + description: Example of adding two numbers + params: + a: 5 + b: 3 + result: 8 + - name: divide + summary: Divide two numbers + description: Performs division of two numeric values + params: + - name: dividend + schema: + type: number + required: true + description: Number to be divided + - name: divisor + schema: + type: number + required: true + description: Number to divide by + result: + name: quotient + schema: + type: number + description: The result of the division + errors: + - code: -32602 + message: Division by zero + data: + type: object + properties: + error: + type: string + const: "Cannot divide by zero" + examples: + - name: DivideExample + description: Example of dividing two numbers + params: + dividend: 10 + divisor: 2 + result: 5 + - name: notify_calculation + summary: Notify about calculation + description: Send a notification about a completed calculation (no response expected) + params: + - name: operation + schema: + type: string + enum: [add, subtract, multiply, divide] + required: true + - name: result + schema: + type: number + required: true + - name: timestamp + schema: + type: string + format: date-time + required: true +components: + schemas: + CalculationRequest: + type: object + properties: + operation: + type: string + enum: [add, subtract, multiply, divide] + operands: + type: array + items: + type: number + minItems: 2 + maxItems: 2 + precision: + type: integer + minimum: 0 + maximum: 10 + default: 2 + required: + - operation + - operands + CalculationResult: + type: object + properties: + result: + type: number + operation: + type: string + timestamp: + type: string + format: date-time + required: + - result + - operation + - timestamp +``` + +## Setup your fern folder + +Start by initializing your fern folder with an OpenRPC spec + + +```sh file +fern init --openrpc ./path/to/openrpc +``` +```sh url +fern init --openrpc https://host/path/to/openrpc +``` + + +This will initialize a directory like the following +``` +fern/ + ├─ fern.config.json + ├─ generators.yml + └─ openrpc/ + ├─ openrpc.yml +``` \ No newline at end of file diff --git a/fern/products/api-def/openrpc-pages/servers.mdx b/fern/products/api-def/openrpc-pages/servers.mdx new file mode 100644 index 00000000..f00bf68c --- /dev/null +++ b/fern/products/api-def/openrpc-pages/servers.mdx @@ -0,0 +1,194 @@ +--- +title: Servers +description: Configure server URLs and transports for your JSON-RPC API +subtitle: Define server URLs and transport mechanisms for your JSON-RPC API +--- + +OpenRPC allows you to specify one or more server configurations that define how clients can connect to your JSON-RPC API. + +```yml openrpc.yml +servers: + - name: production + url: https://api.yourcompany.com/rpc + description: Production HTTP JSON-RPC server + - name: websocket + url: wss://api.yourcompany.com/rpc + description: Production WebSocket JSON-RPC server +``` + +Specifying servers is valuable for both SDKs and Docs: +- For SDKs, your users won't need to manually specify the server URL at client instantiation +- For Docs, your API playground will automatically connect to the correct server + +## Transport protocols + +JSON-RPC can be used over various transport protocols: + +### HTTP/HTTPS Transport +```yml openrpc.yml +servers: + - name: http-production + url: https://api.yourcompany.com/rpc + description: HTTPS JSON-RPC endpoint + - name: http-staging + url: https://staging-api.yourcompany.com/rpc + description: Staging HTTPS endpoint +``` + +### WebSocket Transport +```yml openrpc.yml +servers: + - name: websocket-production + url: wss://api.yourcompany.com/rpc + description: WebSocket JSON-RPC for real-time communication + - name: websocket-dev + url: ws://localhost:8080/rpc + description: Development WebSocket server +``` + +### TCP Transport +```yml openrpc.yml +servers: + - name: tcp-production + url: tcp://api.yourcompany.com:9090 + description: TCP JSON-RPC server for high-performance applications +``` + +## Server variables + +Use variables to make your server configurations more flexible: + +```yml openrpc.yml {3-12} +servers: + - name: production + url: https://{environment}.api.yourcompany.com/rpc + description: Production JSON-RPC server + variables: + environment: + default: prod + enum: + - prod + - staging + - dev + description: Environment name +``` + +## Multiple environments + +Configure different environments with appropriate descriptions: + +```yml openrpc.yml +servers: + - name: production + url: https://api.yourcompany.com/rpc + description: Production environment - high availability, rate limited + - name: staging + url: https://staging-api.yourcompany.com/rpc + description: Staging environment - for testing new features + - name: development + url: http://localhost:8080/rpc + description: Local development server + - name: sandbox + url: https://sandbox-api.yourcompany.com/rpc + description: Sandbox environment - safe for testing +``` + +## Server-specific configurations + +Add server-specific metadata and configurations: + +```yml openrpc.yml {4-12} +servers: + - name: production + url: https://api.yourcompany.com/rpc + description: Production JSON-RPC server + variables: + version: + default: v1 + enum: [v1, v2] + description: API version + summary: High-performance production server + tags: + - name: production + description: Production environment +``` + +## Load balancing and multiple URLs + +Configure multiple server URLs for load balancing: + +```yml openrpc.yml +servers: + - name: primary + url: https://api-primary.yourcompany.com/rpc + description: Primary production server + - name: secondary + url: https://api-secondary.yourcompany.com/rpc + description: Secondary production server (fallback) + - name: regional-us + url: https://us.api.yourcompany.com/rpc + description: US regional server + - name: regional-eu + url: https://eu.api.yourcompany.com/rpc + description: EU regional server +``` + +## WebSocket-specific configurations + +Configure WebSocket servers with connection parameters: + +```yml openrpc.yml {4-10} +servers: + - name: websocket-main + url: wss://api.yourcompany.com/rpc + description: Main WebSocket JSON-RPC server + variables: + protocol: + default: "jsonrpc-2.0" + description: JSON-RPC protocol version + heartbeat: + default: "30" + description: Heartbeat interval in seconds +``` + +## Security configurations + +Configure authentication and security at the server level: + +```yml openrpc.yml {4-6} +servers: + - name: secure-production + url: https://api.yourcompany.com/rpc + description: Secure production server with authentication + security: + - bearerAuth: [] + - apiKeyAuth: [] +components: + securitySchemes: + bearerAuth: + type: http + scheme: bearer + apiKeyAuth: + type: apiKey + in: header + name: X-API-Key +``` + +## Transport-specific optimizations + +Configure servers for specific use cases: + +```yml openrpc.yml +servers: + - name: bulk-operations + url: https://bulk.api.yourcompany.com/rpc + description: Optimized for batch requests and bulk operations + - name: real-time + url: wss://realtime.api.yourcompany.com/rpc + description: WebSocket server optimized for real-time notifications + - name: analytics + url: https://analytics.api.yourcompany.com/rpc + description: Dedicated server for analytics and reporting methods +``` + +Server configurations help clients understand how to connect to your JSON-RPC API and which transport mechanism is most appropriate for their use case. \ No newline at end of file diff --git a/fern/products/api-def/pages/project-structure.mdx b/fern/products/api-def/pages/project-structure.mdx new file mode 100644 index 00000000..6ff6018f --- /dev/null +++ b/fern/products/api-def/pages/project-structure.mdx @@ -0,0 +1,128 @@ +--- +title: The Fern Folder +description: Describes the Fern folder structure +--- + +Configuring fern starts with the `fern` folder. The fern folder contains your API definitions, +generators, and your CLI version. + +## Directory structure + +When you run `fern init`, your Fern folder will be initialized with the following files: +```bash +fern/ + ├─ fern.config.json + ├─ generators.yml + └─ definition/ + ├─ api.yml + └─ imdb.yml +``` + +If you want to initialize Fern with an OpenAPI Specification, run `fern init --openapi path/to/openapi` instead. +```yaml +fern/ + ├─ fern.config.json + ├─ generators.yml # required on Fern version 0.41.0 and above + └─ openapi/ + ├─ openapi.yml +``` + +### `fern.config.json` + +Every fern folder has a single `fern.config.json` file. This file stores the organization and +the version of the Fern CLI that you are using. + +```json +{ + "organization": "imdb", + "version": "0.31.2" +} +``` + +Every time you run a fern CLI command, the CLI downloads itself at the correct version to ensure +determinism. + +To upgrade the CLI, run `fern upgrade`. This will update the version field in `fern.config.json` + +### `generators.yml` + +The `generators.yml` file can include information about where your API specification is located, along with which generators you are using, where each package gets published, as well as configuration specific to each generator. + + + +```yaml +api: + path: ./path/to/openapi.yml +groups: + public: + generators: + - name: fernapi/fern-python-sdk + version: 3.0.0 + output: + location: pypi + package-name: imdb + token: ${PYPI_TOKEN} + github: + repository: imdb/imdb-python + config: + client_class_name: imdb + - name: fernapi/fern-typescript-sdk + version: 2.3.1 + output: + location: npm + package-name: imdb + token: ${NPM_TOKEN} + github: + repository: imdb/imdb-node + config: + namespaceExport: imdb +``` + + +```yaml +api: + path: ./path/to/openapi.yml +``` + + + +## Multiple APIs + +The Fern folder is capable of housing multiple API definitions. Instead of placing your API definition at the top-level, you can nest them within an `apis` folder. Be sure to include a `generators.yml` file within each API folder that specifies the location of the API definition. + + + +```bash +fern/ + ├─ fern.config.json + ├─ generators.yml + └─ apis/ + └─ imdb/ + ├─ generators.yml + └─ openapi/ + ├─ openapi.yml + └─ disney/ + ├─ generators.yml + └─ openapi/ + ├─ openapi.yml +``` + + +```bash +fern/ + ├─ fern.config.json + ├─ generators.yml + └─ apis/ + └─ imdb/ + ├─ generators.yml + └─ definition/ + ├─ api.yml + └─ imdb.yml + └─ disney/ + ├─ generators.yml + └─ definition/ + ├─ api.yml + └─ disney.yml +``` + + \ No newline at end of file diff --git a/fern/products/api-def/pages/what-is-an-api-definition.mdx b/fern/products/api-def/pages/what-is-an-api-definition.mdx new file mode 100644 index 00000000..c5a96eb0 --- /dev/null +++ b/fern/products/api-def/pages/what-is-an-api-definition.mdx @@ -0,0 +1,291 @@ +--- +title: What is an API Definition? +description: Describes the contract between the API provider and API consumer +--- + + +An API Definition is a document that defines the structure of the API. It includes the **endpoints**, +**request and response schemas**, and **authentication** requirements. + + +Fern integrates with several API definition formats: + + + + Formerly known as Swagger, [OpenAPI](https://swagger.io/specification/) is the most popular API definition format. + OpenAPI can be used to document RESTful APIs and is defined in a YAML or JSON file. + + Check out an example OpenAPI Specification for the Petstore API [here](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml) + + ```yaml maxLines={0} + openapi: 3.0.2 + tags: + - name: pet + description: Everything about your Pets + paths: + /pet: + post: + tags: + - pet + summary: Add a new pet to the store + description: Add a new pet to the store + operationId: addPet + requestBody: + description: Create a new pet in the store + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + application/xml: + schema: + $ref: '#/components/schemas/Pet' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/Pet' + responses: + '200': + description: Successful operation + content: + application/xml: + schema: + $ref: '#/components/schemas/Pet' + application/json: + schema: + $ref: '#/components/schemas/Pet' + '405': + description: Invalid input + components: + schemas: + Pet: + required: + - name + - photoUrls + properties: + id: + type: integer + format: int64 + example: 10 + name: + type: string + example: doggie + category: + $ref: '#/components/schemas/Category' + photoUrls: + type: array + xml: + wrapped: true + items: + type: string + xml: + name: photoUrl + tags: + type: array + xml: + wrapped: true + items: + $ref: '#/components/schemas/Tag' + xml: + name: tag + status: + type: string + description: pet status in the store + enum: + - available + - pending + - sold + xml: + name: pet + type: object + ``` + + + [AsyncAPI](https://v2.asyncapi.com/docs) is a specification for defining event-driven APIs. It is used to document APIs that use + WebSockets, MQTT, and other messaging protocols. + + Check out an example AsyncAPI spec for a chat application below: + + ```yaml maxLines={0} + asyncapi: 2.0.0 + info: + title: Chat server + version: 1.0.0 + + servers: + Production: + url: chat.com + protocol: ws + + channels: + "/application": + bindings: + ws: + query: + type: object + properties: + apiKey: + type: string + description: The API key for the client + minimum: 1 + bindingVersion: 0.1.0 + subscribe: + operationId: sendMessage + message: + $ref: '#/components/messages/SendMessage' + publish: + operationId: receiveMessage + message: + $ref: '#/components/messages/ReceiveMessage' + + components: + messages: + SendMessage: + payload: + message: string + ReceiveMessage: + payload: + message: string + from: + type: string + description: The userId for the sender of the message + ``` + + + + The Fern Definition is our take on a simpler API definition format. It is designed with **best-practices**, + supports **both RESTful and event-driven APIs**, and is optimized for **SDK generation**. + + + The Fern Definition is inspired from internal API Definition formats built at companies like + [Amazon](https://smithy.io/2.0/index.html), [Google](https://grpc.io/), [Palantir](https://blog.palantir.com/introducing-conjure-palantirs-toolchain-for-http-json-apis-2175ec172d32), + Twilio and Stripe. These companies **rejected** OpenAPI and built their own version. + + + Check out an example Fern Definition below: + + ```yaml maxLines={0} + types: + MovieId: string + + Movie: + properties: + id: MovieId + title: string + rating: + type: double + docs: The rating scale is one to five stars + + CreateMovieRequest: + properties: + title: string + rating: double + + service: + auth: false + base-path: /movies + endpoints: + createMovie: + docs: Add a movie to the database + method: POST + path: /create-movie + request: CreateMovieRequest + response: MovieId + + getMovie: + method: GET + path: /{movieId} + path-parameters: + movieId: MovieId + response: Movie + errors: + - MovieDoesNotExistError + + errors: + MovieDoesNotExistError: + status-code: 404 + type: MovieId + ``` + + + + [OpenRPC](https://open-rpc.org/) is a spec for describing JSON-RPC 2.0 APIs. It enables interactive docs and code generation tooling to the JSON-RPC ecosystem. + + Check out an example OpenRPC Specification for a crypto wallet service below: + + ```yaml maxLines=0 + # yaml-language-server: $schema=https://meta.open-rpc.org/ + $schema: https://meta.open-rpc.org/ + openrpc: 1.2.4 + info: + title: Basic Wallet API JSON-RPC Specification + description: A simple JSON-RPC API for querying wallet balances. + version: 0.0.1 + servers: + - url: https://wallet.example.com/json-rpc + name: Mainnet + methods: + - name: getBalance + description: Get the balance of a wallet address. + params: + - name: address + required: true + description: The wallet address to query. + schema: + type: string + result: + name: balance + description: The balance of the wallet address. + schema: + type: number + examples: + - name: getBalance example + params: + - name: address + value: "0x1234567890abcdef1234567890abcdef12345678" + result: + name: balance + value: 42.5 + ``` + + + +## Why create an API Definition ? + +Once you have an API definition, Fern will use it as an input to generate artifacts +like SDKs and API Reference documentation. Every time you update the API definition, +you can regenerate these artifacts and ensure they are always up-to-date. + + + + Client libraries in multiple languages. + + + A Stripe-like API documentation website. + + } + > + A published Postman collection, with example request and responses. + + } + > + Pydantic models for FastAPI or controllers for your Spring Boot application. + + \ No newline at end of file From 1871ceac4a0077169ebaa58f36bb553b55a289aa Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 13:19:20 -0400 Subject: [PATCH 02/14] fix: added api-definitions product --- fern/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fern/docs.yml b/fern/docs.yml index dd2d8817..84d2d771 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -558,7 +558,7 @@ redirects: # ============================================================================ - source: /learn/openapi-definition/:slug* - destination: /api-definitions/openapi/:slug* + destination: /learn/api-definitions/openapi/:slug* permanent: true - source: /learn/asyncapi-definition/:slug* destination: /learn/api-definitions/asyncapi/:slug* From 2437169ed9eb6ad0b6b306d74e8564e035248b31 Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 13:52:04 -0400 Subject: [PATCH 03/14] fix: added api-definitions product --- fern/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fern/docs.yml b/fern/docs.yml index 84d2d771..61fa8a48 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -53,7 +53,7 @@ products: - display-name: API Definitions path: ./products/api-def/api-def.yml icon: fa-regular fa-book - image: ./images/product-switcher/product-switcher-apireference-light.png + image: ./images/product-switcher/apireference-light.png slug: api-definitions - display-name: OpenAPI From 51aa5fccf29c5f24f128cae5bea48f7f09be9da6 Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 14:03:19 -0400 Subject: [PATCH 04/14] fix: added api-definitions product --- fern/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fern/docs.yml b/fern/docs.yml index 61fa8a48..e1369cb7 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -53,7 +53,7 @@ products: - display-name: API Definitions path: ./products/api-def/api-def.yml icon: fa-regular fa-book - image: ./images/product-switcher/apireference-light.png + image: ./images/product-switcher/openapi-definition-light.png slug: api-definitions - display-name: OpenAPI From 3fbb1e21ac0e6346bda79ba0f1f88e5fc2256049 Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 14:09:36 -0400 Subject: [PATCH 05/14] fix: added api-definitions product --- fern/docs.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/fern/docs.yml b/fern/docs.yml index e1369cb7..00a43e07 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -1,5 +1,5 @@ instances: - - url: fern-v2.docs.buildwithfern.com/learn/v2 + - url: fern-v2.docs.buildwithfern.com/learn - url: fern.docs.buildwithfern.com/learn custom-domain: buildwithfern.com/learn edit-this-page: @@ -86,7 +86,6 @@ products: image: ./images/product-switcher/fern-definition-light.png slug: fern-definition - css: ./assets/styles.css navbar-links: @@ -193,7 +192,7 @@ redirects: destination: /learn/sdks/deep-dives/local-previews permanent: true - source: /learn/sdks/capabilities/auto-pagination - destination: /learn/v2/sdks/deep-dives/auto-pagination + destination: /learn/sdks/deep-dives/auto-pagination permanent: true - source: /learn/sdks/capabilities/idempotency-headers destination: /learn/sdks/deep-dives/idempotency @@ -556,7 +555,6 @@ redirects: # ============================================================================ # API REFERENCE REDIRECTS # ============================================================================ - - source: /learn/openapi-definition/:slug* destination: /learn/api-definitions/openapi/:slug* permanent: true From 5b223c0ba2cd9c0261de340813192a53b99a3336 Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 14:31:57 -0400 Subject: [PATCH 06/14] fix: added api-definitions product --- fern/products/docs/docs.yml | 30 ++++++++++++++-------------- fern/products/home/pages/welcome.mdx | 10 ++++++++-- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/fern/products/docs/docs.yml b/fern/products/docs/docs.yml index e41f50e5..850b01fd 100644 --- a/fern/products/docs/docs.yml +++ b/fern/products/docs/docs.yml @@ -84,19 +84,19 @@ navigation: - page: Conditionally Rendered Content hidden: true path: ./pages/component-library/custom-components/conditional-rendering.mdx - - section: Customization + - section: Configuration collapsed: true contents: - page: What is docs.yml path: ./pages/customization/what-is-docs-yml.mdx - - page: Frontmatter + - page: Navigation + path: ./pages/navigation/overview.mdx + - page: Versions + path: ./pages/navigation/versions.mdx + - page: Products + path: ./pages/navigation/products.mdx + - page: Page-level settings path: ./pages/customization/frontmatter.mdx - - page: Search - path: ./pages/customization/search.mdx - - page: User Feedback - path: ./pages/customization/user-feedback.mdx - - page: Custom CSS & JS - path: ./pages/component-library/custom-components/custom-css-js.mdx - section: Preview & Publish collapsed: true contents: @@ -108,21 +108,21 @@ navigation: path: ./pages/getting-started/publishing-your-docs.mdx - page: Setting up your domain path: ./pages/getting-started/setting-up-your-domain.mdx - - section: Navigation + - section: Customization collapsed: true contents: - - page: Overview - path: ./pages/navigation/overview.mdx - - page: Versions - path: ./pages/navigation/versions.mdx - - page: Products - path: ./pages/navigation/products.mdx - page: Announcement Banner path: ./pages/navigation/announcement-banner.mdx - page: Changelogs path: ./pages/navigation/changelogs.mdx - page: Hiding Content path: ./pages/navigation/hiding-content.mdx + - page: Search + path: ./pages/customization/search.mdx + - page: User Feedback + path: ./pages/customization/user-feedback.mdx + - page: Custom CSS & JS + path: ./pages/component-library/custom-components/custom-css-js.mdx - section: API References collapsed: true contents: diff --git a/fern/products/home/pages/welcome.mdx b/fern/products/home/pages/welcome.mdx index 25062738..7fb68676 100644 --- a/fern/products/home/pages/welcome.mdx +++ b/fern/products/home/pages/welcome.mdx @@ -280,8 +280,8 @@ import { FernFooter } from "../../../components/FernFooter";

From 7433715069a4f2cad39e3e46eb23effd3d55a33d Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 14:32:44 -0400 Subject: [PATCH 07/14] fix: added api-definitions product --- fern/products/docs/docs.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/fern/products/docs/docs.yml b/fern/products/docs/docs.yml index 850b01fd..c758f9ee 100644 --- a/fern/products/docs/docs.yml +++ b/fern/products/docs/docs.yml @@ -85,7 +85,6 @@ navigation: hidden: true path: ./pages/component-library/custom-components/conditional-rendering.mdx - section: Configuration - collapsed: true contents: - page: What is docs.yml path: ./pages/customization/what-is-docs-yml.mdx From 8ece3c2ecb749be35c5b8a269204c4b3e08a171d Mon Sep 17 00:00:00 2001 From: Kapil Gowru Date: Tue, 12 Aug 2025 14:39:18 -0400 Subject: [PATCH 08/14] fix: added api-definitions product --- fern/docs.yml | 18 ++++++++++++++++++ fern/products/docs/docs.yml | 4 ++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/fern/docs.yml b/fern/docs.yml index 00a43e07..255fff0f 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -338,12 +338,21 @@ redirects: - source: /learn/docs/building-and-customizing-your-docs/navigation destination: /learn/docs/navigation/overview permanent: true + - source: /learn/docs/navigation/overview + destination: /learn/docs/configuration/navigation + permanent: true - source: /learn/docs/building-and-customizing-your-docs/versioning destination: /learn/docs/navigation/versions permanent: true + - source: /learn/docs/navigation/versions + destination: /learn/docs/configuration/versions + permanent: true - source: /learn/docs/building-and-customizing-your-docs/announcements destination: /learn/docs/navigation/announcement-banner permanent: true + - source: /learn/docs/navigation/announcement-banner + destination: /learn/docs/customization/announcement-banner + permanent: true - source: /learn/docs/building-and-customizing-your-docs/links-and-redirects destination: /learn/docs/seo/redirects permanent: true @@ -353,12 +362,18 @@ redirects: - source: /learn/docs/building-and-customizing-your-docs/hiding-content destination: /learn/docs/navigation/hiding-content permanent: true + - source: /learn/docs/navigation/hiding-content + destination: /learn/docs/customization/hiding-content + permanent: true - source: /learn/docs/building-and-customizing-your-docs/pull-request-preview destination: /learn/docs/preview-publish/previewing-changes-in-a-pr permanent: true - source: /learn/docs/building-and-customizing-your-docs/product-switching destination: /learn/docs/navigation/products permanent: true + - source: /learn/docs/navigation/products + destination: /learn/docs/configuration/products + permanent: true - source: /learn/docs/building-and-customizing-your-docs/custom-css-global-js destination: /learn/docs/customization/custom-css-js permanent: true @@ -390,6 +405,9 @@ redirects: - source: /learn/docs/content/changelog destination: /learn/docs/navigation/changelogs permanent: true + - source: /learn/docs/navigation/changelogs + destination: /learn/docs/customization/changelogs + permanent: true - source: /learn/docs/content/visual-editor destination: /learn/docs/writing-content/visual-editor permanent: true diff --git a/fern/products/docs/docs.yml b/fern/products/docs/docs.yml index c758f9ee..ddb3dbc7 100644 --- a/fern/products/docs/docs.yml +++ b/fern/products/docs/docs.yml @@ -9,6 +9,8 @@ navigation: path: ./pages/getting-started/project-structure.mdx - link: Customer Showcase href: https://buildwithfern.com/showcase#docs-customers.alldocs-features + - changelog: ./pages/changelog + icon: fa-regular fa-clock-rotate-left - section: Writing Content contents: - page: Markdown @@ -221,6 +223,4 @@ navigation: path: ./pages/developer-tools/vale.mdx - page: View Markdown path: ./pages/developer-tools/view-markdown.mdx - - changelog: ./pages/changelog - icon: fa-regular fa-clock-rotate-left \ No newline at end of file From bf23e3416f45cb037a35125ca3d49ff306033104 Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Tue, 12 Aug 2025 15:20:26 -0400 Subject: [PATCH 09/14] port over existing openrpc, grpc, and asyncapi content into new structure --- fern/docs.yml | 10 +- fern/products/asyncapi-def/asyncapi-def.yml | 39 -- fern/products/asyncapi-def/pages/auth.mdx | 187 ------- .../asyncapi-def/pages/automation.mdx | 203 ------- .../asyncapi-def/pages/channels/bindings.mdx | 214 ------- .../asyncapi-def/pages/channels/messages.mdx | 170 ------ .../asyncapi-def/pages/channels/pubsub.mdx | 105 ---- .../pages/extensions/audiences.mdx | 157 ------ .../pages/extensions/method-names.mdx | 94 ---- .../asyncapi-def/pages/extensions/others.mdx | 160 ------ .../pages/extensions/parameter-names.mdx | 79 --- .../products/asyncapi-def/pages/overrides.mdx | 168 ------ fern/products/asyncapi-def/pages/overview.mdx | 130 ----- fern/products/asyncapi-def/pages/servers.mdx | 116 ---- fern/products/fern-def/fern-def.yml | 62 --- .../defining-your-api/audiences.mdx | 7 - .../defining-your-api/availability.mdx | 7 - .../pages-archived/defining-your-api/doc.mdx | 7 - .../defining-your-api/endpoints.mdx | 7 - .../defining-your-api/errors.mdx | 7 - .../defining-your-api/examples.mdx | 7 - .../defining-your-api/imports.mdx | 7 - .../defining-your-api/types.mdx | 7 - .../defining-your-api/webhooks.mdx | 7 - .../defining-your-api/websockets.mdx | 7 - .../getting-started/customer-showcase.mdx | 7 - .../getting-started/overview.mdx | 7 - .../getting-started/philosophy.mdx | 7 - .../getting-started/quickstart.mdx | 7 - .../global-settings/api-versions.mdx | 7 - .../global-settings/authentication.mdx | 7 - .../global-settings/environments.mdx | 7 - .../global-settings/global-headers.mdx | 7 - .../guides/creating-namespaces.mdx | 7 - .../guides/define-multiple-apis.mdx | 7 - .../guides/depending-on-other-apis.mdx | 7 - .../guides/export-to-openapi.mdx | 7 - .../guides/validate-your-fern-definition.mdx | 7 - .../fern-def/pages/api-yml/environments.mdx | 87 --- .../fern-def/pages/api-yml/errors.mdx | 54 -- .../pages/api-yml/global-configuration.mdx | 53 -- .../fern-def/pages/api-yml/overview.mdx | 57 -- fern/products/fern-def/pages/audiences.mdx | 113 ---- fern/products/fern-def/pages/auth.mdx | 224 -------- fern/products/fern-def/pages/availability.mdx | 96 ---- .../pages/depending-on-other-apis.mdx | 67 --- fern/products/fern-def/pages/endpoints.mdx | 519 ----------------- .../fern-def/pages/endpoints/bytes.mdx | 60 -- .../fern-def/pages/endpoints/multipart.mdx | 46 -- .../fern-def/pages/endpoints/rest.mdx | 45 -- .../products/fern-def/pages/endpoints/sse.mdx | 101 ---- fern/products/fern-def/pages/errors.mdx | 25 - fern/products/fern-def/pages/examples.mdx | 339 ----------- .../fern-def/pages/export-openapi.mdx | 23 - fern/products/fern-def/pages/imports.mdx | 22 - fern/products/fern-def/pages/overview.mdx | 104 ---- fern/products/fern-def/pages/packages.mdx | 153 ----- fern/products/fern-def/pages/types.mdx | 428 -------------- fern/products/fern-def/pages/webhooks.mdx | 65 --- fern/products/fern-def/pages/websocket.png | Bin 792611 -> 0 bytes fern/products/fern-def/pages/websockets.mdx | 96 ---- .../products/fern-def/pages/wss-reference.png | Bin 456280 -> 0 bytes fern/products/grpc-def/grpc-def.yml | 39 -- fern/products/grpc-def/pages/auth.mdx | 370 ------------ fern/products/grpc-def/pages/automation.mdx | 472 ---------------- .../grpc-def/pages/extensions/audiences.mdx | 360 ------------ .../pages/extensions/method-names.mdx | 330 ----------- .../grpc-def/pages/extensions/others.mdx | 403 -------------- .../pages/extensions/parameter-names.mdx | 302 ---------- fern/products/grpc-def/pages/overrides.mdx | 432 -------------- fern/products/grpc-def/pages/overview.mdx | 221 -------- fern/products/grpc-def/pages/servers.mdx | 427 -------------- .../grpc-def/pages/services/errors.mdx | 526 ------------------ .../grpc-def/pages/services/grpc-services.mdx | 419 -------------- .../grpc-def/pages/services/streaming.mdx | 514 ----------------- fern/products/openapi-def/openapi-def.yml | 47 -- .../getting-started/customer-showcase.mdx | 7 - .../getting-started/get-to-openapi.mdx | 7 - .../get-to-openapi/generate-it/fastapi.mdx | 9 - .../get-to-openapi/generate-it/nestjs.mdx | 9 - .../generate-it/request-new-framework.mdx | 9 - .../get-to-openapi/generate-it/swaggo.mdx | 9 - .../get-to-openapi/handwrite-it.mdx | 9 - .../overlay-customizations.mdx | 7 - .../getting-started/overview.mdx | 9 - .../getting-started/philosophy.mdx | 7 - .../pages-archived/schemas/allof.mdx | 7 - .../pages-archived/schemas/anyof.mdx | 7 - .../pages-archived/schemas/enums.mdx | 7 - .../schemas/inlined-schemas.mdx | 7 - .../pages-archived/schemas/objects.mdx | 7 - .../pages-archived/schemas/oneof.mdx | 7 - .../pages-archived/schemas/override-type.mdx | 7 - .../multiple-security-schemes.mdx | 7 - .../overriding-security-scheme.mdx | 7 - .../security-schemes/overview.mdx | 7 - .../servers/multiple-server-urls.mdx | 7 - .../servers/naming-your-servers.mdx | 7 - .../servers/overriding-servers.mdx | 7 - .../pages-archived/servers/overview.mdx | 7 - fern/products/openapi-def/pages/auth.mdx | 196 ------- .../products/openapi-def/pages/automation.mdx | 54 -- .../openapi-def/pages/endpoints/multipart.mdx | 75 --- .../openapi-def/pages/endpoints/rest.mdx | 66 --- .../openapi-def/pages/endpoints/sse.mdx | 109 ---- fern/products/openapi-def/pages/examples.mdx | 93 ---- .../pages/extensions/audiences.mdx | 118 ---- .../pages/extensions/method-names.mdx | 58 -- .../openapi-def/pages/extensions/others.mdx | 416 -------------- .../pages/extensions/parameter-names.mdx | 65 --- fern/products/openapi-def/pages/overrides.mdx | 74 --- fern/products/openapi-def/pages/overview.mdx | 128 ----- .../pages/server-frameworks/fastapi.mdx | 92 --- fern/products/openapi-def/pages/servers.mdx | 84 --- fern/products/openapi-def/pages/webhooks.mdx | 60 -- fern/products/openrpc-def/openrpc-def.yml | 39 -- fern/products/openrpc-def/pages/auth.mdx | 235 -------- .../products/openrpc-def/pages/automation.mdx | 316 ----------- .../pages/extensions/audiences.mdx | 295 ---------- .../pages/extensions/method-names.mdx | 228 -------- .../openrpc-def/pages/extensions/others.mdx | 302 ---------- .../pages/extensions/parameter-names.mdx | 280 ---------- .../openrpc-def/pages/methods/batch.mdx | 301 ---------- .../pages/methods/notifications.mdx | 309 ---------- .../openrpc-def/pages/methods/rpc-methods.mdx | 277 --------- fern/products/openrpc-def/pages/overrides.mdx | 274 --------- fern/products/openrpc-def/pages/overview.mdx | 167 ------ fern/products/openrpc-def/pages/servers.mdx | 194 ------- 128 files changed, 5 insertions(+), 14774 deletions(-) delete mode 100644 fern/products/asyncapi-def/asyncapi-def.yml delete mode 100644 fern/products/asyncapi-def/pages/auth.mdx delete mode 100644 fern/products/asyncapi-def/pages/automation.mdx delete mode 100644 fern/products/asyncapi-def/pages/channels/bindings.mdx delete mode 100644 fern/products/asyncapi-def/pages/channels/messages.mdx delete mode 100644 fern/products/asyncapi-def/pages/channels/pubsub.mdx delete mode 100644 fern/products/asyncapi-def/pages/extensions/audiences.mdx delete mode 100644 fern/products/asyncapi-def/pages/extensions/method-names.mdx delete mode 100644 fern/products/asyncapi-def/pages/extensions/others.mdx delete mode 100644 fern/products/asyncapi-def/pages/extensions/parameter-names.mdx delete mode 100644 fern/products/asyncapi-def/pages/overrides.mdx delete mode 100644 fern/products/asyncapi-def/pages/overview.mdx delete mode 100644 fern/products/asyncapi-def/pages/servers.mdx delete mode 100644 fern/products/fern-def/fern-def.yml delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/audiences.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/availability.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/doc.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/endpoints.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/errors.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/examples.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/imports.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/types.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/webhooks.mdx delete mode 100644 fern/products/fern-def/pages-archived/defining-your-api/websockets.mdx delete mode 100644 fern/products/fern-def/pages-archived/getting-started/customer-showcase.mdx delete mode 100644 fern/products/fern-def/pages-archived/getting-started/overview.mdx delete mode 100644 fern/products/fern-def/pages-archived/getting-started/philosophy.mdx delete mode 100644 fern/products/fern-def/pages-archived/getting-started/quickstart.mdx delete mode 100644 fern/products/fern-def/pages-archived/global-settings/api-versions.mdx delete mode 100644 fern/products/fern-def/pages-archived/global-settings/authentication.mdx delete mode 100644 fern/products/fern-def/pages-archived/global-settings/environments.mdx delete mode 100644 fern/products/fern-def/pages-archived/global-settings/global-headers.mdx delete mode 100644 fern/products/fern-def/pages-archived/guides/creating-namespaces.mdx delete mode 100644 fern/products/fern-def/pages-archived/guides/define-multiple-apis.mdx delete mode 100644 fern/products/fern-def/pages-archived/guides/depending-on-other-apis.mdx delete mode 100644 fern/products/fern-def/pages-archived/guides/export-to-openapi.mdx delete mode 100644 fern/products/fern-def/pages-archived/guides/validate-your-fern-definition.mdx delete mode 100644 fern/products/fern-def/pages/api-yml/environments.mdx delete mode 100644 fern/products/fern-def/pages/api-yml/errors.mdx delete mode 100644 fern/products/fern-def/pages/api-yml/global-configuration.mdx delete mode 100644 fern/products/fern-def/pages/api-yml/overview.mdx delete mode 100644 fern/products/fern-def/pages/audiences.mdx delete mode 100644 fern/products/fern-def/pages/auth.mdx delete mode 100644 fern/products/fern-def/pages/availability.mdx delete mode 100644 fern/products/fern-def/pages/depending-on-other-apis.mdx delete mode 100644 fern/products/fern-def/pages/endpoints.mdx delete mode 100644 fern/products/fern-def/pages/endpoints/bytes.mdx delete mode 100644 fern/products/fern-def/pages/endpoints/multipart.mdx delete mode 100644 fern/products/fern-def/pages/endpoints/rest.mdx delete mode 100644 fern/products/fern-def/pages/endpoints/sse.mdx delete mode 100644 fern/products/fern-def/pages/errors.mdx delete mode 100644 fern/products/fern-def/pages/examples.mdx delete mode 100644 fern/products/fern-def/pages/export-openapi.mdx delete mode 100644 fern/products/fern-def/pages/imports.mdx delete mode 100644 fern/products/fern-def/pages/overview.mdx delete mode 100644 fern/products/fern-def/pages/packages.mdx delete mode 100644 fern/products/fern-def/pages/types.mdx delete mode 100644 fern/products/fern-def/pages/webhooks.mdx delete mode 100644 fern/products/fern-def/pages/websocket.png delete mode 100644 fern/products/fern-def/pages/websockets.mdx delete mode 100644 fern/products/fern-def/pages/wss-reference.png delete mode 100644 fern/products/grpc-def/grpc-def.yml delete mode 100644 fern/products/grpc-def/pages/auth.mdx delete mode 100644 fern/products/grpc-def/pages/automation.mdx delete mode 100644 fern/products/grpc-def/pages/extensions/audiences.mdx delete mode 100644 fern/products/grpc-def/pages/extensions/method-names.mdx delete mode 100644 fern/products/grpc-def/pages/extensions/others.mdx delete mode 100644 fern/products/grpc-def/pages/extensions/parameter-names.mdx delete mode 100644 fern/products/grpc-def/pages/overrides.mdx delete mode 100644 fern/products/grpc-def/pages/overview.mdx delete mode 100644 fern/products/grpc-def/pages/servers.mdx delete mode 100644 fern/products/grpc-def/pages/services/errors.mdx delete mode 100644 fern/products/grpc-def/pages/services/grpc-services.mdx delete mode 100644 fern/products/grpc-def/pages/services/streaming.mdx delete mode 100644 fern/products/openapi-def/openapi-def.yml delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/customer-showcase.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/get-to-openapi.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/fastapi.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/nestjs.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/request-new-framework.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/swaggo.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/handwrite-it.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/overlay-customizations.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/overview.mdx delete mode 100644 fern/products/openapi-def/pages-archived/getting-started/philosophy.mdx delete mode 100644 fern/products/openapi-def/pages-archived/schemas/allof.mdx delete mode 100644 fern/products/openapi-def/pages-archived/schemas/anyof.mdx delete mode 100644 fern/products/openapi-def/pages-archived/schemas/enums.mdx delete mode 100644 fern/products/openapi-def/pages-archived/schemas/inlined-schemas.mdx delete mode 100644 fern/products/openapi-def/pages-archived/schemas/objects.mdx delete mode 100644 fern/products/openapi-def/pages-archived/schemas/oneof.mdx delete mode 100644 fern/products/openapi-def/pages-archived/schemas/override-type.mdx delete mode 100644 fern/products/openapi-def/pages-archived/security-schemes/multiple-security-schemes.mdx delete mode 100644 fern/products/openapi-def/pages-archived/security-schemes/overriding-security-scheme.mdx delete mode 100644 fern/products/openapi-def/pages-archived/security-schemes/overview.mdx delete mode 100644 fern/products/openapi-def/pages-archived/servers/multiple-server-urls.mdx delete mode 100644 fern/products/openapi-def/pages-archived/servers/naming-your-servers.mdx delete mode 100644 fern/products/openapi-def/pages-archived/servers/overriding-servers.mdx delete mode 100644 fern/products/openapi-def/pages-archived/servers/overview.mdx delete mode 100644 fern/products/openapi-def/pages/auth.mdx delete mode 100644 fern/products/openapi-def/pages/automation.mdx delete mode 100644 fern/products/openapi-def/pages/endpoints/multipart.mdx delete mode 100644 fern/products/openapi-def/pages/endpoints/rest.mdx delete mode 100644 fern/products/openapi-def/pages/endpoints/sse.mdx delete mode 100644 fern/products/openapi-def/pages/examples.mdx delete mode 100644 fern/products/openapi-def/pages/extensions/audiences.mdx delete mode 100644 fern/products/openapi-def/pages/extensions/method-names.mdx delete mode 100644 fern/products/openapi-def/pages/extensions/others.mdx delete mode 100644 fern/products/openapi-def/pages/extensions/parameter-names.mdx delete mode 100644 fern/products/openapi-def/pages/overrides.mdx delete mode 100644 fern/products/openapi-def/pages/overview.mdx delete mode 100644 fern/products/openapi-def/pages/server-frameworks/fastapi.mdx delete mode 100644 fern/products/openapi-def/pages/servers.mdx delete mode 100644 fern/products/openapi-def/pages/webhooks.mdx delete mode 100644 fern/products/openrpc-def/openrpc-def.yml delete mode 100644 fern/products/openrpc-def/pages/auth.mdx delete mode 100644 fern/products/openrpc-def/pages/automation.mdx delete mode 100644 fern/products/openrpc-def/pages/extensions/audiences.mdx delete mode 100644 fern/products/openrpc-def/pages/extensions/method-names.mdx delete mode 100644 fern/products/openrpc-def/pages/extensions/others.mdx delete mode 100644 fern/products/openrpc-def/pages/extensions/parameter-names.mdx delete mode 100644 fern/products/openrpc-def/pages/methods/batch.mdx delete mode 100644 fern/products/openrpc-def/pages/methods/notifications.mdx delete mode 100644 fern/products/openrpc-def/pages/methods/rpc-methods.mdx delete mode 100644 fern/products/openrpc-def/pages/overrides.mdx delete mode 100644 fern/products/openrpc-def/pages/overview.mdx delete mode 100644 fern/products/openrpc-def/pages/servers.mdx diff --git a/fern/docs.yml b/fern/docs.yml index 255fff0f..81c0430b 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -57,31 +57,31 @@ products: slug: api-definitions - display-name: OpenAPI - path: ./products/openapi-def/openapi-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-book image: ./images/product-switcher/openapi-definition-light.png slug: openapi-definition - display-name: AsyncAPI - path: ./products/asyncapi-def/asyncapi-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-bolt image: ./images/product-switcher/asyncapi-light.png slug: asyncapi-definition - display-name: OpenRPC - path: ./products/openrpc-def/openrpc-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-code image: ./images/product-switcher/openrpc-light.png slug: openrpc-definition - display-name: gRPC - path: ./products/grpc-def/grpc-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-plug image: ./images/product-switcher/grpc-light.png slug: grpc-definition - display-name: Fern Definition - path: ./products/fern-def/fern-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-seedling image: ./images/product-switcher/fern-definition-light.png slug: fern-definition diff --git a/fern/products/asyncapi-def/asyncapi-def.yml b/fern/products/asyncapi-def/asyncapi-def.yml deleted file mode 100644 index a59539c6..00000000 --- a/fern/products/asyncapi-def/asyncapi-def.yml +++ /dev/null @@ -1,39 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Servers - path: ./pages/servers.mdx - - section: Channels - slug: channels - contents: - - page: Publish/Subscribe Operations - path: ./pages/channels/pubsub.mdx - slug: pubsub - - page: Message Formats - path: ./pages/channels/messages.mdx - slug: messages - - page: Message Bindings - path: ./pages/channels/bindings.mdx - slug: bindings - - section: Extensions - slug: extensions - contents: - - page: Audiences - path: ./pages/extensions/audiences.mdx - - page: SDK Method Names - path: ./pages/extensions/method-names.mdx - slug: method-names - - page: Parameter Names - path: ./pages/extensions/parameter-names.mdx - - page: Other - path: ./pages/extensions/others.mdx - slug: others - - section: Workflow & Automation - skip-slug: true - contents: - - page: Overlay Customizations - path: ./pages/overrides.mdx - - page: Sync your AsyncAPI Specification - path: ./pages/automation.mdx \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/auth.mdx b/fern/products/asyncapi-def/pages/auth.mdx deleted file mode 100644 index 57f8bde2..00000000 --- a/fern/products/asyncapi-def/pages/auth.mdx +++ /dev/null @@ -1,187 +0,0 @@ ---- -title: Authentication -subtitle: Model auth schemes such as bearer, basic, and api key for your event-driven APIs. ---- - -Configuring authentication schemes happens in the `components.securitySchemes` section of AsyncAPI. - -```yml title="asyncapi.yml" {2-3} -components: - securitySchemes: - ... -``` - - -To apply a security scheme across all operations, reference the `securityScheme` within the `security` section of your AsyncAPI Specification. - -```yml title="asyncapi.yml" {3, 5-6} -components: - securitySchemes: - AuthScheme: - ... -security: - - AuthScheme: [] -``` - - -## Bearer security scheme - -Start by defining a `bearer` security scheme in your `asyncapi.yml`: - -```yml title="asyncapi.yml" {3-5} -components: - securitySchemes: - BearerAuth: - type: http - scheme: bearer -``` - -This will generate an SDK where the user would have to provide -a mandatory argument called `token`. - -```ts index.ts -const client = new Client({ - token: "ey34..." -}) -``` - -If you want to control variable naming and the environment variable to scan, -use the configuration below: - -```yml title="asyncapi.yml" {4-6} -components: - securitySchemes: - BearerAuth: - type: http - scheme: bearer - x-fern-token: - name: authToken - env: AUTH_TOKEN -``` - -## API Key security scheme - -Start by defining an `apiKey` security scheme in your `asyncapi.yml`: - -```yml title="asyncapi.yml" {3-6} -components: - securitySchemes: - ApiKeyAuth: - type: apiKey - in: header - name: X-API-Key -``` - -This will generate an SDK where the user would have to provide -a mandatory argument called `apiKey`. - -```ts index.ts -const client = new Client({ - apiKey: "my-api-key" -}) -``` - -### Custom API Key variable name - -If you want to control variable naming and the environment variable to scan, -use the configuration below: - -```yml title="asyncapi.yml" {5-7} -components: - securitySchemes: - ApiKeyAuth: - type: apiKey - x-fern-api-key: - name: customApiKey - env: CUSTOM_API_KEY - in: header - name: X-API-Key -``` - -## Basic security scheme - -Start by defining a `basic` security scheme in your `asyncapi.yml`: - -```yml title="asyncapi.yml" {3-5} -components: - securitySchemes: - BasicAuth: - type: http - scheme: basic -``` - -This will generate an SDK where the user would have to provide -a `username` and `password`. - -```ts index.ts -const client = new Client({ - username: "john@example.com", - password: "password123" -}) -``` - -### Custom Basic Auth variable names - -If you want to control variable naming and the environment variables to scan, -use the configuration below: - -```yml title="asyncapi.yml" {4-7} -components: - securitySchemes: - BasicAuth: - type: http - scheme: basic - x-fern-username: - name: email - env: EMAIL - x-fern-password: - name: pass - env: PASSWORD -``` - -## OAuth2 security scheme - -OAuth2 authentication is supported for AsyncAPI specifications: - -```yml title="asyncapi.yml" {3-11} -components: - securitySchemes: - OAuth2: - type: oauth2 - flows: - authorizationCode: - authorizationUrl: https://example.com/oauth/authorize - tokenUrl: https://example.com/oauth/token - scopes: - read: Read access to resources - write: Write access to resources -``` - -This will generate an SDK that supports OAuth2 flow for event-driven operations. - -## Multiple security schemes - -You can specify multiple security schemes and apply them to different operations: - -```yml title="asyncapi.yml" {2-12, 16-17} -components: - securitySchemes: - ApiKeyAuth: - type: apiKey - in: header - name: X-API-Key - BearerAuth: - type: http - scheme: bearer - OAuth2: - type: oauth2 - flows: ... - -operations: - sendMessage: - security: - - ApiKeyAuth: [] - - BearerAuth: [] -``` - -This allows different operations to use different authentication methods as needed. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/automation.mdx b/fern/products/asyncapi-def/pages/automation.mdx deleted file mode 100644 index ffeb260c..00000000 --- a/fern/products/asyncapi-def/pages/automation.mdx +++ /dev/null @@ -1,203 +0,0 @@ ---- -title: Sync your AsyncAPI Specification -subtitle: Automatically sync your AsyncAPI spec changes to keep SDKs and docs up to date ---- - -Keeping your AsyncAPI specifications in sync with your codebase is crucial for maintaining accurate SDKs and documentation. Fern provides several automation options to streamline this process. - -## GitHub Actions - -Use Fern's GitHub Action to automatically update SDKs and docs when your AsyncAPI spec changes: - -```yaml title=".github/workflows/fern.yml" -name: Fern - -on: - push: - branches: - - main - pull_request: - branches: - - main - -jobs: - fern-check: - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Check AsyncAPI spec - uses: fern-api/action@v0 - with: - command: check - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} - - fern-generate: - runs-on: ubuntu-latest - if: github.event_name == 'push' && github.ref == 'refs/heads/main' - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Generate SDKs and docs - uses: fern-api/action@v0 - with: - command: generate - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} -``` - -## Webhook integration - -Set up webhooks to trigger SDK generation when your AsyncAPI spec is updated: - -```yaml title="generators.yml" {4-8} -api: - specs: - - spec: asyncapi.yml - github: - repository: your-org/your-repo - webhooks: - - url: https://your-api.com/webhooks/fern - events: [generate] - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: npm - package-name: "@your-org/sdk" -``` - -## Auto-sync from source - -Configure Fern to automatically pull your AsyncAPI specification from various sources: - -### From URL -```yaml title="generators.yml" {3-4} -api: - specs: - - spec: https://api.yourcompany.com/asyncapi.yml - auto-sync: true - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -### From Git repository -```yaml title="generators.yml" {3-7} -api: - specs: - - spec: - git: - repository: https://github.com/your-org/api-specs - path: asyncapi/api.yml - branch: main - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## CI/CD integration - -### CircleCI -```yaml title=".circleci/config.yml" {15-23} -version: 2.1 - -orbs: - fern: fernapi/fern@1.0 - -workflows: - version: 2 - build-and-test: - jobs: - - build - - test: - requires: - - build - - fern/generate: - requires: - - test - filters: - branches: - only: main - context: - - fern-context -``` - -### GitLab CI -```yaml title=".gitlab-ci.yml" {13-20} -stages: - - build - - test - - generate - -variables: - FERN_TOKEN: $FERN_TOKEN - -build: - stage: build - script: - - echo "Building application..." - -generate-sdks: - stage: generate - image: fernapi/fern:latest - script: - - fern generate - only: - - main -``` - -## Scheduled updates - -Set up scheduled updates to ensure your SDKs stay current: - -```yaml title=".github/workflows/scheduled-update.yml" -name: Scheduled AsyncAPI Update - -on: - schedule: - - cron: '0 2 * * 1' # Every Monday at 2 AM UTC - workflow_dispatch: - -jobs: - update-specs: - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Update AsyncAPI specs - run: | - curl -o fern/asyncapi/asyncapi.yml https://api.yourcompany.com/asyncapi.yml - - - name: Generate with latest spec - uses: fern-api/action@v0 - with: - command: generate - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} -``` - -## Monitoring changes - -Track changes to your AsyncAPI specification: - -```yaml title="generators.yml" {4-9} -api: - specs: - - spec: asyncapi.yml - change-detection: - enabled: true - breaking-changes: error - notifications: - slack: ${{ secrets.SLACK_WEBHOOK }} - email: team@yourcompany.com - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -This ensures that any breaking changes to your AsyncAPI specification are detected and the appropriate team members are notified before the changes are propagated to your SDKs and documentation. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/channels/bindings.mdx b/fern/products/asyncapi-def/pages/channels/bindings.mdx deleted file mode 100644 index aac3ae4e..00000000 --- a/fern/products/asyncapi-def/pages/channels/bindings.mdx +++ /dev/null @@ -1,214 +0,0 @@ ---- -title: Message Bindings -subtitle: Configure protocol-specific settings for WebSocket, MQTT, Kafka, and other protocols ---- - -Bindings in AsyncAPI allow you to specify protocol-specific information for servers, channels, operations, and messages. This enables you to provide detailed configuration for different messaging protocols. - -```yml title="asyncapi.yml" {6-12} -channels: - user/notifications: - address: user/notifications - messages: - UserNotification: - $ref: '#/components/messages/UserNotification' - bindings: - ws: - method: GET - query: - type: object - properties: - token: - type: string - description: Authentication token -``` - -## WebSocket bindings - -Configure WebSocket-specific settings for real-time communication: - -```yml title="asyncapi.yml" {4-10} -channels: - chat/room: - address: chat/room/{roomId} - bindings: - ws: - method: GET - headers: - type: object - properties: - Authorization: - type: string - query: - type: object - properties: - userId: - type: string - roomId: - type: string - -operations: - sendMessage: - action: send - channel: - $ref: '#/channels/chat~1room' - bindings: - ws: - type: request - method: message -``` - -## MQTT bindings - -Configure MQTT-specific settings for IoT and messaging applications: - -```yml title="asyncapi.yml" {4-8} -channels: - device/telemetry: - address: device/{deviceId}/telemetry - bindings: - mqtt: - qos: 1 - retain: true - messageExpiryInterval: 3600 - -servers: - mqtt-broker: - host: mqtt.example.com - protocol: mqtt - bindings: - mqtt: - clientId: device-client - cleanSession: false - keepAlive: 60 - will: - topic: device/status - payload: "offline" - qos: 1 - retain: true -``` - -## Kafka bindings - -Configure Kafka-specific settings for high-throughput event streaming: - -```yml title="asyncapi.yml" {4-12} -channels: - user.events: - address: user.events - bindings: - kafka: - topic: user.events - partitions: 10 - replicas: 3 - topicConfiguration: - cleanup.policy: ["delete"] - retention.ms: 604800000 - segment.ms: 86400000 - -operations: - publishUserEvent: - action: send - channel: - $ref: '#/channels/user.events' - bindings: - kafka: - groupId: user-event-processors - key: - type: string - description: User ID for partitioning -``` - -## Server bindings - -Configure protocol-specific server settings: - -```yml title="asyncapi.yml" {6-16} -servers: - websocket-server: - host: ws.example.com - protocol: wss - description: WebSocket server with SSL - bindings: - ws: - headers: - type: object - properties: - X-API-Version: - type: string - const: "v1" - - kafka-cluster: - host: kafka.example.com:9092 - protocol: kafka - bindings: - kafka: - schemaRegistryUrl: https://schema-registry.example.com - schemaRegistryVendor: confluent -``` - -## Message bindings - -Configure how messages are handled by specific protocols: - -```yml title="asyncapi.yml" {8-15} -components: - messages: - OrderEvent: - name: OrderEvent - contentType: application/json - payload: - $ref: '#/components/schemas/Order' - bindings: - kafka: - key: - type: string - description: Order ID for consistent partitioning - headers: - type: object - properties: - eventType: - type: string - enum: [created, updated, cancelled] - mqtt: - qos: 2 - retain: false -``` - -## HTTP bindings - -For HTTP-based protocols like Server-Sent Events: - -```yml title="asyncapi.yml" {4-8} -channels: - events/stream: - address: /events/stream - bindings: - http: - type: response - method: GET - query: - type: object - properties: - lastEventId: - type: string - description: Last received event ID for resumption - -operations: - streamEvents: - action: send - channel: - $ref: '#/channels/events~1stream' - bindings: - http: - type: response - statusCode: 200 - headers: - type: object - properties: - Content-Type: - type: string - const: text/event-stream -``` - -Bindings provide the flexibility to leverage protocol-specific features while maintaining a unified API specification across different transport mechanisms. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/channels/messages.mdx b/fern/products/asyncapi-def/pages/channels/messages.mdx deleted file mode 100644 index d0d182e1..00000000 --- a/fern/products/asyncapi-def/pages/channels/messages.mdx +++ /dev/null @@ -1,170 +0,0 @@ ---- -title: Message Formats -subtitle: Define message schemas, content types, and structure for event-driven communication ---- - -Messages in AsyncAPI are defined in the `components.messages` section and referenced from channels and operations. They define the structure and format of data exchanged through your event-driven API. - -```yml title="asyncapi.yml" {2-12} -components: - messages: - UserEvent: - name: UserEvent - title: User Event Message - summary: Event triggered by user actions - contentType: application/json - payload: - $ref: '#/components/schemas/UserEventPayload' - headers: - $ref: '#/components/schemas/MessageHeaders' -``` - -## Message payload - -The payload defines the structure of the message data: - -```yml title="asyncapi.yml" {4-6} -components: - messages: - OrderCreated: - contentType: application/json - payload: - $ref: '#/components/schemas/Order' - schemas: - Order: - type: object - properties: - id: - type: string - format: uuid - description: Unique order identifier - customerId: - type: string - description: Customer who placed the order - items: - type: array - items: - $ref: '#/components/schemas/OrderItem' - total: - type: number - format: decimal - description: Total order amount - createdAt: - type: string - format: date-time - description: When the order was created - required: - - id - - customerId - - items - - total -``` - -## Message headers - -You can define headers that are sent with your messages: - -```yml title="asyncapi.yml" {6-8} -components: - messages: - NotificationEvent: - contentType: application/json - payload: - $ref: '#/components/schemas/Notification' - headers: - $ref: '#/components/schemas/NotificationHeaders' - schemas: - NotificationHeaders: - type: object - properties: - messageId: - type: string - description: Unique message identifier - timestamp: - type: string - format: date-time - description: Message timestamp - source: - type: string - description: Source service that generated the message - priority: - type: string - enum: [low, medium, high, urgent] - description: Message priority level -``` - -## Content types - -AsyncAPI supports various content types for messages: - -```yml title="asyncapi.yml" {4,10,16} -components: - messages: - JsonMessage: - contentType: application/json - payload: - $ref: '#/components/schemas/JsonPayload' - - BinaryMessage: - contentType: application/octet-stream - payload: - type: string - format: binary - - TextMessage: - contentType: text/plain - payload: - type: string -``` - -## Message examples - -Provide concrete examples to help developers understand your message format: - -```yml title="asyncapi.yml" {8-18} -components: - messages: - UserSignup: - name: UserSignup - title: User Signup Event - contentType: application/json - payload: - $ref: '#/components/schemas/User' - examples: - - name: StandardSignup - summary: Regular user signup - payload: - id: "123e4567-e89b-12d3-a456-426614174000" - email: "john@example.com" - name: "John Doe" - signupSource: "web" - createdAt: "2024-01-15T10:30:00Z" -``` - -## Message traits - -Use traits to share common message properties across multiple messages: - -```yml title="asyncapi.yml" {2-12, 15-19} -components: - messageTraits: - commonHeaders: - headers: - type: object - properties: - messageId: - type: string - timestamp: - type: string - format: date-time - - messages: - UserEvent: - traits: - - $ref: '#/components/messageTraits/commonHeaders' - contentType: application/json - payload: - $ref: '#/components/schemas/UserEventPayload' -``` - -This approach helps maintain consistency across your message definitions while reducing duplication. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/channels/pubsub.mdx b/fern/products/asyncapi-def/pages/channels/pubsub.mdx deleted file mode 100644 index cd51ae39..00000000 --- a/fern/products/asyncapi-def/pages/channels/pubsub.mdx +++ /dev/null @@ -1,105 +0,0 @@ ---- -title: Publish/Subscribe Operations -subtitle: Document event-driven APIs with publish and subscribe operations ---- - -Operations in AsyncAPI are defined underneath the `operations` key, with channels defined under the `channels` key. Below is an example of defining publish and subscribe operations: - -```yml title="asyncapi.yml" maxLines=0 {2-22} -channels: - user/notifications: - address: user/notifications - messages: - UserNotification: - $ref: '#/components/messages/UserNotification' - -operations: - onUserNotification: - action: receive - channel: - $ref: '#/channels/user~1notifications' - summary: Receive user notifications - description: Subscribe to user notification events - sendUserNotification: - action: send - channel: - $ref: '#/channels/user~1notifications' - summary: Send user notification - description: Publish a user notification event -``` - -## Message examples - -You can provide examples of messages by using the `examples` key in your message definitions: - -```yaml title="asyncapi.yml" {8-15} -components: - messages: - UserNotification: - name: UserNotification - title: User Notification - summary: Notification sent to a user - contentType: application/json - payload: - $ref: '#/components/schemas/Notification' - examples: - - name: EmailNotification - summary: Example email notification - payload: - userId: "123e4567-e89b-12d3-a456-426614174000" - type: "email" - message: "Welcome to our service!" - priority: "medium" -``` - -## Publish operations - -Publish operations represent messages that your service sends to a channel: - -```yml title="asyncapi.yml" {2-8} -operations: - publishOrderStatus: - action: send - channel: - $ref: '#/channels/order~1status' - summary: Publish order status update - description: Send order status updates to subscribers - message: - $ref: '#/components/messages/OrderStatus' -``` - -## Subscribe operations - -Subscribe operations represent messages that your service receives from a channel: - -```yml title="asyncapi.yml" {2-8} -operations: - subscribeToUserSignups: - action: receive - channel: - $ref: '#/channels/user~1signup' - summary: Subscribe to user signups - description: Receive notifications when users sign up - message: - $ref: '#/components/messages/UserSignup' -``` - -## Bi-directional communication - -You can define both publish and subscribe operations for the same channel to enable bi-directional communication: - -```yml title="asyncapi.yml" {2-15} -operations: - sendChatMessage: - action: send - channel: - $ref: '#/channels/chat~1room' - summary: Send chat message - description: Send a message to a chat room - receiveChatMessage: - action: receive - channel: - $ref: '#/channels/chat~1room' - summary: Receive chat message - description: Receive messages from a chat room -``` \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/extensions/audiences.mdx b/fern/products/asyncapi-def/pages/extensions/audiences.mdx deleted file mode 100644 index bc1118a8..00000000 --- a/fern/products/asyncapi-def/pages/extensions/audiences.mdx +++ /dev/null @@ -1,157 +0,0 @@ ---- -title: Use audiences to filter your API -subtitle: Use `x-fern-audiences` to filter to relevant operations, channels and message schemas ---- - -Audiences are a useful tool for segmenting your event-driven API for different consumers. Common examples of audiences include `public` -and `beta`. - - - Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, - nothing will be filtered. - - - - -The following example configures the SDK to filter to the `public` audience: - -```yaml title="generators.yml" {3-4} -groups: - sdks: - audiences: - - public - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - - - -The following example configures the docs to filter to the `public` audience: - -```yaml title="docs.yml" {3-4} -navigation: - - api: API Reference - audiences: - - public -``` - - - - - -## Filter operations - -Add `x-fern-audiences` to operations to control which operations are included for specific audiences: - -```yaml title="asyncapi.yml" {5-6, 12-13} -operations: - sendPublicNotification: - action: send - channel: - $ref: '#/channels/public~1notifications' - x-fern-audiences: - - public - sendBetaAlert: - action: send - channel: - $ref: '#/channels/beta~1alerts' - x-fern-audiences: - - beta -``` - -## Filter channels - -You can also filter entire channels by audience: - -```yaml title="asyncapi.yml" {6-7, 13-14} -channels: - public/events: - address: public/events - messages: - PublicEvent: - $ref: '#/components/messages/PublicEvent' - x-fern-audiences: - - public - internal/events: - address: internal/events - messages: - InternalEvent: - $ref: '#/components/messages/InternalEvent' - x-fern-audiences: - - internal -``` - -## Filter message schemas - -Filter specific message schemas to different audiences: - -```yaml title="asyncapi.yml" {5-6, 13-14} -components: - messages: - PublicUserEvent: - contentType: application/json - payload: - $ref: '#/components/schemas/PublicUser' - x-fern-audiences: - - public - AdminUserEvent: - contentType: application/json - payload: - $ref: '#/components/schemas/AdminUser' - x-fern-audiences: - - admin - schemas: - PublicUser: - type: object - properties: - id: - type: string - name: - type: string - email: - type: string - x-fern-audiences: - - public - AdminUser: - allOf: - - $ref: '#/components/schemas/PublicUser' - - type: object - properties: - role: - type: string - permissions: - type: array - items: - type: string - x-fern-audiences: - - admin -``` - -## Filter schema properties - -You can filter individual properties within schemas: - -```yaml title="asyncapi.yml" {9-10, 13-14} -components: - schemas: - UserEvent: - type: object - properties: - id: - type: string - email: - type: string - x-fern-audiences: - - internal - publicName: - type: string - x-fern-audiences: - - public - internalNotes: - type: string - x-fern-audiences: - - internal -``` - -This allows you to have different views of the same event schema for different audiences, showing only the relevant information to each consumer. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/extensions/method-names.mdx b/fern/products/asyncapi-def/pages/extensions/method-names.mdx deleted file mode 100644 index ec423403..00000000 --- a/fern/products/asyncapi-def/pages/extensions/method-names.mdx +++ /dev/null @@ -1,94 +0,0 @@ ---- -title: SDK Method Names -subtitle: Use `x-fern-sdk-method-name` to customize SDK method names for operations ---- - -By default, Fern generates SDK method names based on your operation names in AsyncAPI. You can override this behavior using the `x-fern-sdk-method-name` extension. - -## Customize operation method names - -Use `x-fern-sdk-method-name` to specify custom method names for your operations: - -```yaml title="asyncapi.yml" {6-7, 13-14} -operations: - subscribeToUserEvents: - action: receive - channel: - $ref: '#/channels/user~1events' - x-fern-sdk-method-name: onUserEvent - summary: Subscribe to user events - publishOrderUpdate: - action: send - channel: - $ref: '#/channels/order~1updates' - x-fern-sdk-method-name: sendOrderUpdate - summary: Publish order update -``` - -This will generate SDK methods like: - -```typescript -// Instead of client.subscribeToUserEvents() -client.onUserEvent((event) => { - // Handle user event -}); - -// Instead of client.publishOrderUpdate() -client.sendOrderUpdate(orderData); -``` - -## Method naming conventions - -Follow these conventions when naming SDK methods: - -### Subscribe operations -Use descriptive names that indicate the action: - -```yaml title="asyncapi.yml" {4-5} -operations: - subscribeToNotifications: - action: receive - x-fern-sdk-method-name: onNotification - # Generates: client.onNotification() - - subscribeToOrderUpdates: - action: receive - x-fern-sdk-method-name: watchOrders - # Generates: client.watchOrders() -``` - -### Publish operations -Use action-oriented names: - -```yaml title="asyncapi.yml" {4-5} -operations: - publishUserSignup: - action: send - x-fern-sdk-method-name: createUser - # Generates: client.createUser() - - publishNotification: - action: send - x-fern-sdk-method-name: notify - # Generates: client.notify() -``` - -## Language-specific method names - -You can specify different method names for different programming languages: - -```yaml title="asyncapi.yml" {6-11} -operations: - subscribeToEvents: - action: receive - channel: - $ref: '#/channels/events' - x-fern-sdk-method-name: - python: on_event - typescript: onEvent - go: OnEvent - java: onEvent - csharp: OnEvent -``` - -This ensures method names follow the conventions of each target language. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/extensions/others.mdx b/fern/products/asyncapi-def/pages/extensions/others.mdx deleted file mode 100644 index cbc7d15a..00000000 --- a/fern/products/asyncapi-def/pages/extensions/others.mdx +++ /dev/null @@ -1,160 +0,0 @@ ---- -title: Other Extensions -subtitle: Additional Fern extensions for AsyncAPI specifications ---- - -Fern supports various extensions to enhance your AsyncAPI specifications and improve the generated SDKs and documentation. - -## `x-fern-ignore` - -Use `x-fern-ignore` to exclude specific operations, channels, or schemas from SDK generation: - -```yaml title="asyncapi.yml" {6-7, 13-14} -operations: - debugOperation: - action: send - channel: - $ref: '#/channels/debug' - x-fern-ignore: true - summary: Debug operation (internal only) - -channels: - internal/debug: - address: internal/debug - x-fern-ignore: true - messages: - DebugMessage: - $ref: '#/components/messages/DebugMessage' -``` - -## `x-fern-examples` - -Provide additional examples for better SDK documentation: - -```yaml title="asyncapi.yml" {8-20} -components: - messages: - UserEvent: - contentType: application/json - payload: - $ref: '#/components/schemas/User' - x-fern-examples: - - name: NewUserSignup - summary: Example of a new user signup event - payload: - id: "user_123" - email: "john@example.com" - name: "John Doe" - status: "active" - - name: UserDeactivation - summary: Example of user deactivation event - payload: - id: "user_456" - email: "jane@example.com" - name: "Jane Smith" - status: "inactive" -``` - -## `x-fern-pagination` - -Configure pagination for operations that return multiple results: - -```yaml title="asyncapi.yml" {6-11} -operations: - listUserEvents: - action: receive - channel: - $ref: '#/channels/user~1events' - x-fern-pagination: - cursor: next_cursor - results: events - next_cursor: pagination.next_cursor - has_next_page: pagination.has_next_page -``` - -## `x-fern-retry` - -Configure retry behavior for operations: - -```yaml title="asyncapi.yml" {6-10} -operations: - sendCriticalAlert: - action: send - channel: - $ref: '#/channels/alerts' - x-fern-retry: - max_attempts: 3 - exponential_backoff: true - initial_delay: 1000 - max_delay: 30000 -``` - -## `x-fern-streaming` - -Mark operations as streaming for appropriate SDK generation: - -```yaml title="asyncapi.yml" {6-9} -operations: - streamEvents: - action: receive - channel: - $ref: '#/channels/event~1stream' - x-fern-streaming: - type: server_sent_events - termination: client_closes -``` - -## `x-fern-error-handling` - -Configure error handling for operations: - -```yaml title="asyncapi.yml" {6-16} -operations: - sendMessage: - action: send - channel: - $ref: '#/channels/messages' - x-fern-error-handling: - error_schema: - $ref: '#/components/schemas/MessageError' - error_status_codes: - - 400 - - 429 - - 500 - retry_on_errors: - - 429 - - 500 -``` - -## `x-fern-server-name` - -Specify custom names for servers: - -```yaml title="asyncapi.yml" {4-5} -servers: - production: - host: api.yourcompany.com - x-fern-server-name: Production - protocol: wss - staging: - host: staging.api.yourcompany.com - x-fern-server-name: Staging - protocol: wss -``` - -## `x-fern-availability` - -Mark features as available in specific SDK versions: - -```yaml title="asyncapi.yml" {6-8} -operations: - newFeature: - action: send - channel: - $ref: '#/channels/new~1feature' - x-fern-availability: - status: beta - message: "This feature is in beta and may change" -``` - -These extensions help you create more robust and user-friendly SDKs while maintaining full control over the generated code structure and behavior. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/extensions/parameter-names.mdx b/fern/products/asyncapi-def/pages/extensions/parameter-names.mdx deleted file mode 100644 index 8e5e47a3..00000000 --- a/fern/products/asyncapi-def/pages/extensions/parameter-names.mdx +++ /dev/null @@ -1,79 +0,0 @@ ---- -title: Parameter Names -subtitle: Use `x-fern-parameter-name` to customize SDK parameter names for message properties ---- - -By default, Fern uses the property names from your AsyncAPI message schemas as SDK parameter names. You can customize these using the `x-fern-parameter-name` extension. - -## Customize message property names - -Use `x-fern-parameter-name` to specify custom parameter names for message properties: - -```yaml title="asyncapi.yml" {10-11, 14-15} -components: - schemas: - UserEvent: - type: object - properties: - user_id: - type: string - description: Unique user identifier - x-fern-parameter-name: userId - created_at: - type: string - format: date-time - x-fern-parameter-name: createdAt - notification_type: - type: string - enum: [email, sms, push] - x-fern-parameter-name: notificationType -``` - -This generates SDK methods with cleaner parameter names: - -```typescript -// Instead of send({user_id: "123", created_at: new Date(), notification_type: "email"}) -client.sendNotification({ - userId: "123", - createdAt: new Date(), - notificationType: "email" -}); -``` - -## Language-specific parameter names - -You can specify different parameter names for different programming languages: - -```yaml title="asyncapi.yml" {8-13} -components: - schemas: - OrderEvent: - type: object - properties: - order_id: - type: string - x-fern-parameter-name: - python: order_id - typescript: orderId - go: OrderID - java: orderId - csharp: OrderId -``` - -## Channel parameter names - -Customize parameter names for channel address variables: - -```yaml title="asyncapi.yml" {4-7} -channels: - user/{user_id}/notifications: - address: user/{user_id}/notifications - parameters: - user_id: - description: User identifier - x-fern-parameter-name: userId - schema: - type: string -``` - -This ensures consistent naming conventions across your SDK while maintaining compatibility with your existing message formats. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/overrides.mdx b/fern/products/asyncapi-def/pages/overrides.mdx deleted file mode 100644 index 0e76d5f1..00000000 --- a/fern/products/asyncapi-def/pages/overrides.mdx +++ /dev/null @@ -1,168 +0,0 @@ ---- -title: Overlay Customizations -subtitle: Use overlay files to modify your AsyncAPI specification without editing the original ---- - -Overlays allow you to modify your AsyncAPI specification without directly editing the original file. This is useful for: -- Adding Fern-specific extensions -- Customizing documentation -- Adding examples and descriptions -- Overriding specific properties - -## Configure overlays - -To use overlays, add them to your `generators.yml` file: - -```yaml title="generators.yml" {3-5} -api: - specs: - - spec: asyncapi.yml - overlays: - - overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## Overlay file structure - -Overlay files follow the [OpenAPI Overlay Specification](https://spec.openapis.org/overlay/v1.0.0) format: - -```yaml title="overlay.yml" -overlay: 1.0.0 -info: - title: AsyncAPI Fern Extensions - version: 1.0.0 -actions: - - target: $.operations.sendNotification - update: - x-fern-sdk-method-name: notify - summary: Send a notification to a user - - target: $.channels['user/events'] - update: - description: Channel for user-related events - x-fern-audiences: - - public -``` - -## Add method names - -Override SDK method names for better developer experience: - -```yaml title="overlay.yml" {7-9} -overlay: 1.0.0 -info: - title: SDK Method Names - version: 1.0.0 -actions: - - target: $.operations.subscribeToUserEvents - update: - x-fern-sdk-method-name: onUserEvent - summary: Subscribe to user events with callback - - target: $.operations.publishOrderUpdate - update: - x-fern-sdk-method-name: updateOrder - summary: Publish order status update -``` - -## Add examples - -Enhance your specification with examples: - -```yaml title="overlay.yml" {7-17} -overlay: 1.0.0 -info: - title: Message Examples - version: 1.0.0 -actions: - - target: $.components.messages.UserSignup - update: - examples: - - name: StandardSignup - summary: Regular user signup - payload: - id: "user_123" - email: "john@example.com" - name: "John Doe" - signupSource: "web" - timestamp: "2024-01-15T10:30:00Z" -``` - -## Filter with audiences - -Add audience filtering to operations and channels: - -```yaml title="overlay.yml" {7-9, 12-14} -overlay: 1.0.0 -info: - title: Audience Filtering - version: 1.0.0 -actions: - - target: $.operations.adminAlert - update: - x-fern-audiences: - - admin - - target: $.channels['internal/debug'] - update: - x-fern-audiences: - - internal -``` - -## Add documentation - -Enhance descriptions and documentation: - -```yaml title="overlay.yml" {7-11} -overlay: 1.0.0 -info: - title: Enhanced Documentation - version: 1.0.0 -actions: - - target: $.operations.sendMessage - update: - description: | - Send a message to the specified channel. This operation supports - real-time delivery with automatic retry on failure. Messages are - guaranteed to be delivered at least once. - summary: Send message with delivery guarantees -``` - -## Server configurations - -Add server-specific configurations: - -```yaml title="overlay.yml" {7-11} -overlay: 1.0.0 -info: - title: Server Extensions - version: 1.0.0 -actions: - - target: $.servers.production - update: - x-fern-server-name: Production - description: Production environment with high availability - bindings: - ws: - headers: - type: object - properties: - X-API-Version: - type: string - const: "v1" -``` - -## Multiple overlays - -You can apply multiple overlay files in sequence: - -```yaml title="generators.yml" {4-7} -api: - specs: - - spec: asyncapi.yml - overlays: - - base-overlay.yml - - sdk-overlay.yml - - docs-overlay.yml -``` - -Overlays are applied in order, allowing you to build up customizations incrementally while keeping your original AsyncAPI specification clean and focused. \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/overview.mdx b/fern/products/asyncapi-def/pages/overview.mdx deleted file mode 100644 index e1133708..00000000 --- a/fern/products/asyncapi-def/pages/overview.mdx +++ /dev/null @@ -1,130 +0,0 @@ ---- -title: What is an AsyncAPI Specification? -subtitle: AsyncAPI is a standard for documenting event-driven APIs ---- - -The AsyncAPI Specification is a framework used by developers to document event-driven APIs. The specification -is written in JSON or YAML and contains all of your channels, messages, schemas, and authentication schemes. -Fern is compatible with AsyncAPI specification [v2.6.0](https://www.asyncapi.com/docs/reference/specification/v2.6.0) and [v3.0.0](https://www.asyncapi.com/docs/reference/specification/v3.0.0). - - Considering options to generate an AsyncAPI spec? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) - -Below is an example of an AsyncAPI file: - -```yaml asyncapi.yml -asyncapi: 3.0.0 -info: - title: User Notification Service - version: 1.0.0 - description: | - Service that handles user notifications through various channels - including email, SMS, and push notifications. -channels: - user/signup: - address: user/signup - messages: - UserSignedUp: - $ref: '#/components/messages/UserSignedUp' - notification/send: - address: notification/send - messages: - SendNotification: - $ref: '#/components/messages/SendNotification' -operations: - onUserSignup: - action: receive - channel: - $ref: '#/channels/user~1signup' - summary: User signup event - description: Triggered when a user signs up for the service - sendNotification: - action: send - channel: - $ref: '#/channels/notification~1send' - summary: Send notification - description: Send a notification to a user -components: - messages: - UserSignedUp: - name: UserSignedUp - title: User Signed Up - summary: User has signed up for the service - contentType: application/json - payload: - $ref: '#/components/schemas/User' - SendNotification: - name: SendNotification - title: Send Notification - summary: Send a notification to a user - contentType: application/json - payload: - $ref: '#/components/schemas/Notification' - schemas: - User: - type: object - properties: - id: - type: string - format: uuid - description: Unique identifier for the user - email: - type: string - format: email - description: User's email address - name: - type: string - description: User's full name - createdAt: - type: string - format: date-time - description: When the user was created - required: - - id - - email - - name - Notification: - type: object - properties: - userId: - type: string - format: uuid - description: ID of the user to notify - type: - type: string - enum: [email, sms, push] - description: Type of notification to send - message: - type: string - description: Message content - priority: - type: string - enum: [low, medium, high, urgent] - default: medium - description: Priority level of the notification - required: - - userId - - type - - message -``` - -## Setup your fern folder - -Start by initializing your fern folder with an AsyncAPI spec - - -```sh file -fern init --asyncapi ./path/to/asyncapi -``` -```sh url -fern init --asyncapi https://host/path/to/asyncapi -``` - - -This will initialize a directory like the following -``` -fern/ - ├─ fern.config.json - ├─ generators.yml - └─ asyncapi/ - ├─ asyncapi.yml -``` \ No newline at end of file diff --git a/fern/products/asyncapi-def/pages/servers.mdx b/fern/products/asyncapi-def/pages/servers.mdx deleted file mode 100644 index a3a0554e..00000000 --- a/fern/products/asyncapi-def/pages/servers.mdx +++ /dev/null @@ -1,116 +0,0 @@ ---- -title: Servers -description: Configure server URLs and protocols to help users connect to your event-driven API. -subtitle: Define server URLs and protocols to help users connect to your event-driven API. ---- - -AsyncAPI allows you to specify one or more server configurations under the `servers` key. - -```yml asyncapi.yml - -servers: - production: - host: api.yourcompany.com - protocol: wss - description: Production WebSocket server - staging: - host: staging.api.yourcompany.com - protocol: wss - description: Staging WebSocket server -``` - -Specifying servers is valuable for both SDKs and Docs: -- For SDKs, your users won't need to manually specify the server URL at client instantiation -- For Docs, your API playground will automatically connect to the correct server - -## Protocol support - -AsyncAPI supports various protocols for event-driven communication: - -```yml asyncapi.yml {4,8,12} -servers: - websocket-server: - host: ws.api.yourcompany.com - protocol: ws - description: WebSocket server for real-time communication - mqtt-server: - host: mqtt.yourcompany.com - protocol: mqtt - description: MQTT broker for IoT devices - kafka-server: - host: kafka.yourcompany.com - protocol: kafka - description: Kafka cluster for event streaming -``` - -## Naming your servers - -We recommend giving your servers descriptive names to make it clear what each server is for: - -```yml asyncapi.yml -servers: - production: - host: api.yourcompany.com - protocol: wss - description: Production WebSocket server - staging: - host: staging.api.yourcompany.com - protocol: wss - description: Staging environment for testing - development: - host: localhost:8080 - protocol: ws - description: Local development server -``` - -## Server variables - -You can use variables in your server configurations to make them more flexible: - -```yml asyncapi.yml {3-10} -servers: - production: - host: '{environment}.api.yourcompany.com' - protocol: wss - variables: - environment: - default: prod - enum: - - prod - - staging - description: Environment name -``` - -## Multiple protocols for different channels - -If you have different channels that use different protocols, you can specify this in your server configuration: - -```yml asyncapi.yml {2-14, 17-21} -servers: - websocket-server: - host: ws.api.yourcompany.com - protocol: wss - description: WebSocket server for real-time notifications - mqtt-server: - host: mqtt.api.yourcompany.com - protocol: mqtt - description: MQTT broker for IoT device communication - kafka-server: - host: kafka.api.yourcompany.com - protocol: kafka - description: Kafka for high-throughput event streaming - -channels: - user/notifications: - servers: - - websocket-server - address: user/notifications - description: Real-time user notifications via WebSocket - device/telemetry: - servers: - - mqtt-server - address: device/telemetry - description: IoT device telemetry via MQTT -``` - -This allows different channels to use the most appropriate protocol for their use case. \ No newline at end of file diff --git a/fern/products/fern-def/fern-def.yml b/fern/products/fern-def/fern-def.yml deleted file mode 100644 index 2d576a0a..00000000 --- a/fern/products/fern-def/fern-def.yml +++ /dev/null @@ -1,62 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Types - path: ./pages/types.mdx - - section: Endpoints - contents: - - page: Overview - path: ./pages/endpoints.mdx - - page: HTTP JSON Endpoints - path: ./pages/endpoints/rest.mdx - slug: http - - page: Multipart Form Uploads - path: ./pages/endpoints/multipart.mdx - slug: multipart - - page: Bytes - path: ./pages/endpoints/bytes.mdx - slug: bytes - - page: Server-Sent Events - path: ./pages/endpoints/sse.mdx - slug: sse - - section: Advanced - skip-slug: true - contents: - - page: Webhooks - path: ./pages/webhooks.mdx - - page: WebSockets - path: ./pages/websockets.mdx - slug: websockets - - page: Errors - path: ./pages/errors.mdx - - page: Imports - path: ./pages/imports.mdx - - page: Examples - path: ./pages/examples.mdx - - page: Audiences - path: ./pages/audiences.mdx - - page: Availability - path: ./pages/availability.mdx - - section: api.yml Reference - slug: api-yml - contents: - - page: Overview - path: ./pages/api-yml/overview.mdx - - page: Environments - path: ./pages/api-yml/environments.mdx - - page: Global Headers - path: ./pages/api-yml/global-configuration.mdx - - page: Errors - path: ./pages/api-yml/errors.mdx - - section: Integrations - skip-slug: true - contents: - - page: Packages - path: ./pages/packages.mdx - - page: Depending on Other APIs - path: ./pages/depending-on-other-apis.mdx - - page: Export to OpenAPI - slug: export-openapi - path: ./pages/export-openapi.mdx diff --git a/fern/products/fern-def/pages-archived/defining-your-api/audiences.mdx b/fern/products/fern-def/pages-archived/defining-your-api/audiences.mdx deleted file mode 100644 index 27a9a970..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/audiences.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Audiences ---- - -Define different audiences for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/availability.mdx b/fern/products/fern-def/pages-archived/defining-your-api/availability.mdx deleted file mode 100644 index 2fdc7330..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/availability.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Availability ---- - -Configure availability settings for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/doc.mdx b/fern/products/fern-def/pages-archived/defining-your-api/doc.mdx deleted file mode 100644 index 4f467bad..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/doc.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Doc ---- - -Documentation configuration. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/endpoints.mdx b/fern/products/fern-def/pages-archived/defining-your-api/endpoints.mdx deleted file mode 100644 index 8a40e243..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/endpoints.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Endpoints ---- - -How to define API endpoints in your specification. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/errors.mdx b/fern/products/fern-def/pages-archived/defining-your-api/errors.mdx deleted file mode 100644 index 3bd416a6..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/errors.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Errors ---- - -Define error responses for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/examples.mdx b/fern/products/fern-def/pages-archived/defining-your-api/examples.mdx deleted file mode 100644 index 057f09c6..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/examples.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Examples ---- - -How to add examples to your API definition. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/imports.mdx b/fern/products/fern-def/pages-archived/defining-your-api/imports.mdx deleted file mode 100644 index 2e72db4d..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/imports.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Imports ---- - -How to import external definitions into your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/types.mdx b/fern/products/fern-def/pages-archived/defining-your-api/types.mdx deleted file mode 100644 index b9611b38..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/types.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Types ---- - -Documentation on the data types used in the API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/webhooks.mdx b/fern/products/fern-def/pages-archived/defining-your-api/webhooks.mdx deleted file mode 100644 index e1144b2b..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/webhooks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Webhooks ---- - -How to define webhook endpoints in your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/websockets.mdx b/fern/products/fern-def/pages-archived/defining-your-api/websockets.mdx deleted file mode 100644 index 23d62baa..00000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/websockets.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: WebSockets ---- - -Configure WebSocket connections in your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/customer-showcase.mdx b/fern/products/fern-def/pages-archived/getting-started/customer-showcase.mdx deleted file mode 100644 index 6084c326..00000000 --- a/fern/products/fern-def/pages-archived/getting-started/customer-showcase.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Customer showcase ---- - -See how other customers are using Fern successfully. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/overview.mdx b/fern/products/fern-def/pages-archived/getting-started/overview.mdx deleted file mode 100644 index df0f4cb1..00000000 --- a/fern/products/fern-def/pages-archived/getting-started/overview.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overview ---- - -Welcome to the Getting Started section! This page provides an introduction to the API and how to begin using it. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/philosophy.mdx b/fern/products/fern-def/pages-archived/getting-started/philosophy.mdx deleted file mode 100644 index 5202a899..00000000 --- a/fern/products/fern-def/pages-archived/getting-started/philosophy.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Philosophy ---- - -The principles and philosophy behind Fern API definitions. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/quickstart.mdx b/fern/products/fern-def/pages-archived/getting-started/quickstart.mdx deleted file mode 100644 index d789ff99..00000000 --- a/fern/products/fern-def/pages-archived/getting-started/quickstart.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Quickstart ---- - -Get started with Fern quickly with this guide. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/api-versions.mdx b/fern/products/fern-def/pages-archived/global-settings/api-versions.mdx deleted file mode 100644 index 72af5096..00000000 --- a/fern/products/fern-def/pages-archived/global-settings/api-versions.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: API versions ---- - -How to manage different versions of your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/authentication.mdx b/fern/products/fern-def/pages-archived/global-settings/authentication.mdx deleted file mode 100644 index a62c4dfb..00000000 --- a/fern/products/fern-def/pages-archived/global-settings/authentication.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Authentication ---- - -Configure authentication methods for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/environments.mdx b/fern/products/fern-def/pages-archived/global-settings/environments.mdx deleted file mode 100644 index dd4106be..00000000 --- a/fern/products/fern-def/pages-archived/global-settings/environments.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Environments ---- - -Configure different environments for your API (development, staging, production). - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/global-headers.mdx b/fern/products/fern-def/pages-archived/global-settings/global-headers.mdx deleted file mode 100644 index bcc58190..00000000 --- a/fern/products/fern-def/pages-archived/global-settings/global-headers.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Global headers ---- - -Define headers that apply to all API endpoints. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/creating-namespaces.mdx b/fern/products/fern-def/pages-archived/guides/creating-namespaces.mdx deleted file mode 100644 index ed970b39..00000000 --- a/fern/products/fern-def/pages-archived/guides/creating-namespaces.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Creating namespaces ---- - -Instructions for creating and organizing namespaces in your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/define-multiple-apis.mdx b/fern/products/fern-def/pages-archived/guides/define-multiple-apis.mdx deleted file mode 100644 index 57c6b754..00000000 --- a/fern/products/fern-def/pages-archived/guides/define-multiple-apis.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Define multiple APIs ---- - -How to define and manage multiple APIs in one project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/depending-on-other-apis.mdx b/fern/products/fern-def/pages-archived/guides/depending-on-other-apis.mdx deleted file mode 100644 index e92b4376..00000000 --- a/fern/products/fern-def/pages-archived/guides/depending-on-other-apis.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Depending on other APIs ---- - -How to manage dependencies between different APIs. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/export-to-openapi.mdx b/fern/products/fern-def/pages-archived/guides/export-to-openapi.mdx deleted file mode 100644 index a3f85ef9..00000000 --- a/fern/products/fern-def/pages-archived/guides/export-to-openapi.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Export to OpenAPI ---- - -How to export your API definition to OpenAPI format. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/validate-your-fern-definition.mdx b/fern/products/fern-def/pages-archived/guides/validate-your-fern-definition.mdx deleted file mode 100644 index 07b6d978..00000000 --- a/fern/products/fern-def/pages-archived/guides/validate-your-fern-definition.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Validate your Fern definition ---- - -Learn how to validate your Fern definition to ensure it's correct. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages/api-yml/environments.mdx b/fern/products/fern-def/pages/api-yml/environments.mdx deleted file mode 100644 index bdb9cc69..00000000 --- a/fern/products/fern-def/pages/api-yml/environments.mdx +++ /dev/null @@ -1,87 +0,0 @@ ---- -title: Environments -description: List environments like production, staging, and development. ---- - -You can specify the environments where your server is deployed. - -## Single URL environments - -```yaml title="api.yml" -name: api -environments: - Production: https://www.yoursite.com - Staging: - docs: This staging environment is helpful for testing! - url: https://www.staging.yoursite.com -``` - -## Multiple URLs per environment - -You can specify multiple URLs per environment. This is helpful if you have a -microservice architecture, and you want a single SDK to interact with multiple -servers. - -```yaml title="api.yml" -environments: - Production: - urls: - Auth: https://auth.yoursite.com - Plants: https://plants.yoursite.com - Staging: - urls: - Auth: https://auth.staging.yoursite.com - Plants: https://plants.staging.yoursite.com -``` - -If you choose to use this feature, you must specify a `url` for each service you define: - -```yaml title="auth.yml" -service: - url: Auth - base-path: /auth - ... -``` - -## Default environment - -You can also provide a default environment: - -```yaml title="api.yml" -name: api -environments: - Production: https://www.yoursite.com - Staging: - docs: This staging environment is helpful for testing! - url: https://www.staging.yoursite.com -default-environment: Production -``` - - By providing a default environment, the generated SDK will be setup to hit that URL out-of-the-box. - -## Base path -If you would like all of your endpoints to be prefixed with a path, use `base-path`. - -In the example below, every endpoint is prefixed with a `/v1`: -```yaml title="api.yml" -name: api -base-path: /v1 -``` - -## Audiences - -If you have listed environments that you want to filter, you can leverage audiences. - -```yaml title="api.yml" -audiences: - - public - -environments: - Dev: - url: https://api.dev.buildwithfern.com - Prod: - url: https://api.buildwithfern.com - audiences: - - external -``` - diff --git a/fern/products/fern-def/pages/api-yml/errors.mdx b/fern/products/fern-def/pages/api-yml/errors.mdx deleted file mode 100644 index 06ce9ef3..00000000 --- a/fern/products/fern-def/pages/api-yml/errors.mdx +++ /dev/null @@ -1,54 +0,0 @@ ---- -title: Errors -description: Specify error types and schemas ---- - -In order to generate SDKs idiomatically, Fern needs to know how to differentiate -between different errors when parsing an endpoint response. - -### Discriminate by status code - -You can specify Fern to discriminate by status code. This means on each -endpoint, every error that's listed must have a different HTTP status code. - - -```yaml -name: api -error-discrimination: - strategy: status-code -``` - - -### Discriminate by error name - -You can specify Fern to discriminate by error name. If you select this strategy, -then Fern will assume that every error response has an extra property denoting -the error name. - -If you use Fern to generate server-side code, then this option provides -the most flexibility. Otherwise, you'll probably want to use the status code -discrimination strategy. - - -```yaml -name: api -error-discrimination: - strategy: property - property-name: errorName -``` - - -### Global errors - -You can import and list errors that will be thrown by every endpoint. - - -```yaml -imports: - commons: commons.yml - -errors: - - commons.NotFoundError - - commons.BadRequestError -``` - \ No newline at end of file diff --git a/fern/products/fern-def/pages/api-yml/global-configuration.mdx b/fern/products/fern-def/pages/api-yml/global-configuration.mdx deleted file mode 100644 index 0f3cc3b7..00000000 --- a/fern/products/fern-def/pages/api-yml/global-configuration.mdx +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: Global Configuration -description: Specify global headers, path parameters or query parameters meant to be included on every request. ---- - -The `api.yml` configuration supports global configuration like headers and path parameters. - -## Global headers - -You can specify headers that are meant to be included on every request: - - -```yaml -name: api -headers: - X-App-Id: string -``` - - -## Global path parameters - -You can specify path parameters that are meant to be included on every request: - - -```yaml -name: api -base-path: /{userId}/{orgId} -path-parameters: - userId: string - orgId: string -``` - - -### Overriding the base path - -If you have certain endpoints that do not live at the configured `base-path`, you can -override the `base-path` at the endpoint level. - -```yml imdb.yml {5} -service: - endpoints: - getMovie: - method: POST - base-path: "override/{arg}" - path: "movies/{movieId}" - path-parameters: - arg: string -``` - -## Global query parameters - -You cannot yet specify query parameters that are meant to be included on every request. -If you'd like to see this feature, please upvote [this issue](https://github.com/fern-api/fern/issues/2930). \ No newline at end of file diff --git a/fern/products/fern-def/pages/api-yml/overview.mdx b/fern/products/fern-def/pages/api-yml/overview.mdx deleted file mode 100644 index d27912ad..00000000 --- a/fern/products/fern-def/pages/api-yml/overview.mdx +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: The api.yml configuration file -description: The api.yml file contains general API configuration when using the Fern Definition format. ---- - -A `fern/` folder has a special file called `api.yml`, which includes all the API-wide configuration. - -```bash {5} -fern/ -├─ fern.config.json -├─ generators.yml -└─ definition/ - ├─ api.yml - ├─ pet.yml - ├─ store.yml - └─ user.yml -``` - -## API name - -This name is used to uniquely identify your API in your organization. If you just have one API, then `api` is a sufficient name. - - -```yaml -name: api -``` - - -## API description - -You can define a top level API description. This description will come through in the OpenAPI Specification and Postman collection. - - -```yaml {2-4} -name: api -docs: | - ## Header - This API provides access to... -``` - - -## API version - -You can define your header-based API versioning scheme, such as an `X-API-Version`. The supported versions -and default value are specified like so: - - -```yaml -version: - header: X-API-Version - default: "2.0.0" - values: - - "1.0.0" - - "2.0.0" - - "latest" -``` - \ No newline at end of file diff --git a/fern/products/fern-def/pages/audiences.mdx b/fern/products/fern-def/pages/audiences.mdx deleted file mode 100644 index 20f2876a..00000000 --- a/fern/products/fern-def/pages/audiences.mdx +++ /dev/null @@ -1,113 +0,0 @@ ---- -title: Audiences in Fern Definition -subtitle: Use audiences in your Fern Definition to segment your API for different groups of consumers. ---- - -Audiences are a useful tool for segmenting your API for different consumers. You can configure your Fern Docs to publish documentation specific to an `Audience`. You can use [audiences in your OpenAPI Specification](/learn/api-definition/openapi/audiences), too. - -Common examples of audiences include: - -- Internal consumers (e.g., frontend developers who use the API) -- Beta testers -- Customers - -By default, if no audience is specified, it will be accessible to all consumers. - -## Configuration - -The Fern Definition has a first-class concept for marking different endpoints, types, and properties for different audiences. - -To use audiences in your Fern Definition, add them to `api.yml`. - -In the example below, we have created audiences for `internal`, `beta`, and `customer` groups: - -```yaml title='api.yml' {2-5} -name: api -audiences: - - internal - - beta - - customers -``` - -## Audiences for endpoints - -To mark an endpoint for a particular consumer, add an `audience` with the relevant groups. - -In this example, the `sendEmail` endpoint is only available to internal consumers: - -```yaml title='user.yml' {6-7} -service: - base-path: /users - auth: true - endpoints: - sendEmail: - audiences: - - internal - path: /send-email - ... -``` - -## Audiences for types - -Types can also be marked for different audiences. - -In this example, the `Email` type is available to internal and beta consumers: - -```yaml title='user.yml' {5-7} -Email: - properties: - subject: string - body: optional - audiences: - - internal - - beta -``` - -## Audiences for properties - -Properties of a type can also be marked for different audiences. - -In this example, the `to` property is available to beta consumers only: - -```yaml title='user.yml' {8-9} -Email: - properties: - subject: string - body: optional - to: - type: string - docs: The recipient of the email - audiences: - - beta -``` - -## Audiences for SDKs - -In `generators.yml`, you can apply audience filters so that only certain -endpoints are passed to the generators. - -The following example configures the SDKs to filter for `customers`: - -```yaml title='generators.yml' {3-4} -groups: - external: - audiences: - - customers - generators: - ... -``` - -## Audiences with docs - -If generating Fern Docs, update your `docs.yml` configuration to include your audiences. - -The following example shows how to configure your `docs.yml` to publish documentation for the `customers` audience: - - -```yaml {3-4} -navigation: - - api: API Reference - audiences: - - customers -``` - diff --git a/fern/products/fern-def/pages/auth.mdx b/fern/products/fern-def/pages/auth.mdx deleted file mode 100644 index d6ef9a7c..00000000 --- a/fern/products/fern-def/pages/auth.mdx +++ /dev/null @@ -1,224 +0,0 @@ ---- -title: Authentication -subtitle: Model auth schemes such as bearer, basic, custom headers, and oauth. ---- - -Configuring authentication schemes happens in the `api.yml` file. All Fern-generated SDKs support both direct configuration and environment variables for authentication credentials. - -```bash {5} -fern/ -├─ fern.config.json # root-level configuration -├─ generators.yml # generators you're using -└─ definition/ - ├─ api.yml # API-level configuration - └─ imdb.yml # endpoints, types, and errors -``` - -To add an authentication scheme, specify the authentication method under the `auth-schemes` section. - -```yaml api.yml {1-2} -auth-schemes: - AuthScheme: - ... -``` - - -To apply an authentication scheme across all endpoints, reference the `auth-scheme` within the `auth` section of your `api.yml` file. -```yaml api.yml {1} -auth: AuthScheme -auth-schemes: - AuthScheme: - ... -``` - - -## Bearer authentication - -Start by defining a `Bearer` authentication scheme in `api.yml`: - -```yaml api.yml -auth: Bearer -auth-schemes: - Bearer: - scheme: bearer -``` - -This will generate an SDK where the user would have to provide -a mandatory argument called `token`. - -```ts index.ts -const client = new Client({ - token: "ey34..." -}) -``` - -If you want to control variable naming and the environment variable to scan, -use the configuration below: - -```yaml title="api.yml" {5-7} -auth: Bearer -auth-schemes: - Bearer: - scheme: bearer - token: - name: apiKey - env: PLANTSTORE_API_KEY -``` - -The generated SDK would look like: - -```ts index.ts - -// Uses process.env.PLANTSTORE_API_KEY -let client = new Client(); - -// token has been renamed to apiKey -client = new Client({ - apiKey: "ey34..." -}) -``` - -## Basic authentication - -Start by defining a `Basic` authentication scheme in `api.yml`: - -```yaml api.yml -auth: Basic -auth-schemes: - Basic: - scheme: basic -``` - -This will generate an SDK where the user would have to provide -a mandatory arguments called `username` and `password`. - -```ts index.ts -const client = new Client({ - username: "joeschmoe" - password: "ey34..." -}) -``` - -If you want to control variable naming and environment variables to scan, -use the configuration below: - -```yaml title="api.yml" {5-11} -auth: Basic -auth-schemes: - Basic: - scheme: basic - username: - name: clientId - env: PLANTSTORE_CLIENT_ID - password: - name: clientSecret - env: PLANTSTORE_CLIENT_SECRET -``` - -The generated SDK would look like: - -```ts index.ts - -// Uses process.env.PLANTSTORE_CLIENT_ID and process.env.PLANTSTORE_CLIENT_SECRET -let client = new Client(); - -// parameters have been renamed -client = new Client({ - clientId: "joeschmoe", - clientSecret: "ey34..." -}) -``` - -## Custom header (e.g. API key) - -You can also create your own authentication scheme with customized headers. - -```yaml title="api.yml" {3-5} -auth: ApiKeyAuthScheme -auth-schemes: - ApiKeyAuthScheme: - header: X-API-Key - type: string -``` - -This will generate an SDK where the user would have to provide -a mandatory argument called `apiKey`. - -```ts index.ts -const client = new Client({ - xApiKey: "ey34..." -}) -``` - -If you want to control variable naming and environment variables to scan, -use the configuration below: - -```yaml title="api.yml" {7-8} -auth: ApiKeyAuthScheme -auth-schemes: - ApiKeyAuthScheme: - header: X-API-Key - type: string - name: apiKey - env: PLANTSTORE_API_KEY -``` - -The generated SDK would look like: - -```ts index.ts - -// Uses process.env.PLANTSTORE_API_KEY -let client = new Client(); - -// parameters have been renamed -client = new Client({ - apiKey: "ey34..." -}) -``` - -## OAuth client credentials - -If your API uses OAuth, you can specify an oauth scheme. Note that you'll need to define a token retrieval endpoint. - -```yaml api.yml -name: api - -imports: - auth: auth.yml - -auth: OAuthScheme -auth-schemes: - OAuthScheme: - scheme: oauth - type: client-credentials - client-id-env: YOUR_CLIENT_ID - client-secret-env: YOUR_CLIENT_SECRET - get-token: - endpoint: auth.getToken - response-properties: - access-token: $response.access_token - expires-in: $response.expires_in - -``` - -If the `expires-in` property is set, the generated OAuth token provider will automatically refresh the token when it expires. -Otherwise, it's assumed that the access token is valid indefinitely. - -With this, all of the OAuth logic happens automatically in the generated SDKs. As long as you configure these settings, your -client will automatically retrieve an access token and refresh it as needed. - -When using the docs playground, `token-header` and `token-prefix` can optionally be set to customize the header key name and -header value prefix, to match the expected format of the API auth scheme. - -For example, the following would produce a header `Fern-Authorization: Fern-Bearer `: - -```yaml api.yml {5-6} -auth-schemes: - OAuthScheme: - scheme: oauth - type: client-credentials - token-header: Fern-Authorization - token-prefix: Fern-Bearer - get-token: - ... -``` \ No newline at end of file diff --git a/fern/products/fern-def/pages/availability.mdx b/fern/products/fern-def/pages/availability.mdx deleted file mode 100644 index 9e335ec1..00000000 --- a/fern/products/fern-def/pages/availability.mdx +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: Availability in Fern Definition -description: Add availability to Fern Definition API services, endpoints, types, or properties to indicate their release status. ---- - -You can add `availability` to an endpoint, type, or property within your Fern Definition. - -Availability can be: -- `in-development` which means it is being worked on; will show a `Beta` tag -- `pre-release` which means it is available; will show a `Beta` tag -- `deprecated` which means it will be removed in the future; will show a `Deprecated` tag -- `generally-available` which means it is stable and available for use; will show a `GA` tag - -## Endpoint - - -```yaml {6} -service: - base-path: /pet - auth: true - endpoints: - add: - availability: deprecated - display-name: Add pet - docs: Add a new Pet to the store - method: POST - path: "" - request: AddPetRequest - response: Pet -``` - - -In Fern Docs, this will look like: - - -![Screenshot showing a deprecated tag next to an endpoint in API Reference docs](https://fern-image-hosting.s3.amazonaws.com/endpoint-deprecated.png) - - -## Type - - -```yaml {15} - Pet: - properties: - id: - type: integer - docs: A unique ID for the Pet - name: - type: string - docs: The first name of the Pet - photoUrls: - type: list - docs: A list of publicly available URLs featuring the Pet - availability: generally-available - category: - type: optional - availability: pre-release - - Category: - properties: - id: optional - name: optional -``` - - -In Fern Docs, this will look like: - - -![Screenshot showing a beta tag next to a type in API Reference docs](https://fern-image-hosting.s3.amazonaws.com/type-beta.png) - - -## Property - - -```yaml {12} - Pet: - properties: - id: - type: integer - docs: A unique ID for the Pet - name: - type: string - docs: The first name of the Pet - photoUrls: - type: list - docs: A list of publicly available URLs featuring the Pet - availability: deprecated - category: optional -``` - - -In Fern Docs, this will look like: - - -![Screenshot showing a deprecated tag next to a type's property in API Reference docs](https://fern-image-hosting.s3.amazonaws.com/property-deprecated.png) - diff --git a/fern/products/fern-def/pages/depending-on-other-apis.mdx b/fern/products/fern-def/pages/depending-on-other-apis.mdx deleted file mode 100644 index 5a327fea..00000000 --- a/fern/products/fern-def/pages/depending-on-other-apis.mdx +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: "Depending on other APIs" -subtitle: Import API Definitions to generate unified SDKs ---- - -Fern allows you to import other APIs into your API. - -This is often useful if: - -- you want to reuse another API's types in your API -- you want to combine multiple microservices' APIs into one SDK (similar to the AWS SDK) - -## Registering the dependency API - -The first step is to **register** the API you want to depend on. To do this, use -the `register` command: - -``` -$ fern register -[some-dependency]: Uploading definition... -[some-dependency]: Registered @fern/some-dependency:0.0.1 -``` - -## Depending on the registered API - -To add a dependency on another API, you must add a `dependencies.yml` to declare which -APIs you wish to depend on. - -```bash {4} -fern/ -├─ fern.config.json -├─ generators.yml -├─ dependencies.yml -└─ definition/ - ├─ api.yml - ├─ imdb.yml -``` - -Your `dependencies.yml` has a list of all the APIs you wish to depend: - -```yaml dependencies.yml -dependencies: - "@fern/some-dependency": "0.0.1" -``` - -Next, you need create a folder in your Fern Definition to house the dependency. Inside the folder, create a special file -`__package__.yml` which specifies the dependency and version you want to add. - -```bash {8-9} -fern/ -├─ fern.config.json -├─ generators.yml -├─ dependencies.yml -└─ definition/ - ├─ api.yml - ├─ imdb.yml - └─ my-folder - └─ __package__.yml -``` - -```yaml __package__.yml -export: - dependency: "@fern/some-dependency" -``` - -When you generate the SDK with `fern generate`, the `__package__.yml` file will -effectively be replaced with the API you're depending on. diff --git a/fern/products/fern-def/pages/endpoints.mdx b/fern/products/fern-def/pages/endpoints.mdx deleted file mode 100644 index ad91ab18..00000000 --- a/fern/products/fern-def/pages/endpoints.mdx +++ /dev/null @@ -1,519 +0,0 @@ ---- -title: Endpoints in Fern Definition -description: Organize related API endpoints into a service in Fern Definition and define each endpoint's URL, HTTP method, request, response, errors, and more. ---- - -In Fern, you organize related endpoints into a **Service**. This grouping -improves clarity and makes the generated SDKs more idiomatic. - -## Service definition - -Each service defines: - -1. A **base-path**: A common prefix for all the endpoints' HTTP paths -2. Whether the service requires [authentication](/learn/api-definition/fern/authentication) -3. **Endpoints** - - - ```yaml - service: - base-path: /users - auth: false - endpoints: {} - ``` - - - - To define a service with an empty base path use the empty string: `base-path: ""` - - -## Endpoints - -An endpoint includes: - -- A **URL path** _(Optionally including path parameters)_ -- A **Display Name** _(Optional)_ -- An **HTTP Method** -- **Request information** _(Optional)_ - - **Query-parameters** - - **Headers** - - **Request body** -- **Successful (200) response** information _(Optional)_ -- **Error (non-200) responses** that this endpoint might return _(Optional)_ - -## URL path - -Each endpoint has a URL path. - - -```yaml {6} -service: - base-path: /users - auth: false - endpoints: - getAllUsers: - path: /all - method: GET -``` - - -The full path for the endpoint is the concatenation of: - -- The [environment](/learn/api-definition/fern/api-yml/environments) URL -- The service `base-path` -- The endpoint `path` - -## Display name - -The display name will appear as the title of an endpoint. By default, the display name is equal to the 'Title Case' of the endpoint name. If you would like to customize the endpoint name, you can **set the display name**. - -In the example below, ["Add a new plant to the store"](https://plantstore.dev/api-reference/plant/add-plant) displays as the title of the endpoint page within the API Reference. - - -```yaml {7} -service: - base-path: /v3 - auth: false - endpoints: - addPlant: - path: /plant - display-name: Add a new plant to the store - method: POST -``` - - -## Path parameters - -Supply path parameters for your endpoints to create dynamic URLs. - - -```yaml {6-8} -service: - base-path: /users - auth: false - endpoints: - getUser: - path: /{userId} - path-parameters: - userId: string - method: GET -``` - - -Services can also have path-parameters: - - - ```yaml {2-4} - service: - base-path: /projects/{projectId} - path-parameters: - projectId: string - auth: false - endpoints: - ... - ``` - - -## Query parameters - -Each endpoint can specify query parameters: - - -```yaml -service: - base-path: /users - auth: false - endpoints: - getAllUsers: - path: /all - method: GET - request: - # this name is required for idiomatic SDKs - name: GetAllUsersRequest - query-parameters: - limit: optional -``` - - -### `allow-multiple` - -Use `allow-multiple` to specify that a query parameter is allowed -multiple times in the URL, as in `?filter=jane&filter=smith`. This will alter -the generated SDKs so that consumers can provide multiple values for the query -parameter. - - -```yaml {5} - ... - query-parameters: - filter: - type: string - allow-multiple: true -``` - - -## Auth - -Each endpoint can override the auth behavior specified in the service. - - - ```yaml - service: - base-path: /users - auth: false - endpoints: - getMe: - path: "" - method: GET - # This endpoint will be authed - auth: true - docs: Return the current user based on Authorization header. - ``` - - -## Headers - -Each endpoint can specify request headers: - - - ```yaml - service: - base-path: /users - auth: false - endpoints: - getAllUsers: - path: /all - method: GET - request: - # this name is required for idiomatic SDKs name: - name: GetAllUsersRequest - headers: - X-Endpoint-Header: string - ``` - - -Services can also specify request headers. These headers will cascade to the service's endpoints. - - - ```yaml {4-5} - service: - base-path: /users - auth: false - headers: - X-Service-Header: string - endpoints: - getAllUsers: - path: /all - method: GET - request: - # this name is required for idiomatic SDKs - name: GetAllUsersRequest - headers: - X-Endpoint-Header: string - ``` - - -## Request body - -Endpoints can specify a request body type. - - -```yaml {10} -service: - base-path: /users - auth: false - endpoints: - setUserName: - path: /{userId}/set-name - path-parameters: - userId: string - method: POST - request: string -``` - - -### Inlining a request body - -If the request body is an object, you can **inline the type declaration**. This -makes the generated SDKs a bit more idiomatic. - - - ```yaml - service: - base-path: /users - auth: false - endpoints: - createUser: - path: /create - method: POST - request: - # this name is required for idiomatic SDKs - name: CreateUserRequest - body: - properties: - userName: string - ``` - - -## Success response - -Endpoints can specify a `response`, which is the type of the body that will be -returned on a successful (200) call. - - -```yaml -service: - base-path: /users - auth: false - endpoints: - getAllUsers: - path: /all - method: GET - response: list - -types: - User: - properties: - userId: string - name: string -``` - - -## Response status codes - -You can also use the `status-code` field to specify a custom status code -for a success response. - - -```yaml {11} -service: - base-path: /users - auth: false - endpoints: - create: : - path: "" - method: POST - request: CreateUserRequest - response: - type: User - status-code: 201 - -types: - User: - properties: - userId: string - name: string -``` - - -## Error responses - -Endpoints can specify error responses, which detail the non-200 responses that -the endpoint might return. - - -```yaml -service: - base-path: /users - auth: false - endpoints: - getUser: - path: /{userId} - path-parameters: - userId: string - method: GET - response: User - errors: - - UserNotFoundError - -types: - User: - properties: - userId: string - name: string - -errors: - UserNotFoundError: - status-code: 404 -``` - - -You can learn more about how to define errors on the [Errors](/learn/api-definition/fern/errors) page. - -## Specifying examples - -When you declare an example, you can also specify some examples of how that -endpoint might be used. These are used by the compiler to enhance the generated -outputs. Examples will show up as comments in your SDKs, API documentation, and Postman collection. - -You may add examples for endpoints, types, and errors. - - -```yaml {13-19} -service: - base-path: /users - auth: false - endpoints: - getUser: - path: /{userId} - path-parameters: - userId: string - method: GET - response: User - errors: - - UserNotFoundError - examples: - - path-parameters: - userId: alice-user-id - response: - body: - userId: alice-user-id - name: Alice - -types: - User: - properties: - userId: string - name: string - -errors: - UserNotFoundError: - status-code: 404 -``` - - -If you're adding an example to an endpoint and the type already has an example, you can reference it using `$`. -```yaml -service: - auth: true - base-path: /address - endpoints: - create: - method: POST - path: "" - request: CreateAddress - response: Address - examples: - - request: $CreateAddress.WhiteHouse - response: - body: $Address.WhiteHouseWithID - - CreateAddress: - properties: - street1: string - street2: optional - city: string - state: string - postalCode: string - country: string - isResidential: boolean - examples: - - name: WhiteHouse - value: - street1: 1600 Pennsylvania Avenue NW - city: Washington DC - state: Washington DC - postalCode: "20500" - country: US - isResidential: true - - Address: - extends: CreateAddress - properties: - id: - type: uuid - docs: The unique identifier for the address. - examples: - - name: WhiteHouseWithID - value: - id: 65ce514c-41e3-11ee-be56-0242ac120002 - street1: 1600 Pennsylvania Avenue NW - city: Washington DC - state: Washington DC - postalCode: "20500" - country: US - isResidential: true -```` - -Examples contain all the information about the endpoint call, including -the request body, path parameters, query parameters, headers, and response body. - - - ```yaml - examples: - - path-parameters: - userId: some-user-id - query-parameters: - limit: 50 - headers: - X-My-Header: some-value - response: - body: - response-field: hello - ``` - - -### Failed examples - -You can also specify examples of failed endpoints calls. Add the `error` -property to a response example to designate which failure you're demonstrating. - - -```yaml {5} -examples: - - path-parameters: - userId: missing-user-id - response: - error: UserNotFoundError - -errors: - UserNotFoundError: - status-code: 404 -``` - - -If the error has a body, then you must include the body in the example. - - -```yaml {6, 11} -examples: - - path-parameters: - userId: missing-user-id - response: - error: UserNotFoundError - body: "User with id `missing-user-id` was not found" - -errors: - UserNotFoundError: - status-code: 404 - type: string -``` - - -### Referencing examples from types - -To avoid duplication, you can reference examples from types using `$`. - - -```yaml {12} -service: - base-path: /users - auth: true - endpoints: - getUser: - method: GET - path: /{userId} - path-parameters: - userId: UserId - examples: - - path-parameters: - userId: $UserId.Example1 - -types: - UserId: - type: integer - examples: - - name: Example1 - value: user-id-123 -``` - diff --git a/fern/products/fern-def/pages/endpoints/bytes.mdx b/fern/products/fern-def/pages/endpoints/bytes.mdx deleted file mode 100644 index 43a1926d..00000000 --- a/fern/products/fern-def/pages/endpoints/bytes.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Binary Data and Files -subtitle: Use the `bytes` type to handle binary data in your API ---- - - - The `bytes` type allows you to handle binary data in both requests and responses. - - -## Sending bytes - -If your API needs to send a stream of bytes (i.e. typical for assets like audio, images and other files) then -you can use the `bytes` type in the Fern Definition to model this. - -```yml audio.yml -service: - base-path: /audio - endpoints: - upload: - display-name: Upload audio - method: POST - path: /upload - content-type: application/octet-stream - request: - type: bytes - docs: The bytes of the MP3 file that you would like to upload -``` - -## Receiving bytes - - - When handling binary data in responses, use `type: file` instead of `type: bytes`. - - -On the other hand, if your API is returning a stream of bytes, then you can leverage the `bytes` type as a response. - -```yml textToSpeech.yml -service: - base-path: /tts - endpoints: - upload: - display-name: Upload audio - method: POST - path: "" - request: - name: TTSRequest - body: - properties: - text: - type: string - docs: The text that you want converted to speech. - response: - type: file - docs: The bytes of the audio file. -``` - - - - - diff --git a/fern/products/fern-def/pages/endpoints/multipart.mdx b/fern/products/fern-def/pages/endpoints/multipart.mdx deleted file mode 100644 index f5270d6c..00000000 --- a/fern/products/fern-def/pages/endpoints/multipart.mdx +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: Multipart File Upload -description: Document endpoints with the `multiform` content type. ---- - -Endpoints in Fern are defined underneath the `endpoints` key. If your endpoint request includes file uploads, you can use the `file` type to indicate the request is of a `multiform` content type. The example below demonstrates an endpoint which includes a file in the request body. - - -```yaml {12} -service: - base-path: /documents - auth: false - endpoints: - uploadDocument: - path: /upload - method: POST - request: - name: UploadDocumentRequest - body: - properties: - file: file -``` - - -Within a given multipart request, a string parameter with `format:binary` will represent an arbitrary file. - -## List of Files - -If your endpoint supports a list of files, then your request body must indicate such. - - -```yaml {12} -service: - base-path: /documents - auth: false - endpoints: - uploadDocuments: - path: /upload - method: POST - request: - name: UploadDocumentsRequest - body: - properties: - files: list -``` - diff --git a/fern/products/fern-def/pages/endpoints/rest.mdx b/fern/products/fern-def/pages/endpoints/rest.mdx deleted file mode 100644 index 3a4459ba..00000000 --- a/fern/products/fern-def/pages/endpoints/rest.mdx +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: HTTP JSON Endpoints ---- - -Endpoints in Fern are defined underneath the `endpoints` key. Below is an example of defining -a single REST endpoint: - -```yml title="users.yml" maxLines=0 -service: - base-path: /users - auth: false - endpoints: - createUser: - path: /create - method: POST - request: - body: - properties: - userName: string -``` - -## Examples - -You can provide examples of requests and responses by using the `examples` key. - -```yaml {11-17} -service: - base-path: /users - auth: false - endpoints: - getUser: - path: /{userId} - path-parameters: - userId: string - method: GET - response: User - examples: - - path-parameters: - userId: alice-user-id - response: - body: - userId: alice-user-id - name: Alice -``` - diff --git a/fern/products/fern-def/pages/endpoints/sse.mdx b/fern/products/fern-def/pages/endpoints/sse.mdx deleted file mode 100644 index c1ab5377..00000000 --- a/fern/products/fern-def/pages/endpoints/sse.mdx +++ /dev/null @@ -1,101 +0,0 @@ ---- -title: Server-Sent Events and Streaming APIs -subtitle: Use the `response-stream` key to model streaming endpoints ---- - - - Specifying `response-stream` on an endpoints allows you to represent endpoint responses that are streaming. - - - -## JSON streaming - -If your API returns a series of `JSON` chunks as seen below - -```json -{ "text": "Hi, I am a" } -{ "text": "chatbot. Do you have any"} -{ "text": "questions for me"} -``` - -then simply specify the response under `response-stream` for your endpoint. - -```yaml title="chat.yml" {4} -service: - base-path: /chat - endpoints: - stream: - method: POST - path: "" - response-stream: Chat - -types: - Chat: - properties: - text: string -``` - -## Server-sent events - -If your API returns server-sent-events, with the `data` and `event` keys as seen below - -```json -data: { "text": "Hi, I am a" } -data: { "text": "chatbot. Do you have any"} -data: { "text": "questions for me"} -``` - -then make sure to include `format: sse`. - -```yaml title="chat.yml" {9} -service: - base-path: /chat - endpoints: - stream: - method: POST - path: "" - response-stream: - type: Chat - format: sse - -types: - Chat: - properties: - text: string -``` - -## `Stream` parameter - -It has become common practice for endpoints to have a `stream` parameter that -controls whether the response is streamed or not. Fern supports this pattern in a first -class way. - -Simply specify the `stream-condition` as well as the ordinary response and the streaming response: - -```yaml title="chat.yml" {7} -service: - base-path: /chat - endpoints: - stream: - method: POST - path: "" - stream-condition: $request.stream - request: - name: StreamChatRequest - body: - properties: - stream: boolean - response: Chat - response-stream: - type: ChatChunk - format: sse - -types: - Chat: - properties: - text: string - tokens: integer - ChatChunk: - properties: - text: string -``` \ No newline at end of file diff --git a/fern/products/fern-def/pages/errors.mdx b/fern/products/fern-def/pages/errors.mdx deleted file mode 100644 index 60fa6e63..00000000 --- a/fern/products/fern-def/pages/errors.mdx +++ /dev/null @@ -1,25 +0,0 @@ ---- -title: Errors in Fern Definition -description: Add errors representing failed responses from API endpoints in Fern Definition. ---- - -Errors represent failed (non-200) responses from endpoints. - -An error has: - -- An HTTP status code -- A body type _(Optional)_ - - -```yaml -errors: - UserNotFoundError: - status-code: 404 - type: UserNotFoundErrorBody - -types: - UserNotFoundErrorBody: - properties: - requestedUserId: string -``` - \ No newline at end of file diff --git a/fern/products/fern-def/pages/examples.mdx b/fern/products/fern-def/pages/examples.mdx deleted file mode 100644 index b16ab493..00000000 --- a/fern/products/fern-def/pages/examples.mdx +++ /dev/null @@ -1,339 +0,0 @@ ---- -title: Examples in Fern Definition -subtitle: Use Fern Definition to add API examples that are shown in comments of SDKs, API Reference documentation, and a Postman collection. ---- - -You can add examples for types and endpoints. Examples are shown as -comments in your SDKs, in the request & response of your documentation, -and in a Postman Collection. - -## Validation - -The Fern CLI validates that your examples match the expected types. The following won't compile: - -```yaml -types: - UserId: - type: integer - examples: - - value: hello # not an integer -``` - -```bash CLI Error Message -[api]: example.yml -> types -> UserId -> examples[0] - Expected example to be an integer. Example is: "hello" -``` - -## Referencing examples - -You can reference an example from another type, endpoint, or error. - -Just like types, you can compose examples. To reference an example from another -type, use `$`. - -```yaml {14} -types: - UserId: - type: integer - examples: - - name: Example1 - value: user-id-123 - - User: - properties: - id: UserId - name: string - examples: - - value: - id: $UserId.Example1 - name: Jane Smith -``` - -## Examples for types - -### Objects - -```yml -types: - ShipTo: - properties: - street1: string - street2: optional - city: string - state: string - postalCode: string - country: Country - isResidential: boolean - examples: - - name: WhiteHouse - value: - street1: 1600 Pennsylvania Avenue NW - city: Washington DC - state: Washington DC - postalCode: "20500" - country: US - isResidential: true - - name: EmpireStateBuilding - value: - street1: 350 5th Ave - street2: Attn: Maintenance Department - city: New York - state: NY - postalCode: "10118" - country: US - isResidential: false -``` - - -```typescript -/** - * Represents a shipping address. - * - * The White House address - * @example { - * street1: "1600 Pennsylvania Avenue NW", - * city: "Washington DC", - * state: "Washington DC", - * postalCode: "20500", - * country: "US", - * isResidential: true - * } - * - * * The Empire State Building address - * @example { - * street1: "350 5th Ave", - * street2: "Attn: Maintenance Department", - * city: "New York", - * state: "NY", - * postalCode: "10118", - * country: "US", - * isResidential: false - * } - */ -type ShipTo = { - street1: string; - street2?: string; - city: string; - state: string; - postalCode: string; - country: Country; - isResidential: boolean; -}; -``` - - -### Lists - -```yml - Shipments: - type: list - examples: - - name: Default - value: - - status: "InTransit" - estimatedDeliveryDate: "2024-01-11" - - status: "Delivered" - estimatedDeliveryDate: "2024-01-13" -``` - -### Unions - -#### Discriminated union - -```yml -types: - Animal: - union: - dog: Dog - cat: Cat - examples: - - value: - type: dog - likesToWoof: true - Dog: - properties: - likesToWoof: boolean - Cat: - properties: - likesToMeow: boolean -``` - - -```typescript -/** - * Represents an animal, which can be either a Dog or a Cat. - * - * Example of a Dog: - * @example { - * type: "dog", - * likesToWoof: true - * } - */ -type Animal = Dog | Cat; -``` - - -#### Undiscriminated union - -```yml -types: - Animal: - discriminated: false - union: - - Dog - - Cat - examples: - - value: - likesToMeow: true - Dog: - properties: - likesToWoof: boolean - Cat: - properties: - likesToMeow: boolean -``` - - -```typescript -/** - * Represents an Animal, which can be either a Dog or a Cat. - * - * Example of an Animal as a Cat: - * @example { - * likesToMeow: true - * } - */ -type Animal = Dog | Cat; -``` - - -### Aliases - -```yml -types: - UserId: - docs: A unique identifier for a user - type: string - examples: - - value: user-id-123 -``` - - - ```typescript - /** - * A unique identifier for a user * - * @example "user-id-123" - */ - type UserId = string; - ``` - - -## Examples for endpoints - -You can add examples of successful and error responses for your endpoints. -Examples can reference the examples of types to avoid duplication. - -```yml -service: - auth: true - base-path: "" - endpoints: - CreateShippingLabel: - docs: Create a new shipping label. - method: POST - path: /shipping - request: CreateShippingLabelRequest - response: ShippingLabel - errors: - - NotAuthorized - - InsufficientFunds - examples: - # A successful response that doesn't reference other examples. - - request: - orderId: "online_789" - weightInOunces: 5 - response: - body: - orderId: "online_789" - weightInOunces: 5 - trackingNumber: "1Z26W8370303469306" - price: 2.50 - - # A successful response that uses references. - - request: $CreateShippingLabelRequest.SuccessfulRequest - response: - body: $ShippingLabel.Default - - # An error response. - - request: $CreateShippingLabelRequest.InsufficientFundsRequest - response: - error: InsufficientFunds - body: $InsufficientFundsBody.Default - -types: - CreateShippingLabelRequest: - properties: - orderId: string - weightInOunces: integer - examples: - - name: SuccessfulRequest - value: - orderId: "online_123" - weightInOunces: 13 - - name: InsufficientFundsRequest - value: - orderId: "online_456" - weightInOunces: 2000 - - ShippingLabel: - properties: - orderId: string - weightInOunces: integer - trackingNumber: string - price: double - examples: - - name: Default - value: - orderId: "online_123" - weightInOunces: 13 - trackingNumber: "1Z12345E0205271688" - price: 12.35 - - InsufficientFundsBody: - properties: - message: string - examples: - - name: Default - value: - message: "Insufficient funds to create shipping label." - -errors: - NotAuthorized: - status-code: 401 - InsufficientFunds: - status-code: 422 - type: InsufficientFundsBody -``` - -## Examples for path parameters - -```yml -service: - auth: true - base-path: "" - endpoints: - TrackShipment: - docs: Track the status of a shipment. - method: GET - path: /shipping/{trackingNumber} - path-parameters: - trackingNumber: string - response: ShipmentStatus - examples: - - path-parameters: - trackingNumber: "1Z26W8370303469306" - response: - body: - status: "InTransit" - estimatedDeliveryDate: "2024-01-11" -``` diff --git a/fern/products/fern-def/pages/export-openapi.mdx b/fern/products/fern-def/pages/export-openapi.mdx deleted file mode 100644 index cf5b99cd..00000000 --- a/fern/products/fern-def/pages/export-openapi.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: Export from Fern Definition to OpenAPI -description: Export your Fern Definition files to OpenAPI using Fern's OpenAPI generator. ---- - -To prevent lock-in to the Fern Definition format, we provide a generator that will export your Fern Def files to OpenAPI 3.1. -This lets you switch to using OpenAPI at any time, or use your API definition with OpenAPI tools. -To convert your Fern Definition to OpenAPI, use the `fern-openapi` generator. - -Update your `generators.yml` file: - - -```yaml -- name: fernapi/fern-openapi - version: 0.0.31 - config: - format: yaml # options are yaml or json - output: - location: local-file-system - path: ../openapi # relative path to output location -``` - - diff --git a/fern/products/fern-def/pages/imports.mdx b/fern/products/fern-def/pages/imports.mdx deleted file mode 100644 index d52749f8..00000000 --- a/fern/products/fern-def/pages/imports.mdx +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: Imports in Fern Definition -description: Use imports to reference API types and errors from other Fern Definition files. ---- - -Imports allow you to reference types and errors from other files. - -```yaml title="person.yml" -types: - Person: ... -``` - -```yaml title="family.yml" -imports: - person: ./path/to/person.yml -types: - Family: - properties: - people: list # use an imported type -``` - -Note that you can only import files that exist in your Fern Definition (i.e., in the same `definition/` folder). diff --git a/fern/products/fern-def/pages/overview.mdx b/fern/products/fern-def/pages/overview.mdx deleted file mode 100644 index 25b04a2d..00000000 --- a/fern/products/fern-def/pages/overview.mdx +++ /dev/null @@ -1,104 +0,0 @@ ---- -title: What is a Fern Definition? -subtitle: "A Fern Definition is a set of YAML files that describe your API." ---- - -A Fern Definition is a set of YAML files that are the single source of truth for your API. You check your Fern Definition into your repo, -inside of which describes your API requests, responses, models, paths, methods, errors, and authentication scheme. - - - Want to use OpenAPI instead? No worries, we support that [as well](/learn/api-definition/introduction/what-is-an-api-definition#openapi-swagger) - - -## Fern Definition structure - -To initialize a Fern Definition, simply run: - -```sh -npm install -g fern-api -fern init -``` - -This will create the following folder structure in your project: - -```bash -fern/ -├─ fern.config.json # root-level configuration -├─ generators.yml # generators you're using -└─ definition/ - ├─ api.yml # API-level configuration - └─ imdb.yml # endpoints, types, and errors -``` - -## Definition file - -Each **Fern Definition** file may define: - -- **[Custom types](/learn/api-definition/fern/types)**. Use **custom types** to build your data model. -- **[Endpoints](/learn/api-definition/fern/endpoints)**. A **service** is a set of related REST endpoints. -- **[Errors](/learn/api-definition/fern/errors)**. An **error** represents a failed (non-200) response from an endpoint. -- **[Imports](/learn/api-definition/fern/imports)**. Use **imports** to share types across files. - -```yml imdb.yml maxLines=0 -service: - auth: false - base-path: /movies - endpoints: - createMovie: - docs: Add a movie to the database - method: POST - path: /create-movie - request: CreateMovieRequest - response: MovieId - - getMovie: - method: GET - path: /{movieId} - path-parameters: - movieId: MovieId - response: Movie - errors: - - NotFoundError - - UnauthorizedError - -types: - Movie: - properties: - title: string - rating: - type: double - docs: The rating scale from one to five stars - id: - type: MovieId - docs: The unique identifier for a movie - - CreateMovieRequest: - properties: - title: string - rating: double - -errors: - NotFoundError: - http: - statusCode: 404 - type: - properties: - id: MovieId - - UnauthorizedError: - http: - statusCode: 401 -``` - -## Why another format? - -Google built gRPC. Amazon built Smithy. Facebook built GraphQL. Palantir built -Conjure. These companies rejected OpenAPI in favor of a more concise API Definition Language. - -We built Fern to productize this design and make it accessible to all -software companies. - - - Despite being a different format for describing APIs, **you are never locked in to Fern.** It's easy to convert your - [Fern Definition to OpenAPI](/learn/api-definition/fern/export-openapi). - diff --git a/fern/products/fern-def/pages/packages.mdx b/fern/products/fern-def/pages/packages.mdx deleted file mode 100644 index d6656456..00000000 --- a/fern/products/fern-def/pages/packages.mdx +++ /dev/null @@ -1,153 +0,0 @@ ---- -title: Packages in Fern Definition -description: Fern Definition enables the reuse of API type and error names across packages, and can configure the structure of your API documentation. ---- - -## What is a package? - -Every folder in your API definition is a package. - - -```bash -fern/ -├─ fern.config.json -├─ generators.yml -└─ definition/ # <--- root package - ├─ api.yml - ├─ projects.yml - └─ roles/ # <--- nested package - └─ admin.yml -``` - - -The generated SDK will match the hierarchy of your API definition. - - -```ts -const client = new Client(); - -// calling endpoint defined in projects.yml -client.projects.get(); - -// calling endpoint defined in roles/admin.yml -client.roles.admin.get(); -``` - - -## Package configuration - -Each package can have a special definition file called `__package__.yml`. Like any -other definition file, it can contain [imports](/learn/api-definition/fern/imports), -[types](/learn/api-definition/fern/types), [endpoints](/learn/api-definition/fern/endpoints), -and [errors](/learn/api-definition/fern/errors). - -Endpoints in `__package__.yml` will appear at the root of the package. -For example, the following generated SDK: - - -```ts -const client = new Client(); - -client.getProjects(); -``` - - -would have a `fern/` folder: - - -```bash {5} -fern/ -├─ fern.config.json -├─ generators.yml -└─ definition/ - ├─ __package__.yml - └─ roles.yml -``` - - -that contains the following `__package__.yml`: - - -```yaml -service: - base-path: "" - auth: false - endpoints: - getProjects: - method: GET - path: "" - response: list -``` - - -## Namespacing - -Each package has its own namespace. This means you can reuse type names and -error names across packages. - -This is useful when versioning your APIs. For example, when you want to -increment your API version, you can copy the existing API -to a new package and start making changes. If the new API version reuses -certain types or errors, that's okay because the two APIs live in different -packages. - - -```bash -fern/ -├─ fern.config.json -├─ generators.yml -└─ definition/ - ├─ api.yml - └─ roles/ - └─ v1/ - └─ admin.yml # type names can overlap with v2/admin.yml - └─ v2/ - └─ admin.yml -``` - - -## Navigation - -`__package__.yml` also allows you to configure the navigation order -of your services. This is relevant when you want to control the display -of your documentation. - -For example, let's say you have the following `fern/` folder: - - -```bash -fern/ -├─ fern.config.json -├─ generators.yml -└─ definition/ - ├─ projects.yml - ├─ roles.yml - └─ users.yml -``` - - -Your API will be sorted alphabetically: projects, roles, then users. If you -want to control the navigation, you can add a `__package__.yml` file -and configure the order: - - -```bash -fern/ -├─ fern.config.json -├─ generators.yml -└─ definition/ - ├─ __package__.yml # <--- New File - ├─ projects.yml - ├─ roles.yml - └─ users.yml -``` - - - -```yaml -navigation: - - users.yml - - roles.yml - - projects.yml -``` - \ No newline at end of file diff --git a/fern/products/fern-def/pages/types.mdx b/fern/products/fern-def/pages/types.mdx deleted file mode 100644 index f623832d..00000000 --- a/fern/products/fern-def/pages/types.mdx +++ /dev/null @@ -1,428 +0,0 @@ ---- -title: Types in Fern Definition -description: Types describe the data model of your API. Fern has many built-in types and supports custom types, as well as extending and aliasing objects, and unions. ---- - -Types describe the data model of your API. - -## Built-in types - -| Type | Description | -|------|-------------| -| `string` | Basic string type | -| `integer` | Integer number type | -| `long` | Long integer type | -| `double` | Double precision floating point | -| `boolean` | Boolean true/false | -| `datetime` | An [RFC 3339, section 5.6 datetime](https://ijmacd.github.io/rfc3339-iso8601/). For example, `2017-07-21T17:32:28Z` | -| `date` | An RFC 3339, section 5.6 date (YYYY-MM-DD). For example, `2017-07-21` | -| `uuid` | UUID identifier | -| `base64` | Base64 encoded data | -| `list` | An ordered collection that allows duplicates, e.g., `list` | -| `set` | An unordered collection with unique elements, e.g., `set` | -| `map` | Key-value mapping, e.g., `map` | -| `optional` | Optional value, e.g., `optional` | -| `literal` | Literal value, e.g., `literal<"Plants">` | -| `file` | File upload type, e.g., [file uploads](/learn/api-definition/fern/endpoints/multipart) | -| `unknown` | Represents arbitrary JSON | - -## Custom types - -Creating your own types is easy in Fern! - -### Objects - -The most common custom types are **objects**. - -In Fern, you use the `"properties"` key to create an object: - -```yaml {3,8} -types: - Person: - properties: - name: string - address: Address - - Address: - properties: - line1: string - line2: optional - city: string - state: string - zip: string - country: literal<"USA"> -``` - -These represent JSON objects: - -```json -{ - "name": "Alice", - "address": { - "line1": "123 Happy Lane", - "city": "New York", - "state": "NY", - "zip": "10001", - "country": "USA" - } -} -``` - -You can also use **extends** to compose objects: - -```yaml {6} -types: - Pet: - properties: - name: string - Dog: - extends: Pet - properties: - breed: string -``` - -You can extend multiple objects: - -```yaml {3-5} -types: - GoldenRetriever: - extends: - - Dog - - Pet - properties: - isGoodBoy: boolean -``` - -### Aliases - -An Alias type is a renaming of an existing type. This is usually done for clarity. - -```yaml -types: - # UserId is an alias of string - UserId: string - - User: - properties: - id: UserId - name: string -``` - -### Enums - -An enum represents a string with a set of allowed values. - -In Fern, you use the `"enum"` key to create an enum: - -```yaml {3} -types: - WeatherReport: - enum: - - SUNNY - - CLOUDY - - RAINING - - SNOWING -``` - -Enum names are restricted to `A-Z`, `a-z`, `0-9`, and `_` to ensure that generated code can compile across all of the languages that Fern can output. If you have an enum that doesn't follow this convention, you can use the `"name"` key to specify a custom name: - -```yaml -types: - Operator: - enum: - - name: LESS_THAN # <--- the name that will be used in SDKs - value: '<' # <--- the value that will be serialized - - name: GREATER_THAN - value: '>' - - name: NOT_EQUAL - value: '!=' -``` - -### Discriminated Unions - -Fern supports tagged unions (a.k.a. discriminated unions). Unions are useful for -polymorphism. This is similar to the `oneOf` concept in OpenAPI. - -In Fern, you use the `"union"` key to create an union: - -```yaml {3-5} -types: - Animal: - union: - dog: Dog - cat: Cat - Dog: - properties: - likesToWoof: boolean - Cat: - properties: - likesToMeow: boolean -``` - -In JSON, unions have a **discriminant property** to differentiate between -different members of the union. By default, Fern uses `"type"` as the -discriminant property: - -```json -{ - "type": "dog", - "likesToWoof": true -} -``` - -You can customize the discriminant property using the "discriminant" key: - -```yaml {3} - types: - Animal: - discriminant: animalType - union: - dog: Dog - cat: Cat - Dog: - properties: - likesToWoof: boolean - Cat: - properties: - likesToMeow: boolean -``` - -This corresponds to a JSON object like this: - -```json -{ - "animalType": "dog", - "likesToWoof": true -} -``` - -### Undiscriminated Unions - -Undiscriminated unions are similar to discriminated unions, however you don't -need to define an explicit discriminant property. - -```yaml -MyUnion: - discriminated: false - union: - - string - - integer -``` - -### Generics - -Fern supports shallow generic objects, to minimize code duplication. You can -define a generic for reuse like so: - -```yaml -MySpecialMapItem: - properties: - key: Key, - value: Value, - diagnostics: string -``` - -Now, you can instantiate generic types as a type alias: - -```yml -StringIntegerMapItem: - type: Response - -StringStringMapItem: - type: Response -``` - -You can now freely use this type as if it were any other type! Note, generated -code will not use generics. The above example will be generated in typescript as: - -```typescript -type StringIntegerMapItem = { - key: string, - value: number, - diagnostics: string -} - -type StringStringMapItem = { - key: string, - value: string, - diagnostics: string -} -``` - -### Documenting types - -You can add documentation for types. These docs are passed into the compiler, -and are incredibly useful in the generated outputs (e.g., docstrings in SDKs). - - -```yaml -types: - Person: - docs: A person represents a human being - properties: - name: string - age: - docs: age in years - type: integer -``` - - - -```typescript -/** - * A person represents a human being - */ -interface Person { - name: string; - // age in years - age: number; -} -``` - - -### Validating types - -You can add validation constraints to your types (both aliases and references) to ensure data integrity. Validation constracts are automatically enforced in generated SDKs. - - -```yaml {8-11, 15-17} -types: - Person: - docs: A person represents a human being - properties: - name: - docs: The person's full name - type: string - validation: - minLength: 2 - maxLength: 100 - pattern: "^[A-Za-z ]+$" - age: - docs: Age in years - type: integer - validation: - min: 0 - max: 150 -``` - - - -```typescript -interface Person { - /** The person's full name */ - name: string; - /** Age in years */ - age: number; -} - -// Validation is automatically enforced when creating Person objects -const client = new YourApiClient(); -try { - const person = await client.createPerson({ - name: "A", // Fails minLength validation - age: -5, // Fails min validation - }); -} catch (error) { - if (error instanceof ValidationError) { - console.log(`Validation failed: ${error.message}`); - } -} -``` - - - - - -String types support several validation constraints. - -```yaml {4-6, 11-13, 16-19} -types: - Word: - type: string - validation: - minLength: 2 - maxLength: 26 - User: - properties: - email: - type: string - validation: - format: email - maxLength: 254 - username: - type: string - validation: - minLength: 3 - maxLength: 20 - pattern: "^[a-zA-Z0-9_]+$" -``` - - - Minimum number of characters required - - - - Maximum number of characters allowed - - - - Regular expression pattern that the string must match - - - - String format specification (e.g., "email", "uri", "date-time") - - - - - - -Number types (including `integer`, `long`, and `double`) support several validation constraints. - -```yaml {4-6, 12-15, 18-20} -types: - Age: - type: integer - validation: - min: 0 - max: 150 - Product: - properties: - name: string - price: - type: double - validation: - min: 0 - exclusiveMin: true - multipleOf: 0.01 - quantity: - type: integer - validation: - min: 1 - max: 1000 -``` - - - Minimum value (inclusive by default) - - - - Maximum value (inclusive by default) - - - - When true, the minimum value is exclusive (value must be greater than min) - - - - When true, the maximum value is exclusive (value must be less than max) - - - - Value must be a multiple of this number - - - - - - diff --git a/fern/products/fern-def/pages/webhooks.mdx b/fern/products/fern-def/pages/webhooks.mdx deleted file mode 100644 index 399c3c2a..00000000 --- a/fern/products/fern-def/pages/webhooks.mdx +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: Webhooks in the Fern Definition -description: Learn how to define webhooks in the Fern Definition ---- - -In Fern, you can specify webhooks in your API definition. The webhooks will be included -in both the generated SDKs and the API documentation. - -## Webhook definition - -Each webhook defines: - -1. **Method**: The HTTP Method that the webhook will use (either `GET` or `POST`) -2. **Headers**: The headers that the webhook will send -3. **Payload**: The schema of the webhook payload - - - ```yaml {2-10} - webhooks: - paymentNotification: - display-name: Payment Notification - docs: Receive a notification when a payment changes status - method: POST - headers: - X-Signature-Primary: - type: string - docs: An HMAC signature of the payload - payload: PaymentNotificationPayload - - types: - PaymentNotificationPayload: - discriminant: notificationType - union: - queued: QueuedPaymentNotification - processing: ProcessingPaymentNotification - completed: CompletedPaymentNotification - ``` - - -### Inlined payloads - -You can inline the schema of the payload by doing the following: - - - ```yaml - webhooks: - paymentNotification: - display-name: Payment Notification - docs: Receive a notification when a payment changes status - method: POST - headers: - X-Signature-Primary: - type: string - docs: An HMAC signature of the payload - payload: - name: PaymentNotificationPayload - properties: - id: - type: string - docs: The notification id - amount: double - currency: Currency - ``` - - diff --git a/fern/products/fern-def/pages/websocket.png b/fern/products/fern-def/pages/websocket.png deleted file mode 100644 index e7f3cc355ee7c8539a483c175d5b5c5e4c051d20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 792611 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�`y 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≶wU0uSIKt2 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 SkH4X3|w~?3QlYJwH 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

t{B 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 }JmS!3h^=MR6=&$JjDdGm(` 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 )^E5>KSv5dU*##}p7rR<^9G3p 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%0DX&GP6D>ff(p}poH5*XBL7>^Di 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 proto/user_service.proto - - - name: Generate SDKs - uses: fern-api/action@v0 - with: - command: generate - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} -``` - -## Monitoring changes - -Track changes to your Protocol Buffer specifications: - -```yaml title="generators.yml" {4-9} -api: - specs: - - spec: proto/user_service.proto - change-detection: - enabled: true - breaking-changes: error - notifications: - slack: ${{ secrets.SLACK_WEBHOOK }} - email: team@yourcompany.com - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## Multi-service sync - -Sync different Protocol Buffer services for different components: - -```yaml title="generators.yml" {3-7, 12-16, 21-25} -environments: - user-service: - specs: - - spec: proto/user_service.proto - overlays: - - user-service-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: npm - package-name: "@yourcompany/user-service-sdk" - order-service: - specs: - - spec: proto/order_service.proto - overlays: - - order-service-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: npm - package-name: "@yourcompany/order-service-sdk" - payment-service: - specs: - - spec: proto/payment_service.proto - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: npm - package-name: "@yourcompany/payment-service-sdk" -``` - -## Buf integration - -Use Buf for Protocol Buffer management and sync: - -```yaml title="buf.yaml" -version: v1 -deps: - - buf.build/googleapis/googleapis - - buf.build/envoyproxy/protoc-gen-validate -lint: - use: - - DEFAULT - except: - - UNARY_RPC -breaking: - use: - - FILE -``` - -```yaml title=".github/workflows/buf-sync.yml" -name: Buf Sync - -on: - push: - paths: - - 'proto/**/*.proto' - - 'buf.yaml' - -jobs: - buf-sync: - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Setup Buf - uses: bufbuild/buf-setup-action@v1 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - - - name: Lint Protocol Buffers - run: buf lint - - - name: Check for breaking changes - run: buf breaking --against '.git#branch=main' - - - name: Generate and push to Buf Registry - run: | - buf generate - buf push - env: - BUF_TOKEN: ${{ secrets.BUF_TOKEN }} - - - name: Generate SDKs with Fern - uses: fern-api/action@v0 - with: - command: generate - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} -``` - -## gRPC reflection sync - -For services with gRPC reflection enabled: - -```python title="scripts/sync_from_reflection.py" -import grpc -from grpc_reflection.v1alpha import reflection_pb2 -from grpc_reflection.v1alpha import reflection_pb2_grpc -import subprocess - -def sync_from_grpc_reflection(server_address, output_dir): - """Sync Protocol Buffer definitions from gRPC reflection""" - - channel = grpc.insecure_channel(server_address) - reflection_stub = reflection_pb2_grpc.ServerReflectionStub(channel) - - # List services - request = reflection_pb2.ServerReflectionRequest( - list_services="" - ) - - response = reflection_stub.ServerReflectionInfo(iter([request])) - - for resp in response: - if resp.HasField('list_services_response'): - for service in resp.list_services_response.service: - print(f"Found service: {service.name}") - - # Get file descriptor for service - file_request = reflection_pb2.ServerReflectionRequest( - file_containing_symbol=service.name - ) - - file_response = reflection_stub.ServerReflectionInfo(iter([file_request])) - - for file_resp in file_response: - if file_resp.HasField('file_descriptor_response'): - # Save descriptor to file - descriptor_path = f"{output_dir}/{service.name}.protoset" - with open(descriptor_path, 'wb') as f: - f.write(file_resp.file_descriptor_response.file_descriptor_proto[0]) - - # Convert to text format - proto_path = f"{output_dir}/{service.name}.proto" - subprocess.run([ - 'protoc', - '--decode_raw', - '--proto_path', output_dir, - descriptor_path - ], stdout=open(proto_path, 'w')) - -if __name__ == "__main__": - sync_from_grpc_reflection("localhost:50051", "proto/") -``` - -This ensures that any changes to your gRPC services are automatically reflected in your SDKs and documentation, maintaining consistency across your entire API ecosystem. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/extensions/audiences.mdx b/fern/products/grpc-def/pages/extensions/audiences.mdx deleted file mode 100644 index 8c18f6ac..00000000 --- a/fern/products/grpc-def/pages/extensions/audiences.mdx +++ /dev/null @@ -1,360 +0,0 @@ ---- -title: Use audiences to filter your API -subtitle: Use `x-fern-audiences` to filter to relevant services, methods and messages ---- - -Audiences are a useful tool for segmenting your gRPC API for different consumers. Common examples of audiences include `public` -and `beta`. - - - Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, - nothing will be filtered. - - - - -The following example configures the SDK to filter to the `public` audience: - -```yaml title="generators.yml" {3-4} -groups: - sdks: - audiences: - - public - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - - - -The following example configures the docs to filter to the `public` audience: - -```yaml title="docs.yml" {3-4} -navigation: - - api: API Reference - audiences: - - public -``` - - - - - -## Filter services - -Add `x-fern-audiences` to services to control which services are included for specific audiences: - -```protobuf title="user_service.proto" -syntax = "proto3"; - -package userservice.v1; - -// Public user service available to all clients -service UserService { - option (x_fern_audiences) = "public"; - - rpc GetUser(GetUserRequest) returns (User); - rpc CreateUser(CreateUserRequest) returns (User); -} - -// Internal admin service for administrative operations -service AdminService { - option (x_fern_audiences) = "admin"; - - rpc ListAllUsers(ListAllUsersRequest) returns (ListAllUsersResponse); - rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty); - rpc BanUser(BanUserRequest) returns (google.protobuf.Empty); -} -``` - -## Filter individual methods - -You can filter specific methods within services: - -```protobuf title="mixed_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Public method available to all - rpc GetUser(GetUserRequest) returns (User) { - option (x_fern_audiences) = "public"; - } - - // Beta method only for beta testers - rpc GetUserAnalytics(GetUserAnalyticsRequest) returns (UserAnalytics) { - option (x_fern_audiences) = "beta"; - } - - // Internal method for debugging - rpc GetUserDebugInfo(GetUserDebugRequest) returns (UserDebugInfo) { - option (x_fern_audiences) = "internal"; - } -} -``` - -## Filter message fields - -Filter specific fields within message types: - -```protobuf title="user_messages.proto" -syntax = "proto3"; - -package userservice.v1; - -message User { - string id = 1; // Available to all audiences - string email = 2; // Available to all audiences - string name = 3; // Available to all audiences - - // Admin-only fields - string internal_id = 4 [(x_fern_audiences) = "admin"]; - repeated string permissions = 5 [(x_fern_audiences) = "admin"]; - google.protobuf.Timestamp created_at = 6 [(x_fern_audiences) = "admin"]; - - // Debug-only fields - map debug_metadata = 7 [(x_fern_audiences) = "debug"]; - string session_id = 8 [(x_fern_audiences) = "debug"]; -} -``` - -## Filter entire messages - -Filter entire message types to different audiences: - -```protobuf title="filtered_messages.proto" -syntax = "proto3"; - -package userservice.v1; - -// Public user data -message PublicUser { - option (x_fern_audiences) = "public"; - - string id = 1; - string name = 2; - string avatar_url = 3; -} - -// Extended user data for authenticated users -message AuthenticatedUser { - option (x_fern_audiences) = "authenticated"; - - string id = 1; - string name = 2; - string email = 3; - string phone = 4; - UserPreferences preferences = 5; -} - -// Full user data for administrators -message AdminUser { - option (x_fern_audiences) = "admin"; - - string id = 1; - string name = 2; - string email = 3; - string phone = 4; - UserPreferences preferences = 5; - repeated string roles = 6; - repeated Permission permissions = 7; - google.protobuf.Timestamp created_at = 8; - google.protobuf.Timestamp last_login = 9; - string created_by = 10; -} -``` - -## Filter enums and enum values - -Filter enum values based on audience: - -```protobuf title="user_enums.proto" -syntax = "proto3"; - -package userservice.v1; - -enum UserStatus { - USER_STATUS_UNSPECIFIED = 0; - - // Public statuses - USER_STATUS_ACTIVE = 1 [(x_fern_audiences) = "public"]; - USER_STATUS_INACTIVE = 2 [(x_fern_audiences) = "public"]; - - // Admin-only statuses - USER_STATUS_SUSPENDED = 3 [(x_fern_audiences) = "admin"]; - USER_STATUS_BANNED = 4 [(x_fern_audiences) = "admin"]; - USER_STATUS_PENDING_VERIFICATION = 5 [(x_fern_audiences) = "admin"]; - - // Internal debugging statuses - USER_STATUS_DEBUG = 6 [(x_fern_audiences) = "debug"]; - USER_STATUS_TEST = 7 [(x_fern_audiences) = "debug"]; -} - -enum OperationType { - OPERATION_TYPE_UNSPECIFIED = 0; - - // Available to beta users - OPERATION_TYPE_EXPERIMENTAL_FEATURE = 1 [(x_fern_audiences) = "beta"]; - OPERATION_TYPE_ADVANCED_ANALYTICS = 2 [(x_fern_audiences) = "beta"]; - - // Internal operations - OPERATION_TYPE_SYSTEM_MAINTENANCE = 3 [(x_fern_audiences) = "internal"]; -} -``` - -## Request/Response filtering - -Filter request and response messages based on audience: - -```protobuf title="request_response.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Method with different request/response based on audience - rpc GetUserProfile(GetUserProfileRequest) returns (GetUserProfileResponse); -} - -message GetUserProfileRequest { - string user_id = 1; - - // Admin can request additional data - bool include_internal_data = 2 [(x_fern_audiences) = "admin"]; - bool include_audit_log = 3 [(x_fern_audiences) = "admin"]; - - // Debug fields - bool include_debug_info = 4 [(x_fern_audiences) = "debug"]; -} - -message GetUserProfileResponse { - PublicUserProfile public_profile = 1; // Always included - - AdminUserProfile admin_profile = 2 [(x_fern_audiences) = "admin"]; // Admin only - repeated AuditLogEntry audit_log = 3 [(x_fern_audiences) = "admin"]; // Admin only - - DebugInfo debug_info = 4 [(x_fern_audiences) = "debug"]; // Debug only -} -``` - -## Conditional method definitions - -Use audiences to expose different versions of methods: - -```protobuf title="conditional_methods.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Basic user creation for public - rpc CreateUser(CreateUserRequest) returns (User) { - option (x_fern_audiences) = "public"; - } - - // Enhanced user creation for admin - rpc CreateUserWithPermissions(CreateUserWithPermissionsRequest) returns (AdminUser) { - option (x_fern_audiences) = "admin"; - } - - // Bulk user creation for enterprise - rpc BulkCreateUsers(BulkCreateUsersRequest) returns (BulkCreateUsersResponse) { - option (x_fern_audiences) = "enterprise"; - } - - // Beta features - rpc CreateUserWithAI(CreateUserWithAIRequest) returns (User) { - option (x_fern_audiences) = "beta"; - } -} -``` - -## Streaming method filtering - -Filter streaming methods by audience: - -```protobuf title="streaming_methods.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserStreamingService { - // Public event streaming - rpc StreamUserEvents(StreamUserEventsRequest) returns (stream PublicUserEvent) { - option (x_fern_audiences) = "public"; - } - - // Admin event streaming with more details - rpc StreamAdminEvents(StreamAdminEventsRequest) returns (stream AdminEvent) { - option (x_fern_audiences) = "admin"; - } - - // Internal debugging stream - rpc StreamDebugEvents(StreamDebugEventsRequest) returns (stream DebugEvent) { - option (x_fern_audiences) = "debug"; - } -} -``` - -## Multiple audience support - -Assign multiple audiences to services or methods: - -```protobuf title="multiple_audiences.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Available to both public and authenticated users - rpc GetPublicUserInfo(GetPublicUserInfoRequest) returns (PublicUserInfo) { - option (x_fern_audiences) = "public,authenticated"; - } - - // Available to admin and support staff - rpc GetUserSupportInfo(GetUserSupportInfoRequest) returns (UserSupportInfo) { - option (x_fern_audiences) = "admin,support"; - } - - // Available to beta and internal users - rpc TestNewFeature(TestNewFeatureRequest) returns (TestNewFeatureResponse) { - option (x_fern_audiences) = "beta,internal"; - } -} -``` - -## Using custom extensions - -Define custom Fern extensions for audience filtering: - -```protobuf title="custom_extensions.proto" -syntax = "proto3"; - -package userservice.v1; - -import "google/protobuf/descriptor.proto"; - -// Define custom option for audience filtering -extend google.protobuf.ServiceOptions { - string x_fern_audiences = 50001; -} - -extend google.protobuf.MethodOptions { - string x_fern_audiences = 50002; -} - -extend google.protobuf.FieldOptions { - string x_fern_audiences = 50003; -} - -extend google.protobuf.MessageOptions { - string x_fern_audiences = 50004; -} - -extend google.protobuf.EnumValueOptions { - string x_fern_audiences = 50005; -} -``` - -This allows you to create different views of the same gRPC API for different types of consumers, ensuring each audience only sees the services, methods, and data relevant to their use case. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/extensions/method-names.mdx b/fern/products/grpc-def/pages/extensions/method-names.mdx deleted file mode 100644 index 3fe83e3a..00000000 --- a/fern/products/grpc-def/pages/extensions/method-names.mdx +++ /dev/null @@ -1,330 +0,0 @@ ---- -title: SDK Method Names -subtitle: Use `x-fern-sdk-method-name` to customize SDK method names for gRPC methods ---- - -By default, Fern generates SDK method names based on your gRPC service and method names. You can override this behavior using the `x-fern-sdk-method-name` extension. - -## Customize method names - -Use `x-fern-sdk-method-name` to specify custom method names for your gRPC methods: - -```protobuf title="user_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Customize the SDK method name - rpc GetUserById(GetUserByIdRequest) returns (User) { - option (x_fern_sdk_method_name) = "getUser"; - } - - // Another customized method name - rpc CreateNewUser(CreateNewUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "create"; - } - - // Remove redundant service name from method - rpc UpdateUserProfile(UpdateUserProfileRequest) returns (User) { - option (x_fern_sdk_method_name) = "updateProfile"; - } -} -``` - -This will generate SDK methods like: - -```typescript -// Instead of client.userService.getUserById() -const user = await client.userService.getUser({ id: "user_123" }); - -// Instead of client.userService.createNewUser() -const newUser = await client.userService.create({ userData: {...} }); - -// Instead of client.userService.updateUserProfile() -const updatedUser = await client.userService.updateProfile({ profileData: {...} }); -``` - -## Method naming conventions - -Follow these conventions when naming SDK methods: - -### CRUD operations -Use standard CRUD naming for common operations: - -```protobuf title="crud_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc CreateUser(CreateUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "create"; - } - - rpc GetUser(GetUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "get"; - } - - rpc UpdateUser(UpdateUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "update"; - } - - rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty) { - option (x_fern_sdk_method_name) = "delete"; - } - - rpc ListUsers(ListUsersRequest) returns (ListUsersResponse) { - option (x_fern_sdk_method_name) = "list"; - } -} -``` - -### Search and query operations -Use descriptive names for search operations: - -```protobuf title="search_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc SearchUsers(SearchUsersRequest) returns (SearchUsersResponse) { - option (x_fern_sdk_method_name) = "search"; - } - - rpc FindUserByEmail(FindUserByEmailRequest) returns (User) { - option (x_fern_sdk_method_name) = "findByEmail"; - } - - rpc QueryUsersByRole(QueryUsersByRoleRequest) returns (QueryUsersResponse) { - option (x_fern_sdk_method_name) = "queryByRole"; - } -} -``` - -### Action operations -Use action-oriented names for business operations: - -```protobuf title="action_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc ActivateUserAccount(ActivateUserAccountRequest) returns (User) { - option (x_fern_sdk_method_name) = "activate"; - } - - rpc DeactivateUserAccount(DeactivateUserAccountRequest) returns (User) { - option (x_fern_sdk_method_name) = "deactivate"; - } - - rpc ResetUserPassword(ResetUserPasswordRequest) returns (ResetPasswordResponse) { - option (x_fern_sdk_method_name) = "resetPassword"; - } - - rpc SendVerificationEmail(SendVerificationEmailRequest) returns (google.protobuf.Empty) { - option (x_fern_sdk_method_name) = "sendVerification"; - } -} -``` - -## Language-specific method names - -You can specify different method names for different programming languages: - -```protobuf title="language_specific.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc GetUserPreferences(GetUserPreferencesRequest) returns (UserPreferences) { - option (x_fern_sdk_method_name_python) = "get_preferences"; - option (x_fern_sdk_method_name_typescript) = "getPreferences"; - option (x_fern_sdk_method_name_go) = "GetPreferences"; - option (x_fern_sdk_method_name_java) = "getPreferences"; - option (x_fern_sdk_method_name_csharp) = "GetPreferences"; - } - - rpc UpdateUserPreferences(UpdateUserPreferencesRequest) returns (UserPreferences) { - option (x_fern_sdk_method_name_python) = "update_preferences"; - option (x_fern_sdk_method_name_typescript) = "updatePreferences"; - option (x_fern_sdk_method_name_go) = "UpdatePreferences"; - option (x_fern_sdk_method_name_java) = "updatePreferences"; - option (x_fern_sdk_method_name_csharp) = "UpdatePreferences"; - } -} -``` - -## Streaming method names - -For streaming methods, use appropriate naming: - -```protobuf title="streaming_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserStreamingService { - // Server streaming - rpc StreamUserEvents(StreamUserEventsRequest) returns (stream UserEvent) { - option (x_fern_sdk_method_name) = "streamEvents"; - } - - // Client streaming - rpc UploadUserData(stream UploadUserDataRequest) returns (UploadUserDataResponse) { - option (x_fern_sdk_method_name) = "upload"; - } - - // Bidirectional streaming - rpc ChatWithUser(stream ChatMessage) returns (stream ChatMessage) { - option (x_fern_sdk_method_name) = "chat"; - } - - // Real-time notifications - rpc SubscribeToNotifications(SubscribeRequest) returns (stream Notification) { - option (x_fern_sdk_method_name) = "subscribe"; - } -} -``` - -## Service-level naming - -Customize the service name for better SDK organization: - -```protobuf title="service_naming.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserManagementService { - option (x_fern_sdk_service_name) = "users"; - - rpc CreateUser(CreateUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "create"; - } - - rpc GetUser(GetUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "get"; - } -} - -service AuthenticationService { - option (x_fern_sdk_service_name) = "auth"; - - rpc LoginUser(LoginUserRequest) returns (LoginResponse) { - option (x_fern_sdk_method_name) = "login"; - } - - rpc LogoutUser(LogoutUserRequest) returns (google.protobuf.Empty) { - option (x_fern_sdk_method_name) = "logout"; - } -} -``` - -This generates cleaner SDK interfaces: - -```typescript -// Instead of client.userManagementService.createUser() -await client.users.create({ userData: {...} }); - -// Instead of client.authenticationService.loginUser() -await client.auth.login({ credentials: {...} }); -``` - -## Handling method overloading - -For services with similar methods, use descriptive names to avoid conflicts: - -```protobuf title="overloaded_methods.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Get user by ID - rpc GetUser(GetUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "get"; - } - - // Get user by email - rpc GetUserByEmail(GetUserByEmailRequest) returns (User) { - option (x_fern_sdk_method_name) = "getByEmail"; - } - - // Get user by username - rpc GetUserByUsername(GetUserByUsernameRequest) returns (User) { - option (x_fern_sdk_method_name) = "getByUsername"; - } - - // Get multiple users - rpc GetUsers(GetUsersRequest) returns (GetUsersResponse) { - option (x_fern_sdk_method_name) = "getMany"; - } -} -``` - -## Async method naming - -For long-running operations, consider async naming: - -```protobuf title="async_methods.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Quick operation - rpc GetUser(GetUserRequest) returns (User) { - option (x_fern_sdk_method_name) = "get"; - } - - // Long-running operation - rpc GenerateUserReport(GenerateUserReportRequest) returns (Operation) { - option (x_fern_sdk_method_name) = "generateReportAsync"; - } - - // Batch operation - rpc BatchUpdateUsers(BatchUpdateUsersRequest) returns (Operation) { - option (x_fern_sdk_method_name) = "batchUpdateAsync"; - } -} -``` - -## Grouping related methods - -Use consistent naming for related operations: - -```protobuf title="grouped_methods.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - // Profile operations - rpc GetUserProfile(GetUserProfileRequest) returns (UserProfile) { - option (x_fern_sdk_method_name) = "getProfile"; - } - - rpc UpdateUserProfile(UpdateUserProfileRequest) returns (UserProfile) { - option (x_fern_sdk_method_name) = "updateProfile"; - } - - rpc DeleteUserProfile(DeleteUserProfileRequest) returns (google.protobuf.Empty) { - option (x_fern_sdk_method_name) = "deleteProfile"; - } - - // Settings operations - rpc GetUserSettings(GetUserSettingsRequest) returns (UserSettings) { - option (x_fern_sdk_method_name) = "getSettings"; - } - - rpc UpdateUserSettings(UpdateUserSettingsRequest) returns (UserSettings) { - option (x_fern_sdk_method_name) = "updateSettings"; - } -} -``` - -This ensures method names follow the conventions of each target language while maintaining clear and intuitive APIs for developers. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/extensions/others.mdx b/fern/products/grpc-def/pages/extensions/others.mdx deleted file mode 100644 index 56d7dbf7..00000000 --- a/fern/products/grpc-def/pages/extensions/others.mdx +++ /dev/null @@ -1,403 +0,0 @@ ---- -title: Other Extensions -subtitle: Additional Fern extensions for gRPC specifications ---- - -Fern supports various extensions to enhance your gRPC specifications and improve the generated SDKs and documentation. - -## `x-fern-ignore` - -Use `x-fern-ignore` to exclude specific services, methods or messages from SDK generation: - -```protobuf title="user_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc GetUser(GetUserRequest) returns (User); - - // Exclude internal debugging method - rpc DebugUserData(DebugUserRequest) returns (DebugUserResponse) { - option (x_fern_ignore) = true; - } - - // Exclude experimental method - rpc ExperimentalFeature(ExperimentalRequest) returns (ExperimentalResponse) { - option (x_fern_ignore) = true; - } -} - -// Exclude internal message from SDK -message InternalUserData { - option (x_fern_ignore) = true; - - string internal_id = 1; - repeated string debug_flags = 2; - map system_metadata = 3; -} -``` - -## `x-fern-examples` - -Provide additional examples for better SDK documentation: - -```protobuf title="user_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc CreateUser(CreateUserRequest) returns (User) { - option (x_fern_examples) = '{ - "StandardUser": { - "description": "Create a regular user account", - "request": { - "email": "john@example.com", - "name": "John Doe", - "age": 30, - "preferences": { - "theme": "dark", - "notifications": true - } - }, - "response": { - "id": "user_123", - "email": "john@example.com", - "name": "John Doe", - "created_at": "2024-01-15T10:30:00Z" - } - }, - "AdminUser": { - "description": "Create an admin user with special permissions", - "request": { - "email": "admin@example.com", - "name": "Admin User", - "role": "admin", - "permissions": ["read", "write", "delete"] - }, - "response": { - "id": "user_456", - "email": "admin@example.com", - "name": "Admin User", - "role": "admin", - "created_at": "2024-01-15T10:30:00Z" - } - } - }'; - } -} -``` - -## `x-fern-pagination` - -Configure pagination for methods that return lists: - -```protobuf title="pagination_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc ListUsers(ListUsersRequest) returns (ListUsersResponse) { - option (x_fern_pagination) = '{ - "cursor": "page_token", - "results": "users", - "next_cursor": "next_page_token", - "has_next_page": "has_more" - }'; - } -} - -message ListUsersRequest { - int32 page_size = 1; - string page_token = 2; - string filter = 3; -} - -message ListUsersResponse { - repeated User users = 1; - string next_page_token = 2; - bool has_more = 3; - int32 total_count = 4; -} -``` - -## `x-fern-retry` - -Configure retry behavior for methods: - -```protobuf title="retry_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc ProcessPayment(ProcessPaymentRequest) returns (PaymentResult) { - option (x_fern_retry) = '{ - "max_attempts": 3, - "exponential_backoff": true, - "initial_delay_ms": 1000, - "max_delay_ms": 30000, - "retry_on_status": ["UNAVAILABLE", "DEADLINE_EXCEEDED", "INTERNAL"] - }'; - } - - rpc UploadFile(UploadFileRequest) returns (UploadFileResponse) { - option (x_fern_retry) = '{ - "max_attempts": 5, - "exponential_backoff": true, - "initial_delay_ms": 2000, - "max_delay_ms": 60000 - }'; - } -} -``` - -## `x-fern-timeout` - -Configure timeout settings for methods: - -```protobuf title="timeout_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc GenerateReport(GenerateReportRequest) returns (ReportResult) { - option (x_fern_timeout) = '{ - "seconds": 300, - "description": "Report generation can take up to 5 minutes" - }'; - } - - rpc QuickUserLookup(UserLookupRequest) returns (User) { - option (x_fern_timeout) = '{ - "seconds": 5, - "description": "Quick lookup should complete within 5 seconds" - }'; - } -} -``` - -## `x-fern-error-handling` - -Configure error handling for methods: - -```protobuf title="error_handling_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc CreateUser(CreateUserRequest) returns (User) { - option (x_fern_error_handling) = '{ - "ALREADY_EXISTS": { - "error_name": "UserAlreadyExistsError", - "user_friendly_message": "A user with this email already exists" - }, - "INVALID_ARGUMENT": { - "error_name": "ValidationError", - "user_friendly_message": "Please check your input and try again" - }, - "RESOURCE_EXHAUSTED": { - "error_name": "RateLimitError", - "retry_after_seconds": 60 - } - }'; - } -} -``` - -## `x-fern-availability` - -Mark features as available in specific SDK versions: - -```protobuf title="availability_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc GetUser(GetUserRequest) returns (User); - - rpc GetUserAnalytics(GetUserAnalyticsRequest) returns (UserAnalytics) { - option (x_fern_availability) = '{ - "status": "beta", - "message": "This feature is in beta and may change" - }'; - } - - rpc ExperimentalSearch(ExperimentalSearchRequest) returns (SearchResults) { - option (x_fern_availability) = '{ - "status": "experimental", - "message": "This is an experimental feature and may be removed" - }'; - } -} -``` - -## `x-fern-streaming` - -Mark methods as streaming for appropriate SDK generation: - -```protobuf title="streaming_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - rpc StreamEvents(StreamEventsRequest) returns (stream Event) { - option (x_fern_streaming) = '{ - "type": "server_streaming", - "termination": "client_closes" - }'; - } - - rpc UploadData(stream UploadDataRequest) returns (UploadResult) { - option (x_fern_streaming) = '{ - "type": "client_streaming", - "termination": "client_closes" - }'; - } - - rpc Chat(stream ChatMessage) returns (stream ChatMessage) { - option (x_fern_streaming) = '{ - "type": "bidirectional_streaming", - "termination": "either_closes" - }'; - } -} -``` - -## `x-fern-server-name` - -Specify custom names for different server environments: - -```protobuf title="server_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - option (x_fern_server_name_production) = "Production"; - option (x_fern_server_name_staging) = "Staging"; - option (x_fern_server_name_development) = "Development"; - - rpc GetUser(GetUserRequest) returns (User); -} -``` - -## `x-fern-base-path` - -Configure base paths for generated SDK clients: - -```protobuf title="base_path_service.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - option (x_fern_base_path) = "/api/v1"; - - rpc GetUser(GetUserRequest) returns (User); -} -``` - -## `x-fern-sdk-group-name` - -Group related services in the SDK: - -```protobuf title="grouped_services.proto" -syntax = "proto3"; - -package userservice.v1; - -service UserService { - option (x_fern_sdk_group_name) = "users"; - - rpc CreateUser(CreateUserRequest) returns (User); - rpc GetUser(GetUserRequest) returns (User); -} - -service UserProfileService { - option (x_fern_sdk_group_name) = "users"; - - rpc GetProfile(GetProfileRequest) returns (UserProfile); - rpc UpdateProfile(UpdateProfileRequest) returns (UserProfile); -} - -service AuthService { - option (x_fern_sdk_group_name) = "auth"; - - rpc Login(LoginRequest) returns (LoginResponse); - rpc Logout(LogoutRequest) returns (google.protobuf.Empty); -} -``` - -This generates SDKs with grouped services: - -```typescript -client.users.createUser(...) -client.users.getUser(...) -client.users.getProfile(...) -client.users.updateProfile(...) -client.auth.login(...) -client.auth.logout(...) -``` - -## `x-fern-union-naming` - -Configure naming for oneof fields in SDKs: - -```protobuf title="union_naming.proto" -syntax = "proto3"; - -package userservice.v1; - -message NotificationTarget { - oneof target { - option (x_fern_union_naming) = "discriminated"; - - string user_id = 1 [(x_fern_parameter_name) = "userId"]; - string group_id = 2 [(x_fern_parameter_name) = "groupId"]; - BroadcastTarget broadcast = 3; - } -} -``` - -## `x-fern-validation` - -Add validation rules for message fields: - -```protobuf title="validation_service.proto" -syntax = "proto3"; - -package userservice.v1; - -message CreateUserRequest { - string email = 1 [ - (x_fern_validation) = '{ - "format": "email", - "required": true - }' - ]; - - string name = 2 [ - (x_fern_validation) = '{ - "min_length": 1, - "max_length": 100, - "required": true - }' - ]; - - int32 age = 3 [ - (x_fern_validation) = '{ - "minimum": 0, - "maximum": 120 - }' - ]; -} -``` - -These extensions help you create more robust and user-friendly SDKs while maintaining full control over the generated code structure and behavior. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/extensions/parameter-names.mdx b/fern/products/grpc-def/pages/extensions/parameter-names.mdx deleted file mode 100644 index de31f385..00000000 --- a/fern/products/grpc-def/pages/extensions/parameter-names.mdx +++ /dev/null @@ -1,302 +0,0 @@ ---- -title: Parameter Names -subtitle: Use `x-fern-parameter-name` to customize SDK parameter names for gRPC message fields ---- - -By default, Fern uses the field names from your Protocol Buffer message definitions as SDK parameter names. You can customize these using the `x-fern-parameter-name` extension. - -## Customize field names - -Use `x-fern-parameter-name` to specify custom parameter names for message fields: - -```protobuf title="user_service.proto" -syntax = "proto3"; - -package userservice.v1; - -message CreateUserRequest { - string email_address = 1 [(x_fern_parameter_name) = "email"]; - string full_name = 2 [(x_fern_parameter_name) = "name"]; - int32 age_in_years = 3 [(x_fern_parameter_name) = "age"]; - string phone_number = 4 [(x_fern_parameter_name) = "phone"]; - UserPreferences user_preferences = 5 [(x_fern_parameter_name) = "preferences"]; -} - -message User { - string user_id = 1 [(x_fern_parameter_name) = "id"]; - string email_address = 2 [(x_fern_parameter_name) = "email"]; - string full_name = 3 [(x_fern_parameter_name) = "name"]; - google.protobuf.Timestamp created_timestamp = 4 [(x_fern_parameter_name) = "createdAt"]; - google.protobuf.Timestamp updated_timestamp = 5 [(x_fern_parameter_name) = "updatedAt"]; -} -``` - -This generates SDK methods with cleaner parameter names: - -```typescript -// Instead of email_address, full_name, age_in_years, phone_number, user_preferences -await client.users.create({ - email: "john@example.com", - name: "John Doe", - age: 30, - phone: "+1-555-0123", - preferences: { theme: "dark" } -}); -``` - -## Language-specific parameter names - -You can specify different parameter names for different programming languages: - -```protobuf title="language_specific.proto" -syntax = "proto3"; - -package userservice.v1; - -message SearchUsersRequest { - string search_query = 1 [ - (x_fern_parameter_name_python) = "search_query", - (x_fern_parameter_name_typescript) = "searchQuery", - (x_fern_parameter_name_go) = "SearchQuery", - (x_fern_parameter_name_java) = "searchQuery", - (x_fern_parameter_name_csharp) = "SearchQuery" - ]; - - int32 page_size = 2 [ - (x_fern_parameter_name_python) = "page_size", - (x_fern_parameter_name_typescript) = "pageSize", - (x_fern_parameter_name_go) = "PageSize", - (x_fern_parameter_name_java) = "pageSize", - (x_fern_parameter_name_csharp) = "PageSize" - ]; - - string page_token = 3 [ - (x_fern_parameter_name_python) = "page_token", - (x_fern_parameter_name_typescript) = "pageToken", - (x_fern_parameter_name_go) = "PageToken", - (x_fern_parameter_name_java) = "pageToken", - (x_fern_parameter_name_csharp) = "PageToken" - ]; -} -``` - -## Nested message naming - -Customize parameter names for nested message fields: - -```protobuf title="nested_messages.proto" -syntax = "proto3"; - -package userservice.v1; - -message CreateUserRequest { - UserProfile user_profile = 1 [(x_fern_parameter_name) = "profile"]; - ContactInfo contact_info = 2 [(x_fern_parameter_name) = "contact"]; - AccountSettings account_settings = 3 [(x_fern_parameter_name) = "settings"]; -} - -message UserProfile { - string first_name = 1 [(x_fern_parameter_name) = "firstName"]; - string last_name = 2 [(x_fern_parameter_name) = "lastName"]; - string display_name = 3 [(x_fern_parameter_name) = "displayName"]; - string bio_text = 4 [(x_fern_parameter_name) = "bio"]; - string avatar_url = 5 [(x_fern_parameter_name) = "avatarUrl"]; -} - -message ContactInfo { - string email_address = 1 [(x_fern_parameter_name) = "email"]; - string phone_number = 2 [(x_fern_parameter_name) = "phone"]; - Address mailing_address = 3 [(x_fern_parameter_name) = "address"]; -} - -message Address { - string street_address = 1 [(x_fern_parameter_name) = "street"]; - string city_name = 2 [(x_fern_parameter_name) = "city"]; - string state_province = 3 [(x_fern_parameter_name) = "state"]; - string postal_code = 4 [(x_fern_parameter_name) = "zipCode"]; - string country_code = 5 [(x_fern_parameter_name) = "country"]; -} -``` - -## Repeated field naming - -Handle repeated fields with custom naming: - -```protobuf title="repeated_fields.proto" -syntax = "proto3"; - -package userservice.v1; - -message User { - string user_id = 1 [(x_fern_parameter_name) = "id"]; - repeated string role_names = 2 [(x_fern_parameter_name) = "roles"]; - repeated string permission_codes = 3 [(x_fern_parameter_name) = "permissions"]; - repeated SocialAccount social_accounts = 4 [(x_fern_parameter_name) = "socialAccounts"]; - repeated string tag_list = 5 [(x_fern_parameter_name) = "tags"]; -} - -message SocialAccount { - string platform_name = 1 [(x_fern_parameter_name) = "platform"]; - string account_handle = 2 [(x_fern_parameter_name) = "handle"]; - string profile_url = 3 [(x_fern_parameter_name) = "url"]; - bool is_verified = 4 [(x_fern_parameter_name) = "verified"]; -} - -message BatchCreateUsersRequest { - repeated CreateUserRequest user_requests = 1 [(x_fern_parameter_name) = "users"]; - bool send_welcome_email = 2 [(x_fern_parameter_name) = "sendWelcomeEmail"]; - bool skip_validation = 3 [(x_fern_parameter_name) = "skipValidation"]; -} -``` - -## Map field naming - -Customize names for map fields: - -```protobuf title="map_fields.proto" -syntax = "proto3"; - -package userservice.v1; - -message UserPreferences { - map notification_settings = 1 [(x_fern_parameter_name) = "notifications"]; - map feature_flags = 2 [(x_fern_parameter_name) = "features"]; - map display_settings = 3 [(x_fern_parameter_name) = "display"]; - map theme_overrides = 4 [(x_fern_parameter_name) = "themes"]; -} - -message MetricsData { - map performance_metrics = 1 [(x_fern_parameter_name) = "performance"]; - map usage_counters = 2 [(x_fern_parameter_name) = "usage"]; - map event_timestamps = 3 [(x_fern_parameter_name) = "events"]; -} -``` - -## Optional and required field naming - -Customize names for optional and required fields: - -```protobuf title="optional_fields.proto" -syntax = "proto3"; - -package userservice.v1; - -message UpdateUserRequest { - // Required fields - string user_id = 1 [(x_fern_parameter_name) = "id"]; - - // Optional fields with custom names - optional string email_address = 2 [(x_fern_parameter_name) = "email"]; - optional string full_name = 3 [(x_fern_parameter_name) = "name"]; - optional int32 age_in_years = 4 [(x_fern_parameter_name) = "age"]; - optional string profile_picture_url = 5 [(x_fern_parameter_name) = "avatarUrl"]; - - // Field mask for partial updates - google.protobuf.FieldMask update_mask = 6 [(x_fern_parameter_name) = "updateMask"]; -} -``` - -## Oneof field naming - -Handle oneof fields with meaningful names: - -```protobuf title="oneof_fields.proto" -syntax = "proto3"; - -package userservice.v1; - -message SearchRequest { - oneof search_criteria { - string search_by_email = 1 [(x_fern_parameter_name) = "email"]; - string search_by_username = 2 [(x_fern_parameter_name) = "username"]; - string search_by_phone = 3 [(x_fern_parameter_name) = "phone"]; - UserIdSearch search_by_id = 4 [(x_fern_parameter_name) = "id"]; - } - - SearchOptions search_options = 5 [(x_fern_parameter_name) = "options"]; -} - -message UserIdSearch { - string user_id = 1 [(x_fern_parameter_name) = "id"]; - bool include_deleted = 2 [(x_fern_parameter_name) = "includeDeleted"]; -} - -message NotificationRequest { - oneof notification_target { - string target_user_id = 1 [(x_fern_parameter_name) = "userId"]; - string target_group_id = 2 [(x_fern_parameter_name) = "groupId"]; - BroadcastTarget target_broadcast = 3 [(x_fern_parameter_name) = "broadcast"]; - } - - string message_content = 4 [(x_fern_parameter_name) = "message"]; - NotificationPriority priority_level = 5 [(x_fern_parameter_name) = "priority"]; -} -``` - -## Timestamp and duration naming - -Customize names for time-related fields: - -```protobuf title="time_fields.proto" -syntax = "proto3"; - -package userservice.v1; - -message UserSession { - string session_id = 1 [(x_fern_parameter_name) = "id"]; - string user_id = 2 [(x_fern_parameter_name) = "userId"]; - google.protobuf.Timestamp created_timestamp = 3 [(x_fern_parameter_name) = "createdAt"]; - google.protobuf.Timestamp last_accessed_timestamp = 4 [(x_fern_parameter_name) = "lastAccessedAt"]; - google.protobuf.Timestamp expires_timestamp = 5 [(x_fern_parameter_name) = "expiresAt"]; - google.protobuf.Duration session_duration = 6 [(x_fern_parameter_name) = "duration"]; - google.protobuf.Duration idle_timeout = 7 [(x_fern_parameter_name) = "idleTimeout"]; -} - -message ScheduledTask { - string task_id = 1 [(x_fern_parameter_name) = "id"]; - google.protobuf.Timestamp scheduled_time = 2 [(x_fern_parameter_name) = "scheduledAt"]; - google.protobuf.Duration execution_timeout = 3 [(x_fern_parameter_name) = "timeout"]; - google.protobuf.Duration retry_delay = 4 [(x_fern_parameter_name) = "retryDelay"]; -} -``` - -## Complex nested naming - -Handle complex nested structures: - -```protobuf title="complex_nested.proto" -syntax = "proto3"; - -package userservice.v1; - -message CreateOrderRequest { - OrderDetails order_details = 1 [(x_fern_parameter_name) = "order"]; - PaymentInfo payment_info = 2 [(x_fern_parameter_name) = "payment"]; - ShippingInfo shipping_info = 3 [(x_fern_parameter_name) = "shipping"]; -} - -message OrderDetails { - repeated OrderItem order_items = 1 [(x_fern_parameter_name) = "items"]; - string promo_code = 2 [(x_fern_parameter_name) = "promoCode"]; - string special_instructions = 3 [(x_fern_parameter_name) = "instructions"]; -} - -message OrderItem { - string product_id = 1 [(x_fern_parameter_name) = "productId"]; - int32 quantity_ordered = 2 [(x_fern_parameter_name) = "quantity"]; - double unit_price = 3 [(x_fern_parameter_name) = "price"]; - repeated string product_options = 4 [(x_fern_parameter_name) = "options"]; -} - -message PaymentInfo { - oneof payment_method { - CreditCardInfo credit_card_info = 1 [(x_fern_parameter_name) = "creditCard"]; - PayPalInfo paypal_info = 2 [(x_fern_parameter_name) = "paypal"]; - BankTransferInfo bank_transfer_info = 3 [(x_fern_parameter_name) = "bankTransfer"]; - } - - BillingAddress billing_address = 4 [(x_fern_parameter_name) = "billingAddress"]; -} -``` - -Using custom parameter names ensures consistent naming conventions across your SDK while maintaining compatibility with your existing Protocol Buffer schemas. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/overrides.mdx b/fern/products/grpc-def/pages/overrides.mdx deleted file mode 100644 index beda30a9..00000000 --- a/fern/products/grpc-def/pages/overrides.mdx +++ /dev/null @@ -1,432 +0,0 @@ ---- -title: Overlay Customizations -subtitle: Use overlay files to modify your gRPC specifications without editing the original Proto files ---- - -Overlays allow you to modify your gRPC specifications without directly editing the original Protocol Buffer files. This is useful for: -- Adding Fern-specific extensions -- Customizing SDK method and parameter names -- Adding examples and documentation -- Configuring audiences and filtering - -## Configure overlays - -To use overlays, add them to your `generators.yml` file: - -```yaml title="generators.yml" {3-5} -api: - specs: - - spec: proto/user_service.proto - overlays: - - overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## Overlay file structure - -Overlay files use Protocol Buffer text format with Fern extensions: - -```protobuf title="overlay.yml" -# Add SDK method names to existing gRPC methods -service UserService { - rpc CreateUser { - option (x_fern_sdk_method_name) = "create"; - } - - rpc GetUser { - option (x_fern_sdk_method_name) = "get"; - } - - rpc ListUsers { - option (x_fern_sdk_method_name) = "list"; - option (x_fern_pagination) = '{ - "cursor": "page_token", - "results": "users", - "next_cursor": "next_page_token" - }'; - } -} -``` - -## Add method names - -Override SDK method names for better developer experience: - -```protobuf title="overlay.yml" -service UserService { - rpc GetUserById { - option (x_fern_sdk_method_name) = "getUser"; - } - - rpc CreateNewUser { - option (x_fern_sdk_method_name) = "create"; - } - - rpc UpdateUserProfile { - option (x_fern_sdk_method_name) = "updateProfile"; - } - - rpc DeleteUserAccount { - option (x_fern_sdk_method_name) = "delete"; - } -} - -service AuthenticationService { - option (x_fern_sdk_service_name) = "auth"; - - rpc LoginUser { - option (x_fern_sdk_method_name) = "login"; - } - - rpc LogoutUser { - option (x_fern_sdk_method_name) = "logout"; - } -} -``` - -## Add parameter names - -Customize parameter names for better SDK ergonomics: - -```protobuf title="overlay.yml" -message CreateUserRequest { - string email_address { - option (x_fern_parameter_name) = "email"; - } - - string full_name { - option (x_fern_parameter_name) = "name"; - } - - int32 age_in_years { - option (x_fern_parameter_name) = "age"; - } - - UserPreferences user_preferences { - option (x_fern_parameter_name) = "preferences"; - } -} - -message User { - string user_id { - option (x_fern_parameter_name) = "id"; - } - - google.protobuf.Timestamp created_timestamp { - option (x_fern_parameter_name) = "createdAt"; - } - - google.protobuf.Timestamp updated_timestamp { - option (x_fern_parameter_name) = "updatedAt"; - } -} -``` - -## Add examples - -Enhance your specification with comprehensive examples: - -```protobuf title="overlay.yml" -service UserService { - rpc CreateUser { - option (x_fern_examples) = '{ - "StandardUser": { - "description": "Create a regular user account", - "request": { - "email": "john@example.com", - "name": "John Doe", - "age": 30, - "preferences": { - "theme": "dark", - "notifications": true - } - }, - "response": { - "id": "user_123", - "email": "john@example.com", - "name": "John Doe", - "created_at": "2024-01-15T10:30:00Z" - } - }, - "AdminUser": { - "description": "Create an admin user with permissions", - "request": { - "email": "admin@example.com", - "name": "Admin User", - "role": "admin", - "permissions": ["read", "write", "delete"] - }, - "response": { - "id": "user_456", - "email": "admin@example.com", - "name": "Admin User", - "role": "admin", - "created_at": "2024-01-15T10:30:00Z" - } - } - }'; - } -} -``` - -## Filter with audiences - -Add audience filtering to services and methods: - -```protobuf title="overlay.yml" -service UserService { - option (x_fern_audiences) = "public"; - - rpc GetUser { - option (x_fern_audiences) = "public"; - } - - rpc CreateUser { - option (x_fern_audiences) = "public"; - } -} - -service AdminService { - option (x_fern_audiences) = "admin"; - - rpc ListAllUsers { - option (x_fern_audiences) = "admin"; - } - - rpc DeleteUser { - option (x_fern_audiences) = "admin"; - } -} - -service DebugService { - option (x_fern_audiences) = "internal"; - - rpc GetSystemInfo { - option (x_fern_audiences) = "internal"; - } -} -``` - -## Add error handling - -Configure custom error handling for methods: - -```protobuf title="overlay.yml" -service UserService { - rpc CreateUser { - option (x_fern_error_handling) = '{ - "ALREADY_EXISTS": { - "error_name": "UserAlreadyExistsError", - "user_friendly_message": "A user with this email already exists" - }, - "INVALID_ARGUMENT": { - "error_name": "ValidationError", - "user_friendly_message": "Please check your input and try again" - }, - "RESOURCE_EXHAUSTED": { - "error_name": "RateLimitError", - "retry_after_seconds": 60 - } - }'; - } - - rpc ProcessPayment { - option (x_fern_retry) = '{ - "max_attempts": 3, - "exponential_backoff": true, - "initial_delay_ms": 1000, - "max_delay_ms": 30000 - }'; - } -} -``` - -## Add documentation - -Enhance descriptions and documentation: - -```protobuf title="overlay.yml" -service UserService { - option (x_fern_service_description) = "User management service for creating, updating, and managing user accounts with comprehensive authentication and profile management capabilities."; - - rpc CreateUser { - option (x_fern_method_description) = "Create a new user account with email verification and automatic profile setup. Supports custom preferences and role assignment."; - } - - rpc GetUser { - option (x_fern_method_description) = "Retrieve user information by ID with optional inclusion of profile data, preferences, and activity history."; - } - - rpc UpdateUser { - option (x_fern_method_description) = "Update user profile information with field-level updates using Protocol Buffer field masks for efficient partial updates."; - } -} -``` - -## Configure timeouts and retries - -Add timeout and retry configurations: - -```protobuf title="overlay.yml" -service UserService { - rpc GenerateUserReport { - option (x_fern_timeout) = '{ - "seconds": 300, - "description": "Report generation can take up to 5 minutes for large datasets" - }'; - } - - rpc QuickUserLookup { - option (x_fern_timeout) = '{ - "seconds": 5, - "description": "Quick lookup operations should complete within 5 seconds" - }'; - } - - rpc ImportUsers { - option (x_fern_retry) = '{ - "max_attempts": 5, - "exponential_backoff": true, - "initial_delay_ms": 2000, - "max_delay_ms": 60000, - "retry_on_status": ["UNAVAILABLE", "DEADLINE_EXCEEDED", "INTERNAL"] - }'; - } -} -``` - -## Streaming configurations - -Configure streaming methods: - -```protobuf title="overlay.yml" -service UserStreamingService { - rpc StreamUserEvents { - option (x_fern_streaming) = '{ - "type": "server_streaming", - "termination": "client_closes", - "description": "Real-time stream of user events with automatic reconnection" - }'; - } - - rpc UploadUserData { - option (x_fern_streaming) = '{ - "type": "client_streaming", - "termination": "client_closes", - "max_message_size": "10MB" - }'; - } - - rpc ChatWithSupport { - option (x_fern_streaming) = '{ - "type": "bidirectional_streaming", - "termination": "either_closes", - "heartbeat_interval": "30s" - }'; - } -} -``` - -## Multiple overlays - -You can apply multiple overlay files in sequence: - -```yaml title="generators.yml" {4-8} -api: - specs: - - spec: proto/user_service.proto - overlays: - - base-overlay.yml - - sdk-overlay.yml - - docs-overlay.yml - - examples-overlay.yml -``` - -## Environment-specific overlays - -Use different overlays for different environments: - -```yaml title="generators.yml" {4-7, 12-15} -groups: - production: - audiences: [public] - specs: - - spec: proto/user_service.proto - overlays: - - production-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - internal: - audiences: [admin, internal] - specs: - - spec: proto/user_service.proto - overlays: - - internal-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## Field-level overlays - -Apply overlays to specific message fields: - -```protobuf title="overlay.yml" -message UserPreferences { - map notification_settings { - option (x_fern_parameter_name) = "notifications"; - option (x_fern_field_description) = "User notification preferences with support for email, SMS, and push notifications"; - } - - map feature_flags { - option (x_fern_parameter_name) = "features"; - option (x_fern_field_description) = "Feature flags controlling access to beta and experimental features"; - } - - string preferred_language { - option (x_fern_parameter_name) = "language"; - option (x_fern_validation) = '{ - "enum": ["en", "es", "fr", "de", "zh"], - "default": "en" - }'; - } -} -``` - -## Validation overlays - -Add validation rules to existing fields: - -```protobuf title="overlay.yml" -message CreateUserRequest { - string email { - option (x_fern_validation) = '{ - "format": "email", - "required": true, - "description": "Must be a valid email address" - }'; - } - - string name { - option (x_fern_validation) = '{ - "min_length": 1, - "max_length": 100, - "required": true, - "pattern": "^[a-zA-Z\\s]+$" - }'; - } - - int32 age { - option (x_fern_validation) = '{ - "minimum": 0, - "maximum": 120, - "description": "Age in years" - }'; - } -} -``` - -Overlays are applied in order, allowing you to build up customizations incrementally while keeping your original Protocol Buffer files clean and focused on the core service definition. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/overview.mdx b/fern/products/grpc-def/pages/overview.mdx deleted file mode 100644 index a25da7a3..00000000 --- a/fern/products/grpc-def/pages/overview.mdx +++ /dev/null @@ -1,221 +0,0 @@ ---- -title: What is gRPC? -subtitle: gRPC is a high-performance RPC framework that uses Protocol Buffers ---- - -gRPC is a modern, open-source, high-performance Remote Procedure Call (RPC) framework that can run in any environment. It uses Protocol Buffers (protobuf) as the interface definition language and supports multiple programming languages. -Fern is compatible with gRPC services and can generate SDKs and documentation from your `.proto` files. - - Need help getting started with gRPC and Fern? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) - -Below is an example of a gRPC service definition: - -```protobuf user_service.proto -syntax = "proto3"; - -package userservice.v1; - -// User service for managing user accounts -service UserService { - // Create a new user account - rpc CreateUser(CreateUserRequest) returns (User); - - // Get user by ID - rpc GetUser(GetUserRequest) returns (User); - - // List users with pagination - rpc ListUsers(ListUsersRequest) returns (ListUsersResponse); - - // Update user information - rpc UpdateUser(UpdateUserRequest) returns (User); - - // Delete a user account - rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty); - - // Stream user events (server streaming) - rpc StreamUserEvents(StreamUserEventsRequest) returns (stream UserEvent); - - // Upload user data (client streaming) - rpc UploadUserData(stream UploadUserDataRequest) returns (UploadUserDataResponse); - - // Real-time chat (bidirectional streaming) - rpc Chat(stream ChatMessage) returns (stream ChatMessage); -} - -// Messages for user operations -message User { - string id = 1; - string email = 2; - string name = 3; - int32 age = 4; - google.protobuf.Timestamp created_at = 5; - UserStatus status = 6; -} - -message CreateUserRequest { - string email = 1; - string name = 2; - int32 age = 3; -} - -message GetUserRequest { - string id = 1; -} - -message ListUsersRequest { - int32 page_size = 1; - string page_token = 2; - string filter = 3; -} - -message ListUsersResponse { - repeated User users = 1; - string next_page_token = 2; - int32 total_count = 3; -} - -message UpdateUserRequest { - string id = 1; - User user = 2; - google.protobuf.FieldMask update_mask = 3; -} - -message DeleteUserRequest { - string id = 1; -} - -message StreamUserEventsRequest { - string user_id = 1; - repeated UserEventType event_types = 2; -} - -message UserEvent { - string id = 1; - string user_id = 2; - UserEventType type = 3; - google.protobuf.Timestamp timestamp = 4; - google.protobuf.Any data = 5; -} - -message UploadUserDataRequest { - oneof data { - UserDataChunk chunk = 1; - UserDataMetadata metadata = 2; - } -} - -message UserDataChunk { - bytes data = 1; - int64 offset = 2; -} - -message UserDataMetadata { - string filename = 1; - int64 total_size = 2; - string content_type = 3; -} - -message UploadUserDataResponse { - string file_id = 1; - int64 bytes_uploaded = 2; -} - -message ChatMessage { - string id = 1; - string user_id = 2; - string room_id = 3; - string content = 4; - google.protobuf.Timestamp timestamp = 5; - ChatMessageType type = 6; -} - -// Enums -enum UserStatus { - USER_STATUS_UNSPECIFIED = 0; - USER_STATUS_ACTIVE = 1; - USER_STATUS_INACTIVE = 2; - USER_STATUS_SUSPENDED = 3; -} - -enum UserEventType { - USER_EVENT_TYPE_UNSPECIFIED = 0; - USER_EVENT_TYPE_CREATED = 1; - USER_EVENT_TYPE_UPDATED = 2; - USER_EVENT_TYPE_DELETED = 3; - USER_EVENT_TYPE_LOGIN = 4; - USER_EVENT_TYPE_LOGOUT = 5; -} - -enum ChatMessageType { - CHAT_MESSAGE_TYPE_UNSPECIFIED = 0; - CHAT_MESSAGE_TYPE_TEXT = 1; - CHAT_MESSAGE_TYPE_IMAGE = 2; - CHAT_MESSAGE_TYPE_FILE = 3; - CHAT_MESSAGE_TYPE_SYSTEM = 4; -} -``` - -## gRPC Features - -gRPC offers several key features that make it ideal for modern applications: - -### High Performance -- Binary protocol with Protocol Buffers -- HTTP/2 transport for multiplexing and flow control -- Efficient serialization and deserialization - -### Multiple Communication Patterns -- **Unary RPCs**: Simple request/response -- **Server Streaming**: Server sends stream of responses -- **Client Streaming**: Client sends stream of requests -- **Bidirectional Streaming**: Both sides send streams - -### Cross-Platform Support -- Native support for 10+ programming languages -- Generated client libraries and server stubs -- Consistent API across all platforms - -## Setup your fern folder - -Start by initializing your fern folder with a gRPC service - - -```sh protobuf -fern init --proto ./path/to/service.proto -``` -```sh directory -fern init --proto-directory ./path/to/proto/files -``` - - -This will initialize a directory like the following -``` -fern/ - ├─ fern.config.json - ├─ generators.yml - └─ proto/ - ├─ user_service.proto - └─ common.proto -``` - -## gRPC vs REST - -| Feature | gRPC | REST | -|---------|------|------| -| Protocol | HTTP/2 | HTTP/1.1 | -| Data Format | Protocol Buffers | JSON | -| Performance | High | Moderate | -| Streaming | Native support | Limited | -| Browser Support | Limited | Full | -| Schema | Strongly typed | Flexible | -| Code Generation | Built-in | Third-party tools | - -## Common Use Cases - -gRPC is particularly well-suited for: - -- **Microservices Communication**: High-performance inter-service communication -- **Real-time Applications**: Streaming for live updates and real-time features -- **Mobile Applications**: Efficient mobile-to-server communication -- **IoT Systems**: Lightweight communication for resource-constrained devices -- **APIs with Strong Contracts**: Type-safe communication with schema evolution \ No newline at end of file diff --git a/fern/products/grpc-def/pages/servers.mdx b/fern/products/grpc-def/pages/servers.mdx deleted file mode 100644 index 3e1b6c41..00000000 --- a/fern/products/grpc-def/pages/servers.mdx +++ /dev/null @@ -1,427 +0,0 @@ ---- -title: Servers -description: Configure gRPC servers with TLS, load balancing, and deployment options -subtitle: Set up and configure gRPC servers for production deployments ---- - -gRPC servers can be configured with various options for security, performance, and scalability. Proper server configuration is crucial for production deployments. - -## Basic Server Setup - -Set up a basic gRPC server with multiple services: - -```python title="server.py" -import grpc -from concurrent import futures -import user_service_pb2_grpc -import auth_service_pb2_grpc -from user_service import UserServiceServicer -from auth_service import AuthServiceServicer - -def create_server(): - server = grpc.server(futures.ThreadPoolExecutor(max_workers=10)) - - # Add services - user_service_pb2_grpc.add_UserServiceServicer_to_server( - UserServiceServicer(), server - ) - auth_service_pb2_grpc.add_AuthServiceServicer_to_server( - AuthServiceServicer(), server - ) - - # Listen on insecure port for development - server.add_insecure_port('[::]:50051') - - return server - -if __name__ == '__main__': - server = create_server() - server.start() - print("gRPC server started on port 50051") - server.wait_for_termination() -``` - -## TLS Configuration - -Configure TLS for secure production deployments: - -```python title="secure_server.py" -import grpc -from grpc import ssl_server_credentials - -def create_secure_server(): - # Load TLS certificates - with open('server-key.pem', 'rb') as f: - private_key = f.read() - with open('server-cert.pem', 'rb') as f: - certificate_chain = f.read() - with open('ca-cert.pem', 'rb') as f: - root_certificates = f.read() - - # Create server credentials - server_credentials = ssl_server_credentials( - [(private_key, certificate_chain)], - root_certificates=root_certificates, - require_client_auth=True # Mutual TLS - ) - - server = grpc.server(futures.ThreadPoolExecutor(max_workers=50)) - - # Add services - user_service_pb2_grpc.add_UserServiceServicer_to_server( - UserServiceServicer(), server - ) - - # Listen on secure port - server.add_secure_port('[::]:443', server_credentials) - - return server -``` - -## Server Options - -Configure various server options for performance and behavior: - -```python title="configured_server.py" -import grpc -from grpc import compression - -def create_configured_server(): - # Define server options - options = [ - ('grpc.keepalive_time_ms', 30000), - ('grpc.keepalive_timeout_ms', 5000), - ('grpc.keepalive_permit_without_calls', True), - ('grpc.http2.max_pings_without_data', 0), - ('grpc.http2.min_time_between_pings_ms', 10000), - ('grpc.http2.min_ping_interval_without_data_ms', 300000), - ('grpc.max_connection_idle_ms', 60000), - ('grpc.max_connection_age_ms', 300000), - ('grpc.max_connection_age_grace_ms', 30000), - ('grpc.max_receive_message_length', 4 * 1024 * 1024), - ('grpc.max_send_message_length', 4 * 1024 * 1024), - ] - - server = grpc.server( - futures.ThreadPoolExecutor(max_workers=100), - options=options, - compression=compression.Gzip - ) - - return server -``` - -## Health Checking - -Implement health checking for load balancer integration: - -```protobuf health.proto -syntax = "proto3"; - -package grpc.health.v1; - -service Health { - // Check health status - rpc Check(HealthCheckRequest) returns (HealthCheckResponse); - - // Watch health status changes - rpc Watch(HealthCheckRequest) returns (stream HealthCheckResponse); -} - -message HealthCheckRequest { - string service = 1; -} - -message HealthCheckResponse { - enum ServingStatus { - UNKNOWN = 0; - SERVING = 1; - NOT_SERVING = 2; - SERVICE_UNKNOWN = 3; - } - ServingStatus status = 1; -} -``` - -Health service implementation: - -```python title="health_service.py" -import grpc -from grpc_health.v1 import health_pb2 -from grpc_health.v1 import health_pb2_grpc - -class HealthServicer(health_pb2_grpc.HealthServicer): - - def __init__(self): - self._service_status = {} - - def Check(self, request, context): - service_name = request.service - status = self._service_status.get( - service_name, - health_pb2.HealthCheckResponse.SERVING - ) - - return health_pb2.HealthCheckResponse(status=status) - - def Watch(self, request, context): - # Implementation for streaming health updates - service_name = request.service - - while not context.is_active(): - status = self._service_status.get( - service_name, - health_pb2.HealthCheckResponse.SERVING - ) - - yield health_pb2.HealthCheckResponse(status=status) - time.sleep(5) # Check every 5 seconds - - def set_service_status(self, service_name, status): - self._service_status[service_name] = status -``` - -## Reflection - -Enable gRPC reflection for development and debugging: - -```python title="reflection_server.py" -import grpc -from grpc_reflection.v1alpha import reflection - -def create_server_with_reflection(): - server = grpc.server(futures.ThreadPoolExecutor(max_workers=10)) - - # Add services - user_service_pb2_grpc.add_UserServiceServicer_to_server( - UserServiceServicer(), server - ) - - # Enable reflection - SERVICE_NAMES = ( - user_service_pb2.DESCRIPTOR.services_by_name['UserService'].full_name, - reflection.SERVICE_NAME, - ) - reflection.enable_server_reflection(SERVICE_NAMES, server) - - server.add_insecure_port('[::]:50051') - return server -``` - -## Load Balancing - -Configure client-side load balancing: - -```python title="load_balanced_client.py" -import grpc - -def create_load_balanced_channel(): - # DNS-based load balancing - channel = grpc.insecure_channel( - 'dns:///user-service.example.com:50051', - options=[ - ('grpc.lb_policy_name', 'round_robin'), - ('grpc.dns_enable_srv_queries', True), - ] - ) - - return channel - -# Using a load balancer with multiple targets -def create_multi_target_channel(): - targets = [ - 'user-service-1.example.com:50051', - 'user-service-2.example.com:50051', - 'user-service-3.example.com:50051', - ] - - # Use a service mesh or load balancer - channel = grpc.insecure_channel( - f'ipv4:///{",".join(targets)}', - options=[('grpc.lb_policy_name', 'round_robin')] - ) - - return channel -``` - -## Kubernetes Deployment - -Deploy gRPC services on Kubernetes: - -```yaml title="grpc-service.yaml" -apiVersion: apps/v1 -kind: Deployment -metadata: - name: user-service -spec: - replicas: 3 - selector: - matchLabels: - app: user-service - template: - metadata: - labels: - app: user-service - spec: - containers: - - name: user-service - image: user-service:latest - ports: - - containerPort: 50051 - name: grpc - env: - - name: GRPC_PORT - value: "50051" - livenessProbe: - exec: - command: ["/bin/grpc_health_probe", "-addr=:50051"] - initialDelaySeconds: 30 - readinessProbe: - exec: - command: ["/bin/grpc_health_probe", "-addr=:50051"] - initialDelaySeconds: 5 ---- -apiVersion: v1 -kind: Service -metadata: - name: user-service -spec: - selector: - app: user-service - ports: - - port: 50051 - targetPort: 50051 - name: grpc - type: ClusterIP -``` - -## Monitoring and Observability - -Add monitoring and tracing to your gRPC server: - -```python title="monitored_server.py" -import grpc -import time -from prometheus_client import Counter, Histogram, start_http_server - -# Prometheus metrics -REQUEST_COUNT = Counter( - 'grpc_requests_total', - 'Total gRPC requests', - ['method', 'status'] -) - -REQUEST_DURATION = Histogram( - 'grpc_request_duration_seconds', - 'gRPC request duration', - ['method'] -) - -class MonitoringInterceptor(grpc.ServerInterceptor): - - def intercept_service(self, continuation, handler_call_details): - method = handler_call_details.method - start_time = time.time() - - def monitor_wrapper(behavior): - def wrapper(request, context): - try: - response = behavior(request, context) - REQUEST_COUNT.labels(method=method, status='OK').inc() - return response - except Exception as e: - REQUEST_COUNT.labels(method=method, status='ERROR').inc() - raise - finally: - duration = time.time() - start_time - REQUEST_DURATION.labels(method=method).observe(duration) - - return wrapper - - return grpc.unary_unary_rpc_method_handler( - monitor_wrapper(continuation(handler_call_details).unary_unary) - ) - -def create_monitored_server(): - # Start Prometheus metrics server - start_http_server(8000) - - server = grpc.server( - futures.ThreadPoolExecutor(max_workers=10), - interceptors=[MonitoringInterceptor()] - ) - - return server -``` - -## Environment-specific Configuration - -Configure servers for different environments: - -```python title="config.py" -import os -from dataclasses import dataclass - -@dataclass -class ServerConfig: - port: int - max_workers: int - enable_tls: bool - cert_file: str = None - key_file: str = None - enable_reflection: bool = False - enable_health_check: bool = True - -def get_config() -> ServerConfig: - env = os.getenv('ENVIRONMENT', 'development') - - if env == 'production': - return ServerConfig( - port=50051, - max_workers=100, - enable_tls=True, - cert_file='/etc/ssl/certs/server.crt', - key_file='/etc/ssl/private/server.key', - enable_reflection=False, - enable_health_check=True - ) - elif env == 'staging': - return ServerConfig( - port=50051, - max_workers=50, - enable_tls=True, - cert_file='/etc/ssl/certs/staging.crt', - key_file='/etc/ssl/private/staging.key', - enable_reflection=True, - enable_health_check=True - ) - else: # development - return ServerConfig( - port=50051, - max_workers=10, - enable_tls=False, - enable_reflection=True, - enable_health_check=True - ) - -def create_server_from_config(config: ServerConfig): - server = grpc.server(futures.ThreadPoolExecutor(max_workers=config.max_workers)) - - # Add services... - - if config.enable_tls: - # Configure TLS - with open(config.cert_file, 'rb') as f: - cert = f.read() - with open(config.key_file, 'rb') as f: - key = f.read() - - credentials = grpc.ssl_server_credentials([(key, cert)]) - server.add_secure_port(f'[::]:{config.port}', credentials) - else: - server.add_insecure_port(f'[::]:{config.port}') - - return server -``` - -Proper server configuration ensures your gRPC services are secure, performant, and ready for production workloads. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/services/errors.mdx b/fern/products/grpc-def/pages/services/errors.mdx deleted file mode 100644 index 91b3c15f..00000000 --- a/fern/products/grpc-def/pages/services/errors.mdx +++ /dev/null @@ -1,526 +0,0 @@ ---- -title: Error Handling -subtitle: Implement robust error handling with gRPC status codes and custom error details ---- - -gRPC provides a comprehensive error handling system using status codes, error messages, and optional error details. Proper error handling ensures clients can respond appropriately to different failure scenarios. - -## gRPC Status Codes - -gRPC uses standard status codes to indicate the outcome of RPC calls: - -```protobuf title="error_service.proto" -syntax = "proto3"; - -package errors.v1; - -import "google/rpc/status.proto"; -import "google/rpc/error_details.proto"; - -service ErrorDemoService { - // Demonstrates various error scenarios - rpc ValidateUser(ValidateUserRequest) returns (ValidateUserResponse); - - // May return rate limiting errors - rpc RateLimitedOperation(OperationRequest) returns (OperationResponse); - - // May return resource exhausted errors - rpc ResourceIntensiveOperation(ResourceRequest) returns (ResourceResponse); -} - -message ValidateUserRequest { - string user_id = 1; - string email = 2; -} - -message ValidateUserResponse { - bool valid = 1; - repeated ValidationError errors = 2; -} - -message ValidationError { - string field = 1; - string message = 2; - ErrorCode code = 3; -} - -enum ErrorCode { - ERROR_CODE_UNSPECIFIED = 0; - ERROR_CODE_REQUIRED_FIELD = 1; - ERROR_CODE_INVALID_FORMAT = 2; - ERROR_CODE_DUPLICATE_VALUE = 3; - ERROR_CODE_OUT_OF_RANGE = 4; -} -``` - -## Standard Error Handling - -Implement standard gRPC error responses: - -```python title="error_handling.py" -import grpc -from grpc import ServicerContext -from google.rpc import status_pb2, error_details_pb2 -from google.protobuf import any_pb2 - -class ErrorDemoServiceServicer(errors_pb2_grpc.ErrorDemoServiceServicer): - - def ValidateUser( - self, - request: errors_pb2.ValidateUserRequest, - context: ServicerContext - ) -> errors_pb2.ValidateUserResponse: - """Demonstrate validation errors.""" - - validation_errors = [] - - # Check required fields - if not request.user_id: - validation_errors.append(errors_pb2.ValidationError( - field="user_id", - message="User ID is required", - code=errors_pb2.ERROR_CODE_REQUIRED_FIELD - )) - - if not request.email: - validation_errors.append(errors_pb2.ValidationError( - field="email", - message="Email is required", - code=errors_pb2.ERROR_CODE_REQUIRED_FIELD - )) - - # Validate email format - if request.email and not self._is_valid_email(request.email): - validation_errors.append(errors_pb2.ValidationError( - field="email", - message="Invalid email format", - code=errors_pb2.ERROR_CODE_INVALID_FORMAT - )) - - # Check for duplicate user - if request.user_id and self.user_exists(request.user_id): - validation_errors.append(errors_pb2.ValidationError( - field="user_id", - message="User ID already exists", - code=errors_pb2.ERROR_CODE_DUPLICATE_VALUE - )) - - # Return validation errors if any - if validation_errors: - context.set_code(grpc.StatusCode.INVALID_ARGUMENT) - context.set_details("Validation failed") - - return errors_pb2.ValidateUserResponse( - valid=False, - errors=validation_errors - ) - - return errors_pb2.ValidateUserResponse(valid=True) - - def RateLimitedOperation( - self, - request: errors_pb2.OperationRequest, - context: ServicerContext - ) -> errors_pb2.OperationResponse: - """Demonstrate rate limiting errors.""" - - # Check rate limit - if not self.rate_limiter.is_allowed(request.client_id): - # Create detailed error information - retry_info = error_details_pb2.RetryInfo() - retry_info.retry_delay.seconds = 60 # Retry after 60 seconds - - quota_failure = error_details_pb2.QuotaFailure() - violation = quota_failure.violations.add() - violation.subject = f"client:{request.client_id}" - violation.description = "API rate limit exceeded" - - # Set error with details - context.set_code(grpc.StatusCode.RESOURCE_EXHAUSTED) - context.set_details("Rate limit exceeded") - - # Add error details (rich error information) - self._add_error_details(context, [retry_info, quota_failure]) - - return errors_pb2.OperationResponse() - - # Process operation normally - return self._process_operation(request) - - def ResourceIntensiveOperation( - self, - request: errors_pb2.ResourceRequest, - context: ServicerContext - ) -> errors_pb2.ResourceResponse: - """Demonstrate resource exhaustion errors.""" - - try: - # Check system resources - if not self.resource_manager.has_capacity(): - context.set_code(grpc.StatusCode.RESOURCE_EXHAUSTED) - context.set_details("System overloaded, please try again later") - return errors_pb2.ResourceResponse() - - # Process intensive operation - result = self._process_intensive_operation(request) - return errors_pb2.ResourceResponse(result=result) - - except TimeoutError: - context.set_code(grpc.StatusCode.DEADLINE_EXCEEDED) - context.set_details("Operation timed out") - return errors_pb2.ResourceResponse() - - except PermissionError: - context.set_code(grpc.StatusCode.PERMISSION_DENIED) - context.set_details("Insufficient permissions for this operation") - return errors_pb2.ResourceResponse() - - except FileNotFoundError as e: - context.set_code(grpc.StatusCode.NOT_FOUND) - context.set_details(f"Required resource not found: {str(e)}") - return errors_pb2.ResourceResponse() - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f"Internal server error: {str(e)}") - return errors_pb2.ResourceResponse() - - def _add_error_details(self, context: ServicerContext, details): - """Add rich error details to gRPC response.""" - rich_status = status_pb2.Status() - rich_status.code = context._state.code.value[0] - rich_status.message = context._state.details - - for detail in details: - detail_any = any_pb2.Any() - detail_any.Pack(detail) - rich_status.details.append(detail_any) - - # Add to trailing metadata - context.set_trailing_metadata([ - ('grpc-status-details-bin', rich_status.SerializeToString()) - ]) -``` - -## Custom Error Types - -Define custom error types for domain-specific errors: - -```protobuf title="custom_errors.proto" -syntax = "proto3"; - -package errors.v1; - -// Custom error details -message BusinessLogicError { - string error_code = 1; - string error_message = 2; - map error_context = 3; - repeated string suggested_actions = 4; -} - -message ValidationFailure { - repeated FieldError field_errors = 1; - string global_error = 2; -} - -message FieldError { - string field_path = 1; - string error_message = 2; - string error_code = 3; - google.protobuf.Any invalid_value = 4; -} - -message ServiceUnavailableError { - string service_name = 1; - google.protobuf.Timestamp estimated_recovery_time = 2; - repeated string alternative_endpoints = 3; -} -``` - -Custom error implementation: - -```python title="custom_errors.py" -class CustomErrorHandler: - - @staticmethod - def business_logic_error( - context: ServicerContext, - error_code: str, - message: str, - error_context: dict = None, - suggested_actions: list = None - ): - """Create a business logic error.""" - - business_error = errors_pb2.BusinessLogicError( - error_code=error_code, - error_message=message, - error_context=error_context or {}, - suggested_actions=suggested_actions or [] - ) - - context.set_code(grpc.StatusCode.FAILED_PRECONDITION) - context.set_details(message) - - # Add custom error details - CustomErrorHandler._add_custom_details(context, business_error) - - @staticmethod - def validation_failure( - context: ServicerContext, - field_errors: list, - global_error: str = None - ): - """Create a validation failure error.""" - - validation_error = errors_pb2.ValidationFailure( - field_errors=field_errors, - global_error=global_error or "" - ) - - context.set_code(grpc.StatusCode.INVALID_ARGUMENT) - context.set_details("Validation failed") - - CustomErrorHandler._add_custom_details(context, validation_error) - - @staticmethod - def service_unavailable( - context: ServicerContext, - service_name: str, - estimated_recovery: datetime = None, - alternatives: list = None - ): - """Create a service unavailable error.""" - - error = errors_pb2.ServiceUnavailableError( - service_name=service_name, - alternative_endpoints=alternatives or [] - ) - - if estimated_recovery: - error.estimated_recovery_time.FromDatetime(estimated_recovery) - - context.set_code(grpc.StatusCode.UNAVAILABLE) - context.set_details(f"Service {service_name} is currently unavailable") - - CustomErrorHandler._add_custom_details(context, error) - - @staticmethod - def _add_custom_details(context: ServicerContext, error_detail): - """Add custom error details to response.""" - detail_any = any_pb2.Any() - detail_any.Pack(error_detail) - - rich_status = status_pb2.Status() - rich_status.code = context._state.code.value[0] - rich_status.message = context._state.details - rich_status.details.append(detail_any) - - context.set_trailing_metadata([ - ('grpc-status-details-bin', rich_status.SerializeToString()) - ]) - -# Usage example -class UserService(user_pb2_grpc.UserServiceServicer): - - def CreateUser(self, request, context): - # Validate business rules - if self.user_repository.email_exists(request.email): - CustomErrorHandler.business_logic_error( - context, - error_code="DUPLICATE_EMAIL", - message="Email address is already registered", - error_context={"email": request.email}, - suggested_actions=[ - "Use a different email address", - "Reset password if you forgot your account" - ] - ) - return user_pb2.User() - - # Continue with user creation... -``` - -## Error Interceptors - -Implement global error handling with interceptors: - -```python title="error_interceptor.py" -import logging -import traceback -from grpc import ServicerContext, StatusCode - -class ErrorInterceptor(grpc.ServerInterceptor): - - def __init__(self, logger=None): - self.logger = logger or logging.getLogger(__name__) - - def intercept_service(self, continuation, handler_call_details): - def error_wrapper(behavior): - def wrapper(request, context): - try: - return behavior(request, context) - - except ValueError as e: - # Convert Python ValueError to gRPC INVALID_ARGUMENT - context.set_code(StatusCode.INVALID_ARGUMENT) - context.set_details(f"Invalid input: {str(e)}") - self.logger.warning(f"Validation error in {handler_call_details.method}: {e}") - return self._get_default_response(behavior) - - except PermissionError as e: - context.set_code(StatusCode.PERMISSION_DENIED) - context.set_details("Access denied") - self.logger.warning(f"Permission denied in {handler_call_details.method}: {e}") - return self._get_default_response(behavior) - - except TimeoutError as e: - context.set_code(StatusCode.DEADLINE_EXCEEDED) - context.set_details("Operation timed out") - self.logger.error(f"Timeout in {handler_call_details.method}: {e}") - return self._get_default_response(behavior) - - except Exception as e: - # Log unexpected errors - self.logger.error( - f"Unexpected error in {handler_call_details.method}: {e}\n" - f"Traceback: {traceback.format_exc()}" - ) - - context.set_code(StatusCode.INTERNAL) - context.set_details("Internal server error") - return self._get_default_response(behavior) - - return wrapper - - return grpc.unary_unary_rpc_method_handler( - error_wrapper(continuation(handler_call_details).unary_unary) - ) - - def _get_default_response(self, behavior): - """Return an empty response of the correct type.""" - # This would need to be implemented based on your service methods - return None -``` - -## Client-side Error Handling - -Handle errors on the client side: - -```python title="client_error_handling.py" -import grpc -from google.rpc import status_pb2, error_details_pb2 -from google.protobuf import any_pb2 - -def handle_grpc_errors(stub_method, request): - """Generic error handling for gRPC client calls.""" - - try: - response = stub_method(request) - return response, None - - except grpc.RpcError as e: - error_info = { - 'code': e.code(), - 'details': e.details(), - 'status': e.code().name - } - - # Extract rich error details if available - metadata = dict(e.trailing_metadata()) - if 'grpc-status-details-bin' in metadata: - try: - status_detail = status_pb2.Status() - status_detail.ParseFromString(metadata['grpc-status-details-bin']) - - error_info['rich_details'] = [] - for detail in status_detail.details: - # Try to unpack common error types - if detail.Is(error_details_pb2.RetryInfo.DESCRIPTOR): - retry_info = error_details_pb2.RetryInfo() - detail.Unpack(retry_info) - error_info['rich_details'].append({ - 'type': 'retry_info', - 'retry_delay_seconds': retry_info.retry_delay.seconds - }) - elif detail.Is(error_details_pb2.QuotaFailure.DESCRIPTOR): - quota_failure = error_details_pb2.QuotaFailure() - detail.Unpack(quota_failure) - error_info['rich_details'].append({ - 'type': 'quota_failure', - 'violations': [ - { - 'subject': v.subject, - 'description': v.description - } for v in quota_failure.violations - ] - }) - - except Exception: - # If we can't parse rich details, that's okay - pass - - return None, error_info - -# Usage example -def create_user_with_error_handling(stub, user_data): - """Create user with comprehensive error handling.""" - - request = user_pb2.CreateUserRequest(**user_data) - response, error = handle_grpc_errors(stub.CreateUser, request) - - if error: - if error['code'] == grpc.StatusCode.INVALID_ARGUMENT: - print(f"Validation failed: {error['details']}") - return None - - elif error['code'] == grpc.StatusCode.ALREADY_EXISTS: - print(f"User already exists: {error['details']}") - return None - - elif error['code'] == grpc.StatusCode.RESOURCE_EXHAUSTED: - # Check for retry information - for detail in error.get('rich_details', []): - if detail['type'] == 'retry_info': - retry_delay = detail['retry_delay_seconds'] - print(f"Rate limited. Retry after {retry_delay} seconds") - return None - - print("Resource exhausted") - return None - - else: - print(f"Unexpected error: {error['status']} - {error['details']}") - return None - - return response -``` - -## Error Response Patterns - -Define consistent error response patterns: - -```protobuf title="error_responses.proto" -syntax = "proto3"; - -// Standard error response envelope -message ErrorResponse { - string error_code = 1; - string error_message = 2; - map error_context = 3; - repeated string suggestions = 4; - google.protobuf.Timestamp timestamp = 5; - string request_id = 6; -} - -// Union response pattern -message CreateUserResult { - oneof result { - User success = 1; - ErrorResponse error = 2; - } -} -``` - -Proper error handling in gRPC ensures robust, maintainable services that provide clear feedback to clients about what went wrong and how to fix it. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/services/grpc-services.mdx b/fern/products/grpc-def/pages/services/grpc-services.mdx deleted file mode 100644 index 0a80e65e..00000000 --- a/fern/products/grpc-def/pages/services/grpc-services.mdx +++ /dev/null @@ -1,419 +0,0 @@ ---- -title: gRPC Services -subtitle: Define gRPC services with RPCs, messages, and Protocol Buffer schemas ---- - -gRPC services are the core building blocks of your API. Each service defines a collection of remote procedure calls (RPCs) that clients can invoke, along with the message types used for requests and responses. - -## Service Definition - -Define a gRPC service in a `.proto` file: - -```protobuf title="user_service.proto" -syntax = "proto3"; - -package userservice.v1; - -import "google/protobuf/empty.proto"; -import "google/protobuf/timestamp.proto"; -import "google/protobuf/field_mask.proto"; - -// User management service -service UserService { - // Create a new user account - rpc CreateUser(CreateUserRequest) returns (User) { - option deprecated = false; - } - - // Get user by ID - rpc GetUser(GetUserRequest) returns (User); - - // Update user information - rpc UpdateUser(UpdateUserRequest) returns (User); - - // Delete a user account - rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty); - - // List users with pagination - rpc ListUsers(ListUsersRequest) returns (ListUsersResponse); - - // Search users by various criteria - rpc SearchUsers(SearchUsersRequest) returns (SearchUsersResponse); -} - -// User message definition -message User { - string id = 1; - string email = 2; - string name = 3; - int32 age = 4; - UserStatus status = 5; - google.protobuf.Timestamp created_at = 6; - google.protobuf.Timestamp updated_at = 7; - repeated string roles = 8; - UserPreferences preferences = 9; -} - -// User status enumeration -enum UserStatus { - USER_STATUS_UNSPECIFIED = 0; - USER_STATUS_ACTIVE = 1; - USER_STATUS_INACTIVE = 2; - USER_STATUS_SUSPENDED = 3; - USER_STATUS_DELETED = 4; -} - -// Nested message for user preferences -message UserPreferences { - bool email_notifications = 1; - string timezone = 2; - string language = 3; - ThemeMode theme = 4; -} - -enum ThemeMode { - THEME_MODE_UNSPECIFIED = 0; - THEME_MODE_LIGHT = 1; - THEME_MODE_DARK = 2; - THEME_MODE_AUTO = 3; -} -``` - -## Request and Response Messages - -Define clear request and response message types: - -```protobuf title="user_messages.proto" -// Create user request -message CreateUserRequest { - string email = 1 [(validate.rules).string.email = true]; - string name = 2 [(validate.rules).string.min_len = 1]; - int32 age = 3 [(validate.rules).int32.gte = 0]; - UserPreferences preferences = 4; -} - -// Get user request -message GetUserRequest { - string id = 1 [(validate.rules).string.uuid = true]; -} - -// Update user request -message UpdateUserRequest { - string id = 1 [(validate.rules).string.uuid = true]; - User user = 2; - google.protobuf.FieldMask update_mask = 3; -} - -// Delete user request -message DeleteUserRequest { - string id = 1 [(validate.rules).string.uuid = true]; -} - -// List users request with pagination -message ListUsersRequest { - int32 page_size = 1 [(validate.rules).int32 = {gte: 1, lte: 100}]; - string page_token = 2; - string filter = 3; - string order_by = 4; -} - -// List users response -message ListUsersResponse { - repeated User users = 1; - string next_page_token = 2; - int32 total_count = 3; -} - -// Search users request -message SearchUsersRequest { - string query = 1 [(validate.rules).string.min_len = 1]; - repeated UserStatus status_filter = 2; - repeated string role_filter = 3; - int32 page_size = 4 [(validate.rules).int32 = {gte: 1, lte: 100}]; - string page_token = 5; -} - -// Search users response -message SearchUsersResponse { - repeated User users = 1; - string next_page_token = 2; - int32 total_count = 3; - SearchMetadata metadata = 4; -} - -message SearchMetadata { - int32 search_time_ms = 1; - repeated string suggested_corrections = 2; -} -``` - -## Service Implementation - -Implement the service in your preferred language: - -```python title="user_service.py" -import grpc -from grpc import ServicerContext -import user_service_pb2 -import user_service_pb2_grpc -from google.protobuf import empty_pb2 -from typing import Iterator - -class UserServiceServicer(user_service_pb2_grpc.UserServiceServicer): - - def __init__(self, user_repository): - self.user_repository = user_repository - - def CreateUser( - self, - request: user_service_pb2.CreateUserRequest, - context: ServicerContext - ) -> user_service_pb2.User: - """Create a new user account.""" - try: - # Validate request - if not request.email or not request.name: - context.set_code(grpc.StatusCode.INVALID_ARGUMENT) - context.set_details('Email and name are required') - return user_service_pb2.User() - - # Check if user already exists - if self.user_repository.get_by_email(request.email): - context.set_code(grpc.StatusCode.ALREADY_EXISTS) - context.set_details(f'User with email {request.email} already exists') - return user_service_pb2.User() - - # Create user - user = self.user_repository.create_user( - email=request.email, - name=request.name, - age=request.age, - preferences=request.preferences - ) - - return user - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Failed to create user: {str(e)}') - return user_service_pb2.User() - - def GetUser( - self, - request: user_service_pb2.GetUserRequest, - context: ServicerContext - ) -> user_service_pb2.User: - """Get user by ID.""" - try: - user = self.user_repository.get_by_id(request.id) - if not user: - context.set_code(grpc.StatusCode.NOT_FOUND) - context.set_details(f'User with ID {request.id} not found') - return user_service_pb2.User() - - return user - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Failed to get user: {str(e)}') - return user_service_pb2.User() - - def UpdateUser( - self, - request: user_service_pb2.UpdateUserRequest, - context: ServicerContext - ) -> user_service_pb2.User: - """Update user information.""" - try: - # Check if user exists - existing_user = self.user_repository.get_by_id(request.id) - if not existing_user: - context.set_code(grpc.StatusCode.NOT_FOUND) - context.set_details(f'User with ID {request.id} not found') - return user_service_pb2.User() - - # Apply field mask for partial updates - updated_user = self.user_repository.update_user( - user_id=request.id, - updates=request.user, - field_mask=request.update_mask - ) - - return updated_user - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Failed to update user: {str(e)}') - return user_service_pb2.User() - - def DeleteUser( - self, - request: user_service_pb2.DeleteUserRequest, - context: ServicerContext - ) -> empty_pb2.Empty: - """Delete a user account.""" - try: - # Check if user exists - user = self.user_repository.get_by_id(request.id) - if not user: - context.set_code(grpc.StatusCode.NOT_FOUND) - context.set_details(f'User with ID {request.id} not found') - return empty_pb2.Empty() - - # Soft delete user - self.user_repository.delete_user(request.id) - - return empty_pb2.Empty() - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Failed to delete user: {str(e)}') - return empty_pb2.Empty() - - def ListUsers( - self, - request: user_service_pb2.ListUsersRequest, - context: ServicerContext - ) -> user_service_pb2.ListUsersResponse: - """List users with pagination.""" - try: - # Apply pagination - page_size = min(request.page_size or 20, 100) - - users, next_page_token, total_count = self.user_repository.list_users( - page_size=page_size, - page_token=request.page_token, - filter_expr=request.filter, - order_by=request.order_by - ) - - return user_service_pb2.ListUsersResponse( - users=users, - next_page_token=next_page_token, - total_count=total_count - ) - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Failed to list users: {str(e)}') - return user_service_pb2.ListUsersResponse() - - def SearchUsers( - self, - request: user_service_pb2.SearchUsersRequest, - context: ServicerContext - ) -> user_service_pb2.SearchUsersResponse: - """Search users by various criteria.""" - try: - start_time = time.time() - - users, next_page_token, total_count = self.user_repository.search_users( - query=request.query, - status_filter=request.status_filter, - role_filter=request.role_filter, - page_size=request.page_size or 20, - page_token=request.page_token - ) - - search_time_ms = int((time.time() - start_time) * 1000) - - metadata = user_service_pb2.SearchMetadata( - search_time_ms=search_time_ms, - suggested_corrections=[] # Add spell check suggestions if needed - ) - - return user_service_pb2.SearchUsersResponse( - users=users, - next_page_token=next_page_token, - total_count=total_count, - metadata=metadata - ) - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Failed to search users: {str(e)}') - return user_service_pb2.SearchUsersResponse() -``` - -## Protocol Buffer Best Practices - -### Field Numbers -- Use field numbers 1-15 for frequently used fields (more efficient encoding) -- Reserve field numbers for removed fields to maintain compatibility -- Never reuse field numbers - -```protobuf -message User { - // Frequently used fields (1-15) - string id = 1; - string email = 2; - string name = 3; - - // Less frequently used fields - UserPreferences preferences = 16; - repeated string tags = 17; - - // Reserved fields - reserved 4, 5, 6; - reserved "old_field_name", "deprecated_field"; -} -``` - -### Naming Conventions -- Use `snake_case` for field names -- Use `PascalCase` for message and service names -- Use `UPPER_SNAKE_CASE` for enum values - -```protobuf -service UserManagementService { // PascalCase - rpc GetUser(GetUserRequest) returns (User); -} - -message User { // PascalCase - string first_name = 1; // snake_case - UserStatus status = 2; -} - -enum UserStatus { - USER_STATUS_UNSPECIFIED = 0; // UPPER_SNAKE_CASE - USER_STATUS_ACTIVE = 1; -} -``` - -### Versioning -- Include version in package names -- Use semantic versioning for breaking changes - -```protobuf -syntax = "proto3"; - -package userservice.v1; // Version in package name - -option go_package = "example.com/userservice/v1"; -``` - -## Multiple Services - -Organize related functionality into separate services: - -```protobuf title="services.proto" -// User management -service UserService { - rpc CreateUser(CreateUserRequest) returns (User); - rpc GetUser(GetUserRequest) returns (User); -} - -// Authentication -service AuthService { - rpc Login(LoginRequest) returns (LoginResponse); - rpc RefreshToken(RefreshTokenRequest) returns (RefreshTokenResponse); -} - -// Notification service -service NotificationService { - rpc SendNotification(SendNotificationRequest) returns (SendNotificationResponse); - rpc GetNotificationPreferences(GetNotificationPreferencesRequest) returns (NotificationPreferences); -} -``` - -gRPC services provide a strongly-typed, high-performance foundation for building distributed systems with clear contracts between clients and servers. \ No newline at end of file diff --git a/fern/products/grpc-def/pages/services/streaming.mdx b/fern/products/grpc-def/pages/services/streaming.mdx deleted file mode 100644 index 69344d7a..00000000 --- a/fern/products/grpc-def/pages/services/streaming.mdx +++ /dev/null @@ -1,514 +0,0 @@ ---- -title: Streaming -subtitle: Implement server streaming, client streaming, and bidirectional streaming with gRPC ---- - -gRPC supports four types of service methods: unary, server streaming, client streaming, and bidirectional streaming. Streaming enables efficient real-time communication and large data transfers. - -## Server Streaming - -Server streaming allows the server to send multiple responses to a single client request: - -```protobuf title="streaming_service.proto" -syntax = "proto3"; - -package streaming.v1; - -service StreamingService { - // Server streaming: send multiple events to client - rpc StreamUserEvents(StreamUserEventsRequest) returns (stream UserEvent); - - // Server streaming: download large file in chunks - rpc DownloadFile(DownloadFileRequest) returns (stream FileChunk); - - // Server streaming: real-time notifications - rpc SubscribeToNotifications(SubscribeRequest) returns (stream Notification); -} - -message StreamUserEventsRequest { - string user_id = 1; - repeated UserEventType event_types = 2; - google.protobuf.Timestamp start_time = 3; -} - -message UserEvent { - string id = 1; - string user_id = 2; - UserEventType type = 3; - google.protobuf.Timestamp timestamp = 4; - google.protobuf.Any data = 5; -} - -enum UserEventType { - USER_EVENT_TYPE_UNSPECIFIED = 0; - USER_EVENT_TYPE_LOGIN = 1; - USER_EVENT_TYPE_LOGOUT = 2; - USER_EVENT_TYPE_PROFILE_UPDATE = 3; - USER_EVENT_TYPE_PASSWORD_CHANGE = 4; -} -``` - -Server streaming implementation: - -```python title="server_streaming.py" -import grpc -import time -import asyncio -from grpc import ServicerContext -from typing import Iterator - -class StreamingServiceServicer(streaming_pb2_grpc.StreamingServiceServicer): - - def StreamUserEvents( - self, - request: streaming_pb2.StreamUserEventsRequest, - context: ServicerContext - ) -> Iterator[streaming_pb2.UserEvent]: - """Stream user events in real-time.""" - - # Validate request - if not request.user_id: - context.set_code(grpc.StatusCode.INVALID_ARGUMENT) - context.set_details('User ID is required') - return - - # Subscribe to event stream - event_subscriber = self.event_store.subscribe( - user_id=request.user_id, - event_types=request.event_types, - start_time=request.start_time - ) - - try: - while context.is_active(): - # Wait for next event (with timeout) - try: - event = event_subscriber.get_next_event(timeout=30) - if event: - yield event - else: - # Send heartbeat to keep connection alive - continue - - except TimeoutError: - # Check if client is still connected - if not context.is_active(): - break - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Error streaming events: {str(e)}') - break - - finally: - # Clean up subscription - event_subscriber.close() - - def DownloadFile( - self, - request: streaming_pb2.DownloadFileRequest, - context: ServicerContext - ) -> Iterator[streaming_pb2.FileChunk]: - """Download file in chunks.""" - - try: - file_path = self.file_store.get_file_path(request.file_id) - if not file_path or not os.path.exists(file_path): - context.set_code(grpc.StatusCode.NOT_FOUND) - context.set_details(f'File {request.file_id} not found') - return - - chunk_size = 64 * 1024 # 64KB chunks - - with open(file_path, 'rb') as f: - while True: - chunk_data = f.read(chunk_size) - if not chunk_data: - break - - # Check if client disconnected - if not context.is_active(): - break - - yield streaming_pb2.FileChunk( - data=chunk_data, - offset=f.tell() - len(chunk_data), - size=len(chunk_data) - ) - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Error downloading file: {str(e)}') -``` - -## Client Streaming - -Client streaming allows the client to send multiple requests and receive a single response: - -```protobuf title="client_streaming.proto" -service StreamingService { - // Client streaming: upload large file in chunks - rpc UploadFile(stream FileChunk) returns (UploadFileResponse); - - // Client streaming: batch data processing - rpc ProcessDataBatch(stream DataRecord) returns (BatchProcessingResult); - - // Client streaming: real-time metrics collection - rpc CollectMetrics(stream MetricData) returns (MetricsCollectionResult); -} - -message FileChunk { - oneof data { - FileMetadata metadata = 1; - bytes chunk = 2; - } -} - -message FileMetadata { - string filename = 1; - int64 total_size = 2; - string content_type = 3; - string checksum = 4; -} - -message UploadFileResponse { - string file_id = 1; - int64 bytes_uploaded = 2; - string download_url = 3; - bool checksum_verified = 4; -} -``` - -Client streaming implementation: - -```python title="client_streaming.py" -class StreamingServiceServicer(streaming_pb2_grpc.StreamingServiceServicer): - - def UploadFile( - self, - request_iterator: Iterator[streaming_pb2.FileChunk], - context: ServicerContext - ) -> streaming_pb2.UploadFileResponse: - """Upload file from client stream.""" - - file_metadata = None - total_bytes = 0 - file_path = None - hasher = hashlib.sha256() - - try: - for chunk in request_iterator: - if chunk.HasField('metadata'): - # First chunk contains metadata - file_metadata = chunk.metadata - - # Create temporary file - file_id = str(uuid.uuid4()) - file_path = f'/tmp/uploads/{file_id}' - os.makedirs(os.path.dirname(file_path), exist_ok=True) - - elif chunk.HasField('chunk'): - # Subsequent chunks contain file data - if not file_metadata: - context.set_code(grpc.StatusCode.INVALID_ARGUMENT) - context.set_details('File metadata must be sent first') - return streaming_pb2.UploadFileResponse() - - # Write chunk to file - with open(file_path, 'ab') as f: - f.write(chunk.chunk) - - total_bytes += len(chunk.chunk) - hasher.update(chunk.chunk) - - # Check size limit - if total_bytes > file_metadata.total_size: - context.set_code(grpc.StatusCode.INVALID_ARGUMENT) - context.set_details('File size exceeds declared size') - return streaming_pb2.UploadFileResponse() - - # Verify checksum - computed_checksum = hasher.hexdigest() - checksum_verified = computed_checksum == file_metadata.checksum - - if not checksum_verified: - context.set_code(grpc.StatusCode.DATA_LOSS) - context.set_details('File checksum verification failed') - return streaming_pb2.UploadFileResponse() - - # Move file to permanent storage - permanent_path = self.file_store.store_file(file_id, file_path) - download_url = self.file_store.get_download_url(file_id) - - return streaming_pb2.UploadFileResponse( - file_id=file_id, - bytes_uploaded=total_bytes, - download_url=download_url, - checksum_verified=True - ) - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Error uploading file: {str(e)}') - return streaming_pb2.UploadFileResponse() - - finally: - # Clean up temporary file - if file_path and os.path.exists(file_path): - os.remove(file_path) -``` - -## Bidirectional Streaming - -Bidirectional streaming allows both client and server to send multiple messages: - -```protobuf title="bidirectional_streaming.proto" -service StreamingService { - // Bidirectional streaming: real-time chat - rpc Chat(stream ChatMessage) returns (stream ChatMessage); - - // Bidirectional streaming: real-time collaboration - rpc Collaborate(stream CollaborationEvent) returns (stream CollaborationEvent); - - // Bidirectional streaming: live data processing - rpc ProcessLiveData(stream DataInput) returns (stream ProcessingResult); -} - -message ChatMessage { - string id = 1; - string user_id = 2; - string room_id = 3; - string content = 4; - google.protobuf.Timestamp timestamp = 5; - ChatMessageType type = 6; -} - -enum ChatMessageType { - CHAT_MESSAGE_TYPE_UNSPECIFIED = 0; - CHAT_MESSAGE_TYPE_TEXT = 1; - CHAT_MESSAGE_TYPE_IMAGE = 2; - CHAT_MESSAGE_TYPE_FILE = 3; - CHAT_MESSAGE_TYPE_SYSTEM = 4; - CHAT_MESSAGE_TYPE_TYPING = 5; -} -``` - -Bidirectional streaming implementation: - -```python title="bidirectional_streaming.py" -import asyncio -import queue -import threading - -class StreamingServiceServicer(streaming_pb2_grpc.StreamingServiceServicer): - - def Chat( - self, - request_iterator: Iterator[streaming_pb2.ChatMessage], - context: ServicerContext - ) -> Iterator[streaming_pb2.ChatMessage]: - """Bidirectional chat streaming.""" - - # Message queue for outgoing messages - outgoing_queue = queue.Queue() - - # Track user session - user_session = None - - def handle_incoming_messages(): - """Process incoming messages from client.""" - nonlocal user_session - - try: - for message in request_iterator: - if not user_session: - # First message establishes session - user_session = self.chat_service.join_room( - user_id=message.user_id, - room_id=message.room_id - ) - - # Send welcome message - welcome_msg = streaming_pb2.ChatMessage( - id=str(uuid.uuid4()), - user_id="system", - room_id=message.room_id, - content=f"User {message.user_id} joined the chat", - timestamp=google.protobuf.timestamp_pb2.Timestamp(), - type=streaming_pb2.CHAT_MESSAGE_TYPE_SYSTEM - ) - outgoing_queue.put(welcome_msg) - - # Process message - if message.type == streaming_pb2.CHAT_MESSAGE_TYPE_TEXT: - # Broadcast to other users in room - self.chat_service.broadcast_message(message) - - elif message.type == streaming_pb2.CHAT_MESSAGE_TYPE_TYPING: - # Send typing indicator to other users - self.chat_service.broadcast_typing(message) - - except Exception as e: - print(f"Error handling incoming messages: {e}") - finally: - # Clean up session - if user_session: - self.chat_service.leave_room(user_session) - - # Start background thread for incoming messages - incoming_thread = threading.Thread(target=handle_incoming_messages) - incoming_thread.daemon = True - incoming_thread.start() - - # Subscribe to room messages - message_subscriber = None - if user_session: - message_subscriber = self.chat_service.subscribe_to_room( - user_session.room_id, - exclude_user=user_session.user_id - ) - - try: - while context.is_active(): - # Check for outgoing messages from queue - try: - message = outgoing_queue.get(timeout=1) - yield message - except queue.Empty: - pass - - # Check for messages from other users - if message_subscriber: - try: - room_message = message_subscriber.get_message(timeout=1) - if room_message: - yield room_message - except TimeoutError: - pass - - finally: - # Clean up - if message_subscriber: - message_subscriber.close() - if user_session: - self.chat_service.leave_room(user_session) -``` - -## Streaming Best Practices - -### Flow Control -Implement proper flow control to prevent overwhelming clients: - -```python title="flow_control.py" -def StreamData(self, request, context): - """Stream with flow control.""" - - # Use a bounded queue to control memory usage - data_queue = queue.Queue(maxsize=100) - - def data_producer(): - """Background thread that produces data.""" - for item in self.data_source.get_items(): - try: - data_queue.put(item, timeout=5) - except queue.Full: - # Apply backpressure - print("Client is too slow, dropping data") - break - - producer_thread = threading.Thread(target=data_producer) - producer_thread.start() - - try: - while context.is_active(): - try: - item = data_queue.get(timeout=30) - yield item - except queue.Empty: - # Send heartbeat or check client connection - if not context.is_active(): - break - finally: - producer_thread.join(timeout=1) -``` - -### Error Handling in Streams -Handle errors gracefully in streaming operations: - -```python title="stream_error_handling.py" -def StreamWithErrorHandling(self, request, context): - """Stream with robust error handling.""" - - try: - for item in self.get_stream_data(request): - if not context.is_active(): - break - - try: - # Process item - processed_item = self.process_item(item) - yield processed_item - - except ProcessingError as e: - # Send error as part of response - error_response = create_error_response(e) - yield error_response - - except Exception as e: - # Critical error - abort stream - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Processing failed: {str(e)}') - break - - except Exception as e: - context.set_code(grpc.StatusCode.INTERNAL) - context.set_details(f'Stream failed: {str(e)}') -``` - -### Client-side Streaming - -Handle streaming on the client side: - -```python title="streaming_client.py" -import grpc - -def stream_chat_client(): - """Example bidirectional streaming client.""" - - channel = grpc.insecure_channel('localhost:50051') - stub = streaming_pb2_grpc.StreamingServiceStub(channel) - - def message_generator(): - """Generate outgoing messages.""" - # Send initial message - yield streaming_pb2.ChatMessage( - user_id="user123", - room_id="general", - content="Hello, world!", - type=streaming_pb2.CHAT_MESSAGE_TYPE_TEXT - ) - - # Keep connection alive and send periodic messages - while True: - user_input = input("Enter message: ") - if user_input.lower() == 'quit': - break - - yield streaming_pb2.ChatMessage( - user_id="user123", - room_id="general", - content=user_input, - type=streaming_pb2.CHAT_MESSAGE_TYPE_TEXT - ) - - # Start bidirectional stream - responses = stub.Chat(message_generator()) - - try: - for response in responses: - print(f"Received: {response.content}") - except grpc.RpcError as e: - print(f"RPC failed: {e}") -``` - -Streaming in gRPC enables powerful real-time applications while maintaining the benefits of strongly-typed contracts and efficient binary protocols. \ No newline at end of file diff --git a/fern/products/openapi-def/openapi-def.yml b/fern/products/openapi-def/openapi-def.yml deleted file mode 100644 index 2cae8cd5..00000000 --- a/fern/products/openapi-def/openapi-def.yml +++ /dev/null @@ -1,47 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Servers - path: ./pages/servers.mdx - - section: Endpoints - slug: endpoints - contents: - - page: HTTP JSON Endpoints - path: ./pages/endpoints/rest.mdx - slug: http - - page: Webhooks - path: ./pages/webhooks.mdx - - page: Multipart Form Uploads - path: ./pages/endpoints/multipart.mdx - slug: multipart - - page: Server-Sent Events - path: ./pages/endpoints/sse.mdx - slug: sse - - section: Extensions - slug: extensions - contents: - - page: Audiences - path: ./pages/extensions/audiences.mdx - - page: SDK Method Names - path: ./pages/extensions/method-names.mdx - slug: method-names - - page: Parameter Names - path: ./pages/extensions/parameter-names.mdx - - page: Other - path: ./pages/extensions/others.mdx - slug: others - - section: Workflow & Automation - skip-slug: true - contents: - - page: Overlay Customizations - path: ./pages/overrides.mdx - - page: Sync your OpenAPI Specification - path: ./pages/automation.mdx - - section: Integrate your Server Framework - slug: frameworks - contents: - - page: FastAPI - path: ./pages/server-frameworks/fastapi.mdx - slug: fastapi diff --git a/fern/products/openapi-def/pages-archived/getting-started/customer-showcase.mdx b/fern/products/openapi-def/pages-archived/getting-started/customer-showcase.mdx deleted file mode 100644 index c5b86683..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/customer-showcase.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Customer Showcase ---- - -Examples and case studies of customers using OpenAPI definitions successfully. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi.mdx deleted file mode 100644 index fb94e075..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get to OpenAPI ---- - -How to create or obtain your OpenAPI definition through various methods. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/fastapi.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/fastapi.mdx deleted file mode 100644 index c86fc299..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/fastapi.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: FastAPI ---- - -# Generate OpenAPI from FastAPI - -Instructions for generating an OpenAPI definition from a FastAPI project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/nestjs.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/nestjs.mdx deleted file mode 100644 index a8d65296..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/nestjs.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NestJS ---- - -# Generate OpenAPI from NestJS - -Instructions for generating an OpenAPI definition from a NestJS project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/request-new-framework.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/request-new-framework.mdx deleted file mode 100644 index caff1538..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/request-new-framework.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Request New Framework ---- - -# Request a New Framework - -Don't see your framework? Let us know which framework you'd like to see supported for OpenAPI generation. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/swaggo.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/swaggo.mdx deleted file mode 100644 index bfce6118..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/swaggo.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swaggo ---- - -# Generate OpenAPI from Swaggo - -Instructions for generating an OpenAPI definition from a Swaggo (Go) project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/handwrite-it.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/handwrite-it.mdx deleted file mode 100644 index 369b2a22..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/handwrite-it.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Handwrite It ---- - -# Handwrite Your OpenAPI Definition - -Step-by-step guide to manually writing your OpenAPI definition from scratch. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/overlay-customizations.mdx b/fern/products/openapi-def/pages-archived/getting-started/overlay-customizations.mdx deleted file mode 100644 index 014c14d0..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/overlay-customizations.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overlay Customizations ---- - -Learn how to customize your OpenAPI overlays to fit your unique requirements. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/overview.mdx b/fern/products/openapi-def/pages-archived/getting-started/overview.mdx deleted file mode 100644 index 6be870a5..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/overview.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Overview ---- - -# Overview - -This is the overview page for Getting Started with your OpenAPI definition. Here you will find a high-level introduction and guidance on how to begin. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/philosophy.mdx b/fern/products/openapi-def/pages-archived/getting-started/philosophy.mdx deleted file mode 100644 index 87806f74..00000000 --- a/fern/products/openapi-def/pages-archived/getting-started/philosophy.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Philosophy ---- - -The philosophy and principles behind OpenAPI definitions and how they enhance API development. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/allof.mdx b/fern/products/openapi-def/pages-archived/schemas/allof.mdx deleted file mode 100644 index e358568a..00000000 --- a/fern/products/openapi-def/pages-archived/schemas/allof.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: All Of ---- - -How to use the `allOf` keyword to compose schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/anyof.mdx b/fern/products/openapi-def/pages-archived/schemas/anyof.mdx deleted file mode 100644 index 49b1741a..00000000 --- a/fern/products/openapi-def/pages-archived/schemas/anyof.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Any Of ---- - -How to use the `anyOf` keyword to allow multiple possible schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/enums.mdx b/fern/products/openapi-def/pages-archived/schemas/enums.mdx deleted file mode 100644 index 91e6534f..00000000 --- a/fern/products/openapi-def/pages-archived/schemas/enums.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Enums ---- - -How to use enum types to define a fixed set of values in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/inlined-schemas.mdx b/fern/products/openapi-def/pages-archived/schemas/inlined-schemas.mdx deleted file mode 100644 index ef85bd50..00000000 --- a/fern/products/openapi-def/pages-archived/schemas/inlined-schemas.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Inlined Schemas ---- - -How to define schemas inline within your OpenAPI specification. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/objects.mdx b/fern/products/openapi-def/pages-archived/schemas/objects.mdx deleted file mode 100644 index 11c642e5..00000000 --- a/fern/products/openapi-def/pages-archived/schemas/objects.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Objects ---- - -How to define object schemas with properties in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/oneof.mdx b/fern/products/openapi-def/pages-archived/schemas/oneof.mdx deleted file mode 100644 index 9cbd54b0..00000000 --- a/fern/products/openapi-def/pages-archived/schemas/oneof.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: One Of ---- - -How to use the `oneOf` keyword to define alternative schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/override-type.mdx b/fern/products/openapi-def/pages-archived/schemas/override-type.mdx deleted file mode 100644 index 232be2f7..00000000 --- a/fern/products/openapi-def/pages-archived/schemas/override-type.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Override Type ---- - -How to override the default type inference for schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/security-schemes/multiple-security-schemes.mdx b/fern/products/openapi-def/pages-archived/security-schemes/multiple-security-schemes.mdx deleted file mode 100644 index e309f5c6..00000000 --- a/fern/products/openapi-def/pages-archived/security-schemes/multiple-security-schemes.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Multiple Security Schemes ---- - -Learn how to define and use multiple security schemes in your OpenAPI definition. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/security-schemes/overriding-security-scheme.mdx b/fern/products/openapi-def/pages-archived/security-schemes/overriding-security-scheme.mdx deleted file mode 100644 index c15237fa..00000000 --- a/fern/products/openapi-def/pages-archived/security-schemes/overriding-security-scheme.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overriding Security Scheme ---- - -How to override security schemes in specific operations or contexts. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/security-schemes/overview.mdx b/fern/products/openapi-def/pages-archived/security-schemes/overview.mdx deleted file mode 100644 index aee1d93c..00000000 --- a/fern/products/openapi-def/pages-archived/security-schemes/overview.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Security Schemes Overview ---- - -Overview of security schemes and authentication methods in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/multiple-server-urls.mdx b/fern/products/openapi-def/pages-archived/servers/multiple-server-urls.mdx deleted file mode 100644 index 75b1c9a7..00000000 --- a/fern/products/openapi-def/pages-archived/servers/multiple-server-urls.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Multiple Server URLs ---- - -How to configure multiple server URLs for different environments. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/naming-your-servers.mdx b/fern/products/openapi-def/pages-archived/servers/naming-your-servers.mdx deleted file mode 100644 index e8156e65..00000000 --- a/fern/products/openapi-def/pages-archived/servers/naming-your-servers.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Naming Your Servers ---- - -Best practices for naming your server configurations. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/overriding-servers.mdx b/fern/products/openapi-def/pages-archived/servers/overriding-servers.mdx deleted file mode 100644 index b73791cd..00000000 --- a/fern/products/openapi-def/pages-archived/servers/overriding-servers.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overriding Servers ---- - -How to override server configurations in specific contexts. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/overview.mdx b/fern/products/openapi-def/pages-archived/servers/overview.mdx deleted file mode 100644 index 57a9148b..00000000 --- a/fern/products/openapi-def/pages-archived/servers/overview.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Servers Overview ---- - -Overview of server configuration options in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages/auth.mdx b/fern/products/openapi-def/pages/auth.mdx deleted file mode 100644 index 69d9f899..00000000 --- a/fern/products/openapi-def/pages/auth.mdx +++ /dev/null @@ -1,196 +0,0 @@ ---- -title: Authentication -subtitle: Model auth schemes such as bearer, basic, and api key. ---- - -Configuring authentication schemes happens in the `components.securitySchemes` section of OpenAPI. All Fern-generated SDKs support both direct configuration and environment variables for authentication credentials. - -```yml title="openapi.yml" {2-3} -components: - securitySchemes: - ... -``` - - -To apply a security scheme across all endpoints, reference the `securityScheme` within the `security` section of your OpenAPI Specification. - -```yml title="openapi.yml" {3, 5-6} -components: - securitySchemes: - AuthScheme: - ... -security: - - AuthScheme: [] -``` - - -## Bearer security scheme - -Start by defining a `bearer` security scheme in your `openapi.yml`: - -```yml title="openapi.yml" {3-5} -components: - securitySchemes: - BearerAuth: - type: http - scheme: bearer -``` - -This will generate an SDK where the user would have to provide -a mandatory argument called `token`. - -```ts index.ts -const client = new Client({ - token: "ey34..." -}) -``` - -If you want to control variable naming and the environment variable to scan, -use the configuration below: - -```yaml title="openapi.yml" {6-8} -components: - securitySchemes: - BearerAuth: - type: http - scheme: bearer - x-fern-bearer: - name: apiKey - env: PLANTSTORE_API_KEY -``` - -The generated SDK would look like: - -```ts index.ts - -// Uses process.env.PLANTSTORE_API_KEY -let client = new Client(); - -// token has been renamed to apiKey -client = new Client({ - apiKey: "ey34..." -}) -``` - -## Basic security scheme - -Start by defining a `basic` security scheme in your `openapi.yml`: - -```yaml title="openapi.yml" {3-5} -components: - securitySchemes: - BasicAuth: - type: http - scheme: basic -``` - -This will generate an SDK where the user would have to provide -a mandatory arguments called `username` and `password`. - -```ts index.ts -const client = new Client({ - username: "joeschmoe" - password: "ey34..." -}) -``` - -If you want to control variable naming and environment variables to scan, -use the configuration below: - -```yaml title="openapi.yml" {6-12} -components: - securitySchemes: - BasicAuth: - type: http - scheme: basic - x-fern-basic: - username: - name: clientId - env: PLANTSTORE_CLIENT_ID - password: - name: clientSecret - env: PLANTSTORE_CLIENT_SECRET -``` - -The generated SDK would look like: - -```ts index.ts - -// Uses process.env.PLANTSTORE_CLIENT_ID and process.env.PLANTSTORE_CLIENT_SECRET -let client = new Client(); - -// parameters have been renamed -client = new Client({ - clientId: "joeschmoe", - clientSecret: "ey34..." -}) -``` - -## ApiKey security scheme - -Start by defining an `apiKey` security scheme in your `openapi.yml`: - -```yml title="openapi.yml" {3-5} -components: - securitySchemes: - ApiKey: - type: apiKey - in: header - name: X_API_KEY -``` - -This will generate an SDK where the user would have to provide -a mandatory argument called `apiKey`. - -```ts index.ts -const client = new Client({ - apiKey: "ey34..." -}) -``` - -If you want to control variable naming and environment variables to scan, -use the configuration below: - -```yaml title="openapi.yml" {7-10} -components: - securitySchemes: - ApiKey: - type: apiKey - in: header - name: X_API_KEY - x-fern-header: - name: apiToken - env: PLANTSTORE_API_KEY - prefix: "Token " # Optional -``` - -The generated SDK would look like: - -```ts index.ts - -// Uses process.env.PLANTSTORE_API_KEY -let client = new Client(); - -// parameters have been renamed -client = new Client({ - apiToken: "ey34..." -}) -``` - -## Multiple security schemes - -If you would like to define multiple security schemes, simply -list them under `components.securitySchemes`. For example, if you wanted to support -`basic` and `apiKey` security schemes, see the example below: - -```yaml title="openapi.yml" {3,6} -components: - securitySchemes: - BearerAuth: - type: http - scheme: bearer - ApiKey: - type: apiKey - in: header - name: X_API_KEY -``` \ No newline at end of file diff --git a/fern/products/openapi-def/pages/automation.mdx b/fern/products/openapi-def/pages/automation.mdx deleted file mode 100644 index 23a319a9..00000000 --- a/fern/products/openapi-def/pages/automation.mdx +++ /dev/null @@ -1,54 +0,0 @@ ---- -title: Sync your OpenAPI Specification -subtitle: Pull your latest OpenAPI Specification into your Fern Folder automatically. ---- - -If you host your OpenAPI Specification at a publicly available URL, you can have Fern programmatically fetch the latest spec on a preconfigured cadence through the [sync-openapi GitHub Action](https://github.com/fern-api/sync-openapi). This ensures your committed OpenAPI spec stays up to date with your live API. -## Setup - - - Add the origin field to your generators.yml to specify where your OpenAPI spec is hosted: - ```yml title="generators.yml" - api: - path: openapi/openapi.json - origin: https://api.example.com/openapi.json - ``` - - - Create `.github/workflows/sync-openapi.yml` in your repository: - ```yml - name: Sync OpenAPI Specs # can be customized - on: # additional custom triggers can be configured - workflow_dispatch: # manual dispatch - push: - branches: - - main # on push to main - schedule: - - cron: '0 3 * * *' # everyday at 3:00 AM UTC - jobs: - update-from-source: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - token: ${{ secrets.OPENAPI_SYNC_TOKEN }} - - name: Update API with Fern - uses: fern-api/sync-openapi@v2 - with: - update_from_source: true - token: ${{ secrets.OPENAPI_SYNC_TOKEN }} - branch: 'update-api' - auto_merge: false - add_timestamp: true -``` - - - Generate a [fine-grained personal access token](https://github.com/settings/personal-access-tokens) with read/write access to your repository. - - - Navigate to your repository's `Settings > Secrets and variables > Actions`. Select **New repository secret**, name it `OPENAPI_SYNC_TOKEN`, add your token, and click **Add secret**. - - -By default, this will create daily PRs with API spec updates to the repo containing your fern folder. If you would like to adjust the frequency, learn more about GitHub's [schedule event](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#schedule). - - For detailed configuration options and other use cases, see the [sync-openapi GitHub Action README](https://github.com/fern-api/sync-openapi). diff --git a/fern/products/openapi-def/pages/endpoints/multipart.mdx b/fern/products/openapi-def/pages/endpoints/multipart.mdx deleted file mode 100644 index 800fa0fa..00000000 --- a/fern/products/openapi-def/pages/endpoints/multipart.mdx +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: Multipart File Upload -subtitle: Document endpoints with the `multipart/form-data` content type ---- - -Multipart requests combine one or more sets of data into a single body, separated by boundaries. -You typically use these requests for file uploads and for transferring data of several types in a single request -(for example, a file along with a JSON object). - -```yml title="openapi.yml" maxLines=0 {12-24} -paths: - /upload: - post: - summary: Upload a file - description: Upload a file using multipart/form-data encoding - operationId: uploadFile - tags: - - file - requestBody: - required: true - content: - multipart/form-data: - schema: - type: object - properties: - file: - type: string - format: binary - description: The file to upload - description: - type: string - description: A description of the file (optional) - required: - - file - responses: - "200": - description: Successful upload - content: - application/json: - schema: - type: object - properties: - message: - type: string - fileId: - type: string -``` -Any request body that is defined with a `multipart/form-data` content type, will be -treated as a multipart request. Within a given multipart request, a string parameter with -`format:binary` will represent an arbitrary file. - -## Array of Files - -If your endpoint supports an array of files, then your request body must use -an array type. - -```yml openapi.yml {12-17} -paths: - /upload: - post: - summary: Upload multiple files - operationId: uploadFiles - requestBody: - content: - multipart/form-data: - schema: - type: object - properties: - files: - type: array - items: - type: string - format: binary - description: An array of files to upload -``` diff --git a/fern/products/openapi-def/pages/endpoints/rest.mdx b/fern/products/openapi-def/pages/endpoints/rest.mdx deleted file mode 100644 index a4dd8fcb..00000000 --- a/fern/products/openapi-def/pages/endpoints/rest.mdx +++ /dev/null @@ -1,66 +0,0 @@ ---- -title: HTTP JSON Endpoints -subtitle: Document HTTP JSON APIs with the `application/json` content type ---- - -Endpoints in OpenAPI are defined underneath the `paths` key. Below is an example of defining -a single endpoint: - -```yml title="openapi.yml" maxLines=0 {2-18} -paths: - /pets: - post: - summary: Create a new pet - description: Creates a new pet with the provided information - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Pet' - responses: - '200': - description: User created successfully - content: - application/json: - schema: - $ref: '#/components/schemas/Pet' -``` - -## Examples - -You can provide examples of requests and responses by using the `examples` key. - -```yaml title="openapi.yml" {12-17,25-30} -paths: - /pets: - post: - summary: Create a new pet - description: Creates a new pet with the provided information - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/Pet' - examples: - PetExample: - summary: This is an example of a Pet - value: - name: Markley - id: 44 - responses: - '200': - description: A Pet object - content: - application/json: - schema: - $ref: '#/components/schemas/Pet' - examples: - PetExample: - summary: This is an example of a Pet - value: - name: Markley - id: 44 -``` - diff --git a/fern/products/openapi-def/pages/endpoints/sse.mdx b/fern/products/openapi-def/pages/endpoints/sse.mdx deleted file mode 100644 index bc680cfe..00000000 --- a/fern/products/openapi-def/pages/endpoints/sse.mdx +++ /dev/null @@ -1,109 +0,0 @@ ---- -title: Server-Sent Events and Streaming APIs -subtitle: Use the `x-fern-streaming` extension to model streaming endpoints ---- - - - The `x-fern-streaming` extension allows you to represent endpoints that are streaming. - - - -## JSON streaming - -If your API returns a series of `JSON` chunks as seen below - -```json -{ "text": "Hi, I am a" } -{ "text": "chatbot. Do you have any"} -{ "text": "questions for me"} -``` - -then simply add the `x-fern-streaming: true` to your OpenAPI operation. - -```yaml title="openapi.yml" {4} -paths: - /logs: - post: - x-fern-streaming: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Chat" -components: - schemas: - Chat: - type: object - properties: - text: - type: string -``` - -## Server-sent events - -If your API returns server-sent-events, with the `data` and `event` keys as seen below - -```json -data: { "text": "Hi, I am a" } -data: { "text": "chatbot. Do you have any"} -data: { "text": "questions for me"} -``` - -then make sure to include `format: sse`. - -```yaml title="openapi.yml" {4-5} -paths: - /logs: - post: - x-fern-streaming: - format: sse - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Chat" -components: - schemas: - Chat: - type: object - properties: - text: - type: string -``` - -## `Stream` parameter - -It has become common practice for endpoints to have a `stream` parameter that -controls whether the response is streamed or not. Fern supports this pattern in a first -class way. - -Simply specify the `stream-condition` as well as the ordinary response and the streaming response: - -```yaml title="openapi.yml" {4-10} -paths: - /logs: - post: - x-fern-streaming: - format: sse - stream-condition: $request.stream - response: - $ref: '#/components/schemas/Chat' - response-stream: - $ref: '#/components/schemas/ChatChunk' -components: - schemas: - Chat: - type: object - properties: - text: - type: string - tokens: - type: number - ChatChunk: - type: object - properties: - text: - type: string -``` \ No newline at end of file diff --git a/fern/products/openapi-def/pages/examples.mdx b/fern/products/openapi-def/pages/examples.mdx deleted file mode 100644 index e4a77240..00000000 --- a/fern/products/openapi-def/pages/examples.mdx +++ /dev/null @@ -1,93 +0,0 @@ ---- -title: How to use examples in OpenAPI -description: Use the examples feature of OpenAPI to add example values in your API definition. Fern then uses your examples when generating SDKs and documentation. ---- - -Using examples in OpenAPI shows API consumers what requests and responses look like. They can be provided for request bodies, response bodies, and individual parameters. - -## Inline examples - -Examples can be placed directly within the operation definition under `paths`. Here's an example: - -```yaml -paths: - /pet: - post: - summary: Add a new pet to the store - operationId: addPet - responses: - '200': - description: A Pet object - content: - application/json: - schema: - $ref: '#/components/schemas/Pet' - examples: - PetExample: - summary: This is an example of a Pet - value: - name: Markley - id: 44 -``` - -## Reusable examples - -For more general examples that apply to multiple parts of the API, you can define them under the `components/examples` section. These can be referenced elsewhere in the documentation. - -```yaml -components: - examples: - PetExample: - summary: Example of a Pet object - value: - name: Markley - id: 44 - -paths: - /pet: - post: - summary: Add a new pet to the store - operationId: addPet - responses: - '200': - description: Successful operation - content: - application/json: - schema: - $ref: '#/components/schemas/Pet' - examples: - PetExample: - $ref: '#/components/examples/PetExample' -``` - -## How examples are used in Fern SDKs - -Fern SDKs use examples from your OpenAPI document to generate comments that show up in your IDE. For example, in a Node.js SDK: - - -```ts - -import * as Petstore from "../../.."; - -/** - * @example - * { - * name: "Markley", - * id: "44" - * } - */ -``` - - -Here's an [example in GitHub](https://github.com/FlatFilers/flatfile-node/blob/ab955a0a337c40ea00755e24df08f8c9a146c39c/src/api/resources/documents/types/DocumentResponse.ts#L8-L27) from Flatfile's Node.js SDK. - -## How examples are used in Fern Docs - -In the request and response code snippets, you'll see the example values used. - - -![Screenshot of an example used in response code in Fern Docs API reference](https://fern-image-hosting.s3.amazonaws.com/movie+example.png) - - -If you generate SDKs with Fern, the code examples for each language will also be populated with the example values. [Check out Flatfile's Docs to see this in action](https://reference.flatfile.com/api-reference/documents/create). Change the language toggle to see the examples in different languages. - diff --git a/fern/products/openapi-def/pages/extensions/audiences.mdx b/fern/products/openapi-def/pages/extensions/audiences.mdx deleted file mode 100644 index 8bd80fc5..00000000 --- a/fern/products/openapi-def/pages/extensions/audiences.mdx +++ /dev/null @@ -1,118 +0,0 @@ ---- -title: Use audiences to filter your API -subtitle: Use `x-fern-audiences` to filter to relevant endpoints, schemas and properties ---- - -Audiences are a useful tool for segmenting your API for different consumers. Common examples of audiences include `public` -and `beta`. - - - Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, - nothing will be filtered. - - - - -The following example configures the SDK to filter to the `public` audience: - -```yaml title="generators.yml" {3-4} -groups: - sdks: - audiences: - - public - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - - - -The following example configures the docs to filter to the `public` audience: - -```yaml title="docs.yml" {3-4} -navigation: - - api: API Reference - audiences: - - public -``` - - - - - - -## Audiences for servers - -To mark a server with a particular audience, add the `x-fern-server-name` and `x-fern-audiences` extension to the relevant server. - -In the example below, the `Production` server is only available to public consumers: - -```yaml title="openapi.yml" {3-5} -servers: - - url: https://api.com - x-fern-server-name: Production - x-fern-audiences: - - public -``` - -## Audiences for endpoints - -To mark an endpoint with a particular audience, add the `x-fern-audiences` extension to the relevant endpoint. - -In the example below, the `POST /users/sendEmail` endpoint is only available to public consumers: - -```yaml title="openapi.yml" {4-5} -paths: - /users/sendEmail: - post: - x-fern-audiences: - - public - operationId: send_email -``` - -## Audiences for schemas - -Schemas can be marked for different audiences, as well. - -In this example, the `Email` type is available to both public and beta customers. - -```yaml title="openapi.yml" {13-15} -components: - schemas: - Email: - title: Email - type: object - properties: - subject: - type: string - body: - type: string - to: - type: string - x-fern-audiences: - - public - - beta -``` - -## Audiences for properties - -Properties can be marked for different audiences, as well. - -In this example, the `to` property is available to beta customers only. - -```yaml title="openapi.yml" {13-17} -components: - schemas: - Email: - title: Email - type: object - properties: - subject: - type: string - body: - type: string - to: - type: string - x-fern-audiences: - - beta -``` diff --git a/fern/products/openapi-def/pages/extensions/method-names.mdx b/fern/products/openapi-def/pages/extensions/method-names.mdx deleted file mode 100644 index 6a5c4230..00000000 --- a/fern/products/openapi-def/pages/extensions/method-names.mdx +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: Customize SDK Method Names -description: Use `x-fern-sdk-method-name` and `x-fern-sdk-group-name` to finetune SDK naming. ---- - -## Operation IDs - -By default, if you have no extensions present, Fern will try to use your operation ID to generate idiomatic -method names for the SDK. We typically recommend formatting your operation IDs like `{tag_name}_{operation_name}`. - -For example, for an endpoint that has the tag `users` and the operation id `users_get`, we will generate an SDK -method that is `users.get()`. If your operation id does not start with a tag, then we will simply use it as the method name. - -## Usage - - - The `x-fern-sdk-group-name` and `x-fern-sdk-method-name` extensions allow you to customize the generated SDK method - names. - - -In the example below, Fern will generate a method called `client.users.create()` for the `POST /users` endpoint. - -```yaml title="openapi.yaml" -paths: - /users: - post: - x-fern-sdk-group-name: users - x-fern-sdk-method-name: create -``` - -## Top level methods - -If you omit the `x-fern-sdk-group-name` extension, then the generated SDK method will live at the root. -In the example below, Fern will generate a method called `client.send()`: - -```yaml title="openapi.yaml" -paths: - /send: - post: - x-fern-sdk-method-name: send -``` - -## Multiple levels of nesting - -If you add more than one `x-fern-sdk-group-name` extension, then the generated SDK will nest group names. -The order of the group names is preserved in the generated SDK method. - -In the example below, Fern will generate a method called `client.users.notifications.send()`: - -```yaml title="openapi.yaml" -paths: - /users/notifications: - post: - x-fern-sdk-group-name: - - users - - notifications - x-fern-sdk-method-name: send -``` diff --git a/fern/products/openapi-def/pages/extensions/others.mdx b/fern/products/openapi-def/pages/extensions/others.mdx deleted file mode 100644 index b3aa4b3e..00000000 --- a/fern/products/openapi-def/pages/extensions/others.mdx +++ /dev/null @@ -1,416 +0,0 @@ ---- -title: Other extensions -description: Learn about Fern's OpenAPI extensions for authentication overrides, global headers, enum descriptions and names, audiences, and more. ---- - -Fern supports different OpenAPI extensions so that you can generate higher-quality SDKs. - -## API version - -You can define your API version scheme, such as a `X-API-Version` header. The supported versions and default value are specified like so: - -```yaml title="openapi.yaml" -x-fern-version: - version: - header: X-API-Version - default: "2.0.0" - values: - - "1.0.0" - - "2.0.0" - - "latest" -paths: ... -``` - -## Global headers - -At times, your API will leverage certain headers for every endpoint, or the majority of them, we call these "global headers". For convenience, generated Fern SDKs expose "global headers" to easily be updated on API calls. Take for example an API key, if we declare the API key as a global header, a user will be able to plug theirs in easily: - -```python -import os - -class Client: - - def __init__(self, *, apiKey: str): -``` - -To configure global headers, Fern will automatically pull out headers that are used in every request, or the majority of requests, and mark them as global. -In order to label additional headers as global, or to alias the names of global headers, you can leverage the `x-fern-global-headers` extension: - -```yaml title="openapi.yml" -x-fern-global-headers: - - header: custom_api_key - name: api_key - - header: userpool_id - optional: true -``` - -yields the following client: - -```python -import os - -class Client: - - def __init__(self, *, apiKey: str, userpoolId: typing.Optional[str]) -``` - -## Enum descriptions and names - -OpenAPI doesn't natively support adding descriptions to enum values. To do this in Fern you can use the `x-fern-enum` -extension. - -In the example below, we've added some descriptions to enum values. These descriptions will -propagate into the generated SDK and docs website. - -```yaml title="openapi.yml" {9-13} -components: - schemas: - CardSuit: - enum: - - clubs - - diamonds - - hearts - - spades - x-fern-enum: - clubs: - description: Some docs about clubs - spades: - description: Some docs about spades -``` - -`x-fern-enum` also supports a `name` field that allows you to customize the name of the enum in code. -This is particularly useful when you have enums that rely on symbolic characters that would otherwise cause -generated code not to compile. - -For example, the following OpenAPI - -```yaml title="openapi.yml" {9,12} -components: - schemas: - Operand: - enum: - - '>' - - '<' - x-fern-enum: - '>': - name: GreaterThan - description: Checks if value is greater than - '<': - name: LessThan - description: Checks if value is less than -``` - -would generate - -```typescript title="operand.ts" -export enum Operand { - GreaterThan = ">", - LessThan = "<" -} -``` - -## Schema names - -OpenAPI allows you to define inlined schemas that do not have names. - -```yaml title="Inline type in openapi.yml" {11} -components: - schemas: - Movie: - type: object - properties: - name: - type: string - cast: - type: array - items: - type: object - properties: - firstName: - type: string - lastName: - type: string - age: - type: integer -``` - -Fern automatically generates names for all the inlined schemas. For example, in this example, -Fern would generate the name `CastItem` for the inlined array item schema. - -```typescript title="Auto-generated name" {6} -export interface Movie { - name?: string; - cast?: CastItem[]; -} - -export interface CastItem { - firstName?: string; - lastName?: string; - age?: integer; -} -``` - -If you want to override the generated name, you can use the extension `x-fern-type-name`. - -```yaml title="openapi.yml" {12} -components: - schemas: - Movie: - type: object - properties: - name: - type: string - cast: - type: array - items: - type: object - x-fern-type-name: Person - properties: - firstName: - type: string - lastName: - type: string - age: - type: integer -``` - -This would replace `CastItem` with `Person` and the generated code would read more idiomatically: - -```typescript title="Overridden name" {6} -export interface Movie { - name?: string; - cast?: Person[]; -} - -export interface Person { - firstName?: string; - lastName?: string; - age?: integer; -} -``` - -## Property names - -The `x-fern-property-name` extension allows you to customize the variable name for object -properties. - -For example, if you had a property called `_metadata` in your schema but you wanted the -variable to be called `data` in your SDK you would do the following: - -```yaml {6} -components: - schemas: - MyUser: - _metadata: - type: object - x-fern-property-name: data -``` - -## Server names - -The `x-fern-server-name` extension is used to name your servers. - -```yaml title="openapi.yml" -servers: - - url: https://api.example.com - x-fern-server-name: Production - - url: https://sandbox.example.com - x-fern-server-name: Sandbox -``` - -In a generated TypeScript SDK, you'd see: - -```typescript title="environment.ts" -export const ExampleEnvironment = { - Production: "https://api.example.com" -} as const; - -export type ExampleEnvironment = typeof ExampleEnvironment.Production; -``` - -## Base path - -The `x-fern-base-path` extension is used to configure the base path prepended to every endpoint. - -In the example below, we have configured the `/v1` base path so the full endpoint path is -`https://api.example.com/v1/users`. - -```yaml title="Set the base path in openapi.yml" {1} -x-fern-base-path: /v1 -servers: - - url: https://api.example.com -paths: - /users: ... -``` - -## Ignoring schemas or endpoints - -If you want Fern to skip reading any endpoints or schemas, use the `x-fern-ignore` extension. - -To skip an endpoint, add `x-fern-ignore: true` at the operation level. - -```yaml title="x-fern-ignore at operation level in openapi.yml" {4} -paths: - /users: - get: - x-fern-ignore: true - ... -``` - -To skip a schema, add `x-fern-ignore: true` at the schema level. - -```yaml title="x-fern-ignore at schema level in openapi.yml" {4} -components: - schemas: - SchemaToSkip: - x-fern-ignore: true - ... -``` - -## Overlaying extensions - -Because of the number of tools that use OpenAPI, it may be more convenient to -"overlay" your fern specific OpenAPI extensions onto your original definition. \ -In order to do this you can specify your overrides file in `generators.yml`. - -Below is an example of how someone can overlay the extensions `x-fern-sdk-method-name` and -`x-fern-sdk-group-name` without polluting their original OpenAPI. The combined result is -shown in the third tab. - - - ```yaml title="generators.yml" {3} - api: - path: ./openapi/openapi.yaml - overrides: ./openapi/overrides.yaml - default-group: sdk - groups: - sdk: - generators: - - name: fernapi/fern-python-sdk - version: 2.2.0 - ``` - - ```yaml title="overrides.yml" - paths: - /users: - get: - x-fern-sdk-group-name: users - x-fern-sdk-method-name: get - ``` - - ```yaml title="Overlaid OpenAPI" {4-5} - paths: - /users: - get: - x-fern-sdk-group-name: users - x-fern-sdk-method-name: get - summary: Get a list of users - description: Retrieve a list of users from the system. - responses: - '200': - description: Successful response - '500': - description: Internal Server Error - ``` - - - -## Embedding extensions - -If instead of overlaying your extensions within an overrides file, as mentioned above. Certain frameworks that generate OpenAPI Specifications make it easy to embed extensions directly from code. - -### FastAPI - -Please view our page on [FastAPI](/learn/api-definition/openapi/frameworks/fastapi) for more information on how to extend your OpenAPI Specification within FastAPI. - -## Request + response examples - -While OpenAPI has several fields for examples, there is no easy way -to associate a request with a response. This is especially useful when -you want to show more than one example in your documentation. - -`x-fern-examples` is an array of examples. Each element of the array -can contain `path-parameters`, `query-parameters`, `request` and `response` -examples values that are all associated. - -```yaml title="openapi.yml" {5-16} -paths: - /users/{userId}: - get: - x-fern-examples: - - path-parameters: - userId: user-1234 - response: - body: - name: Foo - ssn: 1234 - - path-parameters: - userId: user-4567 - response: - body: - name: Foo - ssn: 4567 -components: - schemas: - User: - type: object - properties: - name: - type: string - ssn: - type: integer -``` - -### Code samples - -If you'd like to specify custom code samples for your example, use `code-samples`. - -```yaml title="openapi.yml" {11-16} -paths: - /users/{userId}: - get: - x-fern-examples: - - path-parameters: - userId: user-1234 - response: - body: - name: Foo - ssn: 1234 - code-samples: - - sdk: typescript - code: | - import { UserClient } from "..."; - - client.users.get("user-1234") -``` - -If you're on the Fern Basic plan or higher for SDKs you won't have to worry about manually adding code samples! Our generators do that for you. - -## Availability - -The `x-fern-availability` extension is used to mark the availability of an endpoint. The availability information propagates into the generated Fern Docs website as visual tags. - -The options are: - -- `beta` -- `generally-available` -- `deprecated` - -The example below marks that the `POST /pet` endpoint is `deprecated`. - -```yaml title="x-fern-availability in openapi.yml" {4} -paths: - /pet: - post: - x-fern-availability: deprecated -``` - -This renders as: - - -![Screenshot of API Reference endpoint with tag showing deprecated](https://fern-image-hosting.s3.amazonaws.com/fern/x-fern-availability-example.png) - - -### Request new extensions - -If there's an extension you want that doesn't already exist, file an [issue](https://github.com/fern-api/fern/issues/new) to start a discussion about it. diff --git a/fern/products/openapi-def/pages/extensions/parameter-names.mdx b/fern/products/openapi-def/pages/extensions/parameter-names.mdx deleted file mode 100644 index ff60bf61..00000000 --- a/fern/products/openapi-def/pages/extensions/parameter-names.mdx +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: Customize parameter names -description: Use `x-fern-parameter-name` to customize query parameter, header and path parameter naming. ---- - - - The `x-fern-parameter-name` extension allows you to customize the variable names of parameters in your generated SDKs. - - -## Headers - -In the example below, the header `X-API-Version` is renamed to `version` in the -generated SDK. The rename makes the SDK more human readable. - -```yaml {8} -paths: - "/user": - get: - operationId: list_user - parameters: - - in: header - name: X-API-Version - x-fern-parameter-name: version - schema: - type: string - required: true -``` - -## Query parameters - -In the example below, the query parameter `q` is renamed to `search_terms` in the -generated SDK. The rename makes the parameter more approachable for end users. - -```yaml {8} -paths: - "/user/search": - get: - operationId: search_user - parameters: - - in: query - name: q - x-fern-parameter-name: search_terms - schema: - type: string - required: false -``` - -## Path parameters - -In the example below, the path parameter `userId` is renamed to `id` in the -generated SDK. The rename makes the SDK less verbose. - -```yaml {8} -paths: - "/user/{userId}": - get: - operationId: get_user - parameters: - - in: path - name: userId - x-fern-parameter-name: id - schema: - type: string - required: false -``` diff --git a/fern/products/openapi-def/pages/overrides.mdx b/fern/products/openapi-def/pages/overrides.mdx deleted file mode 100644 index 50d6462d..00000000 --- a/fern/products/openapi-def/pages/overrides.mdx +++ /dev/null @@ -1,74 +0,0 @@ ---- -title: Overlay customizations on an existing OpenAPI spec -subtitle: Can't directly modify your OpenAPI spec? No worries, use an overrides file instead. ---- - -If you generate your OpenAPI from server code, you may want to tweak your OpenAPI Spec without having to -touch the generated file. Fern supports this via an `overrides` file. - - -```yml openapi.yml -paths: - /users: - post: - description: Create a User - operationId: users_post - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/User' -``` -```yml title="overrides.yml" {4-5} -paths: - /users: - post: - x-fern-sdk-group-name: users - x-fern-sdk-method-name: create -``` -```yml title="combined" {4-5} -paths: - /users/post: - post: - x-fern-sdk-group-name: users - x-fern-sdk-method-name: create - description: Create a User - operationId: users_post - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/User' -``` - - -## Configuration - -Follow the steps below to configure your OpenAPI overrides: - - -### Create an `overrides.yml` - -Simply create a yaml file and write down all the overrides you want to add: - -```yaml overrides.yml -paths: - /v1/history: - get: - x-fern-sdk-group-name: - - history - x-fern-sdk-method-name: get_all -``` - -### Reference the file in your `generators.yml` - -```yml generators.yml -api: - path: ../openapi.yml - overrides: ../overrides.yml -``` - - The format of the overrides file is independent from the spec. For example, even if your OpenAPI spec is in JSON format, you can write the overrides in yaml. - - - diff --git a/fern/products/openapi-def/pages/overview.mdx b/fern/products/openapi-def/pages/overview.mdx deleted file mode 100644 index c6cc053e..00000000 --- a/fern/products/openapi-def/pages/overview.mdx +++ /dev/null @@ -1,128 +0,0 @@ ---- -title: What is an OpenAPI Specification? -subtitle: OpenAPI is a standard for documenting REST APIs ---- - -The OpenAPI Specification (OAS) is a framework used by developers to document REST APIs. The specification -written in JSON or YAML and contains all of your endpoints, parameters, schemas, and authentication schemes. -Fern is compatible with the latest OAS release, which is currently [v3.1.1](https://spec.openapis.org/#openapi-specification). - - Considering options to generate an OpenAPI spec? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) - -Below is an example of an OpenAPI file: - -```yaml openapi.yml -openapi: 3.0.2 -info: - title: Petstore - OpenAPI 3.0 - description: |- - This is a sample Pet Store Server based on the OpenAPI 3.0 specification. -paths: - "/pet": - put: - tags: - - pet - summary: Update an existing pet - description: Update an existing pet by Id - operationId: updatePet - requestBody: - description: Update an existent pet in the store - content: - application/json: - schema: - "$ref": "#/components/schemas/Pet" - required: true - responses: - '200': - description: Successful operation - content: - application/json: - schema: - "$ref": "#/components/schemas/Pet" - '400': - description: Invalid ID supplied - '404': - description: Pet not found - '405': - description: Validation exception - security: - - api_key -components: - schemas: - Category: - type: object - properties: - id: - type: integer - format: int64 - example: 1 - name: - type: string - example: Dogs - Tag: - type: object - properties: - id: - type: integer - format: int64 - name: - type: string - Pet: - required: - - name - - photoUrls - type: object - properties: - id: - type: integer - format: int64 - example: 10 - name: - type: string - example: doggie - category: - "$ref": "#/components/schemas/Category" - photoUrls: - type: array - items: - type: string - tags: - type: array - items: - "$ref": "#/components/schemas/Tag" - status: - type: string - description: pet status in the store - enum: - - available - - pending - - sold - securitySchemes: - api_key: - type: apiKey - name: api_key - in: header -``` - -## Setup your fern folder - -Start by initializing your fern folder with an OpenAPI spec - - -```sh file -fern init --openapi ./path/to/openapi -``` -```sh url -fern init --openapi https://host/path/to/openapi -``` - - -This will initialize a directory like the following -``` -fern/ - ├─ fern.config.json - ├─ generators.yml - └─ openapi/ - ├─ openapi.yml -``` - diff --git a/fern/products/openapi-def/pages/server-frameworks/fastapi.mdx b/fern/products/openapi-def/pages/server-frameworks/fastapi.mdx deleted file mode 100644 index df5bcbe3..00000000 --- a/fern/products/openapi-def/pages/server-frameworks/fastapi.mdx +++ /dev/null @@ -1,92 +0,0 @@ ---- -title: FastAPI Instrumentation -description: Learn about best practices for creating rich OpenAPI Specifications when instrumenting FastAPI applications. ---- - -[FastAPI](https://fastapi.tiangolo.com/) is a popular Python web framework developed by [tiangolo](https://github.com/tiangolo). - -The offering brands itself as - -> FastAPI is a modern, fast (high-performance), web framework for building APIs with Python based on standard Python type hints. - -FastAPI plays very nicely with Fern because it has the power to output OpenAPI Specifications! Below we'll outline some tips for generating a rich OpenAPI with FastAPI. - - -## OpenAPI generation - -By default, FastAPI will generate an OpenAPI Specification for you based on your routes and your data models! You can access this spec by visiting `/docs` on your FastAPI server. - -If you are not seeing any OpenAPI Specification (or the Swagger UI), you may need to review your FastAPI server configuration as the path may have been changed, or completely omitted. - -```python {6-8} -from fastapi import FastAPI - -... - -FastAPI( - openapi_url="/openapi.json", # <-- this is the file and URL needed to access the OpenAPI Specification, `docs_url` and `redoc_url` are convenient wrappers that display the file in a UI! - docs_url="/docs", # <-- this is the URL to access the Swagger UI, which will point to your OpenAPI Specification - redoc_url="/redoc" # <-- this is the URL to access the ReDoc UI, which will point to your OpenAPI Specification -) -``` - -## Specifying servers - -Fern will automatically generate clients that point to the servers you configure within your OpenAPI Specification, so it's important to specify the servers that your API will be hosted on. - -```python {5} -from fastapi import FastAPI - -... - -app = FastAPI(servers=[{"url": "http://prod.test.com", "description": "Production server"}]) -# This creates the following server object in your OpenAPI Specification: -# "servers":[{"url":"http://prod.test.com","description":"Production server"}], -``` - -## OpenAPI extensions - -FastAPI allows you to add in extra OpenAPI configuration directly within your route, through the use of the `openapi_extra` parameter. -Below, we've annotated a "good" route within FastAPI that has it's typings as well as Fern extensions to assist in naming. - -```python {5-9} -@router.post( - "/your/post/endpoint", - response_model=YourResponseModel, # <-- with FastAPI, it is important to specify your response model so that it comes through to the OpenAPI Specification - summary="Get some response for your req", # <-- if you'd like to add a description to your endpoint, you can do so here - openapi_extra={ # <-- finally, you can add in your Fern extensions here, these extensions will produce SDK code that looks something like: `client.endpoints.create(...)` in python - "x-fern-sdk-method-name": "create", - "x-fern-sdk-group-name": "endpoints", - "x-fern-availability": "beta", - }, -) -async def your_post_endpoint( - payload: YourRequestModel, -) -> YourResponseModel: -``` - -## Specifying examples - -FastAPI allows you to specify examples for your data models, which Fern will pick up and use within your generated SDKs and documentation automatically. - -For more information on leveraging examples within Fern, please refer to the [Fern documentation](/learn/api-definition/openapi/extensions/others#request--response-examples). - -For more information on this FastAPI functionality, please refer to the [FastAPI documentation](https://fastapi.tiangolo.com/tutorial/schema-extra-example/). - -```python {7-11} -from pydantic import BaseModel - -class MyObject(BaseModel): - id: str - - class Config: - schema_extra = { - "example": { - "id": "a-cool-uuid", - } - } -``` - -## Additional customization - -FastAPI has a lot of flexibility in how you can customize your OpenAPI Specification. Please refer to the [FastAPI documentation](https://fastapi.tiangolo.com/how-to/extending-openapi/#modify-the-openapi-schema) for more information. diff --git a/fern/products/openapi-def/pages/servers.mdx b/fern/products/openapi-def/pages/servers.mdx deleted file mode 100644 index 28ce155a..00000000 --- a/fern/products/openapi-def/pages/servers.mdx +++ /dev/null @@ -1,84 +0,0 @@ ---- -title: Servers -description: Configure server URLs and environments to help users connect to your API. -subtitle: Define server URLs and environments to help users connect to your API. ---- - -OpenAPI allows you to specify one or more base URLs under the `servers` key. - -```yml openapi.yml - -servers: - - url: https://api.yourcompany.com/ - - url: https://api.eu.yourcompany.com/ -``` - -Specifying servers is valuable for both SDKs and Docs: -- For SDKs, your users won't need to manually specify the baseURL at client instantiation -- For Docs, your API playground will automatically hit the correct server - -## Naming your servers - -If you have more than one server, we recommend specifying an `x-fern-server-name` to name -the server. - -```yml openapi.yml {3,5} -servers: - - x-fern-server-name: Production - url: https://api.yourcompany.com/ - - x-fern-server-name: Production_EU - url: https://api.eu.yourcompany.com/ -``` - -## Multiple Base URLs for a single API - -If you have a microservice architecture, it is possible that you may have different endpoints hosted -at different URLs. For example, your AI endpoints might be hosted at `ai.yourcompany.com` and the rest -of your endpoints might be hosted at `api.yourcompany.com`. - -To specify this, you will need to add configuration to both your `generators.yml` and OpenAPI spec. The -snippet directly below shows how to configure an environment with multiple urls in your `generators.yml`. - -```yml generators.yml {3-8} -api: - default-environment: Production - default-url: api - environments: - Production: - api: api.yourcompany.com - ai: ai.yourcompany.com - specs: - - openapi: ./path/to/your/openapi - overrides: ./path/to/your/overrides # optional -``` - -Once you've specified the environments in your `generators.yml`, you can use the `x-fern-server-name` -extension to specify which server the operation belongs to. - -```yml openapi.yml {4} -paths: - /chat: - post: - x-fern-server-name: ai -``` - -If you have multiple environments like development or staging, you can model those in your `generators.yml` -as well. - -```yml generators.yml {7-12} -api: - default-environment: Production - default-url: api - environments: - Production: - api: api.yourcompany.com - ai: ai.yourcompany.com - Staging: - api: api.staging.yourcompany.com - ai: ai.staging.yourcompany.com - Dev: - api: api.dev.yourcompany.com - ai: ai.dev.yourcompany.com -``` - -To see an example of this in production, check out the Chariot [generators.yml](https://github.com/chariot-giving/chariot-openapi/blob/main/fern/apis/2025-02-24/generators.yml) \ No newline at end of file diff --git a/fern/products/openapi-def/pages/webhooks.mdx b/fern/products/openapi-def/pages/webhooks.mdx deleted file mode 100644 index a6d9ebdd..00000000 --- a/fern/products/openapi-def/pages/webhooks.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Webhooks -subtitle: Define webhooks using OpenAPI 3.1+ native webhook support or Fern's extensions ---- - -Fern supports two methods for defining webhooks in your OpenAPI specification: - -1. Using OpenAPI 3.1's native webhook support (recommended) -2. Using Fern's `x-fern-webhook` extension - -## OpenAPI 3.1 Webhooks - -For OpenAPI 3.1 specifications, use the `webhooks` top-level field to define your webhook operations. Each webhook requires an `operationId` to be properly processed by Fern. - -```yaml openapi.yml {4} -webhooks: - newPlant: - post: - operationId: newPlantWebhook - requestBody: - description: Information about a new Plant in the system - content: - application/json: - schema: - $ref: '#/components/schemas/Plant' - responses: - '200': - description: Return a 200 status to indicate that the data was received successfully -``` - -## Fern Webhook Extension - -For OpenAPI 3.0, use the `x-fern-webhook: true` extension to define webhooks. Fern will treat the `requestBody` as the webhook payload. - -```yaml openapi.yml {6} -paths: - /payment/updated/: - post: - summary: Payment Initiated - operationId: initiatePayment - x-fern-webhook: true - requestBody: - content: - application/json: - schema: - type: object - properties: - amount: - type: number - currency: - $ref: '#/components/schemas/Currency' - required: - - amount - - currency -``` - - -The path that you choose when defining a webhook can be arbitrary. Since webhooks -can be sent to any server, Fern just ignores the path. - diff --git a/fern/products/openrpc-def/openrpc-def.yml b/fern/products/openrpc-def/openrpc-def.yml deleted file mode 100644 index 2235fb2a..00000000 --- a/fern/products/openrpc-def/openrpc-def.yml +++ /dev/null @@ -1,39 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Servers - path: ./pages/servers.mdx - - section: Methods - slug: methods - contents: - - page: JSON-RPC Methods - path: ./pages/methods/rpc-methods.mdx - slug: rpc-methods - - page: Notifications - path: ./pages/methods/notifications.mdx - slug: notifications - - page: Batch Requests - path: ./pages/methods/batch.mdx - slug: batch - - section: Extensions - slug: extensions - contents: - - page: Audiences - path: ./pages/extensions/audiences.mdx - - page: SDK Method Names - path: ./pages/extensions/method-names.mdx - slug: method-names - - page: Parameter Names - path: ./pages/extensions/parameter-names.mdx - - page: Other - path: ./pages/extensions/others.mdx - slug: others - - section: Workflow & Automation - skip-slug: true - contents: - - page: Overlay Customizations - path: ./pages/overrides.mdx - - page: Sync your OpenRPC Specification - path: ./pages/automation.mdx diff --git a/fern/products/openrpc-def/pages/auth.mdx b/fern/products/openrpc-def/pages/auth.mdx deleted file mode 100644 index aefa3f0e..00000000 --- a/fern/products/openrpc-def/pages/auth.mdx +++ /dev/null @@ -1,235 +0,0 @@ ---- -title: Authentication -subtitle: Model auth schemes for JSON-RPC APIs including bearer, basic, and api key authentication ---- - -Authentication in OpenRPC can be configured at the server level or method level, depending on your JSON-RPC implementation. Unlike REST APIs, JSON-RPC typically handles authentication through the transport layer (HTTP headers) or within the JSON-RPC request payload. - -## HTTP Transport Authentication - -When using HTTP as the transport for JSON-RPC, you can use standard HTTP authentication schemes. - -### Bearer Token Authentication - -Configure bearer token authentication for HTTP-based JSON-RPC: - -```yml title="openrpc.yml" {4-9} -servers: - - name: production - url: https://api.example.com/rpc - description: Production JSON-RPC server - security: - - bearerAuth: [] -components: - securitySchemes: - bearerAuth: - type: http - scheme: bearer - bearerFormat: JWT -``` - -This generates SDK methods that require a token: - -```typescript -const client = new JSONRPCClient({ - url: "https://api.example.com/rpc", - auth: { - bearer: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." - } -}); - -// Call JSON-RPC method -const result = await client.call("calculate.add", { a: 5, b: 3 }); -``` - -### API Key Authentication - -Configure API key authentication: - -```yml title="openrpc.yml" {4-9} -servers: - - name: production - url: https://api.example.com/rpc - description: Production JSON-RPC server - security: - - apiKeyAuth: [] -components: - securitySchemes: - apiKeyAuth: - type: apiKey - in: header - name: X-API-Key -``` - -Usage in SDK: - -```typescript -const client = new JSONRPCClient({ - url: "https://api.example.com/rpc", - auth: { - apiKey: "your-api-key-here" - } -}); -``` - -### Basic Authentication - -Configure basic authentication: - -```yml title="openrpc.yml" {4-9} -servers: - - name: production - url: https://api.example.com/rpc - description: Production JSON-RPC server - security: - - basicAuth: [] -components: - securitySchemes: - basicAuth: - type: http - scheme: basic -``` - -Usage in SDK: - -```typescript -const client = new JSONRPCClient({ - url: "https://api.example.com/rpc", - auth: { - username: "user@example.com", - password: "password123" - } -}); -``` - -## Method-Level Authentication - -Some JSON-RPC implementations may require different authentication for specific methods: - -```yml title="openrpc.yml" {6-7, 15-16} -methods: - - name: public.getInfo - summary: Get public information - description: Publicly accessible method (no auth required) - params: [] - result: - name: info - schema: - type: object - - name: user.getProfile - summary: Get user profile - description: Requires user authentication - security: - - bearerAuth: [] - params: - - name: userId - schema: - type: string - required: true - result: - name: profile - schema: - $ref: '#/components/schemas/UserProfile' -``` - -## WebSocket Authentication - -For WebSocket transport, authentication typically happens during connection establishment: - -```yml title="openrpc.yml" {4-8} -servers: - - name: websocket - url: wss://api.example.com/rpc - description: WebSocket JSON-RPC server - variables: - token: - description: Authentication token for WebSocket connection - default: "" - security: - - wsAuth: [] -components: - securitySchemes: - wsAuth: - type: apiKey - in: query - name: token - description: Authentication token passed as query parameter -``` - -## Custom Authentication Parameters - -For JSON-RPC APIs that handle authentication within the request payload: - -```yml title="openrpc.yml" {8-16} -methods: - - name: auth.login - summary: Authenticate user - description: Login method that returns authentication token - params: - - name: credentials - schema: - type: object - properties: - username: - type: string - password: - type: string - required: - - username - - password - result: - name: authResult - schema: - type: object - properties: - token: - type: string - expiresIn: - type: integer - refreshToken: - type: string -``` - -## Fern Extensions for Authentication - -Use Fern extensions to customize authentication behavior: - -```yml title="openrpc.yml" {5-8} -components: - securitySchemes: - bearerAuth: - type: http - scheme: bearer - x-fern-token: - name: authToken - env: AUTH_TOKEN -``` - -This allows users to set authentication via environment variables or constructor parameters, making the SDK more flexible and secure. - -## Error Handling for Authentication - -Define standardized error responses for authentication failures: - -```yml title="openrpc.yml" {2-12} -components: - errors: - - code: -32001 - message: Authentication required - data: - type: object - properties: - error: - type: string - const: "Authentication token is required" - - code: -32002 - message: Invalid authentication - data: - type: object - properties: - error: - type: string - const: "Invalid or expired authentication token" -``` - -These error codes follow JSON-RPC 2.0 conventions while providing clear authentication feedback to API consumers. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/automation.mdx b/fern/products/openrpc-def/pages/automation.mdx deleted file mode 100644 index b967c544..00000000 --- a/fern/products/openrpc-def/pages/automation.mdx +++ /dev/null @@ -1,316 +0,0 @@ ---- -title: Sync your OpenRPC Specification -subtitle: Automatically sync your OpenRPC spec changes to keep SDKs and docs up to date ---- - -Keeping your OpenRPC specifications in sync with your codebase is crucial for maintaining accurate SDKs and documentation. Fern provides several automation options to streamline this process. - -## GitHub Actions - -Use Fern's GitHub Action to automatically update SDKs and docs when your OpenRPC spec changes: - -```yaml title=".github/workflows/fern.yml" -name: Fern - -on: - push: - branches: - - main - pull_request: - branches: - - main - -jobs: - fern-check: - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Check OpenRPC spec - uses: fern-api/action@v0 - with: - command: check - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} - - fern-generate: - runs-on: ubuntu-latest - if: github.event_name == 'push' && github.ref == 'refs/heads/main' - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Generate SDKs and docs - uses: fern-api/action@v0 - with: - command: generate - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} -``` - -## Webhook integration - -Set up webhooks to trigger SDK generation when your OpenRPC spec is updated: - -```yaml title="generators.yml" {4-8} -api: - specs: - - spec: openrpc.yml - github: - repository: your-org/your-repo - webhooks: - - url: https://your-api.com/webhooks/fern - events: [generate] - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: npm - package-name: "@your-org/jsonrpc-sdk" -``` - -## Auto-sync from source - -Configure Fern to automatically pull your OpenRPC specification from various sources: - -### From URL -```yaml title="generators.yml" {3-4} -api: - specs: - - spec: https://api.yourcompany.com/openrpc.yml - auto-sync: true - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -### From Git repository -```yaml title="generators.yml" {3-7} -api: - specs: - - spec: - git: - repository: https://github.com/your-org/api-specs - path: openrpc/api.yml - branch: main - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## CI/CD integration - -### CircleCI -```yaml title=".circleci/config.yml" {15-23} -version: 2.1 - -orbs: - fern: fernapi/fern@1.0 - -workflows: - version: 2 - build-and-test: - jobs: - - build - - test: - requires: - - build - - fern/generate: - requires: - - test - filters: - branches: - only: main - context: - - fern-context -``` - -### GitLab CI -```yaml title=".gitlab-ci.yml" {13-20} -stages: - - build - - test - - generate - -variables: - FERN_TOKEN: $FERN_TOKEN - -build: - stage: build - script: - - echo "Building JSON-RPC service..." - -generate-sdks: - stage: generate - image: fernapi/fern:latest - script: - - fern generate - only: - - main -``` - -## Scheduled updates - -Set up scheduled updates to ensure your SDKs stay current: - -```yaml title=".github/workflows/scheduled-update.yml" -name: Scheduled OpenRPC Update - -on: - schedule: - - cron: '0 2 * * 1' # Every Monday at 2 AM UTC - workflow_dispatch: - -jobs: - update-specs: - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Update OpenRPC specs - run: | - curl -o fern/openrpc/openrpc.yml https://api.yourcompany.com/openrpc.yml - - - name: Generate with latest spec - uses: fern-api/action@v0 - with: - command: generate - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} -``` - -## Code generation from JSON-RPC server - -For servers that can generate their own OpenRPC specifications: - -```yaml title=".github/workflows/auto-generate.yml" -name: Auto-generate from JSON-RPC server - -on: - push: - paths: - - 'src/**/*.py' # Trigger on server code changes - - 'src/**/*.js' - - 'src/**/*.ts' - -jobs: - generate-spec: - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Setup environment - uses: actions/setup-python@v4 - with: - python-version: '3.9' - - - name: Install dependencies - run: | - pip install -r requirements.txt - - - name: Generate OpenRPC spec - run: | - python scripts/generate_openrpc.py --output fern/openrpc/openrpc.yml - - - name: Generate SDKs - uses: fern-api/action@v0 - with: - command: generate - env: - FERN_TOKEN: ${{ secrets.FERN_TOKEN }} -``` - -## Monitoring changes - -Track changes to your OpenRPC specification: - -```yaml title="generators.yml" {4-9} -api: - specs: - - spec: openrpc.yml - change-detection: - enabled: true - breaking-changes: error - notifications: - slack: ${{ secrets.SLACK_WEBHOOK }} - email: team@yourcompany.com - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## Multi-environment sync - -Sync different specifications for different environments: - -```yaml title="generators.yml" {3-7, 12-16, 21-25} -environments: - production: - specs: - - spec: https://api.prod.yourcompany.com/openrpc.yml - overlays: - - prod-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: npm - package-name: "@yourcompany/prod-sdk" - staging: - specs: - - spec: https://api.staging.yourcompany.com/openrpc.yml - overlays: - - staging-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: npm - package-name: "@yourcompany/staging-sdk" - development: - specs: - - spec: http://localhost:8080/openrpc.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - output: - location: local - path: ./generated-sdk -``` - -## JSON-RPC server introspection - -For servers that support OpenRPC discovery: - -```python title="scripts/sync_from_server.py" -import requests -import yaml -import json - -def fetch_openrpc_spec(server_url): - """Fetch OpenRPC spec from a JSON-RPC server that supports introspection""" - payload = { - "jsonrpc": "2.0", - "method": "rpc.discover", - "id": 1 - } - - response = requests.post(f"{server_url}/rpc", json=payload) - spec = response.json()["result"] - - return spec - -def save_spec_as_yaml(spec, output_path): - """Convert JSON spec to YAML and save""" - with open(output_path, 'w') as f: - yaml.dump(spec, f, default_flow_style=False) - -if __name__ == "__main__": - spec = fetch_openrpc_spec("https://api.yourcompany.com") - save_spec_as_yaml(spec, "fern/openrpc/openrpc.yml") -``` - -This ensures that any breaking changes to your OpenRPC specification are detected and the appropriate team members are notified before the changes are propagated to your SDKs and documentation. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/extensions/audiences.mdx b/fern/products/openrpc-def/pages/extensions/audiences.mdx deleted file mode 100644 index 6e7afb97..00000000 --- a/fern/products/openrpc-def/pages/extensions/audiences.mdx +++ /dev/null @@ -1,295 +0,0 @@ ---- -title: Use audiences to filter your API -subtitle: Use `x-fern-audiences` to filter to relevant methods, parameters and schemas ---- - -Audiences are a useful tool for segmenting your JSON-RPC API for different consumers. Common examples of audiences include `public` -and `beta`. - - - Remember to filter your SDKs and Docs after specifying audiences. If **no audiences** are specified, - nothing will be filtered. - - - - -The following example configures the SDK to filter to the `public` audience: - -```yaml title="generators.yml" {3-4} -groups: - sdks: - audiences: - - public - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - - - -The following example configures the docs to filter to the `public` audience: - -```yaml title="docs.yml" {3-4} -navigation: - - api: API Reference - audiences: - - public -``` - - - - - -## Filter methods - -Add `x-fern-audiences` to methods to control which methods are included for specific audiences: - -```yaml title="openrpc.yml" {5-6, 12-13} -methods: - - name: public.getInfo - summary: Get public API information - description: Publicly available information about the API - x-fern-audiences: - - public - params: [] - result: - name: info - schema: - $ref: '#/components/schemas/ApiInfo' - - name: admin.getUsers - summary: Get all users (admin only) - x-fern-audiences: - - admin - params: - - name: limit - schema: - type: integer - default: 100 - result: - name: users - schema: - type: array - items: - $ref: '#/components/schemas/User' -``` - -## Filter method parameters - -You can filter specific parameters within methods: - -```yaml title="openrpc.yml" {8-9, 14-15} -methods: - - name: user.create - summary: Create a new user - params: - - name: userData - schema: - type: object - properties: - email: - type: string - format: email - name: - type: string - adminNotes: - type: string - x-fern-audiences: - - admin - internalId: - type: string - x-fern-audiences: - - internal - required: - - email - - name - required: true - result: - name: user - schema: - $ref: '#/components/schemas/User' -``` - -## Filter schemas - -Filter entire schemas to different audiences: - -```yaml title="openrpc.yml" {5-6, 20-21} -components: - schemas: - PublicUser: - type: object - x-fern-audiences: - - public - properties: - id: - type: string - name: - type: string - email: - type: string - required: - - id - - name - - email - AdminUser: - allOf: - - $ref: '#/components/schemas/PublicUser' - - type: object - x-fern-audiences: - - admin - properties: - role: - type: string - permissions: - type: array - items: - type: string - createdAt: - type: string - format: date-time - lastLoginAt: - type: string - format: date-time -``` - -## Filter schema properties - -You can filter individual properties within schemas: - -```yaml title="openrpc.yml" {9-10, 13-14, 17-18} -components: - schemas: - Order: - type: object - properties: - id: - type: string - amount: - type: number - x-fern-audiences: - - public - internalCost: - type: number - x-fern-audiences: - - internal - debugInfo: - type: object - x-fern-audiences: - - debug - customerInfo: - type: object - properties: - id: - type: string - email: - type: string - x-fern-audiences: - - admin -``` - -## Filter error responses - -Filter error information based on audience: - -```yaml title="openrpc.yml" {7-12, 14-19} -methods: - - name: payment.process - summary: Process a payment - params: - - name: paymentData - schema: - $ref: '#/components/schemas/PaymentRequest' - errors: - - code: -32001 - message: Payment failed - x-fern-audiences: - - public - data: - type: object - properties: - error: - type: string - const: "Payment could not be processed" - - code: -32001 - message: Payment failed - x-fern-audiences: - - admin - data: - type: object - properties: - error: - type: string - errorCode: - type: string - gatewayResponse: - type: object - debugTrace: - type: string -``` - -## Server-level filtering - -Apply audience filtering at the server level: - -```yaml title="openrpc.yml" {4-5, 10-11} -servers: - - name: public-api - url: https://api.example.com/rpc - x-fern-audiences: - - public - description: Public API server - - name: admin-api - url: https://admin-api.example.com/rpc - x-fern-audiences: - - admin - description: Admin API server with additional privileges -``` - -## Conditional method availability - -Use audiences to make methods available only in certain contexts: - -```yaml title="openrpc.yml" {5-6, 15-16, 25-26} -methods: - - name: debug.getSystemInfo - summary: Get system debug information - description: Internal system information for debugging - x-fern-audiences: - - debug - params: [] - result: - name: systemInfo - schema: - type: object - additionalProperties: true - - name: beta.advancedSearch - summary: Advanced search functionality - x-fern-audiences: - - beta - params: - - name: query - schema: - type: object - properties: - text: - type: string - filters: - type: object - additionalProperties: true - result: - name: results - schema: - $ref: '#/components/schemas/SearchResults' - - name: internal.resetCache - summary: Reset internal caches - x-fern-audiences: - - internal - params: - - name: cacheType - schema: - type: string - enum: [user, product, session, all] - # Notification - no result expected -``` - -This allows you to create different views of the same JSON-RPC API for different types of consumers, ensuring each audience only sees the methods and data relevant to their use case. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/extensions/method-names.mdx b/fern/products/openrpc-def/pages/extensions/method-names.mdx deleted file mode 100644 index d9e0528d..00000000 --- a/fern/products/openrpc-def/pages/extensions/method-names.mdx +++ /dev/null @@ -1,228 +0,0 @@ ---- -title: SDK Method Names -subtitle: Use `x-fern-sdk-method-name` to customize SDK method names for JSON-RPC methods ---- - -By default, Fern generates SDK method names based on your OpenRPC method names. You can override this behavior using the `x-fern-sdk-method-name` extension. - -## Customize method names - -Use `x-fern-sdk-method-name` to specify custom method names for your JSON-RPC methods: - -```yaml title="openrpc.yml" {4-5, 12-13} -methods: - - name: user.getById - summary: Get user by ID - x-fern-sdk-method-name: getUser - params: - - name: id - schema: - type: string - required: true - result: - name: user - schema: - $ref: '#/components/schemas/User' - - name: order.createNew - summary: Create a new order - x-fern-sdk-method-name: create - params: - - name: orderData - schema: - $ref: '#/components/schemas/CreateOrderRequest' - required: true - result: - name: order - schema: - $ref: '#/components/schemas/Order' -``` - -This will generate SDK methods like: - -```typescript -// Instead of client.user.getById() -const user = await client.user.getUser({ id: "user_123" }); - -// Instead of client.order.createNew() -const order = await client.order.create({ orderData: {...} }); -``` - -## Method naming conventions - -Follow these conventions when naming SDK methods: - -### CRUD operations -Use standard CRUD naming: - -```yaml title="openrpc.yml" {4-5} -methods: - - name: user.createUser - summary: Create a new user - x-fern-sdk-method-name: create - # Generates: client.user.create() - - - name: user.getUserById - summary: Get user by ID - x-fern-sdk-method-name: get - # Generates: client.user.get() - - - name: user.updateUser - summary: Update user information - x-fern-sdk-method-name: update - # Generates: client.user.update() - - - name: user.deleteUser - summary: Delete a user - x-fern-sdk-method-name: delete - # Generates: client.user.delete() -``` - -### List operations -Use descriptive names for list operations: - -```yaml title="openrpc.yml" {4-5} -methods: - - name: user.getAllUsers - summary: Get all users - x-fern-sdk-method-name: list - # Generates: client.user.list() - - - name: user.searchUsers - summary: Search for users - x-fern-sdk-method-name: search - # Generates: client.user.search() - - - name: order.getUserOrders - summary: Get orders for a user - x-fern-sdk-method-name: listByUser - # Generates: client.order.listByUser() -``` - -### Action operations -Use action-oriented names: - -```yaml title="openrpc.yml" {4-5} -methods: - - name: email.sendNotification - summary: Send email notification - x-fern-sdk-method-name: send - # Generates: client.email.send() - - - name: payment.processPayment - summary: Process a payment - x-fern-sdk-method-name: process - # Generates: client.payment.process() - - - name: cache.invalidateCache - summary: Invalidate cache entries - x-fern-sdk-method-name: invalidate - # Generates: client.cache.invalidate() -``` - -## Language-specific method names - -You can specify different method names for different programming languages: - -```yaml title="openrpc.yml" {4-9} -methods: - - name: user.getUserPreferences - summary: Get user preferences - x-fern-sdk-method-name: - python: get_preferences - typescript: getPreferences - go: GetPreferences - java: getPreferences - csharp: GetPreferences - params: - - name: userId - schema: - type: string - required: true - result: - name: preferences - schema: - $ref: '#/components/schemas/UserPreferences' -``` - -## Namespaced method names - -For methods with namespace prefixes, customize the final method name: - -```yaml title="openrpc.yml" {4-5, 12-13} -methods: - - name: analytics.track.pageView - summary: Track page view event - x-fern-sdk-method-name: trackPageView - params: - - name: eventData - schema: - $ref: '#/components/schemas/PageViewEvent' - required: true - - name: analytics.track.conversion - summary: Track conversion event - x-fern-sdk-method-name: trackConversion - params: - - name: eventData - schema: - $ref: '#/components/schemas/ConversionEvent' - required: true -``` - -Generates: -```typescript -await client.analytics.trackPageView({ eventData: {...} }); -await client.analytics.trackConversion({ eventData: {...} }); -``` - -## Notification method names - -For notification methods (one-way calls), use appropriate naming: - -```yaml title="openrpc.yml" {4-5, 12-13} -methods: - - name: log.recordError - summary: Record an error event - x-fern-sdk-method-name: logError - params: - - name: errorData - schema: - $ref: '#/components/schemas/ErrorData' - required: true - # No result - this is a notification - - name: metrics.incrementCounter - summary: Increment a metric counter - x-fern-sdk-method-name: increment - params: - - name: metric - schema: - type: string - required: true - - name: value - schema: - type: number - default: 1 - # No result - this is a notification -``` - -## Async method naming - -For methods that return promises or futures, consider async naming: - -```yaml title="openrpc.yml" {4-5} -methods: - - name: report.generateReport - summary: Generate a report (long-running) - x-fern-sdk-method-name: generateAsync - params: - - name: reportConfig - schema: - $ref: '#/components/schemas/ReportConfig' - required: true - result: - name: jobId - schema: - type: string - description: Job ID for tracking report generation -``` - -This ensures method names follow the conventions of each target language while maintaining clear and intuitive APIs for developers. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/extensions/others.mdx b/fern/products/openrpc-def/pages/extensions/others.mdx deleted file mode 100644 index 365ae046..00000000 --- a/fern/products/openrpc-def/pages/extensions/others.mdx +++ /dev/null @@ -1,302 +0,0 @@ ---- -title: Other Extensions -subtitle: Additional Fern extensions for OpenRPC specifications ---- - -Fern supports various extensions to enhance your OpenRPC specifications and improve the generated SDKs and documentation. - -## `x-fern-ignore` - -Use `x-fern-ignore` to exclude specific methods or schemas from SDK generation: - -```yaml title="openrpc.yml" {4-5, 12-13} -methods: - - name: debug.internalMethod - summary: Internal debugging method - x-fern-ignore: true - params: - - name: debugData - schema: - type: object - result: - name: debugResult - schema: - type: object - - name: test.experimentalFeature - summary: Experimental feature (not ready for public use) - x-fern-ignore: true - params: [] - result: - name: result - schema: - type: string -``` - -## `x-fern-examples` - -Provide additional examples for better SDK documentation: - -```yaml title="openrpc.yml" {8-25} -methods: - - name: user.create - summary: Create a new user - params: - - name: userData - schema: - $ref: '#/components/schemas/CreateUserRequest' - required: true - x-fern-examples: - - name: StandardUser - description: Create a regular user account - params: - userData: - email: "john@example.com" - name: "John Doe" - role: "user" - result: - id: "user_123" - email: "john@example.com" - name: "John Doe" - role: "user" - createdAt: "2024-01-15T10:30:00Z" - - name: AdminUser - description: Create an admin user account - params: - userData: - email: "admin@example.com" - name: "Admin User" - role: "admin" - permissions: ["read", "write", "delete"] - result: - id: "user_456" - email: "admin@example.com" - name: "Admin User" - role: "admin" - createdAt: "2024-01-15T10:30:00Z" - result: - name: user - schema: - $ref: '#/components/schemas/User' -``` - -## `x-fern-pagination` - -Configure pagination for methods that return multiple results: - -```yaml title="openrpc.yml" {6-11} -methods: - - name: user.list - summary: List users with pagination - params: - - name: pagination - schema: - type: object - properties: - cursor: - type: string - limit: - type: integer - default: 20 - x-fern-pagination: - cursor: pagination.cursor - results: users - next_cursor: pagination.nextCursor - has_next_page: pagination.hasMore - result: - name: userList - schema: - type: object - properties: - users: - type: array - items: - $ref: '#/components/schemas/User' - pagination: - type: object - properties: - nextCursor: - type: string - hasMore: - type: boolean -``` - -## `x-fern-retry` - -Configure retry behavior for methods: - -```yaml title="openrpc.yml" {6-10} -methods: - - name: payment.process - summary: Process payment with retry logic - params: - - name: paymentData - schema: - $ref: '#/components/schemas/PaymentRequest' - x-fern-retry: - max_attempts: 3 - exponential_backoff: true - initial_delay: 1000 - max_delay: 30000 - result: - name: paymentResult - schema: - $ref: '#/components/schemas/PaymentResult' -``` - -## `x-fern-timeout` - -Configure timeout settings for methods: - -```yaml title="openrpc.yml" {6-8} -methods: - - name: report.generate - summary: Generate large report (may take time) - params: - - name: reportConfig - schema: - $ref: '#/components/schemas/ReportConfig' - x-fern-timeout: - seconds: 300 - description: "Report generation can take up to 5 minutes" - result: - name: report - schema: - $ref: '#/components/schemas/Report' -``` - -## `x-fern-error-handling` - -Configure error handling for methods: - -```yaml title="openrpc.yml" {10-20} -methods: - - name: order.create - summary: Create a new order - params: - - name: orderData - schema: - $ref: '#/components/schemas/CreateOrderRequest' - errors: - - code: -32001 - message: Insufficient inventory - x-fern-error-handling: - error_name: InsufficientInventoryError - retry_after_seconds: 60 - - code: -32002 - message: Payment failed - x-fern-error-handling: - error_name: PaymentFailedError - user_friendly_message: "Payment could not be processed. Please check your payment information." - result: - name: order - schema: - $ref: '#/components/schemas/Order' -``` - -## `x-fern-availability` - -Mark features as available in specific SDK versions: - -```yaml title="openrpc.yml" {4-6} -methods: - - name: beta.advancedSearch - summary: Advanced search functionality - x-fern-availability: - status: beta - message: "This feature is in beta and may change" - params: - - name: searchQuery - schema: - $ref: '#/components/schemas/AdvancedSearchQuery' - result: - name: searchResults - schema: - $ref: '#/components/schemas/SearchResults' -``` - -## `x-fern-streaming` - -Mark methods as streaming for appropriate SDK generation: - -```yaml title="openrpc.yml" {4-6} -methods: - - name: logs.stream - summary: Stream log events - x-fern-streaming: - type: server_sent_events - termination: client_closes - params: - - name: filters - schema: - type: object - properties: - level: - type: string - enum: [debug, info, warn, error] - service: - type: string - # Note: Streaming methods typically don't have a traditional result -``` - -## `x-fern-server-name` - -Specify custom names for servers: - -```yaml title="openrpc.yml" {3-4} -servers: - - name: production - url: https://api.yourcompany.com/rpc - x-fern-server-name: Production - description: Production JSON-RPC server - - name: staging - url: https://staging-api.yourcompany.com/rpc - x-fern-server-name: Staging - description: Staging environment -``` - -## `x-fern-base-path` - -Configure base paths for generated SDK clients: - -```yaml title="openrpc.yml" {3-4} -info: - title: My JSON-RPC API - version: 1.0.0 - x-fern-base-path: /api/v1/rpc - description: JSON-RPC API with custom base path -``` - -## `x-fern-sdk-group-name` - -Group related methods in the SDK: - -```yaml title="openrpc.yml" {4-5, 12-13} -methods: - - name: user.create - summary: Create user - x-fern-sdk-group-name: users - params: [...] - result: {...} - - - name: user.get - summary: Get user - x-fern-sdk-group-name: users - params: [...] - result: {...} - - - name: order.create - summary: Create order - x-fern-sdk-group-name: orders - params: [...] - result: {...} -``` - -This generates SDKs with grouped methods: - -```typescript -client.users.create(...) -client.users.get(...) -client.orders.create(...) -``` - -These extensions help you create more robust and user-friendly SDKs while maintaining full control over the generated code structure and behavior. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/extensions/parameter-names.mdx b/fern/products/openrpc-def/pages/extensions/parameter-names.mdx deleted file mode 100644 index d99aeedf..00000000 --- a/fern/products/openrpc-def/pages/extensions/parameter-names.mdx +++ /dev/null @@ -1,280 +0,0 @@ ---- -title: Parameter Names -subtitle: Use `x-fern-parameter-name` to customize SDK parameter names for JSON-RPC method parameters ---- - -By default, Fern uses the parameter names from your OpenRPC method definitions as SDK parameter names. You can customize these using the `x-fern-parameter-name` extension. - -## Customize parameter names - -Use `x-fern-parameter-name` to specify custom parameter names for method parameters: - -```yaml title="openrpc.yml" {8-9, 14-15} -methods: - - name: user.create - summary: Create a new user - params: - - name: user_data - schema: - type: object - properties: - email_address: - type: string - format: email - x-fern-parameter-name: email - full_name: - type: string - x-fern-parameter-name: name - date_of_birth: - type: string - format: date - x-fern-parameter-name: dateOfBirth - required: - - email_address - - full_name - x-fern-parameter-name: userData - required: true - result: - name: user - schema: - $ref: '#/components/schemas/User' -``` - -This generates SDK methods with cleaner parameter names: - -```typescript -// Instead of user_data with email_address, full_name, date_of_birth -await client.user.create({ - userData: { - email: "john@example.com", - name: "John Doe", - dateOfBirth: "1990-01-15" - } -}); -``` - -## Language-specific parameter names - -You can specify different parameter names for different programming languages: - -```yaml title="openrpc.yml" {8-13} -methods: - - name: order.search - summary: Search for orders - params: - - name: search_criteria - schema: - type: object - properties: - customer_id: - type: string - x-fern-parameter-name: - python: customer_id - typescript: customerId - go: CustomerID - java: customerId - csharp: CustomerId - order_status: - type: string - enum: [pending, processing, shipped, delivered] - x-fern-parameter-name: - python: order_status - typescript: orderStatus - go: OrderStatus - java: orderStatus - csharp: OrderStatus - x-fern-parameter-name: - python: search_criteria - typescript: searchCriteria - go: SearchCriteria - java: searchCriteria - csharp: SearchCriteria - required: true - result: - name: orders - schema: - type: array - items: - $ref: '#/components/schemas/Order' -``` - -## Nested parameter naming - -Customize parameter names for nested objects: - -```yaml title="openrpc.yml" {10-11, 16-17, 22-23} -methods: - - name: payment.process - summary: Process a payment - params: - - name: payment_data - schema: - type: object - properties: - payment_method: - type: object - x-fern-parameter-name: paymentMethod - properties: - card_number: - type: string - x-fern-parameter-name: cardNumber - expiry_date: - type: string - x-fern-parameter-name: expiryDate - cvv: - type: string - billing_address: - type: object - x-fern-parameter-name: billingAddress - properties: - street_address: - type: string - x-fern-parameter-name: streetAddress - postal_code: - type: string - x-fern-parameter-name: postalCode - amount: - type: number - currency: - type: string - enum: [USD, EUR, GBP] - x-fern-parameter-name: paymentData - required: true - result: - name: paymentResult - schema: - $ref: '#/components/schemas/PaymentResult' -``` - -## Array parameter naming - -Handle array parameters with custom naming: - -```yaml title="openrpc.yml" {6-7, 14-15} -methods: - - name: bulk.createUsers - summary: Create multiple users - params: - - name: user_list - schema: - type: array - items: - type: object - properties: - email_addr: - type: string - format: email - x-fern-parameter-name: email - user_name: - type: string - x-fern-parameter-name: username - required: - - email_addr - - user_name - x-fern-parameter-name: users - minItems: 1 - maxItems: 100 - required: true - result: - name: createdUsers - schema: - type: array - items: - $ref: '#/components/schemas/User' -``` - -## Optional parameter naming - -Customize names for optional parameters with defaults: - -```yaml title="openrpc.yml" {8-9, 15-16, 22-23} -methods: - - name: report.generate - summary: Generate a report - params: - - name: report_type - schema: - type: string - enum: [daily, weekly, monthly, yearly] - x-fern-parameter-name: reportType - required: true - - name: output_format - schema: - type: string - enum: [pdf, csv, json, excel] - default: pdf - x-fern-parameter-name: format - required: false - description: Output format (defaults to PDF) - - name: include_charts - schema: - type: boolean - default: true - x-fern-parameter-name: includeCharts - required: false - description: Include charts in the report - - name: date_range - schema: - type: object - properties: - start_date: - type: string - format: date - x-fern-parameter-name: startDate - end_date: - type: string - format: date - x-fern-parameter-name: endDate - x-fern-parameter-name: dateRange - required: false - description: Optional date range filter - result: - name: report - schema: - $ref: '#/components/schemas/Report' -``` - -## Positional parameter naming - -For methods using positional parameters, customize the generated parameter names: - -```yaml title="openrpc.yml" {4-6, 8-10} -methods: - - name: math.calculate - summary: Perform mathematical calculation - paramStructure: by-position - params: - - schema: - type: number - description: First operand - x-fern-parameter-name: operandA - - schema: - type: number - description: Second operand - x-fern-parameter-name: operandB - - schema: - type: string - enum: [add, subtract, multiply, divide] - description: Operation to perform - x-fern-parameter-name: operation - result: - name: result - schema: - type: number -``` - -This generates cleaner SDK interfaces: - -```typescript -// Instead of unnamed positional parameters -await client.math.calculate(10, 5, "add"); - -// With named parameters -await client.math.calculate({ - operandA: 10, - operandB: 5, - operation: "add" -}); -``` - -Using custom parameter names ensures consistent naming conventions across your SDK while maintaining compatibility with your existing JSON-RPC method signatures. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/methods/batch.mdx b/fern/products/openrpc-def/pages/methods/batch.mdx deleted file mode 100644 index 3ec3720d..00000000 --- a/fern/products/openrpc-def/pages/methods/batch.mdx +++ /dev/null @@ -1,301 +0,0 @@ ---- -title: Batch Requests -subtitle: Document how to handle multiple JSON-RPC calls in a single request ---- - -Batch requests in JSON-RPC allow clients to send multiple method calls in a single HTTP request, improving efficiency and reducing network overhead. OpenRPC supports documenting batch request capabilities. - -## Batch request structure - -While individual methods are documented separately, batch requests combine multiple calls: - -```json title="Batch Request Example" -[ - { - "jsonrpc": "2.0", - "method": "user.get", - "params": { "id": "user_123" }, - "id": 1 - }, - { - "jsonrpc": "2.0", - "method": "order.list", - "params": { "userId": "user_123", "limit": 10 }, - "id": 2 - }, - { - "jsonrpc": "2.0", - "method": "analytics.track", - "params": { - "event": { - "userId": "user_123", - "eventType": "api_call", - "properties": { "endpoint": "batch_request" } - } - } - } -] -``` - -## Documenting batch-capable methods - -Mark methods that work well in batch scenarios: - -```yml title="openrpc.yml" {4-5, 14-15} -methods: - - name: user.get - summary: Get user by ID - x-fern-batch-compatible: true - x-fern-batch-description: "Efficiently retrieve multiple users in a single batch" - params: - - name: id - schema: - type: string - required: true - result: - name: user - schema: - $ref: '#/components/schemas/User' - - name: product.get - summary: Get product by ID - x-fern-batch-compatible: true - x-fern-batch-description: "Retrieve multiple products with a single request" - params: - - name: id - schema: - type: string - required: true - result: - name: product - schema: - $ref: '#/components/schemas/Product' -``` - -## Batch response handling - -Document how batch responses are structured: - -```yml title="openrpc.yml" {6-12} -info: - title: E-commerce API - version: 1.0.0 - description: | - This API supports JSON-RPC batch requests for improved performance. - - Batch responses maintain the same order as requests and include: - - Successful results with matching request IDs - - Error responses for failed calls - - No response for notification calls (calls without IDs) - - Example batch response: - ```json - [ - { - "jsonrpc": "2.0", - "result": { "id": "user_123", "name": "John Doe" }, - "id": 1 - }, - { - "jsonrpc": "2.0", - "result": [{ "id": "order_456", "total": 99.99 }], - "id": 2 - } - ] - ``` -``` - -## Mixed batch requests - -Document scenarios with regular methods and notifications: - -```yml title="openrpc.yml" {2-23} -methods: - - name: order.create - summary: Create a new order - description: Can be used in batch requests with order.calculate for atomic operations - x-fern-batch-compatible: true - params: - - name: orderData - schema: - $ref: '#/components/schemas/CreateOrderRequest' - required: true - result: - name: order - schema: - $ref: '#/components/schemas/Order' - - name: order.calculate - summary: Calculate order totals - description: Often used before order.create in batch requests - x-fern-batch-compatible: true - params: - - name: items - schema: - type: array - items: - $ref: '#/components/schemas/OrderItem' - required: true - result: - name: calculation - schema: - $ref: '#/components/schemas/OrderCalculation' - examples: - - name: BatchOrderProcessing - description: Calculate and create order in a single batch - params: - items: - - productId: "prod_123" - quantity: 2 - price: 29.99 - - productId: "prod_456" - quantity: 1 - price: 15.50 - result: - subtotal: 75.48 - tax: 6.04 - shipping: 5.99 - total: 87.51 -``` - -## Error handling in batches - -Document how errors are handled in batch scenarios: - -```yml title="openrpc.yml" {6-15} -info: - title: API Documentation - version: 1.0.0 - description: | - ## Batch Error Handling - - When processing batch requests: - - Each call is processed independently - - Successful calls return normal results - - Failed calls return error objects - - Notifications (calls without ID) produce no response - - Partial failures are allowed - some calls can succeed while others fail - - Error response example: - ```json - { - "jsonrpc": "2.0", - "error": { - "code": -32602, - "message": "Invalid params", - "data": { "field": "email", "error": "Invalid email format" } - }, - "id": 3 - } - ``` -``` - -## Batch optimization methods - -Document methods specifically designed for batch operations: - -```yml title="openrpc.yml" {2-19} -methods: - - name: users.getBatch - summary: Get multiple users by IDs - description: Optimized method for retrieving multiple users in a single call - params: - - name: userIds - schema: - type: array - items: - type: string - maxItems: 100 - minItems: 1 - required: true - description: Array of user IDs to retrieve (max 100) - result: - name: users - schema: - type: object - properties: - users: - type: array - items: - $ref: '#/components/schemas/User' - notFound: - type: array - items: - type: string - description: IDs that were not found - required: - - users - - notFound - examples: - - name: GetMultipleUsers - description: Retrieve several users at once - params: - userIds: ["user_123", "user_456", "user_789"] - result: - users: - - id: "user_123" - name: "John Doe" - email: "john@example.com" - - id: "user_456" - name: "Jane Smith" - email: "jane@example.com" - notFound: ["user_789"] -``` - -## Batch size limitations - -Document batch request limits and recommendations: - -```yml title="openrpc.yml" {4-8} -info: - title: API with Batch Support - version: 1.0.0 - x-fern-batch-limits: - maxBatchSize: 50 - maxPayloadSize: "1MB" - timeoutSeconds: 30 - description: "Batch requests are limited to 50 operations or 1MB payload size" - description: | - ## Batch Request Guidelines - - - Maximum 50 operations per batch request - - Total payload size limited to 1MB - - Batch processing timeout: 30 seconds - - Use batch requests for: - - Retrieving related data in a single round-trip - - Performing multiple updates atomically - - Reducing network overhead for mobile applications - - - Avoid batch requests for: - - Long-running operations (use individual calls) - - Operations that don't benefit from batching - - Calls that might exceed timeout limits -``` - -## SDK batch support - -Configure how SDKs handle batch requests: - -```yml title="openrpc.yml" {5-8} -components: - x-fern-batch-config: - enableBatchMethods: true - generateBatchHelpers: true - batchMethodNaming: "batch{MethodName}" - maxBatchSize: 50 -``` - -This configuration would generate SDK methods like: - -```typescript -// Individual calls -const user = await client.user.get({ id: "user_123" }); -const product = await client.product.get({ id: "prod_456" }); - -// Batch call -const results = await client.batch([ - { method: "user.get", params: { id: "user_123" } }, - { method: "product.get", params: { id: "prod_456" } }, - { method: "analytics.track", params: { event: {...} } } // notification -]); -``` - -Batch requests are essential for high-performance applications that need to minimize network round-trips while maintaining the flexibility of individual method calls. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/methods/notifications.mdx b/fern/products/openrpc-def/pages/methods/notifications.mdx deleted file mode 100644 index 56ca7bdb..00000000 --- a/fern/products/openrpc-def/pages/methods/notifications.mdx +++ /dev/null @@ -1,309 +0,0 @@ ---- -title: Notifications -subtitle: Document one-way JSON-RPC calls that don't expect a response ---- - -Notifications in JSON-RPC are one-way method calls that don't expect a response from the server. They're useful for fire-and-forget operations like logging, analytics, or triggering background processes. - -## Basic notifications - -Define a notification by omitting the `result` property: - -```yml title="openrpc.yml" {2-12} -methods: - - name: analytics.track - summary: Track user analytics event - description: Send an analytics event (no response expected) - params: - - name: event - schema: - type: object - properties: - userId: - type: string - eventType: - type: string - enum: [page_view, click, conversion, signup] - properties: - type: object - additionalProperties: true - timestamp: - type: string - format: date-time - required: - - userId - - eventType - required: true - # Note: No result property - this makes it a notification - examples: - - name: PageViewEvent - description: Track a page view - params: - event: - userId: "user_123" - eventType: "page_view" - properties: - page: "/dashboard" - referrer: "https://google.com" - timestamp: "2024-01-15T10:30:00Z" -``` - -## Logging notifications - -Use notifications for logging and monitoring: - -```yml title="openrpc.yml" {2-15} -methods: - - name: log.error - summary: Log an error event - description: Send error information for monitoring (fire and forget) - params: - - name: errorData - schema: - type: object - properties: - level: - type: string - enum: [error, warning, info, debug] - message: - type: string - stackTrace: - type: string - userId: - type: string - sessionId: - type: string - metadata: - type: object - additionalProperties: true - required: - - level - - message - required: true - examples: - - name: ApplicationError - description: Log an application error - params: - errorData: - level: "error" - message: "Database connection failed" - stackTrace: "Error: Connection timeout\n at Database.connect (db.js:45)" - userId: "user_456" - sessionId: "session_789" - metadata: - component: "user-service" - version: "1.2.3" -``` - -## Real-time updates - -Send real-time updates without expecting responses: - -```yml title="openrpc.yml" {2-16} -methods: - - name: presence.update - summary: Update user presence status - description: Notify about user presence changes - params: - - name: presenceData - schema: - type: object - properties: - userId: - type: string - status: - type: string - enum: [online, away, busy, offline] - lastSeen: - type: string - format: date-time - customMessage: - type: string - maxLength: 100 - required: - - userId - - status - required: true - examples: - - name: UserOnline - description: User comes online - params: - presenceData: - userId: "user_123" - status: "online" - lastSeen: "2024-01-15T10:30:00Z" - customMessage: "Working on the new feature" -``` - -## Background processing - -Trigger background tasks without waiting for completion: - -```yml title="openrpc.yml" {2-20} -methods: - - name: email.send - summary: Send email notification - description: Queue an email for sending (background processing) - params: - - name: emailRequest - schema: - type: object - properties: - to: - type: array - items: - type: string - format: email - minItems: 1 - subject: - type: string - body: - type: string - templateId: - type: string - variables: - type: object - additionalProperties: true - priority: - type: string - enum: [low, normal, high, urgent] - default: normal - required: - - to - - subject - - body - required: true - examples: - - name: WelcomeEmail - description: Send welcome email to new user - params: - emailRequest: - to: ["newuser@example.com"] - subject: "Welcome to our platform!" - body: "Thank you for signing up..." - templateId: "welcome_template" - variables: - userName: "John Doe" - activationLink: "https://app.example.com/activate/123" - priority: "normal" -``` - -## Cache invalidation - -Notify about cache invalidation events: - -```yml title="openrpc.yml" {2-15} -methods: - - name: cache.invalidate - summary: Invalidate cache entries - description: Notify cache system to invalidate specific entries - params: - - name: invalidationRequest - schema: - type: object - properties: - keys: - type: array - items: - type: string - description: Cache keys to invalidate - pattern: - type: string - description: Pattern for batch invalidation - namespace: - type: string - description: Cache namespace - anyOf: - - required: [keys] - - required: [pattern] - required: true - examples: - - name: InvalidateUserCache - description: Invalidate user-related cache entries - params: - invalidationRequest: - keys: ["user:123", "user:123:profile", "user:123:settings"] - namespace: "users" - - name: InvalidatePatternCache - description: Invalidate all product cache entries - params: - invalidationRequest: - pattern: "product:*" - namespace: "catalog" -``` - -## Audit logging - -Record audit events for compliance: - -```yml title="openrpc.yml" {2-18} -methods: - - name: audit.record - summary: Record audit event - description: Log security and compliance events - params: - - name: auditEvent - schema: - type: object - properties: - eventType: - type: string - enum: [login, logout, data_access, data_modification, permission_change] - actor: - type: object - properties: - userId: - type: string - email: - type: string - ipAddress: - type: string - userAgent: - type: string - required: [userId] - resource: - type: object - properties: - type: - type: string - id: - type: string - name: - type: string - timestamp: - type: string - format: date-time - metadata: - type: object - additionalProperties: true - required: - - eventType - - actor - - timestamp - required: true - examples: - - name: LoginAudit - description: Record user login event - params: - auditEvent: - eventType: "login" - actor: - userId: "user_123" - email: "john@example.com" - ipAddress: "192.168.1.100" - userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" - timestamp: "2024-01-15T10:30:00Z" - metadata: - loginMethod: "password" - mfaUsed: true -``` - -## Notification best practices - -- Use notifications for fire-and-forget operations where you don't need to know if the operation succeeded -- Consider using regular methods with results for critical operations that need confirmation -- Include enough context in notification parameters for proper processing -- Use structured schemas even for notifications to maintain API consistency -- Consider implementing client-side queuing for notifications in unreliable network conditions - -Notifications are perfect for decoupling systems and improving performance by not waiting for non-critical operations to complete. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/methods/rpc-methods.mdx b/fern/products/openrpc-def/pages/methods/rpc-methods.mdx deleted file mode 100644 index 3f655553..00000000 --- a/fern/products/openrpc-def/pages/methods/rpc-methods.mdx +++ /dev/null @@ -1,277 +0,0 @@ ---- -title: JSON-RPC Methods -subtitle: Document JSON-RPC methods with parameters, results, and error handling ---- - -Methods in OpenRPC are the core building blocks of your JSON-RPC API. Each method defines the procedure name, parameters, return values, and potential errors. - -```yml title="openrpc.yml" {2-19} -methods: - - name: user.create - summary: Create a new user - description: Creates a new user account with the provided information - params: - - name: userData - schema: - $ref: '#/components/schemas/CreateUserRequest' - required: true - description: User data for account creation - result: - name: createdUser - schema: - $ref: '#/components/schemas/User' - description: The newly created user object - examples: - - name: CreateUserExample - description: Example of creating a user - params: - userData: - email: "john@example.com" - name: "John Doe" - age: 30 - result: - id: "user_123" - email: "john@example.com" - name: "John Doe" - age: 30 - createdAt: "2024-01-15T10:30:00Z" -``` - -## Method parameters - -Parameters in JSON-RPC can be positional (by-position) or named (by-name): - -### Named parameters -```yml title="openrpc.yml" {4-14} -methods: - - name: calculate.add - summary: Add two numbers - paramStructure: by-name - params: - - name: a - schema: - type: number - required: true - description: First number - - name: b - schema: - type: number - required: true - description: Second number - result: - name: sum - schema: - type: number -``` - -### Positional parameters -```yml title="openrpc.yml" {4-12} -methods: - - name: calculate.multiply - summary: Multiply two numbers - paramStructure: by-position - params: - - schema: - type: number - description: First number (multiplicand) - - schema: - type: number - description: Second number (multiplier) - result: - name: product - schema: - type: number -``` - -## Complex parameter types - -Use complex schemas for method parameters: - -```yml title="openrpc.yml" {6-24} -methods: - - name: order.create - summary: Create a new order - description: Creates a new order with items and shipping information - params: - - name: orderData - schema: - type: object - properties: - items: - type: array - items: - $ref: '#/components/schemas/OrderItem' - minItems: 1 - shippingAddress: - $ref: '#/components/schemas/Address' - paymentMethod: - type: string - enum: [credit_card, paypal, bank_transfer] - notes: - type: string - maxLength: 500 - required: - - items - - shippingAddress - - paymentMethod - required: true - result: - name: order - schema: - $ref: '#/components/schemas/Order' -``` - -## Method results - -Define the structure of successful method responses: - -```yml title="openrpc.yml" {8-20} -methods: - - name: search.products - summary: Search for products - params: - - name: query - schema: - type: string - required: true - result: - name: searchResults - schema: - type: object - properties: - products: - type: array - items: - $ref: '#/components/schemas/Product' - totalCount: - type: integer - hasMore: - type: boolean - nextCursor: - type: string - required: - - products - - totalCount - - hasMore -``` - -## Error handling - -Define custom errors for your methods: - -```yml title="openrpc.yml" {10-24} -methods: - - name: user.login - summary: Authenticate user - params: - - name: email - schema: - type: string - format: email - required: true - errors: - - code: -32001 - message: Invalid credentials - data: - type: object - properties: - error: - type: string - const: "Email or password is incorrect" - - code: -32002 - message: Account locked - data: - type: object - properties: - error: - type: string - const: "Account temporarily locked due to failed login attempts" - unlockTime: - type: string - format: date-time - result: - name: authResult - schema: - $ref: '#/components/schemas/AuthToken' -``` - -## Method examples - -Provide comprehensive examples for better documentation: - -```yml title="openrpc.yml" {12-35} -methods: - - name: file.upload - summary: Upload a file - params: - - name: fileData - schema: - type: object - properties: - filename: - type: string - content: - type: string - format: base64 - mimeType: - type: string - required: true - examples: - - name: ImageUpload - description: Upload a JPEG image - params: - fileData: - filename: "photo.jpg" - content: "/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAABAAEDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAv/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFQEBAQAAAAAAAAAAAAAAAAAAAAX/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwC/gA==" - mimeType: "image/jpeg" - result: - fileId: "file_abc123" - url: "https://cdn.example.com/files/file_abc123.jpg" - size: 1024000 - - name: DocumentUpload - description: Upload a PDF document - params: - fileData: - filename: "document.pdf" - content: "JVBERi0xLjQKJdPr6eEKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCgoyIDAgb2JqCjw8Ci9UeXBlIC9QYWdlcwo=" - mimeType: "application/pdf" - result: - fileId: "file_def456" - url: "https://cdn.example.com/files/file_def456.pdf" - size: 256000 -``` - -## Optional parameters - -Define optional parameters with default values: - -```yml title="openrpc.yml" {6-19} -methods: - - name: report.generate - summary: Generate a report - params: - - name: reportType - schema: - type: string - enum: [daily, weekly, monthly, yearly] - required: true - - name: format - schema: - type: string - enum: [pdf, csv, json] - default: pdf - required: false - description: Output format (defaults to PDF) - - name: includeCharts - schema: - type: boolean - default: true - required: false - description: Include charts in the report - result: - name: report - schema: - $ref: '#/components/schemas/Report' -``` - -Methods are the foundation of your JSON-RPC API, providing a clear contract for what operations are available, what data they expect, and what they return. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/overrides.mdx b/fern/products/openrpc-def/pages/overrides.mdx deleted file mode 100644 index a3ae23e5..00000000 --- a/fern/products/openrpc-def/pages/overrides.mdx +++ /dev/null @@ -1,274 +0,0 @@ ---- -title: Overlay Customizations -subtitle: Use overlay files to modify your OpenRPC specification without editing the original ---- - -Overlays allow you to modify your OpenRPC specification without directly editing the original file. This is useful for: -- Adding Fern-specific extensions -- Customizing documentation -- Adding examples and descriptions -- Overriding specific properties - -## Configure overlays - -To use overlays, add them to your `generators.yml` file: - -```yaml title="generators.yml" {3-5} -api: - specs: - - spec: openrpc.yml - overlays: - - overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -## Overlay file structure - -Overlay files follow the [OpenAPI Overlay Specification](https://spec.openapis.org/overlay/v1.0.0) format: - -```yaml title="overlay.yml" -overlay: 1.0.0 -info: - title: OpenRPC Fern Extensions - version: 1.0.0 -actions: - - target: $.methods[?(@.name == 'user.create')] - update: - x-fern-sdk-method-name: create - summary: Create a new user account - - target: $.methods[?(@.name == 'order.list')] - update: - description: Retrieve orders with optional filtering and pagination - x-fern-audiences: - - public -``` - -## Add method names - -Override SDK method names for better developer experience: - -```yaml title="overlay.yml" {7-9} -overlay: 1.0.0 -info: - title: SDK Method Names - version: 1.0.0 -actions: - - target: $.methods[?(@.name == 'user.getById')] - update: - x-fern-sdk-method-name: getUser - summary: Retrieve user by ID with enhanced details - - target: $.methods[?(@.name == 'order.createNew')] - update: - x-fern-sdk-method-name: create - summary: Create order with automatic validation -``` - -## Add examples - -Enhance your specification with examples: - -```yaml title="overlay.yml" {7-20} -overlay: 1.0.0 -info: - title: Method Examples - version: 1.0.0 -actions: - - target: $.methods[?(@.name == 'user.create')] - update: - examples: - - name: StandardUser - description: Create a regular user - params: - userData: - email: "john@example.com" - name: "John Doe" - role: "user" - result: - id: "user_123" - email: "john@example.com" - name: "John Doe" - createdAt: "2024-01-15T10:30:00Z" -``` - -## Filter with audiences - -Add audience filtering to methods: - -```yaml title="overlay.yml" {7-9, 12-14} -overlay: 1.0.0 -info: - title: Audience Filtering - version: 1.0.0 -actions: - - target: $.methods[?(@.name == 'admin.getUsers')] - update: - x-fern-audiences: - - admin - - target: $.methods[?(@.name == 'debug.getSystemInfo')] - update: - x-fern-audiences: - - internal -``` - -## Add documentation - -Enhance descriptions and documentation: - -```yaml title="overlay.yml" {7-14} -overlay: 1.0.0 -info: - title: Enhanced Documentation - version: 1.0.0 -actions: - - target: $.methods[?(@.name == 'payment.process')] - update: - description: | - Process a payment transaction with comprehensive validation and fraud detection. - - This method supports multiple payment methods including credit cards, - digital wallets, and bank transfers. All transactions are processed - securely with PCI DSS compliance. - - Returns a payment result with transaction details or error information. - summary: Process payment with fraud detection -``` - -## Server configurations - -Add server-specific configurations: - -```yaml title="overlay.yml" {7-12} -overlay: 1.0.0 -info: - title: Server Extensions - version: 1.0.0 -actions: - - target: $.servers[?(@.name == 'production')] - update: - x-fern-server-name: Production - description: Production environment with high availability and monitoring - variables: - region: - default: us-east-1 - enum: [us-east-1, us-west-2, eu-west-1] - description: AWS region for the API server -``` - -## Add parameter customizations - -Customize parameter names and descriptions: - -```yaml title="overlay.yml" {7-18} -overlay: 1.0.0 -info: - title: Parameter Customizations - version: 1.0.0 -actions: - - target: $.methods[?(@.name == 'user.search')].params[?(@.name == 'search_criteria')] - update: - x-fern-parameter-name: searchCriteria - description: | - Search criteria for finding users. Supports multiple filters: - - name: Partial name matching (case-insensitive) - - email: Exact or partial email matching - - role: Filter by user role - - status: Filter by account status - - dateRange: Filter by creation date range - schema: - type: object - properties: - name: - type: string - description: Partial name search (minimum 2 characters) - email: - type: string - description: Email search pattern - role: - type: string - enum: [user, admin, moderator] - status: - type: string - enum: [active, inactive, suspended] -``` - -## Add error documentation - -Enhance error handling information: - -```yaml title="overlay.yml" {7-25} -overlay: 1.0.0 -info: - title: Error Documentation - version: 1.0.0 -actions: - - target: $.methods[?(@.name == 'order.create')] - update: - errors: - - code: -32001 - message: Insufficient inventory - data: - type: object - properties: - productId: - type: string - availableQuantity: - type: integer - requestedQuantity: - type: integer - - code: -32002 - message: Payment authorization failed - data: - type: object - properties: - paymentMethod: - type: string - errorCode: - type: string - retryAllowed: - type: boolean -``` - -## Multiple overlays - -You can apply multiple overlay files in sequence: - -```yaml title="generators.yml" {4-8} -api: - specs: - - spec: openrpc.yml - overlays: - - base-overlay.yml - - sdk-overlay.yml - - docs-overlay.yml - - examples-overlay.yml -``` - -## Environment-specific overlays - -Use different overlays for different environments: - -```yaml title="generators.yml" {4-7, 12-15} -groups: - production: - audiences: [public] - specs: - - spec: openrpc.yml - overlays: - - production-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 - internal: - audiences: [admin, internal] - specs: - - spec: openrpc.yml - overlays: - - internal-overlay.yml - generators: - - name: fernapi/fern-typescript-node-sdk - version: 0.8.8 -``` - -Overlays are applied in order, allowing you to build up customizations incrementally while keeping your original OpenRPC specification clean and focused on the core API definition. \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/overview.mdx b/fern/products/openrpc-def/pages/overview.mdx deleted file mode 100644 index 17341b14..00000000 --- a/fern/products/openrpc-def/pages/overview.mdx +++ /dev/null @@ -1,167 +0,0 @@ ---- -title: What is an OpenRPC Specification? -subtitle: OpenRPC is a standard for documenting JSON-RPC APIs ---- - -The OpenRPC Specification is a framework used by developers to document JSON-RPC APIs. The specification -is written in JSON or YAML and contains all of your methods, parameters, schemas, and server configurations. -Fern is compatible with OpenRPC specification [v1.3.2](https://spec.open-rpc.org/) and [v1.2.6](https://github.com/open-rpc/spec/releases/tag/1.2.6). - - Considering options to generate an OpenRPC spec? Get live support [here](https://fern-community.slack.com/join/shared_invite/zt-2dpftfmif-MuAegl8AfP_PK8s2tx350Q%EF%BB%BF#/shared-invite/email) - -Below is an example of an OpenRPC file: - -```yaml openrpc.yml -openrpc: 1.3.2 -info: - title: Calculator API - version: 1.0.0 - description: | - A simple calculator API that performs basic arithmetic operations - using JSON-RPC 2.0 protocol. -servers: - - name: production - url: https://api.calculator.com/rpc - description: Production JSON-RPC server - - name: development - url: http://localhost:8080/rpc - description: Development server -methods: - - name: add - summary: Add two numbers - description: Performs addition of two numeric values - params: - - name: a - schema: - type: number - required: true - description: First number to add - - name: b - schema: - type: number - required: true - description: Second number to add - result: - name: sum - schema: - type: number - description: The sum of the two numbers - examples: - - name: AddExample - description: Example of adding two numbers - params: - a: 5 - b: 3 - result: 8 - - name: divide - summary: Divide two numbers - description: Performs division of two numeric values - params: - - name: dividend - schema: - type: number - required: true - description: Number to be divided - - name: divisor - schema: - type: number - required: true - description: Number to divide by - result: - name: quotient - schema: - type: number - description: The result of the division - errors: - - code: -32602 - message: Division by zero - data: - type: object - properties: - error: - type: string - const: "Cannot divide by zero" - examples: - - name: DivideExample - description: Example of dividing two numbers - params: - dividend: 10 - divisor: 2 - result: 5 - - name: notify_calculation - summary: Notify about calculation - description: Send a notification about a completed calculation (no response expected) - params: - - name: operation - schema: - type: string - enum: [add, subtract, multiply, divide] - required: true - - name: result - schema: - type: number - required: true - - name: timestamp - schema: - type: string - format: date-time - required: true -components: - schemas: - CalculationRequest: - type: object - properties: - operation: - type: string - enum: [add, subtract, multiply, divide] - operands: - type: array - items: - type: number - minItems: 2 - maxItems: 2 - precision: - type: integer - minimum: 0 - maximum: 10 - default: 2 - required: - - operation - - operands - CalculationResult: - type: object - properties: - result: - type: number - operation: - type: string - timestamp: - type: string - format: date-time - required: - - result - - operation - - timestamp -``` - -## Setup your fern folder - -Start by initializing your fern folder with an OpenRPC spec - - -```sh file -fern init --openrpc ./path/to/openrpc -``` -```sh url -fern init --openrpc https://host/path/to/openrpc -``` - - -This will initialize a directory like the following -``` -fern/ - ├─ fern.config.json - ├─ generators.yml - └─ openrpc/ - ├─ openrpc.yml -``` \ No newline at end of file diff --git a/fern/products/openrpc-def/pages/servers.mdx b/fern/products/openrpc-def/pages/servers.mdx deleted file mode 100644 index f00bf68c..00000000 --- a/fern/products/openrpc-def/pages/servers.mdx +++ /dev/null @@ -1,194 +0,0 @@ ---- -title: Servers -description: Configure server URLs and transports for your JSON-RPC API -subtitle: Define server URLs and transport mechanisms for your JSON-RPC API ---- - -OpenRPC allows you to specify one or more server configurations that define how clients can connect to your JSON-RPC API. - -```yml openrpc.yml -servers: - - name: production - url: https://api.yourcompany.com/rpc - description: Production HTTP JSON-RPC server - - name: websocket - url: wss://api.yourcompany.com/rpc - description: Production WebSocket JSON-RPC server -``` - -Specifying servers is valuable for both SDKs and Docs: -- For SDKs, your users won't need to manually specify the server URL at client instantiation -- For Docs, your API playground will automatically connect to the correct server - -## Transport protocols - -JSON-RPC can be used over various transport protocols: - -### HTTP/HTTPS Transport -```yml openrpc.yml -servers: - - name: http-production - url: https://api.yourcompany.com/rpc - description: HTTPS JSON-RPC endpoint - - name: http-staging - url: https://staging-api.yourcompany.com/rpc - description: Staging HTTPS endpoint -``` - -### WebSocket Transport -```yml openrpc.yml -servers: - - name: websocket-production - url: wss://api.yourcompany.com/rpc - description: WebSocket JSON-RPC for real-time communication - - name: websocket-dev - url: ws://localhost:8080/rpc - description: Development WebSocket server -``` - -### TCP Transport -```yml openrpc.yml -servers: - - name: tcp-production - url: tcp://api.yourcompany.com:9090 - description: TCP JSON-RPC server for high-performance applications -``` - -## Server variables - -Use variables to make your server configurations more flexible: - -```yml openrpc.yml {3-12} -servers: - - name: production - url: https://{environment}.api.yourcompany.com/rpc - description: Production JSON-RPC server - variables: - environment: - default: prod - enum: - - prod - - staging - - dev - description: Environment name -``` - -## Multiple environments - -Configure different environments with appropriate descriptions: - -```yml openrpc.yml -servers: - - name: production - url: https://api.yourcompany.com/rpc - description: Production environment - high availability, rate limited - - name: staging - url: https://staging-api.yourcompany.com/rpc - description: Staging environment - for testing new features - - name: development - url: http://localhost:8080/rpc - description: Local development server - - name: sandbox - url: https://sandbox-api.yourcompany.com/rpc - description: Sandbox environment - safe for testing -``` - -## Server-specific configurations - -Add server-specific metadata and configurations: - -```yml openrpc.yml {4-12} -servers: - - name: production - url: https://api.yourcompany.com/rpc - description: Production JSON-RPC server - variables: - version: - default: v1 - enum: [v1, v2] - description: API version - summary: High-performance production server - tags: - - name: production - description: Production environment -``` - -## Load balancing and multiple URLs - -Configure multiple server URLs for load balancing: - -```yml openrpc.yml -servers: - - name: primary - url: https://api-primary.yourcompany.com/rpc - description: Primary production server - - name: secondary - url: https://api-secondary.yourcompany.com/rpc - description: Secondary production server (fallback) - - name: regional-us - url: https://us.api.yourcompany.com/rpc - description: US regional server - - name: regional-eu - url: https://eu.api.yourcompany.com/rpc - description: EU regional server -``` - -## WebSocket-specific configurations - -Configure WebSocket servers with connection parameters: - -```yml openrpc.yml {4-10} -servers: - - name: websocket-main - url: wss://api.yourcompany.com/rpc - description: Main WebSocket JSON-RPC server - variables: - protocol: - default: "jsonrpc-2.0" - description: JSON-RPC protocol version - heartbeat: - default: "30" - description: Heartbeat interval in seconds -``` - -## Security configurations - -Configure authentication and security at the server level: - -```yml openrpc.yml {4-6} -servers: - - name: secure-production - url: https://api.yourcompany.com/rpc - description: Secure production server with authentication - security: - - bearerAuth: [] - - apiKeyAuth: [] -components: - securitySchemes: - bearerAuth: - type: http - scheme: bearer - apiKeyAuth: - type: apiKey - in: header - name: X-API-Key -``` - -## Transport-specific optimizations - -Configure servers for specific use cases: - -```yml openrpc.yml -servers: - - name: bulk-operations - url: https://bulk.api.yourcompany.com/rpc - description: Optimized for batch requests and bulk operations - - name: real-time - url: wss://realtime.api.yourcompany.com/rpc - description: WebSocket server optimized for real-time notifications - - name: analytics - url: https://analytics.api.yourcompany.com/rpc - description: Dedicated server for analytics and reporting methods -``` - -Server configurations help clients understand how to connect to your JSON-RPC API and which transport mechanism is most appropriate for their use case. \ No newline at end of file From 463db4db0afe0ab5ada2b6f7282bbc19666b0a4f Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Tue, 12 Aug 2025 16:00:05 -0400 Subject: [PATCH 10/14] revamp api definition and add grpc accordion --- .../pages/what-is-an-api-definition.mdx | 87 ++++++++++++++++--- 1 file changed, 77 insertions(+), 10 deletions(-) diff --git a/fern/products/api-def/pages/what-is-an-api-definition.mdx b/fern/products/api-def/pages/what-is-an-api-definition.mdx index c5a96eb0..7441974f 100644 --- a/fern/products/api-def/pages/what-is-an-api-definition.mdx +++ b/fern/products/api-def/pages/what-is-an-api-definition.mdx @@ -1,12 +1,9 @@ --- -title: What is an API Definition? +title: What is an API definition? description: Describes the contract between the API provider and API consumer --- - -An API Definition is a document that defines the structure of the API. It includes the **endpoints**, -**request and response schemas**, and **authentication** requirements. - +An API definition is a machine-readable specification of your API's structure, including **endpoints**, **request and response schemas**, and **authentication** requirements. Instead of manually keeping SDKs and documentation in sync with API changes, an API definition enables automatic generation of these artifacts. Fern integrates with several API definition formats: @@ -255,9 +252,75 @@ Fern integrates with several API definition formats: value: 42.5 ``` + + [gRPC](https://grpc.io/) is a modern, open-source RPC framework developed by Google. It uses Protocol Buffers as its interface definition language and supports multiple programming languages with efficient binary serialization. + + gRPC APIs are defined using Protocol Buffer (.proto) files that specify services and message types. Check out an example gRPC service definition below: + + ```proto maxLines={0} + syntax = "proto3"; + + package petstore; + + // The pet store service definition + service PetStoreService { + // Get a pet by ID + rpc GetPet(GetPetRequest) returns (Pet); + + // Add a new pet to the store + rpc AddPet(AddPetRequest) returns (Pet); + + // List all pets with optional filtering + rpc ListPets(ListPetsRequest) returns (ListPetsResponse); + } + + // Request message for getting a pet + message GetPetRequest { + int64 pet_id = 1; + } + + // Request message for adding a pet + message AddPetRequest { + string name = 1; + string category = 2; + repeated string photo_urls = 3; + PetStatus status = 4; + } + + // Request message for listing pets + message ListPetsRequest { + int32 page_size = 1; + string page_token = 2; + PetStatus status = 3; + } + + // Response message for listing pets + message ListPetsResponse { + repeated Pet pets = 1; + string next_page_token = 2; + } + + // Pet message definition + message Pet { + int64 id = 1; + string name = 2; + string category = 3; + repeated string photo_urls = 4; + PetStatus status = 5; + } + + // Pet status enumeration + enum PetStatus { + PET_STATUS_UNSPECIFIED = 0; + PET_STATUS_AVAILABLE = 1; + PET_STATUS_PENDING = 2; + PET_STATUS_SOLD = 3; + } + ``` + -## Why create an API Definition ? +## Why create an API definition? Once you have an API definition, Fern will use it as an input to generate artifacts like SDKs and API Reference documentation. Every time you update the API definition, @@ -267,25 +330,29 @@ you can regenerate these artifacts and ensure they are always up-to-date. - Client libraries in multiple languages. + Client libraries in multiple languages that automatically stay in sync with your API. - A Stripe-like API documentation website. + Interactive API docs with code examples and live testing capabilities. } + href="/docs/integrations/postman" > - A published Postman collection, with example request and responses. + Ready-to-use collection with pre-filled example requests and responses. } + href="/api-definitions/openapi/frameworks/fastapi" > Pydantic models for FastAPI or controllers for your Spring Boot application. - \ No newline at end of file + From d48790ab4679f69317925b76c00823069093f12b Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Tue, 12 Aug 2025 17:05:44 -0400 Subject: [PATCH 11/14] revamp project structure page --- .../api-def/pages/project-structure.mdx | 109 +++++------------- 1 file changed, 27 insertions(+), 82 deletions(-) diff --git a/fern/products/api-def/pages/project-structure.mdx b/fern/products/api-def/pages/project-structure.mdx index 6ff6018f..d3f1c88d 100644 --- a/fern/products/api-def/pages/project-structure.mdx +++ b/fern/products/api-def/pages/project-structure.mdx @@ -8,77 +8,42 @@ generators, and your CLI version. ## Directory structure -When you run `fern init`, your Fern folder will be initialized with the following files: +When you run `fern init` (for the Fern Definition) or `fern init --spec-type path/to/spec`, your fern folder will be initialized with the following files: + ```bash fern/ - ├─ fern.config.json - ├─ generators.yml - └─ definition/ - ├─ api.yml - └─ imdb.yml + ├─ fern.config.json # Root-level configuration for entire Fern project + ├─ generators.yml # Defines what SDKs and docs to generate from your API + └─ spec-folder/ # definition, openapi, asyncapi, etc + └─ spec-file.yml # API specification file ``` -If you want to initialize Fern with an OpenAPI Specification, run `fern init --openapi path/to/openapi` instead. -```yaml -fern/ - ├─ fern.config.json - ├─ generators.yml # required on Fern version 0.41.0 and above - └─ openapi/ - ├─ openapi.yml -``` + + For Fern Definition, your API configuration is split across two files: `api.yml` for API-wide configuration and separate `.yml` files for your actual endpoint and type definitions. See [What is a Fern Definition?](/api-definitions/ferndef/overview) for more information. -### `fern.config.json` + For other specification formats (OpenAPI, AsyncAPI), you'll have a single self-contained specification file. + + + + Every fern folder has a single `fern.config.json` file. This file stores the organization and the version of the Fern CLI that you are using. ```json { - "organization": "imdb", + "organization": "your-organization", "version": "0.31.2" } ``` Every time you run a fern CLI command, the CLI downloads itself at the correct version to ensure determinism. + + -To upgrade the CLI, run `fern upgrade`. This will update the version field in `fern.config.json` - -### `generators.yml` - -The `generators.yml` file can include information about where your API specification is located, along with which generators you are using, where each package gets published, as well as configuration specific to each generator. +The `generators.yml` file includes information about where your API definition file is located. It also configures the SDKs you're generating for your API. - - -```yaml -api: - path: ./path/to/openapi.yml -groups: - public: - generators: - - name: fernapi/fern-python-sdk - version: 3.0.0 - output: - location: pypi - package-name: imdb - token: ${PYPI_TOKEN} - github: - repository: imdb/imdb-python - config: - client_class_name: imdb - - name: fernapi/fern-typescript-sdk - version: 2.3.1 - output: - location: npm - package-name: imdb - token: ${NPM_TOKEN} - github: - repository: imdb/imdb-node - config: - namespaceExport: imdb -``` - - ```yaml api: path: ./path/to/openapi.yml @@ -88,41 +53,21 @@ api: ## Multiple APIs -The Fern folder is capable of housing multiple API definitions. Instead of placing your API definition at the top-level, you can nest them within an `apis` folder. Be sure to include a `generators.yml` file within each API folder that specifies the location of the API definition. +The fern folder can house multiple API definitions. When you have multiple APIs, nest your definition files within an `apis` folder. + +Each API must also have a separate `generators.yml` file that specifies the location of the API definition and contains information about that API's SDKs. - - ```bash fern/ ├─ fern.config.json - ├─ generators.yml + ├─ generators.yml # Optional: contains top-level configuration for all APIs └─ apis/ - └─ imdb/ - ├─ generators.yml + └─ first-api/ # First API + ├─ generators.yml # Required: points to API spec └─ openapi/ - ├─ openapi.yml - └─ disney/ - ├─ generators.yml + ├─ openapi.yml # API Definition file + └─ second-api/ # Second API + ├─ generators.yml # Required: points to API spec └─ openapi/ - ├─ openapi.yml -``` - - -```bash -fern/ - ├─ fern.config.json - ├─ generators.yml - └─ apis/ - └─ imdb/ - ├─ generators.yml - └─ definition/ - ├─ api.yml - └─ imdb.yml - └─ disney/ - ├─ generators.yml - └─ definition/ - ├─ api.yml - └─ disney.yml + ├─ openapi.yml # API Definition file ``` - - \ No newline at end of file From 5e5f3552b2a4b481cba4913c2eb7657f3a538cff Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Tue, 12 Aug 2025 18:07:55 -0400 Subject: [PATCH 12/14] small updates to various pages --- .../products/api-def/pages/project-structure.mdx | 16 ++++++++-------- .../api-def/pages/what-is-an-api-definition.mdx | 4 ++-- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/fern/products/api-def/pages/project-structure.mdx b/fern/products/api-def/pages/project-structure.mdx index d3f1c88d..ad2c09bd 100644 --- a/fern/products/api-def/pages/project-structure.mdx +++ b/fern/products/api-def/pages/project-structure.mdx @@ -4,24 +4,24 @@ description: Describes the Fern folder structure --- Configuring fern starts with the `fern` folder. The fern folder contains your API definitions, -generators, and your CLI version. +SDK generators, and your CLI version. ## Directory structure -When you run `fern init` (for the Fern Definition) or `fern init --spec-type path/to/spec`, your fern folder will be initialized with the following files: +When you run `fern init` (for the Fern Definition) or `fern init --spec-type path/to/spec` (for other specs), your fern folder is initialized with the following files: ```bash fern/ - ├─ fern.config.json # Root-level configuration for entire Fern project - ├─ generators.yml # Defines what SDKs and docs to generate from your API - └─ spec-folder/ # definition, openapi, asyncapi, etc + ├─ fern.config.json # Root-level config for entire Fern project + ├─ generators.yml # Defines SDKs and docs to generate + └─ spec-folder/ # definition, openapi, asyncapi, etc. └─ spec-file.yml # API specification file ``` For Fern Definition, your API configuration is split across two files: `api.yml` for API-wide configuration and separate `.yml` files for your actual endpoint and type definitions. See [What is a Fern Definition?](/api-definitions/ferndef/overview) for more information. - For other specification formats (OpenAPI, AsyncAPI), you'll have a single self-contained specification file. + For the other specification formats ([OpenAPI](/api-definitions/openapi/overview), [AsyncAPI](/api-definitions/asyncapi/overview), [OpenRPC](/api-definitions/openrpc/overview), and [gRPC](/api-definitions/grpc/overview)), you'll have a single self-contained specification file. @@ -55,12 +55,12 @@ api: The fern folder can house multiple API definitions. When you have multiple APIs, nest your definition files within an `apis` folder. -Each API must also have a separate `generators.yml` file that specifies the location of the API definition and contains information about that API's SDKs. +Each API must also have a separate `generators.yml` file that specifies the location of the API definition and configures SDK generation. ```bash fern/ ├─ fern.config.json - ├─ generators.yml # Optional: contains top-level configuration for all APIs + ├─ generators.yml # Optional: top-level configuration for all APIs └─ apis/ └─ first-api/ # First API ├─ generators.yml # Required: points to API spec diff --git a/fern/products/api-def/pages/what-is-an-api-definition.mdx b/fern/products/api-def/pages/what-is-an-api-definition.mdx index 7441974f..732405f1 100644 --- a/fern/products/api-def/pages/what-is-an-api-definition.mdx +++ b/fern/products/api-def/pages/what-is-an-api-definition.mdx @@ -322,9 +322,9 @@ Fern integrates with several API definition formats: ## Why create an API definition? -Once you have an API definition, Fern will use it as an input to generate artifacts +Once you have an API definition, Fern uses it as an input to generate artifacts like SDKs and API Reference documentation. Every time you update the API definition, -you can regenerate these artifacts and ensure they are always up-to-date. +you can regenerate these artifacts to ensure they are always up-to-date. Date: Tue, 12 Aug 2025 18:15:30 -0400 Subject: [PATCH 13/14] make asynapi collapseable, reorder accordions according to left nav --- fern/products/api-def/api-def.yml | 1 + .../pages/what-is-an-api-definition.mdx | 116 +++++++++--------- 2 files changed, 59 insertions(+), 58 deletions(-) diff --git a/fern/products/api-def/api-def.yml b/fern/products/api-def/api-def.yml index ef7a173b..00796cb2 100644 --- a/fern/products/api-def/api-def.yml +++ b/fern/products/api-def/api-def.yml @@ -55,6 +55,7 @@ navigation: path: ./openapi-pages/server-frameworks/fastapi.mdx slug: fastapi - section: AsyncAPI + collapsed: true slug: asyncapi contents: - page: Overview diff --git a/fern/products/api-def/pages/what-is-an-api-definition.mdx b/fern/products/api-def/pages/what-is-an-api-definition.mdx index 732405f1..ff7dd3f1 100644 --- a/fern/products/api-def/pages/what-is-an-api-definition.mdx +++ b/fern/products/api-def/pages/what-is-an-api-definition.mdx @@ -151,64 +151,6 @@ Fern integrates with several API definition formats: description: The userId for the sender of the message ``` - - - The Fern Definition is our take on a simpler API definition format. It is designed with **best-practices**, - supports **both RESTful and event-driven APIs**, and is optimized for **SDK generation**. - - - The Fern Definition is inspired from internal API Definition formats built at companies like - [Amazon](https://smithy.io/2.0/index.html), [Google](https://grpc.io/), [Palantir](https://blog.palantir.com/introducing-conjure-palantirs-toolchain-for-http-json-apis-2175ec172d32), - Twilio and Stripe. These companies **rejected** OpenAPI and built their own version. - - - Check out an example Fern Definition below: - - ```yaml maxLines={0} - types: - MovieId: string - - Movie: - properties: - id: MovieId - title: string - rating: - type: double - docs: The rating scale is one to five stars - - CreateMovieRequest: - properties: - title: string - rating: double - - service: - auth: false - base-path: /movies - endpoints: - createMovie: - docs: Add a movie to the database - method: POST - path: /create-movie - request: CreateMovieRequest - response: MovieId - - getMovie: - method: GET - path: /{movieId} - path-parameters: - movieId: MovieId - response: Movie - errors: - - MovieDoesNotExistError - - errors: - MovieDoesNotExistError: - status-code: 404 - type: MovieId - ``` - + + The Fern Definition is our take on a simpler API definition format. It is designed with **best-practices**, + supports **both RESTful and event-driven APIs**, and is optimized for **SDK generation**. + + + The Fern Definition is inspired from internal API Definition formats built at companies like + [Amazon](https://smithy.io/2.0/index.html), [Google](https://grpc.io/), [Palantir](https://blog.palantir.com/introducing-conjure-palantirs-toolchain-for-http-json-apis-2175ec172d32), + Twilio and Stripe. These companies **rejected** OpenAPI and built their own version. + + + Check out an example Fern Definition below: + + ```yaml maxLines={0} + types: + MovieId: string + + Movie: + properties: + id: MovieId + title: string + rating: + type: double + docs: The rating scale is one to five stars + + CreateMovieRequest: + properties: + title: string + rating: double + + service: + auth: false + base-path: /movies + endpoints: + createMovie: + docs: Add a movie to the database + method: POST + path: /create-movie + request: CreateMovieRequest + response: MovieId + + getMovie: + method: GET + path: /{movieId} + path-parameters: + movieId: MovieId + response: Movie + errors: + - MovieDoesNotExistError + + errors: + MovieDoesNotExistError: + status-code: 404 + type: MovieId + ``` + + ## Why create an API definition? From 916ecd5ef13624b7865691c21b9301c7f871edd9 Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Tue, 12 Aug 2025 18:19:23 -0400 Subject: [PATCH 14/14] collapse openapi section --- fern/products/api-def/api-def.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/fern/products/api-def/api-def.yml b/fern/products/api-def/api-def.yml index 00796cb2..0ba6c449 100644 --- a/fern/products/api-def/api-def.yml +++ b/fern/products/api-def/api-def.yml @@ -6,6 +6,7 @@ navigation: - page: Project Structure path: ./pages/project-structure.mdx - section: OpenAPI + collapsed: true slug: openapi contents: - page: Overview

y%W~*r7z*I$2tTX(MpqKr^ z%4J;l!seoOzml81;3{d21vV>w|}xX3Tp>*u7h78aE>ExZmL zroJd>*%sE_aoOmX{bcLO-o@=CF^26h0uqRG4~^ET4k|5|@_jE*yRRt{dUXzR$U5^s01}J(Iko zQ=qR_tnc7@0l$7h9@RNa$%c+E7QC0Dewtft(?^2Dy{4c2CNyoV41vYR1OY;Fsri4(CD8%dU}qv(BGy zeqSa*&_ZHcIJmt@F673TmH9@nMVKvzQkBGy^%1GyXD-dxg(yzeI2T^-J2IRQ*R4pdea6DPkb+gQzK}^2PISTP8)yZ zUZ)ikr}Fv6$;~TqHAuLjV`3ze8nRpC-wa!jPy)iA&?3%c0HmI?^ zHa=2uz-a%`V?zjkW5p)Ny% z4Ovi%Ixo({r7_jtW^MGzEkql8b}U*SMSXy?EfeYOMKUSb>h?DW@X`Dfu+C1#TQRu3yc2M`47enOJs4zSSKRJ~VCEXrS0;Bj}&X(so0z z3rQ+@KYWw^GM3Tz7Fd#fQ%Ppfh1Y6D^JSg*RwuxsYoYY;^mfHrR!@1{_ zHj~z>>{S8M62{v4!lnd_BQB|l)mw5p~XsnpDVJNCIkj7r3L*hiU@&2?_^!F^BA>G+yRVl|ygoOV(B zh9awPa>d_9x$n{f1rtsDmu1FF9sCdi*NK*ZEcd;5g+P3A-eJm7+{#EZjhNk8NtYw1 z--Ej*;2RQ@RA~k*foo!?XVE=B)s+pOMr@AhQ7OQIs>{^_chETR2`oi1X=*p3&p z5hM#!8F+r&PF(#tIZy3yJNJF+OwHuVu=CW~al2Yk{#h$|@Y! zo7|ORDQ9MxxY=dd`Pl(lX)3aLBOe)Xt*=v@_*iaK2H+zZ{6;m@mpdE&4@mV*DG; z_Q6x*$WHq-y5`)NT~6tB9HdyL(CX8tB z@beSluBr@YG-&W!d#rEk+&>_2YF}47*x=e4zrL4rbmD$^{IHVj8aHiDZD+$A)OUS6 zMT7*vgFlM$j`hnpwzGLPr+TszZ1A9r2$oc7fWDq5u;4BYb0%HFPgG{1QDBYN+`@y@ z*~}*C(mR8_b4l>d#XBNE?jtK5ye^}R`;w#2JlmaGJqsDtQFbTcXF0KOyNK(u2&!TN zpPPhkRp?8qV1zt0ElvW5aK=yR8KHP)!IND3vd zIpNNkHI0A*`W2wBEeVwVZX10+I^2fDl2t(GS~2>;^3e=SdmAtKZ1x(SGFx1K!xy** z3zu7d_ZM3D#Yymk+2!=>R{%i@g5i1-lDhch)*+-<9gR1H3QZYfyeKG(S07- z60a9T_8h94Ym~}Q8Ds~Pm#qUc1$ROdKct)w2yTb^kFchVh7O5JIXVBzAA+SQ2G3KD z9JcHdq(>k(Q-r=9_$|F3c--_D)OEJMI=d}>tZ2p(f6*10O)))!sDElQN$J{AFPkD{ z;(wq3_0lVfXqrO$uXLSZ$=OriEd=jzRLN6~GLwm1FM-{Chn5%&gxP1US6dnnv&=fW zW-`wy8g|oAe7IL>qAIySQQUj@+HXXT23*vv3ckx$3Jt^GW z0=i9k$Aq(!OP$=RP<-Vk1+U`VO)sxF(eCGcI= zV5)G#8VY_zQ|5VuoUY@|_qq`zciRnDkpsJs`)&?QZFfLTEb?!?YI@KV)50+Im65yVk@8QbF*8vEY7Yq_&=j&`>!nAue+~=eOBboE@Ov=$A&=k#q6M5LJJNf zm+cO=zN?$bpSs&4U1_G9H8#BOM>i?A%J}h@6sRIqy*~xDP2`e`@VD0+4iYB{W>KEY z1a`-U$O8}gcvEQf8$%83XigLUjdDVzO@WsfN^x`1Ex29|0#U!>-Sfby?-k+>AjXXNVi?lF2_(^ z!MjowLwNsMIhoZGdsX2?s9G=pbeO_k92Qqf_rR7LAV-Ituh^!IB;v2UtOm$yE-&0G z%h-|*Gg?%_clZkKQhM86%J>evsgJT%c9$lq?eJuB=Yc6KHHp2pvnfAIgE#_6kDnKkU`!C>O9!_Lc^GeeZk;_l2%Wz~@=@ zyT)K4^6O?okph`tKT+v-XAN&dW6J$h-+v~C)W261yW!yW`7W2A;(Gt)W~W$7J@Swx z-ABbxMK)#3FWvZf>2QQ4ZN-ATZWwzrHU9>EOT9uw%CRL<{DyaZ)5+p6Rgo7F4;A^g z0KN;VPKTEIT;EZ@7tI|4k6aXxzgUg#qF%MItQ`ZIuWxR=E$hn|A!ofmr`t!Uq=y8I z!87{q+oS7eJG*6eN-)ujv)H&ng2MxHm23M~LyRe{O1IV7v)(H~WsI>*)Zi0VWfuKW zIr{73v&*p|>-|NSSqG8h)|a*8FK;f&sy2s%MI5VJ8uPLanN<^C1BhLf&Y7igM~3Fr zr>JiYBnC8s-cf*FyqS9x?67Io({{dhWT7omOcC^b$^!yRFjt_>X=hSC%wel}(-uZ98Jd)gSRy>k>@ zOoHJ!DOwWNy+CGk+X=~$``@C_{~!hTWNGP~s1f||1vu06)%#y>*UjnJJ^K))Mj$>` zGCnp8KC(v??(y`Vf`S3pdc*75lFd@L$a9Kn`+F&jvnQMcH<`>KP2UgNBpI~yTY8ny z@(djtV>?@JW2WMB!4sjfw}%j}%+@y95!kH{#k^PK#nwX40L8kv zuN(8r3YU;-ZL2`}_k?tR-`^ySSA|k3yP*-JHf9pcx>&Awv3|chn+7QLYja6o@;^Cp zjc_oBgpH5$I;1Ggd+bh)73N>$+X1yv8bB#aU+F(OX65~g2|EH^x(&iUk@hEMVoN>D zQq=m^jk;-4p5vyJe;HrKApbWo6QZ>A=x!qh#jLSM92HVKQRIU&A5m>_;-{=b7VAD1 zK9z`6W-P{0AQyIjfxk%@1HlNs0D4`nf`OISD$tj7tiw*8C2CJ@tMv6gA2qyLKja*K zR97@Rj9If5lHJ0#s*Xm6es9Z;SlE4ErM0ksou?|%c2+U5FBz$=L)r3O?Kx5fTtA}BlYTk_Jp0*b-{{b zml_fW)Q>w9Ok#+bW`8@(<8%dW^2lAL$Fn>>lRI)11K=Myzvtv%)4K`zdWd4uRFL$! zuXlHvo^1ZQy%93))W+F9otH9Zcja@rYypkTAV@C+{y zBroN3O8QjH3F=nn@FVVnABA%}Kcq2~2PQS~!UNw%W}W)c@rpValA|em;scRTpp7fT z{`@u0ACwpvdan18S1h3Uh-fi`8-lu=TkjA|w2%Fi1dpIeFCP8KLv|yJBFI?4K94yY zK7oK1o0=c&VrGroJAS)!aHBnQ-Z5hP(D}^M1q%kWty6q)8tGJKsM-B+3pfr3R%S*F zI`u%t+q2e0o6~=gwRAO$@lvDMHR3`>uzq@WaxV*!!XQ;+s(5rcD2~7X4?98?=o!{H zP{F@Ldo*N+hym{|ZEUAP4GkuznL!aA|CHAc?fvg=B6*!9#5DM3R zf2{TQxa`+^fO_z!?0`4!+7e8;+|d%W33$`}>L$aV52LqQ7=o)?3VW-f=ErjLALgl3 zsb-(?9x8qK3GHfuVC)zLm1!gqyIJvjVI9^^0o2FdoyTj>IeuJvY%IYA$85_e~qt6j!A^?5!q3xuK zqa#?GuiZ&z;f`jv<K$h{O2wOV9gWN)Tb+yS25lab++5i_YS^Yyh{Js;AixAA((fV^+P2acsUq z{`5?X#gcr74TB_%XLl7!#zojikB(}@*zFhJ`H5BH zXY>6-_j(~I!F-Ys7xz6Xu*j3{(caEm&ylCTfr0o`=ee4{PvzsDHlNL`@(I5B={GiY;4yo;7Z!7 z_ScU?>89Ae5$=6C=^A~mS7#OKue`BkUPSnA5~q-Lm^CLpJFAAXb*2h+r%R{Wg3 zYpR$Rkh0rV=OMdgSguk8W@1Wc4zY0XmZf_3C73-2NY(V@BuX`xufpG@M${%?1u{3{ z{#n)A(hecO5@+Wx>01mUHOLR?j?zQo8El#%8{bH-U&4MjyZ&`v&ip>4rnY^3OGulbi>fVQVh*OgIZ4nWA|VeIQw1g@NHu-}CZ z{W_HvuJL=+LgQg&<-Kl<51*KZ3w&lX?8|iPxJoYVT+}SoyCs*>P&8RX%&N!VR)4ih zX_Xk@q`q|jI<-2|KL;3u82QXF0cf%H&WGB+DGm~}PcTmEG=XjRTw8524=aazKf&1V zM!B&N3v4g_s}WklxiBOv8^Qv)jMK4ST-%E&4L2C2!W?otC=SmKCM;6kya*vC=yI~c z;Rl|butB?ZCvn1hdZ`t@`3xjpW?U6vIdB`Fz-cIZ7;yR5;4w7VuB~GLR%ksu{J0)W zAtzqP!5X9|TC=U}xo;5h9Cc-Q+DwJ$o@E1=UkZxFOP3SNxg<;uJ%lPl*A9m4)mqBh zYnOA1>-V?-7@kglJ)=A$s?x1ew0Eat-N~am8>vR3!VWp|-zqn&c^H3q3yz{Oy;Pd@ z#Om?`=9`ng0|-<7*H~JR*HAWd}pgmX0M99 zUy{mtR6r?e1`2~%d~ho#6;Nt z5>H|L?r~eN`r$&p9eOrKMWJ>v^PkS|I54;&A>%@cMU)UIXpS3eJN|?E&C9rv$JXt44P0Fn`XNE`i0z5kLGeTT-tO)rLF)amxjCf!UGv?yT5{{ZwAg^3`NaFb8jy`_lo$LLO$*+__7!y(WX^qS!extUqRyTmthvzU8JxXL3X!*s&*csADEc| zcy`YoY_GFFqvU&}-z@2fsr*5^Sa)POTkd(bh;T!`&YnADMcP{F)6PTnWZ(Mp-HF`( z{x|TBh;0gi4fQHZDaL{df&n1dybad=1f|yFwcYO9ew~r$G-KHkcD=EYg zkD9CUBP`LYkAc_OZOZ7#Og3FTVE1ftP^c=hxpC3SRuB4;lzqFh2+8NU{7?uxqku+_ zN1@cXOC41RO7yD|YMmCB%Y?C$QYu`esP_R^CEJM~+nNz!A)iC39@DOU2!UxqS*RaU zy!zhYdGLl%^u)xVPncTJIjTr^=uDUMb=MQgJ2Sf1z0*x(9laa23B@e%EM2qgvX2w5 zYGvP*>&TS8{cB&fi6=Q*;ES78KPtu=C&7h@K19%>kz?f-EhB%(FH!uB9XDW^t|U03 zX7id!s_Q&QsP3%iK_A$fe7Ru(uhxDX8fD$Rbs2^7M^j=M`(4RMJtr5im3E2%PpBDb zVSJFLJ6btaW%*Y4xb74VGm<%x{2w9HuMa-}!g*}0tRw!I3}f^L6)_S_5qa!j>wNdq z@F}+!i|HKd3MpqDS2V1*c++$0iv~;E@l;C2aS1xozhP$GKJGt$d}8KEQgG7|O8L-S zV^HSHX{*KFHA}Zf#;Ddlh}hPqe5&HJR1zcTSM4;b<2JsityfTag~D1l2ho=SGxz$9 zHaex0*N+_4#G&xhS5S7HA3678#j;^WKDjEM9eHzMCKLh*PTlQ~c?a{p;8POZk}zG{ zZ{v@U5R3YyFT}PaBQTp!TZ7MjiQcUwM17oRyrl^pGvuErh4$b%MzcOHxOuEvw%@I zygR=M_5lZ+Qv-*NZ`!?SN9kXFKKJd~+ zkF@X;++pWDH|uL0C^9z%@7A}ct!II+FD&gZqKDMiEfZ!-hinCxQYHS{G|dC&%Cx}@2=Kn6?A>FiNXL&2jL}#n3k%HvDSKe zmdACy(|$(up}0sa(^HUK807NqHZtJOh`y^ak0?$4B_x_bgMIzgy?s% z1GxYnX{4puZ+lE3me&dl#X$Eg{kf;%SycKOpiJiI0v6{0;b}?3?2qz6r=gS0;I)sB zkCyh+koIo*@hLJ~D-dLe}c`z(Kz1C_X$=JiHpxRA+gFE~BGlG@3-a!72Kqo}PferIf3R3+P> z#%`?j26tWNAO{fcky0aUE}778q1&sfEW2|T$jt$E=8tkCB`1lbX?k0)VPFS`~zgJ;5h+VfVZ@x)b($)19pY5~Xp9sAq-!JO6 zk9$p1RI6k5TAn*FOgt>2PoVAK`fy1WGO`=g4#FiGTGyM4|YAo#=^>YW>|8`3F zq(aNY)L|7kKb)H>n}a8>X1)z#eDqZYqopmnPqXX!r%t7!IB5%(-Z?#k>^I2`;ai3Y z*Ik|3yk2dt!ZrFJBDqI_H=e? zSG-nxKLxCZEOF@M;V|hpp=zb6`p{sN>y|3G~chRXfKcC&`cZQ-(joaFiYTF4m zVSp!KvAO0PclJRg9XpdNdYij>3nRk&j#&;Ut7H^`2_R9`T}gld=V{Y6t5QN=-6(t^(R^!8>A81h%SHMF_FfLz0Uez7zcUSsP=Ozcm65j@HCqe;;2 zZWRt2VJ~Y|DV{3LwMv7e0X>VJ$H%)>%`(*vD1J7}{3GCAj}^>Nz24(V-v?&FgEu(! zRR3Ii)#JPk7bafFFuX&f@764Zrf>QdECBe4sVlN7_V%^!#SLNg7IJ0} zK%%zPh24*$o@BC@{Y-&ZJC-<5+#CYM4qu|%=0N`OVN-sI`!LWp6&@@mU)yxbHKk@y z=-&@pZnKtvOj#pGE!h?Wfj2=+_8c(q-4ef>pg)}|(vD@3eo{Vm!{xvf#4NJB z$`JAWkX->1S-;KfyEC)7l___t1mtL$zWwftE#PV}ih#`m9OJV$?|ma)pxw8j@)DPT zaW+JaZAG>Z z)(SM5%AwSFCrUw?T3-_@kLQDr9gNIz^jBWK5ea4BiSe(YZ(3ar*y*s=Y@ z(=I60MH9ii!(y-fHkr6~_r2hsVtqO;aR2a)+VFUHg{YY3WM<_AmWHM#A1;Q^p_#Tj zI3$ZZ;@BOj?DG@5t&F4v-DL7D?y*PrI=DsT%bA2V>}x73O$7F(X)ovP#Z z*qM%QNka0;QJF}E2B5-|qa)ign{~^Kd68j{jTzuxYrbCdE{&wiBI4rdCxTi2#R;6% z4XxKxdD`s0m$#_xQ|^`wCM9Sk1HyBk!DGz(&6(i(6LK;8=MyX4H#$s+i4ENRJ-tCf zOQ(io9OTBVlMQ0dry6o6w$HFX{zE@jmOwn{3jtYPP2o=e3Y@4YkChH?>@Q>F>UtVS5!7Kqf*_G zAe?g(0Jp0jPB~3W{HgI&J?AOOg}rH0`H*j7LeL@@izT<%cKNG>c5c5XJ7uwI=8yK0 zuosqR&{qcR@|W10eSJJ$q^$&XtCtzwS+kC-PW)Sg z*KSdz>E$f$&u6vI7qp?&Rfk5j3){igG+v~G<&P45Skt^85)YYj&r^TqSdJ*Rd-5w= z;gS49jGyh#_N)SV@Cg1X1Aa^YLU=Jhw=UXr`0E0;=R*(XkrakeD89G4AsTpZqC-r; z6!Oqz7>XvjBK`5d)!g6Vqq|%u{A%pj1No+4!s%xs1I^Ac6Sbnv#n&?)<9(9I&=_fP zXi3MDX~kW4R(MRsCA8Cp<)*j~a*Z-hdHGq#-nh@$h2^;rU+UogWU#GvPmT+ZSbl`^ z?64F==`fs|OGrgG%&$F?OS*;f`~l%XcCwhaPBG|U$FImaQU5uRLNS zXWw{K-mXEIG?chUE`l<5ADHc8mg6roYOE#AeLIykGys4OC64EBL>Gsjhyati`y9`6 z$S3L@A~LwuQEjR1Hn30G)rSks!3Z~0&9njxs0QH!i}JI8a>quZ+4c{=S2tHvCcL{) z6DcCiW?B4(FAQtCjJjVcPd@!{jf#$5CMsMXf+Y-7m@Vc2u8G6@bqfaS^GgXYW?IaG zCvhuBB?|=fwZ$2-ZPkkD{BJv+AeXz+ZN|GF!{rLW-+f3A7D@)b_it<=$tGTn)4>*h z7e;lBX0`<@>}Z#zZP$qqe3W3s`eM6(7I^AZDt zi~fdkNr}IPG{)@5SJ!<+Ob)J~JGi;@9yfQCE-xxH zl&vg+1lRjmLNMJFoS9vog|vg%4L^R=`1}9+_ur2sF;-5QiZg8>WyiJGsd=|Lp&8`& z=HpJCOg(#{uwaW(--4E)d-yL}!^E3lYE^m|tad{hy)16swN$Z?Nb_U#Z{-WyJ%#9$ z=L4+TRkqAGR%`KE{(z(zAx#dFZ#OE*iRY)008~t|IOR35lkYea_jIaoA|L(~el5P& z(~`5bCp6mH3ZcSdrY>3T+7aCgz^EY&5;d3*>dFk-ZY)}B*les_l?QZcXEGanGfWex zpPF>6t@Ua_vs?PQ?2Gc;7`Zv-l-YGk?<<&lde$2H=zeh>EAEVaex?u*2JkAB`fTTZ zR@_D{JNPWk6})fT8h;wwr~25XpKwyhr0j=t@A570VzzJLG!D8Omb=t!3hg)n1-eHE zz9FUym*DXwQ(A|M*r)f@clkuk6hKbQy!}dp0`8qg?o=%122< zd4AxseGCkf3H{;`_pYdlRdFD=Lf?Z1&y4sHz~XpBictZvz<)rBhyB47Ls04s0X8t& z1-L@}lG6S=_Yb`{eOro!t$hA-|2VOdApRfp=zr$%|Kr0C`bX2iQ>#+&u;t@Ak3T(? zd8tsb@4HprdVNQ>S3u)m`8~B`Ii6r=fY7ofA=%3^Z-PaXU}h0i}9KIk$2^^7_SS~vZ@+S~7XqG=7f zvWNTQiX^4SF1~0?D^zxS0Nb5l{s(F?Gfi;M(7eo}NQg;)yZrD8`HHNoE782q>@%eM z3L_E>fKSL|ClN-xRshi0{-(tBM~%pjGBWvLXjgT|$_ft8!w^bzvLHk=hHONTk%7jP zf8!RW=-*h9#4kmR%lY>)%xD-H3K#`{D`3AP1akA-Sz}4RGluH_`^W!lmgcYTv$5Dn z_Gg(RO)>MIdn2g0ShL!ga3+>23L+MC2 z9wOl84>gW#<&F|VtXz)lv-DrpmKKdLey$~sL>nZC1rr3KS;wFi{jD-I9Td3lv<+l) z5`SfL9kT1h>q9BMmp7m758*YMnj+b4z=`Ufu+i~sT^p!0anGD4QS_&$s0mEvguD6v1*_@Ah2qg_jZVx1DjlY7GYB6*yo zPpiqE<6%^QH#+6+3QxtwetaPL=kQ)iMGJ8A-XwD8Lc9KeH#*JI9$v8~*HAp={8v!;op2iv%1 z-vR2|FNKYDUNf;M7Vb$WK7FgMHXKT-W7$*rFn)$rJXga)aZ}-e!a4!c)W$p3wsqpT z+k+bmzbW*Aq{L;Y@LPn#Zt0=>^iz`;sO9Q(+4nRrNt5j>ewHUk;+Uofh6%MzolOhS zkV=2}m4f}C;K%svp+NAfN(^n!RC`-M*`>(BTw1zK2B==L%p!U+^lNN2QJxO?b%ttc z62NS^$K)ZrkQnH|4AjG1C)kj{@Jd`-l1f`Jejal;1t>CcMh}=oWn<&2%dDLq?hF$g z=aWX$)smW4W2M7e+LQn4SX&?c>@)u%E#R2?XVu?5#rSCf&t=KL{XZ_Af4?N)HjDqBI}KJ6r9`ya>=s%%{_x}Rw+nB-L%_(yA8fpFBLZB&cZTp%H(DU7WuL1wbuV)ZuFBvY~jy> z=LJaM!p>IWZis?c+mdPd07Rf`q#+vz$8eFCWtT5c1d`&EA7B?jcC>Q!SD97hZcIIM zXi$^hY;1MnkXaq%A&e$R@fE1m+;zHKDR#8p%t~-4dCjItxU`^iCeyNs_}9$)%3$^X5f~#@UPz=Yd?7} zXEY_saPl*P>Gi`}stkiSVYC7Pwz^>47cVh__p=qS!otIuwV>W8f)NZR`gYsrj#3z- zQ2Aw+clcIzIiD5{zz;gz7XVtj=-p`F+3_a@-}f&YQ(+#(fJ#hQ)E3GQaS)>Km+_Mu zqqDP-+ol`$gExI(RhzjJuzX33fjfVPE`s(Q%CG_O!jcnz{owx%YZE%@Im8j_@_t`;|Xa0TM2zz^b>`GL9AokB;A zMadJq3hyWlb&gT29GZRTUSa%Wl}SC*@FxsNxst&UV&2^;6B}lTsVJY*WSFg$h0uWY z06Vt%MCr5_^)FeOWIc)VLBo1V2TNq}HB_9Z* z)BpSZ|M#NMzQ$rpc9f%r>%8J*%0OEsEM>@fC-GpVB5;SK3(a|+$EJ)ZuU-0GSYcih zSjin6d|zFsJ=qm0(lHR4v=jB@!c~u(DQs3Tbj#+E?COeY^$wSXexRdf2j&ya(IW?7 zk%G6x?Le}rPbU?_32n}Irt)DX;M~xc7P+}v0 z&$8`ugH^PTVgb=p>@tF`=dRafd`Cy7ruF*YV4Nim$9_vq1Rj*FQv(BdOUAwXwc=@8qlNGgy@ zUjk=707(1BMdpU>Bqs8jUJmPNkToRHXABy?)mDBlz5bIaaFLR^krWLGH1vN0tsED4 zywPK;a8aE5|F8Vvt3F2jgqzM7>2t~2bE%3O2B$HjM_}~QpkE$Cru%WuUKQ`DArY2L z4FTUNT^E5xA2j*T`SwORfHGw{{%n%h^0_xG;kfzok9Pe?V?k-4*SnA2i ziM5p^U3`4J?Y=^?GKE0qLbI=it80v$=tY=O<9+MnL&$KFhaIapgkqvFRtDb(8*>Dv z-A8)RQ9+3DQbNM$!Li><9AS2Il95I_h6hgA?q9L}vFS^7NdrIO{Rs;B=RnqpJquXX zk#oHO+>ihJ9QgYiT3I~3!-BGhx`YlEi#mtQ$CX+h>X)zy+Jc<=8aapO&-u=93|}#K z7>Qe&?t*^ka(pZ|AqlsK73u`3sV$~YM~IyA7eSpX6UyFOYrQaD zmfa$_9Z7LVz^Q)%4W)FMgGLIDnE1A0j|WlRN+~NPaOMC0jZp%xSTO@YJOJs>iDXgE zGLz}x$|9r|l;8Dn{oQnRx}8tPvjqTBSt?YZhPaW#y}A0(G@oUN`_{0eRjqyK=^db% zX49SV!F{qoU8~-;@>Gytg4Poc%j;WCR;p29+PS z@E;6ag5y#74OKf}G4+~TO74HZGJsy*BQZI!sO0&Q&brJEQ`z$;9!yWdu`YEme=V0g zJvdQh%5+ks3$ALhc^OTO-Fr*xKv?k;ds4bZ=0V&SJQ)d(^gTZ^vz>CNlp;n8abRFr zkaZY3-z^cE%bVoqgD2^btN2iSfP3RUL)fJ<6Qc14Wfo02J9h{nzGY3)W zKIBs$-Cm%?-lMORMvR_#9hG@oMidBY;STeBv&|k^lV15!_Dqp$+xGte4GmJo5LLmd&WB%$yyl(!mK3_2>Z*WM|kZ!H6;mube>O*-|DX$whOSg=?>l}kw%+SP?O`Ba_i82}0;JMJ-V;%_Pb$SGI4%3aw< zEG+_JO~5Q>*8Jzs)ut1+e}??4wrL<~Dn`N{IY8M5I_wnb5VZrE)K~0@=cfXECNEW<6@>Y97@MO&Y>j z^#|HbD-+Wu6D#LVw6Pbd{=T{WSs;Z6 z$&KdXpZw}(?o`soXXI*Ay@Y%@@?)OR_GyRNIGNQjS=$#iSJz5Sm|0iE2vif6mu}VX zzUE?%Bot4SAYAaPQxdZJ{78U*L;KB}t;t;WR9{6e<=2*$d_{eOi1`N3Oh7Sf42e$x zi19eUMk!8qFa;Km2#azCC5Rb`4gO+teGa3L%D84k*`y67d7vzpsC#by4L&A%k1d{P7;h{oP-!h5!F;8HkU^DC8c+ zQpo=%D*^dQSu`0=&F{C*I6YEd6p9I!d+U~~HjJ>L6KP3|C8rdSWz^a6HfeA(coJFax?w@Z27CgF4Go2lP1w7xVM- zMgcyvQhthmW!3)vY+cprHO^*BVmPsd#o*5FG?}46HKz1=L*xNT`O4R4VQ z!q=ny{jP7MaN~VhZ}}T4CbbrTZTJFRa1Yn=$v)AtNOBu12tKz`3-;u9n)~^3-fxr2 zePPB*uD^e+x5s@@-wNq)`0;eeLnsaAk=)lZlDaXFEL?mr-x&O-%X=%LJQi>r@`t}6 zLTb$b0tEv~OXmh}C~w^UKfbO4sIF|;;vO`?T|;mQ?(Xg`L4v!xy95tzf#49_odChz z-95PfLuTg9lgY0-b?b7WF6ZpsyL1F}d+B0l=elU+-z8s-g z7ab!)5siZSe|WEdw|53fd|Pl+TbAbeVcJbrUz0i$i?K{~;(1ZO|-ROp24E5~YyAE}vn=xtAHLWWjK@ZnyORU*-UvV<*!4}1@&K{bS(4kj5Y zT?)Rir2%xA4Ijql9w+;TnwiEvH>cEQr47utvS&vRO$WR(Xp1_af_Tb!>H2WF^lNow z?!IR1Fz-FC8`1L{4wuy|MJ+Ec9?|KM0!m#k;TrRqFJ7MR6EVKvl$8C~!X;KtcqX3K zIP8bt>8L=(I2?8>>WII;3Hnm%QyhKyE8o=?j zMNH8dhAx<^sz^!v`ulmJe2v7Lc}1_R`odYw*qC!W`-2IfhQNp1lO<)FPHR)%8;G(q zZ-vu+?AMii3E1aRJ1t%(eu{f|ZkClPQc{J18^+)0O-1V|Q(Sw5i7*sFqA9^gYkAl8FGjt^K4BpgD9I3V`_IJcy5 zpo@NJ`33p~`d}eo2AFv7e#@W*`#i^_u6>+v`})&iemvNE-?lDaptO!tpA`E9X)rj5 zbz6d)eH)jtSM%!Kux68Od;z;86DI}FL@m~ib>l~v5Oy%er+4bCHwMFAO_XW$Cgo2C z)^#!!LYb%7$#LmNIa^uE9FJ-(4fAHa)X;khqTXOiaH#uy{v9 z>4 zid%w%*>rV^{mPFZDVCUM_adzZM#sI$*q~R~n|7uvUMs~g^{>1C>SGcR4&qfC5Kg`M z?;D9pmP5spjtQQM$RC_W)9jg ztQ3XUBP)mYuUk|YGi6#$r`f`a(vvqWAxe-`wc@#TVB<}yTSqd7=g(@ehg-hNt&g8n z0_qIk0Aq+m%=7CDlK~x##bLh*V>Z^@kVqkOsn~WK6@^a&Cmz=oj5J{=%PlQ9%h2k% zz@k(jgMKux%;yc{mQI*Fb+Ud9li{-86dU+ag8s=vH;}@EC56S}M{Y(zxc+4k>XlhpUdb`s-3-@A?Sm6+c~u)kpS6YKI=uQ_(b6uVZ*N99m7X;cG=* zC?Y|&EQQy${>!LhQ}39uomA$JQb77dPK*2X==FrxC=Wi^AXDC9wMbKIjF^K zg?urS^%K}9Su;26_a96=Y^O&C2XlciY{8G|QVn^auyfec0@&nwv=}Pk#UMNc=wJIU6z%f>TZoS>EDK+a@QaH4PqqGsuE&S?#ARpjD6S%e-z`qE_TX{_ zXSWE8d15+ce~j8yTmIfuOV`>>coE84Lg-y|(LE^;!&ff zYWD;v#8yCm={3C!vs;e297TczG&f`fV_Tx;gAGCF`@^Yyv3kBjWInF*q4Vbzf8<;K zk7H}#$LAqDsrr5E(O8N%`TWw4}`*u;2I0#y(;@Y8q&RvP=7Oqtz(RM?o#9RNAz|WmYbeBH=NI zXw;eV6L@jN{;ad2$(#}fnz&1pYSiWp(lvyH&8~6B$H%2hJ1=`tdEQ>K9+I|Y6Jzu0 zzOFi$%zm-%Sx=8N_Tv~!0Ce8#^?pd7{$}{(jN9)$kx1ik+760QLsjr)+^5y^C371{ z8V?#|I0Sb8hL}(_O7DcY^#dW04@~$LSR232%{FAhyB+`BzYY9qpwC19&QW%3QqK3^ z$IMKT3mqI*ROq5B*1J=PWPY6T(xY~YJ;PAjw1&b7hqw6T8VLGiz+USQS|Yxs*YmYW zMYu&F*E{=&t$$=#$xg>BJ}?C1aCKYuF{&#H2)lz`+Sy0K!l_rrP+?9`S=2o2p6tjG zI{JNedzfXIuQd!t_iPp4=#5WH!xgiT>w|}b2U6-s^1YH7}C>2iyzNJ6l z+ZgMO12Y*kexcQuI|4XLoAKzmGXM3z1@_;y7cddSLufJy!_W3Ak4lR!)H0kB@t$75 zq!9ZZ%85n`D}Bx(&c5Z~J*}y4Q5I3nqf*$-+lyRD0|JGDf_!d+uNB?Ewp$RQ&D~}J}M}IxX7pCAO)$i%pC-B$o}Oh zTH;#Z{u=>*CvDUc`()DB?jybh|Ba$W#swvay6aFDp(M{*PMQA+n*G*9vZs^Tp`?bj zNSjKh1D*W<-om^;;Ojm0Yjf8Xby|8gL**_7p4j0ny<4Hyw0#swH^BgP;M{|(C z%zSRxaNFjlF|8uw)p9NDi!IACM6JVH&pfmpPoiDwW^(;Yhe7y?Lj~|*Zb-Arbk95@ zuRbmUnyns&M3 zZ7TKLy7vk{G||{$S?XrD_iv9V^4+<#H4~(l5mfuu`*p0Hf@qLHx`NRC_}g(n*|%(3 zeu|JwxYk37z;b>5qhl?I?+v-niu>78Tg5N*`|nQNpYI7jfZ0qUVW}g(nQW3#X5L34 zM?11~aXD08!ah4ji0f)a7ztU(84iW<)?9W@ghzN2qQJLLCP5c8@YZhYvPHj8R0yPz z!4A*ZQSunP-Ru^YknRk5e$gPc7~_JH$f>)l=Kbtb2!^}=v0gDeSk{yf5fX$4s@zPC zOTEZFGvhSkDmLcdJxTf66CqB4)R`r){C~LDUzRCHwmmwRM`u!fntNZkT1T&&K!aSv zJ7{G2RD2ogEd2{HMA#O`tVdX$MlE^>hSEe5)IJSXAjYm(kq~Zs)Phyt^A)h@2~?-hhmnvV7h;R%(Vu5} zYFTvfuK<9eoCEiBngqXvD3FU0EkO-o_NY|xRk7t)`YsKjMuT;AOZ#v@#MjO!oqE=5 zrcAxNi&}y>XZOQEOyA1`j&2)-&A@FB+O7X?%y%Zy@V~?x8p7br`k1X95$&Jv9|Xc6 zm`~xb5Ighp0FZwyM2lrD?a`Is?Xr3Ce&Lg?yZ=Y_=5hbg_I1S2MsEIOiyh+55rv>D z4AY(CiWaLPckSMY!Kfo?A3s>>_C>w-s+{N@3ok-q(%5G>#PjX$bE!49O9?zkyV?o= zE)oz74gx9jHQvpp{S%&&;)1g6QD`M~>HVdL|8&{^`q39~RznKu=yng!^GYv-DBmRD zs)z{7nht9o6Im)h!$=dHQQ)w{BB; z`zt6j<;b|gbV_t*vB@J?2rj57&0#s%*9$aQrhr%Lt5aDQRwP<|3>1Rg%`LO^RXY`R z8O(?5Qf9i`SXfmKO@%Lu2@i%!^T{AAMxePPwBLoGwC|xaOq#;{EgIBhKD;T^J+S)! zth7PE&Ljzaa$C6(FrXj1@`aVO?5GXk=K4*(Mo^IAl03!Z7j!wqk5d)MPi;EHA>MDV z1Zf@;;BU9Sx3(sP>{<~3c}0DU{K)QOatu0q&sKt|F)(76od|!y4?fp{Y;zT4p~hk3 z_Yu#?k2s5ivaqw`b(NMLePj*-3@N^^T0@zJqj<<0cQk9#P6J?hts!iNeu|KVx$efi z?G&B(-7Ww7=e8n*FrtsUty!D{hmsZZ`Qmt8c=pJnKDFuHo6CT7bvwnI19h|);n@Ue zL~8NvEi@QE>ZpimjFEOYR{7pL3a6`I%m1x8vqy*XIk~ct_t2_*3(o?Gi&cMqy9tnX z-Kd~i;D%r8vZ($PDxox=^yk_rHUwsv-&i9MuqRjuplVB(k1ZOXmRmwJ3M23vEYh6H zeV+@no_=q~hA7+c6D&<*t8HbkZtL+}Q!0za_m^(frW4yV4y&s~McTzs-e$mrGQ6*X z_g9A>%<3p=dyl4=mTNsZhmzUjUgj3=u6EoBE|ReP1VtKD|=&$aswc*_bLCq8R>cBT_3u2Pp1Pgf(Qsav{8w6Qm%^D$0%3r6r4`MUe&&d024+BN= zA9W1Bu)r8#1T4mmeG6-zr|Kqlzl{`(pGYRMJKo%;iYu{FEHp&_PYujp07Dk6)^RdP z?9OKV`jGxQt*d#S54CNGg+N`G6#6>ga<}Sa>QG^xlGmK43o|W1}YGI z(Yn`fEIDtre`RqGj8izNy*MOKwW!)_!H|Fx8_ z)gG3Y!1ZuCyZttAE>*qT_K&iqn_Fvqp*Eft+o#2ej^g!=4bE967FjS-zJIv3DfA?= zy#y7(Wne+w+`s63G@Q>xVyprR&=IKR$3R(3 zu)bbx2MphS{LUU25mcAK;%ulM3Ox@>N0n^T9n1~8ikHg74l7M82yDz>my0algg^KR&IfT+ zLQqsfUmK#VM=GHv{?fdmqx9*r@nj^3=~CTjpwC*4Npyxj$z*1mX(;h&dEZmmGI!HG zpTDrU4}{o1T~d^j<;Y_f3rvCjP9+NTl9l9UoyN$v9zV2{lmdeB-4R}0z7ms^?9%3K zKm#W9IhlT=a5LCEMPc(^c2&EXGw^8C^9|$5q#e+;S>_6^;*eQ(Ij{r@iPpUF59tE# zQoKGpEa~z_vMa?U;!$#FP1{x3Ut2Zb-5n&;>-(8xx0*@2Oir%HLiNq(dTS7-%!W+Q z6?pPh<1n9zB`?-g;KOYw>iuNMa(_ZwMZO=2dhajTZgD-S=PmMMdSx}@UFoO4mgr@z z_-4^YPuW=OBdR$Im-KAzWe-S^dm#`v@f2DlrSu>k>G6%7BL8U}2*n`4UUif$(O^lp zeQ8x`(sqXOFAcYyDLa1Hzr$u`es9J?wa1KRhB`K@>vpM3HZChJ-n&FAbaxdwxO=-Z zk{X^`)+S>__w-<&Mom{oXVAGZ@n|{7uDcycXS86ZI&z5~-F#BkXFN2+8-4uwD(A}@ zJx>+(eLu=H3=_SgKKpC^xv%ZL?2BghAzhY2T?M?xDXB+WqV6?lJWK)HL@#>|L(V7v z0RoAqN#>WpuY!Ym8Qy_Vb%wDpGYhFj&uRY>4d5^T`;vu_!jNxkj3xGz1>fG&h}26m zg%x2AC--Qvz`8nG2=49{dbk+o9BWV}^>p@<#^lAHdjB5Nt5+`XOI|&dag~Q)|K_cH zll%bAj*c6_DXbSuC@C%$e2VSTnKVH8-$(rQiLV%u9!Iv9w&A_dXH#o! zDR-&D#$LB})U-r^tuI8-wL9zCT`nzVa}plC+}QgXM^U$@q^$f#rA#BTSuoh<#->#b zIfih4FGyc77%ujiKKQP)6z=zv5hnpKQ+CvSg8arZoP#Pg@>2d)C?~9A(h5pfjOK(j}HqA%NCy*UEXaF zO52c5Z+OS7q^!EJgv2A~6dv}O0Aw)mb$Rny(9j4&u8868Du1p04)|VdI_oj6#n-nO zS{@{`Kp`w_U{9akn>2g-Zwy|GY7r0$g|V3I1_7o0mpCkX3sLEq zMCcX>yoU7^l~@PU*1)_LQF^Hxm#wX&g@FNZ_SO~4M?`4I!B2)1-JLNqyJIaly%AXc zWmf2+n;5V4_L6jAGwtZzdl8`BOJ$euS3Q+frdD&{X_4W@KKB*0w&GhiKSsTCdwj22 zd<`^V@9=C$PJ)(K(FmHHe0{M$2d`KlC1NEbWB!ewoi!-G#g}H>Fb;|nj{Q$P-mO0>6{K1vn8BS+H@UI+ct2~+xF=H zUHSe?3%|VaA$^fCPsP)~yZdMigAQ~eI9^)FVfo#Z6n|GiiY!?flVElEmB|o_HkT2i z^2`2u9e*2{=d~E4Ow-&F`Rk0mB$9U$&l`(+m7KQg5CemQ3CLcHvy~#OTFp%gxar3Q zqq*T;oT_oemq|LFuktA*lzmG|q~h_}eF3s|t++gCO^OJjZ9j}EV3k{3Ig$AI4V4N9 zrpEmd$AYVtR*9^@qhGG*+4qg;+=ord)K{)Hn_{3W)^mQcJ9O>Q-lyOfhjSBajkXFz zLU-QYyZWzTV_RaQ&~ba5HERv#2Hw=4%^%nXEg68jdny?kl4N*3wawPs=E^I#NNO(B zS@(^Xw|3GUw;}aOMj7_}e1l0Xbfi$ItEowaSz=R2BE0p}C{IQ}>{z{!PIBITLSX_^ zq^XiaT_vcE_a|l)p1ICzy=r+S(!1LwXEl90)(>a0BH5b^2{<@Z z+p4!nid02{fToHXOqaGNaz;Bk)I?fti*vnv!a=6aiuJ=#3T@D}!$Ve!L&og)Zq8Yi-4ZroDHToQ31B9N+S&_+_p*N28j^rgFR?31$^F z_g>pdl2ezb6q=YJW+zi_Fs@{StLMJeB!sw(<{G0OC*X1+{34T)LtHl)a>?m@)LWNx z1n%nUa&ty;dcX1jmy)86xV_)Q@@0hUo&ZIf2fOZRH+Yver*+Ww`ygik63;DWU*O8K z>l!52&HYN4>EXxP#!q1pdC#3x8yvk7k_z?)b zu(#*jSce}$lizYD7Cz;9ht6)XRI3fMi?IfD8kCp6Y!8XC$o4b!r&S$8B9H7m|R zwc)UuKY9SkP5$2i;}7c_^~?IwGrU&K==N6qp-TLS;t6GV*KX{4gwe#Jcm9OuV!I^} zalj5T*S{xYrA6=bjuA~U?dQFbv$CrS%F=yrKgMiXChGde^)#*gj;d60X!oqkLd|q+ zyCsH{o6XIs{+7B34$>-64O-#ZCllR*$z}txIh|=I>ihGjqRU2U9Wst#kGAu2cK6Cv zf;-IE{SxmZEWZ1?_~CpDbS9m8*xWZ`w=_PLzj^^=0i%fb$p(AX43!dm1y(Z>Qac47H3LNKd!r1q`m^q*``k!icf= zTLv(<*zXPMQGfD2ufv;-1^i$#WUTg)FAHV`Nvgp?XitJEH^bSKTh(L3fomNXZG*81 zdF@;05wJshSN*cP%83|?FHkdaW#m0>~0-DmnPr=&+J7C1{* zL+)fUbR>EoDt(nMEX2We#IVn4=2cAW8Efy_XJH~x6N>dmPE59 zlfw~C*Q*6#j5z1v+PZO!KhIj1o{Sx9rR`SaVI=c;gojhCuSz$Hm)&By8SD1;7QmG~ zjx##o4Sem&14D0S${Vm{AMddij7-e=%5_?_!Y*V1Ybd)tf-xlewFl&i*fW*imJkC{ z%duz6Mdnc96zFhacu^>iDByNq<%?VJC7&bo;^-(6mjUb?i2IN4+=io5p0z$Ye#0xq zqI$B!UE*s2a1>kKOc$R!ro!bEA#{hKr64LbwEw8d=Zk0n^z&Mk81aC`vL!|Gm^baD zTC44${IXyA)FKUAx9&}JOp_=7wGW$a;@Ok7*9*$PNrpB!>%EDbnGRi;_vyo^E znI(NKsb;rp;(X1R^Eg{sMv?~13zwaWMq76z={LP#?EijyD+)JR+0>?>@F}72S!fUT zL*BuhhW*mrtD=VUogv4Wk^xyMt`;1D1HX?SKgOV}F6Dc9-oHC@RsV=(W^P8?HL4Bftgtpe`Fak-L zDp(YOz&CAC<}K~J>V{p@SGyzucV!C89fGFFTtSF0a$!?AA^R z(v_RDnz~S~Xs?(zUqtjc0Q^rk4^ptad=g2u;op1G28)^bG4tfstL}T)A4J!YfDh}H zQ^yaHU$7Dh>`R-VxwBjoKW|}Exq;Qm;{6a6X;y0crK+wzlRAl?TspfE{?pm6qRVy7 zj>Rq4|BwT}Y&R(CX%wFt+~q4zadQZ1#83Kt#b04VW9XdsqBENzB$cYWwnWSCU=`NW zgr5-uJ6AuPX7N|3mA-w`d3D6;q`w=(&vRK+UGlo8M_A(ZO1>n8a$R;df9R7TK%~v} zV7Mo4%yZ+h?%!|vgm+eXrWhEOgrLxQ$MvkUQE1JDhSeVMN&3#uYd8Yk16SpQhqZUc z`8)*NN4^=$V&mW>cu&`2)_Cle7-ZbU6%`dJ)dZ+;EzU_uS!}DQs~?q#@!i6nMQyAP zC$EW0OP{+mQkm3xIG_Kp=B>eD=7RmKp9|W0FVKFl76X~m8SN8p>lpjS>(Mw`j8Fj9 z#d9QDj^~i&7bJQOsw#^mPz3If_~I>gCjJH4w7fBwg_?L3Ru>7ZAApI%u6;fvqRj_8*$>+=4@*K2-XuM} zJw;tV72k*?4mvm7WaU(iZ@niu55Y_VeZ0phuv$6SeE4pGC0hq6?b0#D1^-?82K~nQAx7WYF5h5eJa1;htpw#5Vvh~S zqTZVC*R8HIYuUx#`==72_5{AX0Tr%W`-fN)`ju)G)+;;@_q@;io-NMdubocj!Xd+X z6fLFF8RxP~k7>f!0h%@S&NtkB%i9*F1c*gQnQ;ZX6e(V|D92HdZ} zO=0weu)6Lfpdf7hGg19YrM+k>v0Fnuv21l<;ai83`5xm2$%5@A?9Jm>pHiBXsL_p? zUFvBMEN837v>i2{qS85Se{PEB6_^lmQVk{&NI>%-#5ymHTaB8sm!Ol? z2_zxAJe)(r(00k*KL)7Av&`q#tQ-@U{kGS8yw9ECrmvg(BJsjwyF}SuXL=nsNLW0M z^%3MYYaOetYLo!Oks>g3J>O6a$goW&QKV~j&jE?5b)nY@F)Ls5?0X~jc8acewd;`~ zAw|>St2ZqcTEW|%mQE`5)=Vrzrdm`P`-R~E(xkV)im~~2n3HyarNr}L&jaPQ?Yj|H z${b~ZE2~ele=rx^GT}qcG**3 z2ad>z_mQv|g@*j=mQG_JjhG*jbiJivk4941#D%QHO)KH@;CK~3DNfdqNw!sQ)$yoR zn93he7o3;3>IAhI$cHs4QKAPmKkS?D|BSaEMlpvHxYk)U<6692DE2slid6Cc^X#nJ z+z3!149vf(U(&~Ph|mV~_Gu6Z@Aa~r0oE_vgylQ>$XnFUH;(u6<(uyJQgR=0gOmPZh>||(LR>XVG?a9ft{V5X#`r~=x18qa8tZUh#1U+|=IJgk^ zk&)68N>BSZ*6Xo-1fuHdlzHEu=grG(_f=1HxET!RnbS};jd(70(F8DCbmQ4+rjz6k z^VROM`|x}Ar&dR+!Acww%1 zeA{;Lv{lkp^siYd>zWvOf(G&&*_3T1iV5%gc$*pg`&9#hAeUm$JLeZ4B2{E;2z)h%f`gVN67AYhZSVH zqB9z_#O~wlR~j9tJnW4;hhJ1Xq2qNiUA1{3$_|f?$N!!d@9d9I+NwsD0_H=4y5D#5NjP}Iyh6qqRx%0L~7D={q zWJ&9l6q(%^x?Wp)g6Ofa7taq#ZCSufXOU>^NcL~W^HT^zf~p%Ra36kLnWWpLjPps9h^(?pbd9TEFU0+ASi(#E?{wPzB-!vr3j+doonLITbrS(@uRA=$XW94eCURaZa3zdo+!Qj7; zVK*m|bcW~7sb|G2mcnIvvFQncow>qqX(`de={}FDS6_CeS_yb)og-phl>)u67+I{A zL$n2cJl|$T28W@%p2hUq@7d5|?e&v{UBA$P#~f`)J6g$F2dexcTre2o~8ELdrXM`Z&wUUt=etp=DxT z8QUBh%z4qxgtL0QQks;U+^GcIBK@CbP$1c7FW^o^O%8e`;BNURZ}AAS!|;AYE}7`r zZq5t}8U~$)nSg&t8c&6$?%}}7&h#X~vUl%R&AEtdue8aKlk3oT3p&eG;R^F;hvDvT z4C@h0LV4G3)EeC0NC=Z&ZwO3!H0Phq&ZGHdHLCIa~8^q%ud5d^HmhP=3RZsi|<0>9qJ>%~A| zzF0ZLRgXX#oi3vz20RpPvNL`V0+!!UY8@NP*uF*g>DtX)%k`>d<>=~Zb{AX4GYHhh z!Aw#7bAg>|fbQdi$<1LnU4`p}aeU@GQ6nH`sW8C+OiuXmnFsug7~4x(`P&UQLu+Jk zEzQOlX>XU87!(qA058`m$V=F!l28vmDy)G}m$5(am5DT)B17!P_PhRDn-N*>upY_Q z_MDz@d8ew^Mhg-|JDcsG;Pmd()I^OZ>qSM1%Lz%kh_|P=K&(PPb9Syntlz-dw|_?} zAY%Ds7%A7Hu*IF%zU45*$-inT3-hu{ka}Clr)w>Ml$vRijp-N2JGo5*|HI$;k5}Ya zh%eG90oS~r>A*-^qA7RMEDddXNBKiS8AR!sQWbya-o&AV6uld|7Vt8n%YS8s^lrac zPW=S8VOhIahwVhJruye={QIBW7M%5>!aKFyy=w|YwIfnu9Zb5d(Q7Tx>viW=a*k&E z2R0kukT@o-J=bLl0oI7}*yEN+`C%{BD>R~eb6UA3lR^V6=0oI+RUM5#Be7@y8S3QZ zBry{c_}<5lLt}>vMZ4>6o}S=Qxa>K3^(k0;V&dW`0#+wGD__GDiO1cVO+ag)?JqAc z1rBu!bGl88KZIVzX}Ro4CkBfwDwU(ai-bkvq2Zdxq^ExsIu()EE$P<=c^44E^PXK; z*?WJ^q=y#TF^IB!*<>Uw6e!+qq@i-=3PI+ru0J_;r_b{C4mQt_ z={9~vtN8IFmV^whDkmA~ElOoR;KNY_MB*DH1=R{&e!5>Wpnyura9f96z)j?mjC!%? zSmWJ`!vjAMQs3UuW`|3$cCD4UEZlCh&N>lrR0KGAXxtOG1`ZwRwYPA;YmNJ`Pwg}< zrz-=hSAp8cW;%sj?OP=mQfFCkQ^x6?0TPx`?Hz5UqoevearmkeEF6|Zy%%3?biO$mg4GV$H$}?{QP)q}5 zd(>5sRC}%6H-B(=?SO{IpclXfuqQpJ@68Qc^VLd0g|#<6i^Y=+b%?3cJDT@X5X)nb zfAS0e#XHcmg3<-v9nHW>#zWc)l;}>#9aN4bn(*Ndx-?>9paom)*=B?VOxCbT;*vJm zNY4ir&Au zS<6qFqJ0DOC>3s={n|ORDN}M%jF&hgNa)8y?B+8D_xCgYfq@+`L9L(bR`e08^#8c! zZ>X!PA?l*NXJ1fx933M81#?GEXWB;!{a0 zd@deM@-y{#VAs=Cn`RO%=&R$z(v=r*xc}bx2POg*GqQHT5H5;QYkfWDg7a~=NjR^l zwl>Y()lvBQ_V8H~ci82l2u6I^(=dC|u<3hp%~7k-`~~Cwh?3>cfgF!=5SvaEA|ceo zzf3I<^F}1*%Fk~ z78Z?r5ag*I-IJCHz+6%t6kEo4*i5QWEFz)y9D|D+$P3<3^fm0bpzEE~VB2qnFGF2u z*l(2|0BK2XhYM{401q6aYXi|E-1GhWKtRN-cW;IM?l^nJ_s3Gr1pc%IruU(5!1`oy zRi%xMjB89Lh{h79*GA2x)+ek+Ck+kCmcy)#?b-7@52Nteb1VRq{T{~PQtmb>@>J2k z7+cDeU}Y7D*|l8ySm(4anC3=`@W;vRFc)!I*D#D!OqV=;2O-1+B%+Ov11vqCPsy)z zAAS%oBQ$C4eVq@&t??Gb=!55eNZRe7HZ*F094~5I z8qz$Ef<|QEiK$wt3IZ-YUyIhY0^Rqks1iEs@z=Xe`06Rejt({06UXW9Fysw6c$wmN z!mK}}_&hd5LQ^Ox2>yy+SCfERKJS=|X3oVUL9n&+wA(4igJ{d^`_3NH(y^;Ic`QK@ov`?^q# zV4GTR$B9b6$ro2nw~U%=mDfzSLb;XAG+m(|K+oUXl$XEUb=)RE5?1f150v`&e(Nok*I`)LDQJh3XC_25Ut4}L&pB&JA!IB@R zA*zZUC%$lF#yWeLDgGP$cA7OjzhexpeY41s`E~ajl%utXjU5_2oGd^ZvO!S|6MFrg$VNk?qrtlWB6%O zkSYW!3UPHyN1|$QCXuEdX!kGWgr{dBHU9C<$e$r1%Hu~bGIZR9ef$sKkY5MFjB?}XysVaQ6d7<1tM~8@ zXU_}|N?~kTtHC-I|Jla9ta_Rcfq>_c*+9GdSPV@QhYuql|NAw~GSjC(fCKT#ENk&dWxDI-bp=6u!crU#5jQZj@CnWZ27-#<$YhaLYT!}=n~eD27nf`u#i zR(t0DBiWag2#}I?%{4rVEDiie$B>pWmu^KG4hpX!lnm-aY0~i5i;DlfV<9j3H<2wrP+laf0jG5=7wFv_qK=@qAFEGo#tIwkEjzR$66n!y@6`v~w*q}X^+*&M`X?7GHYoeC zMkY<_VivGd?0H5^Y~A8PtX*{<1>O=-#Wk>)mgKm=7!iHlS2a7w&ZmagvXdZ_({5xUYHJkZ}B|JZ{`mz?81+ zEMIuou6c&fD_LLrggJQ>uM>y&i1p}(txYZXq?O+n6%`W(-bwxLKWtMFf>SZWuo_iB zW}z!5Bn<2&Cu5S5lM>Q0fT9y^v!V*$L&3KG&Y;Hl=z!@{P9}8ZqlxIhUyPbf8#j z9q)9fF}uUt;YEsyxB>^l?37ehLarq)C1hko>?Fe85@!;JjS3K}f&XO=|67J$atran z^vNczy#flM5lRC95eHL_!(rxu-u8|!!^l%H2dwajNhmk0C0N>YHn&&D#WM2V%=C0t zbF-F^MzQLUxUH9+8Ha(vhTj~QG2!8T=+;oi|`v`#wUb)s#s{v(~x-)5(=@1GRk8(WG&aznyt376md$ddynZpW}N(H zENb)ts>=dmE?ta}(Ay=U-0aNouzy@(YAZQeEzkG^r;uhi1o|P#KmQjYI8dx)B9bOF zRH3Y(IEtw3vNH5ONr{-mSl@sf7vJnqpz(nbV@2lg#GRjPwLp%ykmuGy%ZxQeEQq>Z1myz&Xw#=BQ3>5ng7}QB^Ygi^ztB!6}7&|Hw#2 zRzS>6HIs%oLG>HS0xgADM?)2^2+DX%Ly0;PER%EC4a@w6G~7gpG6yg0vZnJ317I>L z$mBG2!>^}3bMBHdl7kw$Oad%*=YZe*x7}TV4QQ6r4MR*3Yu5yu7cSan-KF`ANL_%D zqhk&h?&Oab^7$8M&j$|*Bv(yFP*?W2LSg+*4GLj`V%2w`qLJhrBxN-(!tC-@w$e>x zi5#lA5}tra^pqvMNq8eBEiP?a zJJCuvD6gJW>X3JtnP=ZFPXy*N^Zt&^s7%+20PfP!H$T0Cuwrf17?+B!BcOF7=5vhS zlzW@7t0VgtgwG*t=2~hOvFZP@M835!!20k?T*&R4ric-G!0ajq9n_%n#LxXY`XNeS zL1Jx@w&>|o?p%Fq~!+OCAhloHy@BCDHN`N zS*^s$f+X%5XL}juuE$N*l~V@Z$$C6l3yF#f!d>D7mV2i@W8Q6FAWCMp7Pth zC)fw}M?hTAQjD4pMKtfC!QP1S-E+$c9k1E3KlkS3nqd(?Ha2pky+$ee@G16!a{Qza zMZf8vPmCTu*iS5ZL&e;%5?ylQE=_9m?%rNFXv%44RtXB3wDyO<^QoL5_HWx+?sdoe z_07$=E0*_&2h-(Ue!}oJQ*Trom^vQN!N$(c_TO^o&?1B87^aTU*y;#rS($Zah!XHi zxpBC8KBFu1;y!>pZN17Hbb*VOK9oOUzPtNM zozYxhut}bCbMy3uySs0$8AShk_DN?vpF{nHWYZ13R(k~j3mAV22|t6GJ$ol&UbBww zxVdzuZnY2?9zWl5k)LxDT*g+E-kV`diP+ZI0oe?tVDbL1F=OMuwN_$$s4*j9n@l7r z1B0J4iTVxiO(cJ&eNAZ}n4(gyK0V(_j|R#Lh-he}X{^2v40KNRE5@eAg?HTsPlf;B zLaV5TxuiK8T9=me_*TeSw6$nxd3Jcd>j(LEp?S`*Qm*YS7M8~cU21_6>riv_4xpY> zA;6rjI}**{(WRK(^HqGh@*y9i{cgkl`|Oi?zM&d*@5_vu8@HW-n0mSsYGlqRm~1cg zslAgp7S8Wr`oe@f)AGr57>7cke0mIt$rbw)oPz&B3uM6DP)@QIyd6o?aqS#2KN2SV zKfc~FD9&x$8cuLRaDux-aDq$Y9-QFr?(Xiv0t9z=cXxMpcelpB-sjeP&e`|we82js zuIjFOmd!E8nqy2#dlE{Km2j995D*SQ1LJQ|f*iBSjgT6+Rd~yElMuQouBZ@=aKTJY zk6&T@S*i4Y54ivNW(G7+5xX@x%}<@GU`v>1mPgl5`&tT%|Sx4-!7LFE;b;t2n&Z?tYV43KIaTLE)dai z4QR5&)8`zmJmcVfB{_A+$n$zgZv&2O;Qw$U|IP{5uH)D#MZ4?eMWKn!Ss+>t4#DtpUbgCk`bweSbj; zx~|~5(JYLSr@i}5zJ0myM(R3(qrvS9nR-X{-d+ZK_RkFM`%mkd&oQ*x_y&0fo9!F` z+rgWI-JM7{B4;e%qpR~)nf3ZW_1ahA47Y8OsRrM)=bgPT);dQ&4b3d9Qyt**5kTcR z5kN@D3=55b_?8ZStsx?n?CdE8nR2Y>lr`JO#&E{k6T+O|Gc5ppQ%u!5XIfr0fOg#ySsSXz9p=xA?~S z1pN7XgeE`ZzzbcsXt}m&na6O`ow`$^m~5zj>F^xm6g_Pqt0*p&w<0IcBjhETDy5sD z|HFCUi$D(ABSXew@n80~l|pB0zwO0%%%gpoYnQ?2!VDbPw{9G-S$wp4(^Udc4AgvB z(I-K+V;nXM^uR*ivFv_D|LAT0S^jW+cJ?rOO;(cx;?f-tR3PK|NEO`rd-fZyX5|Np z_E+>IRC0C=1&YW>_LrvkddQYp(n2Q2k*JNfO1XQDsKXWjwYNu zPOLgteZ3=rq;7i~2;DitXO*|qYpGpv=CW(#uP^aT z6`0eX(yay?C$#%SLf3CjD8Gyw&XMGa+AfrIbPf&MkvZ_TY$WL&VpqKmO22GSAnMPh zvq)I1H``fy(t2IZUkEj64oZ)AU!Dubpd}UtEWdy0zMg1T_w!!6WI!QvZc$v2jcV(A zKC|-~UY4k<+zh+I;M#5Ay&6!aDs8Z?C@xn^iU+%x7q>G{+wJz_(rP9c_$pn_9NxjO|3Q=FjrHp!;6M{j%l%9*8?5ZORc1c9Y|GwET*5 zx#;NK#s5H@QI1u~meW{3uJZJmT z1MM!cuVlZL4`QD{gcpbBFU;4hKpDRAD3z0=zHfJtcfdV$@6LTe^_ZC7<>+eP!rVuG z=Cu4;Gi>>>-8F)5qlUJ1@e<=1e@gJOS+Tui(Z$zgZ4kw5Q(dg_2)rAQZ#3VxY_z%6 zprCpCnfL9sT;;>f?eqb189I@Ja)!*1k<1it#5s%no#Q^%0cYJ2JwcCbYDgwM#u4Vb zlk5W+s4$Y-gW|v7dI-|LGGcwvCY^v$9mKWI%lg}ySof1jAuYMeS``awz3@<6xPB0R zZYkF$8d|?H*vV^7y39FB(_7aJF! zIjMo|X%C2^VOR5sOkpMF`ijHT-11Y!vYP0^#u@7MctPxVMfp+pi@jAQy9`$kM{^C0 z&Axd>+P!i}b>c*t|1V!~#_bqUnS&ON;WTFG;B^o1z6^RNP`zrEEx4Ja#N=z(S3KfH zoc-dyMSPDdvIw{93|4QP;*zRoYws^$Z+nzLAc;fE%cq=1H)|w*#e3fSMx@ID9pJ{h z@2@U@%LPec_Z6=Pu2aujxd_*LKuA~&mkN8q`GVF#C8J};ij_YL*<4d5tX(;edSy+E z?kejUdTxI~52XJ>HzZoatN&>7jXbh(>1 z#zPlmN2}&?HJAd#i@i73l=re2YwNBoZMO8R*j}7;^mlZ4;LB*dJGWr}3`X<E)Pf655wrfFf()< z=dvX#L&g7^0eB0>ejrYV4K+D_0cF8LpMlAM=V^LB`$@1qr;t zL;m9;ZhAMw963H6`cwb{`f``=XStVv#8(8tW&}lY^JDYN39^Z8B}S3+*ba}+?sn^# z8OBL$)NIywOhymPcHpVP-P7aig9~->-f{?jk79sZ&tj5izm9C;$Nr+3XKLi7 zHu0AxlUrAWY%QwFbXJ3E>JDKcZs+(&Df<}m9Rrs;=uKQ5ldoERWXsNi`aQs zF1UL>kznUUIz0ER@456NV(M&Ct=Jq?ON+4`W14kN6B(R9T(apzctrChqRmuaRHB1u zsh$>ig^QM6>5unE{*D>NVo%QFz!=c4D=2#VchXgz3m*{Yz4f$(@t~Q!!=&*A7b3 zTIO5A$!$a*8z4N|tDZEvEN5DgKqLp_pvzoHh&0m>?MTvp|J~o7J8{7JYjTf^lM@c4 zwmDi{_GfK}RwwYkg6;zeJgQ58+&PzE=O3V7H3`cN> zL8|K6w_>0>olCxIO5;1bW2cYs8|P+o|zv z8&{$-vJPs1cKpn%vW5n(+udoFmTFQ`^BAii`>$b6wI8!j zv77`;=8ettJncYJv~&j==By1B50`}#;G01e4u8qF>H#c?MOu=B26XEJ^4!g~jCQ}^ z@;CbuHQ%(Slah|Id6wB7jDw9xfaa4r8N0Qmu|Azi7GX zkrL@FH5w=e!Q-^GnSGJeJPsAPiqic+z_oyeRB1CEMgXR`$S=STEx)WaC=MDuhVlYZ z(i{+Xvzx)LXRx#mo&?BoLm23a?QwDK!znDZ)u6fcFJdd?;L@V8ssgP8LtWFG13ks4 z892|+D?h@&>^wEL(?fO-R8BbmFCdud`dBGLI{NxyR7p8^py0h_uNdN{JCIM-$XGTa z2=40sIQR;7o*C1vtPTUbUJ%R@b@B$b%AA7GU&L?+)z~;O_)I!ei#wvCqC#0N5Jc6k zw0W|M{VkdOPhafvyD zfDliH-MAvMT!$*=aT$DqIRI?wAU)hu1`wD%fsr$_%26K_Mf;2mPkbnTemdh?A5IHx z+tkEYd*b3!rK(D~(S+(~Xc*n?Niv7aQ;gvJwxNw=ScSP%|Ioi|RAv8N*Pde~5QZaq zYAw>CbsOUT3jrTLs9Q?_`@5JbGb)zcs#3FtkjDfdJt|N=L1!~aPpY+G^JjVcA9QG@X<%3*+t>QT8cty+!kkT}Q`AzyG#djXFQ%1-K ztt>1Q!CuGI>j`;i@i5Z8iQF6jcuPwVbkmR+5T)YcgX!O3g(VZSLByynhkysY{MA7Q zi5gAiU=r(^aM^w-B^$A)D+_hAYQV5V~U zlJmT0fD9{5t#DsdT|cpMNN-K7W_UO}C3@G(I*0RizxaaA-MV!Zi#Jz2!BQv)9dvgj zyg;KqM-5EuuR~(twK+B$+&=zhwt$*H*N&nMuGdrVk}d@yDJ_jRY!J)XKXI@Y_?Grm zU%vm~O4$CiQn*UH`GpAP{k~IVmgU>~k7y7REp6Hq{XpNLfcbJdGr9P}F(x(agSOrx zA<~Z9GC#EONP+d) zX&vnn?;hgNKk<5Bt+{;yenY$*uBI?#KQlN?oQAQR+e5s(Q#>il{x}RDs-#XyOU-+l z`C0;fp5z&zv{7hd3c^H+y6JL%;6F^BXPh&mfl12~=K{M<{BURP zqnZ95>{j-80c{@Z(*Uu1M(rTlk(nB7$Y=gfDv3Jp`4iz|(${wPO(Su@@2kLHL0D1Z4Ie*+O;AjAf|AuC3v zTE-yikKr<|9}vNzrj~OARw^WkTwxV)I>1ydErnEb_K$?0EDOh1EVe8ZrH@A6hjlzj z(4yO@5=Jl^{`w1ci$slD0mlL#^gS}FB&2ZXP--PbhMW@(dN0(|TTnaPPNJlRb1~oM zO*ce0R@bTZyiUNpA8(OYUouu~v#V#fV$rm;8O#vIad_2*9{?_^uBCX?F0Lpc6pj3OF z)7uH{v_EoUH4G!6<9IfGwQq|JW3}SC<4er_nF68y5>;6oQ(b{cN1OP{6(|X|7`TV_ zy{u~J(f?am4RHYD{dCtOsDpvu7IIs(vg&QAkHtCR!Eq@KkxG!v{^g2Du!4mE+ei-O z($}ZnJpN*zt42J(j!}) zz~t#yG7WBhl>xw0jW)+7A-n{usRulv2^6=%D$Xiyzw^4P zRM|IXKIWDnwwqZko7eSV--&2e~}+&HMl=t_jYthed01+ zuRpG|l@vCze~>Jd_}iI?C)#OClgAStO4}b7 z9F8WU!x>EC!GYFx|I!jD)_%Rof7^Jk#s>rB$=iKBWK2@kq|Pdau7LmGN^iRYUP~JrH%HT+mV+)@|(?yf?Ri zYi=$^PE*q#r11Jxq@PX8oY&h3@%ea~U?u9bdt)CEB*zn+Q(OG`ewJJbdB9(OIc4tictpY=Z)} z>LCaHYr4vdb?GV3v=bEv9V~$J!DywaqkZ{vh<}m)L{~Sh4NWVR&WKG5Ro~KVQ zba9$q|Ky7=7UK*`B4y~jph_M}Z5b#qWIVjD?+{$^Y_I*P*g){o`f{?HqVl{G>hlq& z80;Y%!4m=wf|ba@tcC{5mORD6OB%rL=bFQK9q^)B*#^Xe{Md<)i;av^+FMj=R0mdz zoVhVPM;swoLNO(H+PUfWPZj|^RuUUu``j4~Cxu8Ua&?Tm=uS~HN>V18#tj3!k9;~j za8nUCcMqooR@x-JE|~sylg&qo5~7mTj!QEPA!s|y`doS@SH>!sH4>W+q74ENK01zk zN_kE=6|3}KgiEV}2bpCYM@fCB1*KifKwl~qugO2v>hK++Fr-sqP5jgk7!Qi)C*A0@)B4m7sKJj zHB_&sq_8udxEfAc2LOq%&CFygHx*_xXp|jueY`j6y#p6PJs4Qs;E23D7OV!JFK*ax zpHAwTZ1ucuI}WrQcqde)tiGb{LnCSc?YZCYMpW9}zo1)d7WZE1yGM58F?$vE?hV-v zMNeHFSZhUeX+p8X+=<>|2EDgjBf97=mHY*^5ptXJo%=oQz5HBBj5v2kP^r+~2Uy z-Z`UE*e(e_vf5YAHW3qFPzbD53ehpXv8Jsj3IB}50{Q=mV*ww=qKbvlwJ$V6>78km zX-K~|$?gOzSO?I|aDtMDa*h+bItBqc6j!&S8-)De@ILg|5k5xgd#cH*R_}9}XzJca z0!s}awuROTrwYtzN5VIUC2Jm$*@wiawhQjRUGV#gQ6MQPC13bU&^Zvqx?-CUd~jjv zG3O_P-1V~O0dYhAz^9@u1?R{w)q8oXjBODkwEW-;OJ{fv!+<;?lUbVkm5;I%E76iDh z6#ZI4*8~GAU;#MRmSIUmozVG;fGfNG^1Jq1l;auwd_p?k*c5TEkufoy0?ad(f$&yQ zSw&yWbk1S?Tu+6&l#*o~%I(7J93cgZdgxW(+Ax0G$j(!co7@HFFtrTvS2A!_@gxQ( zR9jVk!F&*%wBo?8N))RHaywqp#@W)68Tap@_*uB2#2KE3gQB<7c5Fv@BPuct$`m2Y zYrixVaYTpXEKB%C3iYKWWgj@_=9W?TQi3W8=sQIa8G;5PNIK&FKY3T+(Tu#e-62?e}JwEsi*2 zFgyI)@$;jm=3`1j58V#)c5CoU5Q#k$CX)!-|X|7 zQghfyk@z7DYVSF(uF3n<^!?g*eA&DLB$L1gt^+)XKlL=jvuY+fovr)7LSNh5#V4kW zvvK}?hSpIo)t6n8wYf@YhOh$*$^Y+B{1rM;jh4cZ|0m*lv z-4&X?!lkEV{vyqjVjPEKq@_BVFf=N+OI?f7}aXFM7HJA9#4p|GYt`01B$#OfLWtT4z!?=%zh>Ej6 z;STBtQt(UVJ#gJ*Sh0! zzeelLH+E4<2n7A6m4YEt0g%ep&2{A&Rcf`4VUevhA z=!2!#?I7}=(LuRp${KuF_*3Mt<$$3XS~&LJRn@kh<9eC0_uY8M|9<&@3uQVn{v|=U z0(oH}k>RI`in0M(e+|5md7p69&p&}!NZl;z&I6sFsV*XagSG!&R9ga_j~q(1$I0&# zMSha~x5#%T0etU@o=PcbyF1*kObx6lXVG9R@GN>$0`ReAp<+mWuQuOfzD_SNXS?Cs zo?MYBmH}U%{ZbG{2tMbU%q17$$?Ex) z{DY)jwp#s) z{E!8Y!=?)|`~(Tp?UqE^L%`n0pDzU0y}y1fu~}c`Xash{DK5P}BZjzN^QW@t`ZZDn zU+B>%>PV$gL37I|;3m5f9^(G(I_N*|%{K|#=nBNTbz1uK_|(#WocVNTNb0FA^aNEe z7T2T{*7tcT-@V_ug@K20QA!H1SFnR(6G9#ymlz8!$Lb6f zrWxML@YrpL{~C*RORXh@)G_XxRc~9qkh2ceXIgyV9)0Sk)5Rv7sP~%;6Qr11TH;u* zf>jMtGV)@(FY)m%z^Z{c9#y*b=9g*7v}5KTI50a8zw9E=Khksd5&wH_{_lrLd?UqSgo;;)J&sNK|uz$Js^4O8;oe}E=tFp;NY5R!I zf!agV+LCOeY%`hx2U*LGP>wLrziiC}!YR5ZYI(pKO{Dr#YWA<33O{2^^1g#?mw!Wy zRZjV6U#z>u|6cT<|1Ke6XC`{ScsYDhK^61%n=!|B$8mv}XzR9(O=K;uZ0un-!04(y z4%x^>ln(*3?`geiTCupOh^q7=E16;HAM1#H#9=R&g2bVNtp0Xz{r9rrLxTMcvK1xD zK7vm6%g=zDts|8uSYIud4r>p zM?7d1UX(q}_M7$R?3YXoGdP@pctfAQRn}eh8h!`C$Wet4d zbi7q>uu}FrLN<=*OjTtb3lc5?EFWYz`HMLJWywK!`M|2t`YH7^3l9+Cf-urmI}^2?`Wukx}Wu1z;bL3orh+x&>)jN}Arp`0T8 zA{UbB2b0dVJ{Z@19HKP`w&CS#$FSQxg+O7^cx!NIPPpPa4ofh>e+>pyZYCBh_T{st z>wccQyahlH$dG7>_oan>aJI$Rnj)rM4piU>f8CcG>VwM`cE{2MVHUvNQGAV7{PpYP zq-@0)9sEB}Io|-P35qWawvZ0kW3fnIQCwxnTI>#LTy*sB2zGiWvU4CW@WeL}5%9_~ z@nansp$`MYhe|`otHp7(rcfmBI6LqQG80T^b;amd#2@jIOlJ)PD0Ldft zBS|*ul4NISaj9<`Rv2D-cE$g5YBu72>k$F>YFlZo#seDm|0pUhmcXMR54=dNah#We z?gyG;oJ#gAM<$1+jwM1N^LJ#wQKg%%yZ!1iLgC-R^Zz^$ zNB!l8;7FVta*jsD)X*$qFOsg=c*y)KmE9L)Fh|73wxH`GIU;fO7@NoL0b~G`B}K=_ zhtg>_>nu)YVRE`uQmd0?pR_-B1s^vSlBwN-+Pz;5<5(|RL}IZF|G?Mcz2ULh{P3ex z?XTTNNe>A8%cuEt3j9DSHKbg#WznLAEBdZur55e#{2YcgNyYot>xef`BM><|?d(o${_ z0)COHsSR+Dv1)&zyugR8+||a0!NFufTBmRgUDF!Lof7rw;hgq9y7R5|)AI_jM zx*TYK?fd5W^kMAeaw^B>O|P~QBi-Z07GCMLyIY`2tJeB3y-HvpH9AuV1`bZ}WjXsP zmMPTnHUE2bk}LT0Av`ZHug&qT>1qQ85!6FmVj{*jv&9d@DXepifQqdr;WQ3^{U#WW zB@P$uCqWk%lEdjL)LH5~GluIQ3KJ=pJi)K{eBAQ#<$`i@jQ1D5o^1Z0ZstDz{ygib z;+6Ij_%N4u{vZi;(Mf`{fF*K5BAuq+?Cob8Cp(k}Tb|y0{pWj3`DTk+GBUDClOdF; z-Q264zL<2{7Lct=z*lA8bjfm{zseeCmWzxNIH2qx;axoRGEeuc_AHt(R z@O-{n6u0h(Ow#SWy}hk_;S0X4`YTeUMHeEL^Ooj#8p{t1yspJxe?W%tCq^d6dJb(e z8+3D2Vz~;{uqM5yNdNZoxVB3D!b+_Ls%V5~mhpj-1@yqaEq{>T6Le_#4a5bD?py{_nZ zW%F*46g2f2YX!s0iAj%3ec{MT=Vd4qhlaViTJWjfJ;wvOKHEipdxW&TTAqUqE{7-f z9ey*&ENxvMX&WdEEx*1UPES-sc8bSaC@Q2BqZI!#I&3t#LRqYH zj}nRbWWUmphJ<%5PKs2evA|)8ilW*y|lEH zBs5C_?e7YQE`ZJ{hxC>%_PfJ%hg=T{yu}9Ba)tP9r=NIhN%eNiuh;PS9hZ}$)@%wa zbfRv~b41392+NCu^T(=4wcQ0i&#bDD5jpW4wF4ccfG7lxx;iOoOIP2aqz!`j!%F>y z4-q&t|NEO~=chD;T_@_}+C{-L8$@JVkE!jxYl|3)%7GVg)B*ptvSHV)!>XO=1d)fP z;ZJgTCL6rHb+gGV=K18us7+4;+TMYOhbA$SH|_QZKM8vYINTuW&lV9-@x3tBwpZb? z?i!pov?7V8#PAEE4A!E3z6-rdkxD8o1;OKlvAjF(OJx-b?J+S;vxq$<(rE`Z-Mph8 z$#Xf7+P&jj=pUS~F*ptzO#S4}7?(-QcW2OARp7GSu-<4A)Ffr3LcWpdDrPa?99z&r zg}5nXHrDMgt*(;QrFMo$gF(RK1)G`j?Hub9UJGKRa6VrROsX;N35}y*3DcHo`+4I1 z@!^fm1@0N+_a<++$?BjN~Gbh1fbluB~vcX~Qh&3iIp74VeM-rm`t z3+Nf`!h(!|&kf;zf1!Mbmnq&zf9L4q{iaFNPhtHnEnPTKzt_G}=0c0XXjUxJSdP1# zEHVSvBcxE~A?_PNQJNwyz>}237(BF4<|p>9&~*9t75C&q>+_7q(f*1=D5H8P(=U6V zJL$6HS6iCFk-*bZDF@lFy%&&NHUsYzIRwQ^|8KAT-@WXDghZGH=0>o6xC_R{JQEP@ z>mn0+F>{8Ob}k2#i(&9^c#6`W=01rdcZI*FdGgmgFVK;Orp7Riwa*p0usOBws!vgV~!msCz7MNQ}_Q_6Kr) zS?RCP8%}uL?kiLZUG&&|JY2jjUB#^eO0fC);sJg=c@!GeW~osMyrFUH*6T3By}0dW z5N(AN3jEBe`fWkJBJqjCXZ(}UwDoLZOpw4^hh*X>=nvY8m-uXMwKk=M)qpiFV;fBj z{fv@@GT)bO4@@4tfZ5dkt5errFAUucZ5@8I%iT)b-9<*igHZi}C|@p=yn&zCw8t@O zZbY%aYh;N$y8!P#aIqr=QmMICGmtryV)afvZv4{^qKdX8xHwu*LO>njL#kRxQhiREfP~TFSG1OSCi4?~}Pt%f< z%jxW}@xFMaaY&vH^+)z(88@6G;i3evZ}@&y23-f1tz7>8kl}d+*?QBDqbF1Jbtm+; zW-w?Br;pctH!GOIOdvpZx5I9)*rrrW7}_7JV?u}`?&@-2l>-SI7t9|TK7cceC^{tt z+To&1wLzM4enyS=aZ&%8?sIxvTz_iE0ciTxoCTpiqaD8p;Zq2BN?G8RE>$8JZLVMV zOEcv!mjVu8V!d!$Gei(@$Z`Elw8^%#v|7BtQ~L)$^fgk%pJIzN0AHg3gb-g&kJ9rG zVVw>SLBJLw_$RI}IHv7(MF)mXGHtEtnp#e1#Hd5>i{z?)Uw4x+!}!RO@ZMr~AZFqXBAr$wXwH zp}7}6<8tZi{oaYn<;LY>f8Mf&M10+l?H`GvlhXYz-mF8N$w@2qqvUKZXydfP*3@(M zr4O-E+DZwm3>yc`q=k=l)J~Ot3bnV_GweXfO z>*L7=64c*nzaw5c(2(4Pg#l&2t>Y!CSx|l!IN(r|^_2N}sCXHqG~%yh(X%H|dnowv zlG!=#J-_6lPX~btW-==?kwVaTDzyQQ0UzBJ1Ffgo!PY%%vIvD|Sg>Mxhpdc>&}!CJ zSLaO4(5oqRfdumK6l9*-0Bx78CF4$<(Dm3lAw#pLZ>8D<@f`t@+e4KEnaO5Fz~QJ9kO{|&?ts2M93Qp4H41bspsL|RUziZfS%_?6p(VN zW}Q=0A7PuIL7uJo~WkPS@cR^uGD2jpKl})5FG_iIuG8TQR*#L$jeU_N+`a_5j1S7 zXt~^TtdcOD#(2mWo)AtwRY1b&P>2W-Qov{vXqyB`+!@3cx6>A*BKJ!;?VobQa9dmw z!jz~hYxZIc?e4NqW@&O=icphVxwQ?i9mh0J$w*|PH-L3J z>_^NhekK`28I#pUMvvR00zF*7%M0^)DCcE=NkyU3>YBz{?>fmrpmqB@KYLE^!;!yv zev@-9Yh9FNLWNIHaFkC*1wkv2d)@hPmH0E8y^T#Yu-0l$0_hF}e2X;KHXXIJKK5qC zMaI{CiNIl2i^MrAk;Nt8c$EF-qoV;%_H5d3y{(1E;?dY&(`4(y&Z!&_ZVV>;MmRuB z+^c|%b#~`^gCXGM5B_$3a+7h)(p?^e&N08>ai~-*?7r0=pU$2YG`YfH@Dl(t0<077)NfKvz*xP9*p9;b@D zzVA;}!qshnieboAg-(-c^bVnv8NRrF;f+);UOB>;5+S+p1=Ec5I}Q+gGRSqJ{XA4| zH(f<7C(I51D<(A0AuR{C^gA)PHA$X_!7y)_#I0Ryd+XYdGPUjk0?!ZhJnyZA^TUGm<8k)!%Y_y`E&uy3G=E z!pqI@IGaDDe-dt($KB>h>`Dm?9~-2^u+ys^{KV@*NTU#w1Kfz@|0?B0Ap+2{z;jQ1 z%yz9YI=%%JIEFOIq%-jQ=T^}9P*{nX;IkTpP&QaTOS>jKwQAz@YKcrM8*hqJ;HqnO zzai*(KgM#86yBiRr7P0mqhS`3mw!zxbfJzJ9*Dp$TI_Vws7S#?&J>S>!Q{5_S%2O` zR@6ZJ41<t{8%=7xWpMRI|Gfx#!ElGR&6^GEwL-KHZ2to!f{s zcPD-Kx~;1sg>Pa{*H3hG(!`*Bk}XwLZ4A4%JnS688_RpQ6BOWP2^zq6^utzW7~2A` zdF$2OaZcOo+>lN}VqBA$+qu9?gTc(M&HXL9^CSbs3yK`$sUOQb?CS&MGV{+g*)Sh7 zULQzY_5v}`GK90Mpmzz>RQKk}us@8hCoYle+{Y-v`-s#gr^L|;G_5QySH-p?yVxTC zX&JfLAQ4vcwlQa!1l%I@U7x+V8XG>U+`wS{UoiRaZ1J200-ti+WjoTLiWmOH&jH5! zmk4=0GR8}kDsps3v1LerHt~6WZf+-i$7_(pMwQLMINr=t9Gi*I*i1o=Y*T|u^yx`p zAXe!XnZoh{otS~4;Cv>(XH1$KkCG-04-Xzn1-V~MIP+}+)mRDKpma#-Mu&{HYS{5? z@6qvWBFgsmPM@im4Fi&`%0>ZZ4lH|)n&)|$x(&%mP~pzz<_A2^S`33H9`^_F@5NEE z$zF(xwTZ-{(c3N(*DO;BB=ZXk1bHn9)Kl8RkPc*VXxH)Al#%yemK+_>8Rkf#eIUc% zz98T&9gfOs?uSd<1eC>U_PhIA0CgPn7<6)rc}+S$$oZX9kinJZXnzEtJ@^~s3RPH6 zzrn%&;Gobk1 zL(`khT2;@RBH$h&p7`BHVioE`LuPxM0SDv4c}Mo!JBPb4AoK})Z3ar~ZD>z#ok*x|PG~cuV}cA^nFNoQKg~JB zevSbaG3?D)SQ`|Hh5SlLNZ^Nt5n-z3owJt9yv^wB{P39fQ$JKB9~L9`Q~Iw|8naQL zXZ{pR1(`N9A{(MyyYj<%rTYW^qVpx;XFP6|vR3Kddj+vrasm5;@w8b>iiFrW@xJ$& z_h*5$a@*`C9zq@xJPE5rpSt*cl46Zh9vVReJ9d)P&lJEUN8QytuJ@Jca&eHOSb@SEAA!D9DH*zyi~>)%fZuQ`Nkq{*VFHzLiy{Xp%UZ`ZgsEb}%~?6ONKetD zYeRs2dR#cp;`+|}hM`M->c}4vCtn{@CTPW+ld@639cqT9we54Qgw>gyt0g?%kFM72 z-v1|J{R8RbJ4~24=jY6y8@L38+T^QYwctf>_p5?@-)!jYpq^i^-|V;UfOr%9w$WJjG0b zhLr_dtbA+x^^ZE12iW+pR8%N^co7~+=bN(o48&zw?Qc@z6ra!6+roA2EkXT;kVTZ? zVQv)??;ak4VMr@70N(i0B56UawCbU)uh0l!bsO!TTsBVBB1NU2ay|Hu24X}!C@2owCb6*J2t=HfZuHF z9A?k!hs(pm!?R!j^{lKq{u$R&%i51_Vz+glH-lFMe%F(T8$M*@TG0=_i+nSpUwPge z!{EUbLI!AS19y86H-Vw3Hm5+?kaiDPI*mq3-jaoKU;MR}u0}?Ev@`=;+z54 zA}LyXetH!6RKL+GoU2CG(RyWa@F29!jC|*Ou}l*3B=ojXIIdR^jM&?-Uj|E%zfbh2&C2RXhC4 zt83rdTg8`L|B9%nuKUbZVC8lDrt)TnA54aYrrf_I3wz z#VPBJ@-*P2mz0>8PmgF+w{*nYU!B8jY#e-a{euq`W%_MdEGGFVG`WZvRlnqQjwlEZ zBX%8PRxwr~1;ii}YLm@0K>PbCQNPJMz~wckk~itD7KlxbDN$8><>3@E>V!|m9I}c? zRn<5{nB%Nq<3Kx){&8M?@<{kDqz~~VboucoxxSbilOL-;C0_x}@O@J#ehMOdVv2Ef zK7&HQL7eMQC#xMSO$n1zU=ES42L_Fq^C5ORt^ zeXt5fLY~-Ni0R^v6h1FlDR|-G7P?_MZ*4;kj*T!EMo0^3TN>KBs^_Oe10Q`s@FX`c zPte1Id$vq{K?ik!vD$~IrbZOE8VTA%&ZHP}M^c>lID^L>zuD>B!pu>Qw_26?^7cN+ z!~w*0FuA*lkQ)%kwCeT*@tuu~^)10_$k}r9(83>NK=JNHkL@{*Ia-;2J;Rx~B+k44 zcqleq>}n6(jFZ_!8E50-!qL#w9Al}qTY*JDKoNS)8HnoH{0ROzfr7=gdXsNP>zI;- zn&<1UYbkL!>sc|hs4!0OM-n)OY+=<}m@_8{39B9|8spR>0;07Rho~tEBodC7woQVp z+6tjrfbFqClh7+12EBmv4}?b7M*qab223rOayZr5rJ69ISGA|$07xYm6#5aAN zkZU~_JF8Ir9LA)(mYGxd`9b-lRa3dFV-8S|{stGvwfX7KXTqu|%p?~Y|LlM>_0RFS z2dyVwzslu&0c5+K?VZj3NSx@z3<}~ZsO<~+cHZ_m)*$z`ob6JYMq41m;**O%mxw)` zlw@FOTtVl@Kzj{_=^Dm_(5Z|#<#HrpJVC*)QnU1p37?HOT%o~&5PYBL+e;T6kLxW9 z*%jbC+#iBk$jGAW^`TX^to5|gsP9)&^eBuZNbRiMq@f%N7tl#YTROXb=R_++gRk{) z`KQ$#vwaiP+(TRK<`g9yBms%^f^evd;~I9l@hhvUeaqpwj(4fZR@?1y5Hxtfl$lVs zpkg)KG+GHqTM%jy%{8|+tN^Na02^lq|D_o(IcHZg5@fo34S8)GPSf3u563Qnl<1-2 zk^c7L7(_=#OzcaX0+q^04&@v8rxu@gk{xcaQ`_y(W35R+E?Y5`cv!0tU~8{mo~NXL z^>2JWfoO~u7FnR9=#cJhm+s97GG|lp$^P}MuYGo0hZ11x%JKj4^_D?#c4@b8aCdhN zE&+nOTW}3daF^iFxD#B1ySuwP!7ViI(6~FCe%`O(==IlE7?<|GsTMXL;17xsT35u z}6r3E1d+%p`CL0LX4BCF`Rsz|{)9)7G ze86>A3w=4MBTKHoD?W=5`qXog26chvr?&Rsg+w@-`}ULON`QJts5Dw-4eH8srq~|o z(n;mb%{sT7ucG`)#hsdeg$RIt9d#oq$L|v}(~w)vgm)3kx&%Oy-ckG{II+j|r5>%5 z>k`H@foFQG2Syr8QRIgdCb|~=Un+P)IIgdtcS-@)lHr}7dxWi94TAW~g(h!qMm3kO zysmf1h2|y4w>3%R04>YI*-T4&m!3k4g3;WLSP!9=vQ^CSUDzViBFN}~Y|oG($yPte z-~j~QSp52NAwP!aH;wqFUrIfYsnsLlO;jbw$19iwbJ(x?Pakk7RUC(G|KioqAR*DP zRW`eCCB?_i>Obgxi#9Fk#LSk5q}}?uqekwk+j1)4-eb?+ZiJOE5#}lj#Ri86u$`UkE z{7th`?rbWJ7mJGK(=Sps$Z$IS?+yJ$_S{4x}E?~F4k;z5`?0WR2Fn9 zNgQpI#`L&6IsXm8KxdCDRaz>L=5|_mFL9{Jt_1_Hw4O^ckNqLM+in^D=)yyAe61cTk)bW>DJcJjpILtHcA~P{ss+sS*xzXi6 zx<|xi7ns7VBa+*5jnw|L)d9Sx9&Yba3PbMxC3LEL?4pjK3bvTVXW&>A8+}#Ooc3u8AMShKC{+9oK z+4gpY_}`*RdX+dkM8EeD*!3qv|Lrv6*jt;6o>J(S?()8e0Gr<6;NlRc8sYu0e!YYI zN`p5w(C==(IJ4-(#Soi)Rp|-T*DBRHofd|u&(e^1<98p_&bn-Ym8S;P2sGo~8ww$F zl)RINKO>>Bgx-wJ2F_R^tK^JkedvBbAzN=Oo94fxWmx!U1XZX=00`$(PrAkDIwFsl z4AZ=XT(`6GYSI++FCD1L`nd}-?V>_#y1>Z z7(z#(GB2+*?8RMsw8(yGpR9EbGr)QzjuwU>t9cd^Y`z%&Figh0d(h{jBhDLcCV^0B z%qM-!3kqpI>ux3U1wQkma{;+pJ%v5mm%lpJF1`sypO0L$ydv%e=h|VH1!N019_}~4 z9$8-rk}J)-zfbJd47rC0=$)28X`tpP?b-{@{-urDr^F!{7qXD7(g&Vj7E zg=RJfNla_7Ry1BybwwGJt4=g<+t|kJF z1NqB!HanfL-u3ITNlCevsO#Sg5wNxrr-j16ysZdnIY_C`22Tsm^`lJ2*RcLa2>DIo zbxUGF0bfl$tvDQ7XoYNPuhRjO&;5St7qdBPYPhhnjIN-YjZQoMO5Gj^@ctkK`S`Vp z>2Pdf92^*%<(eQqiazBQdwqbU>m0(oP?vWf*Xc>dgSI;Y!#AF#ww!1ohT9gg{^{xDgnTqpcE0N*uco8Wki-!XH*zfJkJ?+aj z2K7g3$ReYt1%b1o_T@C?6@9*B14>w_9BQdiSJBj&TQs$u^@rr{tps$p1i9d(9)PFoZuR3hUhYgFqG@mVq z=iUL^0sNJE4N`^CghG&=Y`}ma{EZ$Zg&bHzzzYenfD68}bG`BPV1$^0450~2!uE$G z=7-hV{J^D99>A<}w%zC1&rrl+%_QjgVcC=Pblp$nD^6r2KjxUh#{JPO)izjV2#u!- z6|W%`{5n3M-=5&Wv^gxFJE(A~B=OH5 zqAxa6#Np8qLl)znkB>nQ!BjB&vw(*y+M;Pn7fes=n*Dgf>fHuQHokuJ-#NrGf1a4~ z-;-_U52}tl8l)wF|L~-A&agRJ@>joQrkIrkxHQ(FM%bJO5Z4^;`umN*qB>z3eUpt2 zAt37LBZjSt`6jivhH8Q&>*-JzhdCv;9{+a}XP9*jqEDN`e`6W7iw3P;?gGY!*0 zU=gKZll)kOrkk7818B7cjVFv7b3cm>(M5wWx<%728A{3yTLn^`uEwrkyTaKPXt%mr zTHC}rv@j(XQkDR!cUuRw)9lb=Sj(zBuLvo@{}84(w8$-gkGb(S+SmxWyc%cSTBhG* zz|>;oo4O(y7HL3FK1y^WQYrONqL%-h(d8{<`wIx$Mb$o#);vJ*Y4P|b@_I|=6d|q2 zo8{GgG4*o9L^z-%F-+>t50xdzY(&$}i9kY_U8)q79p<*veofEkBqZ z#doPgcN1sx=a=3exuevv+c#m9g>ganlZnJ4mf0Iq24C7Hs0dA}jt^t$ZRk(jl|H8b>y-)sN#_#h3#rVNFI(@*BR>z+GBB-iLob;O(C)DG2K@aw z!%|syWb;rokDiQPHT!u|Pv}LAn(`0_$2utwiAY_JT%$*C4k1sQl z-x(dcLL*^aPe9DxjQntj*GOBjD?g2rA9PA}Y1Pq1u@V!v`a_Up@~7dz+NUU8Dz_No z^KN{p0MtmG`=&3oK@PUDIKQhU+ImOwN5VYR*q)LwFUdc{ZMgsQ{R^2tSy_>{XMb{q z7I-D2w9DbIJo+3F=k~CYg9)rB?QeoL(SE(c5q9tFCa@BQ?Z}(tPAfQLJEEcxaXDI_ z#!7D$3m-*g;?917Rzt&|*HsjPWu_5IX|DIVHv@Zm$o{SX`*dr1!1j>XIi4^y0?4+b zQb%;zdqckm!5gwlUmjHuIq=L$w9Y!e zscpofvUmX?_2e&6iI;YG%AKhVTc=Mqfu>4NdkY1oUEa6BziyESUFa)y8gMUy zM4VVZ)6nJ@M1nkLDy`JgH04xNTV{z#)P`e7P%1QQLVDf}KAmvc_L3Q^ztE716U)cb zjMDFw9V=O$lAyVxc^s6{8sB$%I?{lUJMYe4c77k8?T0*w2M#w_J~z_#&i|UGd?GIV z>D>Ii$&GnU3g@FK+zh<eyxrUb0 zq?oFzF3*9I!*yU%ogZ>foBBg z>pv5xe24ye_GWz9+jsdw)-y1>D;+Qxd;1oeUw!MJqYXx5Ri_%%&Wzs4a_&`gHYQt6 z_SmSmWvB&LO9^jWHX%Kd+TSgyRlHwO;=fTM0rN}{B8UiHh}>0VJ$u&as1%`ZG1Ygu zhEXYbzwT<%e7oSqk!m6>uilA;cBY&^#9hOT{8Lh$-6!+OZt*EuuVr#w( zgVVP^M0CHhOzga8c zrQf6n#sWqsa(;QC(M)Edo+vuZQGlk`JHR1xfB=ZZ(w|3mi6@uBhiAvm!)1x1_GD0Z zh(`WfVzcYo#X+e15dH2W{<)t9IKLT`w&=?6;Brhg~ z0oTu8ixuSQ)YMg}M;AzA&M)^{V>$C_!BmGP`e4blCkAeQ!^okD@C^T6danhq6eb1x zW8=BnmZqp;6Z%~QlS5^E1DYh`qvamI$U~ATMnLpn*Yj>u04sXffRyT+>2vrV65h$Jgpt55jqk*&yKp1$7D4JpKe%= zHisCXTCchtK^ogXa3)<=kuX2qNUD|#AMrX7TNPk;=q|cRBe?kF!fr9WDKaeu6n2J# zNIzT^HwXyx%|iSj)`8vS&l9mYV}DL>%NE9YduKOeE<#`gEURX-#oH8eJ&yjH@qA!~ zH2Wwi;E;avdpySGGzoNNW~2+`H@B^;EQ>M5*t*z9qbH!hTrc+Pg*8lB>%)U?i6>sC zDEKmqkvo=j+O!3Qs@ByLAXUkwla_git@Q==0lH*ywqC zdGu%0bR+6E+XZ#Op^7kJ{x;cFf6%jg4PvG2WV;p9xE(DXFUKK_rq{#w`Yt&Xf&cd2 zaRJ`KC+{?^FTs9`~I zDR#nXHYbq>>Lwgp7+X%5&D+n%hm4;gTBt!Yk&cy0@X7)ar)+mOk|Ifn_`U6?2I~k( zYQ=?bEXcs~eM2T<$EQ;rESpyeU0ocv16#0suKVC>ohEQy8hIcN<1+nVaU!Xs!o&Sl z2Es%wElZOMe^PV$NdL;N!-{w>^kw~x#diwcaSQ{ChF@B+z?yu#TEYEQn(|}EY=VM@ z26n_xZX8pEh_BHhYB~`ja=QLf3T3(6nw7@_3P4!?HQBr`yvK40K|~*WRj`Hw6p7v4;!^X#ElweN?a0E(cqz(_EW}e zHFWCN3oN_E$8e)r8x@E7EvK#&&SF3Na+7)d_Qro#=jqTOd`nbG#W<65($hmJng6k6 zSTWr{W^-5C0#Kt{A+@^2B zhy|UQP6lN#n2F!amu=#nspczVH!@wEGb$ocFb9)Jm_{#P^IWxDkATS@hysNB6jhZRe*Z&=MIlE z%+oFx5xs<)rSqtlBBr2`&U~NN>@0>%3}QJdhEYazUU}l^PJ&>s=w3u66D-zq<(mq%tVQ#rC7kwEy*Y{el3Z_kHCKG zv@3QT_Nu;ck?H<^pW!VDY$)U#J92U6V3p^Y{;P8$v?-&XlWB!HR|6t(Q`i!JnBHtf z3lxMjW|Hb8pKB>vS=mF{*+@*h-8Uf)w|?re&4R(Jmb6(jRFADRY}mNo0o|b9&0bj| z2{|+_?Gd=>P>fLUemBrZP)Z@zhl$`$*p5dn=tEmpw?CA7A;wJUgDxhfHKB@h_V7&`w@SvnWu81w# zY;!|=P=x8&vi>(E?}$c~dsu^#pSSqyJC$*&082%GIQjimt@L&n$;9?r@`SRU_9x9! z@-NlmhL?^mY%&WqkymLQ3Piud%G!V_ZjkhQC+SHQ8B|IXkc|l#PTrusF-k^mVKh}$ z)!v~o0s)ov?1f2`?{8jrTW8z`L8~ne1?)aTt?fKS4AqI!ruPWDWB~}5@O!!G&#vmO z?mwL{5TBo)eUV-`hDXQzg`WSQ8qP%%@?tJ(gziMGd>ie57mTA*^pLS;_}Wb%{83ng z0G`2tvwu+m_Ur91xBXh1fA2W4!S=nG5@?Oa#Kc4x=B0rFlBz@E`83wBO+m1X;VZiNgWww!U#9J}{{@M1eba^S0 zlkj-tBXQQ&IY*_n{!%C*nJ@0HoTzAJ%*Q--paKyxfYjfQ`ZApdhycW$l6_3*meqa~aplbKrqLK(@Nq+{A2*iii~=vjrGU0t;f z+^#>F)1~__dX83K#!*&RR{G#ObB@HvFK?O3G&*oSygeEDsx4c@Y=m7djWFWL!P`6S z&CQSm1O&Sl9tyqu5ovvWeJ}ePro#b}!sB~eZ!!-UXExTWakK9^UyTL61zzE=P!Ls@ z6bEHgL@CcKy9>t>a3UTRn66*0h?9xmPh~jJnfC-v3GX#xqoe0e(ZWTdo&ga@K6@R+ z2@1F|-HLn$IFOMg=J0|-aTHzR^ReF{R3R7?fBf%=^nW)GA&KUSzQMw7Ci3x?$>hhN z?k7qzo62!=Av5|cD@g^rFRDl~a2KlPw0f|aW-(yRVBlPl(P9^t@xRF)t6s2OfHYd! z9az@HRO*07_*)zKFwk2U_QUw}AIk}ns8!L_mh=q%YxAl_Gfh~AMAByi&i6O1b!R;zZ*#u+!Kr#@4{<9@+ z5?$2qeY~FQ%yGb64`5OtKKaFdSHHnlH+4l9qIRo@~-a zYoR(G=FDsKeez;5-7`nLW^Ljwy76#yn)z7mF0-L0BjyFKcIwvT(Z01=LXyGg7MNh2 z;*OlDsmVf7(WT(quMcMu8FW+&e-0+YD2yG+3jW*Z0e^)UD0CztHh#3fl6?eKd(v;< z#A=q$QDDO8-?uxk+&F_sg+JUVzPUaN~ad879P}kJ6jcK_wy(UKb^Y2O_y0+zTvr ztqvv%O}6|tMB1-^Xd~BCq)Bew+`|0s7Bp;UkRyWi7jY^ zN+lx7O{}Y|(dA@Ag0tE5!}O&n^`l8+nqG4~cd4(Iu~Q5b_)UFZIr5Ed<3{&z)+cTS zu0$oNp4A5}4WFL21*3B!@y}$%U+O9C(pAHT$?)+@)k3n>fCsEpH#UdAAJUh)IvwZ8%ov!e{-qyGFbPlQ%-cq{l>52t<`0jqROX0iS1&2-&~b$-I8 z!~*ar1^~&jNU8K>5~9@kI(Gu=>{1&3V8@|3RQr+EAEGT@v z4;g+T(IqX2Mc!x583oN$2y>`F$`y^(aOL;c*X02CDlv);Mr;=SSO`k?kIlbmO;M@d zUFUn|)SJV7g^Fkp^r1Go5=KG`l zJl6?bG09YvPjU*bXt&%;S7#m zl0tU_mM*`t+(aSuj%n_HlWa{)c#u?QbMF@-(R|lY>Ahi;{goV$Vw1U@h2;cs3|@W93xcPHJ*jF$EpC_gS&Kb%2^vAHLT7B|z&|)y(MgqD zLR1DLmYBu(lkxdEonN;IBxzYd^OK?<+9Y-)y@ZmIV-(W%cYpz-`$j`BaecVACVC>N z9rCoGa;S0eq&9m|6Ios4HRJJvRkA8Rrbq%1(aXv@arkc-b-6{6E4jcO1OGkw%lF0l z{*Qn<$(r;0@>3}fAJ`6X9!6`Q8*A#$hWXGf3RNT@H1c=TH)s|Asb%}b!Qb%X9aK+$vLt$Ym{U=6 zmj$hq20sd|srz?cDX1wPqhc|+{5TkXvGA68C3nkg~YE#Pe zXMtLlOO?jwObY{rNLOhx_oWb5y$jGHsVQs6qr+=&%fc}NGBcqJbZ=Q^Jj0&tLJ~*2 zC&G+o`-)~-WR>#pSsZjhhQJ-&sdIlUgc6vDHQXW82zCDM0d2`5Tgq48x^sTfxewD@ zZ?QK+N@i9O+k0#)cFL16s-3_^QxP7{Sp^km`!=jX#4EwF+k1 zw$vyd>1yOvK5dY^^D(4VR6tW$hu z#CdPHHPQBV#zOveiWL1ybo5ocd|!g$!)$yxa7zhBrto^=ZZqPo;du`hf7LBmQBaP2 zl0K2!LRy#)S={(jd#M7t>pqj-Ao%NJinQN2gp&HG zqoP>+5WH_iBI?0pw$iGeWM3|v}`ZqDyJ+b^|QO&rROa#ag4YH>?_#V zQlRqIwe4W3H!mm^gL_l_Q5<8G4>se9#Z)9InR& z^Z*uP2nLHt=7A%aJ#|S8>cVhVbweUDwf`Y}%8zu$59Q-!kG#JA9F@#ajw2w*A&{be>sWe{aC{WoQ zd8rh$F?aj>XCwD(6@!g7C|69H=2#1!Ye;Um>Ps^F*?!Cq3vBB3xsXBVTCo+kJ0rz{Wmi|TCVvXhtl^QvyHLs|Q8$ZL_^ z@Y(nnqKb1RLa$-S0jEDLC|oCSgY?@uV;4prELRnG+dHGGh%_RPmX^{@&#pll)H(1w zn6jB5?%RskoXAG?CRZ=cbJ*>7l5* zi+-4Q8FOITY>JCL7EYldiCNgIkS@haH9a-WRD&1o)Kr^>Vo|F2fr-mUrwNC^QUz1H zF&Z~QIJJ)a`3MLq_A_GY<-~CwK($2);ty6{oKCh!NzvO>E#aUk#61_0!p)c?Z1R@( zNiT%__v68ae;5ME<%CQq-&G-9^kK3yKGF4THrm2cCBzMm<~IbTdk^HXtGm9Q4@A zpa1Lb00X#wbh^(VBI(46>bk`8?uKZnH8Iw2&DR)?%}$m6>D|AV*Zxc<3!iv*1gD$& zIw%zkOVtd=KIn%m^`6%L?h>`q(O9Zo5Dkg>Hdljg8=3q~*O+0_6d*~?8~FchMDqG=XU&oLcC zGVvKS5vg_5sAwq@0$Q(0mWl8jIIapDB-sirp8*e7UlJl~$O$|?_6II^HXSGeo>Y!7 zHYA}SDJu?e4@ALqHO}Hae_nfIo!iTl-Q&ZI^QH5Bu(6CD*And46C^uOGjw@Qc4CC- z;lSk>=%a7Gixln*9!lxX2ibma1AA~2jKmi7<91%9sWt-&Gs?TlroIfwUQc4Dg;*bl z{fI?S1?=`piHz?a#?8E3Y~%18AbWJam`X~+N6IN{t3o50mS23OR;?}>h3m2ZfC4Vs zRf%#v{Jg`7LEJ;nw+n`gA5ya~wzh}}hsM#LkPJ%^wN@nT6grZ0Y<8csT2+RO&$l`= zAbNyEpVee{MyG%aOU3JEURaQQ(iJMnX_JDvOjIf&XwsSt}f`n(Yhtm2{K* zYhh`OS7ddRB8ZX%{dqZ!;jPva)`#DK15?&@SA2>>f*kD{-aiZ&t)5=I(dbs1WQbQ+&{b*Y;*hA)7*zhX ze{l)e{7tqebE;eVPtH&mt>5rI&i+6P5x6ZG@1ai^pSeKb`fc$KwMw&m0V<()M`pF; zS6IRdH}$w{kc#hDDU(M;s;syKzt#3C|D;nA+hj>u#_Lx$b7b(2uzy3JfOL^h5zoc5 zd*wE9sHNzBa3B7o;%MevZ}2?%;z2>lS?`d9yygZr9NZ;r3onmi$FVyv9_{8i>0spL zhtt3Gzeo4W-@m~A!yI2Gz63Elxvms<(*$2nc!E^JtHq-96xpSc-?|&4zjV=9hW@Q9 z{2L4Y#~qL?-MhX{((bZEjd8Kwg2!dQ0bgBRjZTcM_oN60+vLh=DKx;kJJlFBqYH}w z=Nt3iZTno;^Ua$fd=KDBqA!VMmvgkd5cv8M!+UuQsv$31rJ?$!2A&GCeJfXGCca*!dMM zCjb}gf?tJE)vwGC^z=O!0?O_HQNb+0ia#-0(x2r;-QD-N)GI04#3=mr0GShswPh~V zQ!RGYcN+Qmd5heRo)~Aow_&+p57h!%CQE%m;&n-W&VcDo01`#XR*EBLd?v!6(XYp_ zdnhpFhhInKqH`tVG0mu#&L0*bCJ6C&6I7rJ zo*tsn?H>{+6f}1Vv+_qKk;!ZH0Z%WueUvVt^>xhwhtJ55v*D}rL5se3*`xLNi56vqiCS?QxEd6J8=PvxZIJc=3|Z! zhvwbW%zi!gTg<&SR#9|IfWu#gv_o3pet#_ zoordT9^=vl`pZWicr_nHwoHC3|5Vuf?y)>}xqe`1wEMg2OY<3gykuHp2;A2hisLBc zS6ax3E7J&Wmx52HU`yY!HLsprM4zF{x!9RbQ^4q!uf0$pJ`;oWo7!v>H6#F|{M~)9 z6cLE}sl^NxLiMFEu%>IIF*M(aK7O^vA{pb5wV++-`^fWI2w_iWe-?lFX02tc41nQG zv_j|kfoc2mVseYZVN%I-p@78K>0+snCKymSwaytaxIf-fzTU^C%T_FuY8SGs86^$?3-3 zt)SmyCKJA)GTCMf#A?>77pe+1ijD|7_( zlwk5UsfYmnf*t7W_GXB4+|k4HE8@tJ3!TZ8pJYL8A)X?8PuHi)rz+Gr+=1k=?2Dd7 zeE*n}G$vRFp0!esG`QT|ouz-+AV?VYRMPAv0w2eRpU0@(%GFH<|ei6{i-wW=Y0KaF&tzs;j)ruTD?I z?wow0VyqfO`-4j|L75!@P!(inrBzVnD|<*JXh2I^YHYuv2t%>T8tQF&_XNy(Q-!VJFuODnJrfBkr<>c`DE3j zOfq)VCfz#UaCB@C8zn=mn%!+;mM#1Y+;jQQgJDewagt8zzwvH{EJ|6}k?Yk-m2i(_ zj~69uEq@uyZ5M0VW%u1B)HdI1_k9x)e;T)Zj;NO?+W9_GIGce-TX>0{z1}A|Es2 zf9JJ$xw$oyH@CIYCDPn!?)_qr?A~tQbJNR~>L>EKezPWi|KX?=rtHJEpU_^Jmspsw3?1*H^FSXO8PSP8O)jca z#Meg}5V>DtQ55NtqpHfR-};w7N(qc%hxn54Q&Y&VU)Nu6Q`kO>Q%+&hYvr(em}f^8 zp6%*L!P9(`g%Aewm6X+ALn{avX#I@_#qGgE6(s$S9`08Z_?dLLctAvJ1-6<0uvUCi zq0{{$7ED0WqPyN-Dq>EVu?(ic3foS5)N05ZOP9_W=>^(+uJ5%LD>~el6*Vo>x0%R1 zo}6+L;qW(_@i)mb@2NE-2(Ip90irH}AA`liNPq4mZATgZ;He-tJ{YiFTZSVmc*sQV zsbSoV919;0Zt~sWgNd$GaMK5KZD-dGwn$uNjeLGHvZnY6Y zdX--eKA#M2MQe)A4#HmdKNpm3GweXtpYJTSJq#sDuIHSSd3(QIY}oP4J#!R;IewDI zJt}^-$H6Q5@M$^5W1Dsl?M4I}L?;?oP?ey+?_jua2O-kzTJX$Oo=vJtgPCv ziS*g{sxwjCulo+a?{Upbl`G~S{%oO0I_tmt8WJ_rD5>k{>N-0%Pv=2qAd$t3#0+!^ z?)Cp9^DDL+&0YZ|aC8J|sbkp$jHGf;_$PAmf!}33Tlxa@Spr$ZMq@=N_BdY$>T6L<<37~i##{2lJ^ z=&GqS7%C*^#&e#gJz^itSD^aAQ$$J0%t?!aOQKV)5=xA8aA8P&&A;GK(Q@vvYVl8+ z05gVBHP1|XS;Wm3_11DxQf`hnVZJ{O7b@3NM$MJ9EU$*I*`RT;-TtR5Ul#gG2b+|{ zUoU&SU-le&v<#o<>o36Ru147FQXDYA-eZZi{H5?ZdccqGO@QK*ieo zmIq)Z3+IJgbvoBD2BhEm!@#BVUYpo#<+&AnZO`qhyI-KGBhw9)u-qOEtB)9WnR0a?uJAZG)1@PJ+?(DK>)ia< z_^46dFL8FJf)qYO^C~8gpGyUSZ4gw8J$SJuPsW$AyTTisKU%g$P6SJkiD;=(X z{Dk?>8|UBr$v-i7QX^>UK!D`fvva~b6f%_(3C7WK3)$<bFotQfolHmZTldvjA$ zK&EaBxSJPO#x95QmeU6K>#Cdvy3_mCe{d*j`*nmYAll|TH58d1V~Y&Vc3pE8N$|IH zWHw=6G+ILsRG*hy7=AxtIvKgpTfvUJjrr;RB8TqkIgAlnJ&f7ivAlt~U*W^L)2Hfa zQP?wMiZl{^hc?|RC5g@tiCx9zH8mC`{W%@#)Z+AYwXN{>Yh7h3vDXIYA51(zUYVgd zi8sW~?ju1DtG?BlDizw&Ln4}m!w3%_w$Fs%lw)9_qppW*?+u7=Zp>tzrf>W2?&ab$ z*_8*f%p^Y}HRxEq zFvk%J^1|v($^>WOJs{Hl;)d;^8?Cs026J>F;yl9-DF8%?g{l**NVALFa_>&^q*bb` zH?UuDydwPOv$R%!k&PJ!dG&^J*-DL+>iKq>3Fx}&q&YYs9_P*zB|e~j5RLgEvCtu=$)@xtzhB7%s%c%D@M>*kwE z9wNMYh(O}(eZn^xGB6}v@s8#d>W)>uj=kbPe6=}y(O*whv8DY=PhMnKkM}HCq>0Tv zqEk-mFo?iQsQf`z^9q@r_6B)t1%!fJhZ;;vR8ICGN@%n~OPp(0#r{OqKBH^uQ6YL% z>qM-m9}$Rq)Td5VhVL%Z}|M`shZRp7bMmrWDFM zx>XKDh0&U;=?CW+pfzhy7P?rAo^b>|&5M<5YQMemtwOlb!lZ{n@)dr};g`8z?7-J5nr)G1K#% z;OaRZ)nvBK67LU?7ww;5YVnbXh&R)*RJ|kLI4gsH>a!qKrtuz1yvaPY-mb9w2h6;= zFj^O7JA~xcD9dQT&j`FN?S9!@OJo<;V~$8lN2d2e$Nsp)^Sk5{3#c<`XLhgqn&n*a zF0QTU7@4xi)4$%wq#-;yL9{dkV=znIcwH)}kgl>ts z)R^LgyC&J^1)9~Ms83}_O22tv+|D-;@CsNFcbbAjyShkRju&8bTCA(Ymy*XXXJ6r= zqXF>N-*pG>6f*MYsPxwZe(u6^s^nlofiuoPZ5I0jOh^<1FM`beaV>mJ zZXdF2^p&KfmZmeEC0DSEA@l-B({w zVZ7Z}q^jbCd<~C2h4z+lHz!kqqzcM@`iu6X61&bnd@ErV*aN0W)o<--KbOUVGbo>i zTI8Y29!9Eq5EkuK*Zti867>@pVM$TZwW&d#C^=xbhM%&=hk$i+kZ79Y91az=&&{aC z<;xUr?foE)s6YuQSRc^y#iRKFi%$jWo27w+3ebiu+5@gz`+r8IWJtbu>?KQo z{1E!Ge@#wB)MOtJXydrNjMG*X)wbm8p^2;vze?@CIt9+vTSV z&I8q%LjOEL7KO}y_C3@3GPrU!(^OH9w`zX-t#dOy)JptVb`_M6;1PNynzmi`HYo5+zG}(`1g+0ygftdawo2a(&z^4)x8u@Ko4`qGX124IQzt(M^u=MI_`Suf2 zhN=Bil+DVc#^ibZs|K6f#=(bSy3H8FU6g;XhzXo=ZRRjMCkwLXd}3J-#IfWtm|`51 zpTGT@{6kqe3)Tx*p1oHXJds~ePC8O3U6L2M^5gO9rDprdB72U%ZKOmP<>!YExR~-9 zqcg~ux`~;Qk;wN6#qY~XI|`=qc6lzi?0f+sAbfcH5|hEM$+B8?Yp$BMN62rR^7Zki z#_@j5v(<$j_Vv|A@(p7kte*<4OkHbl|JY}!oU`_5^E2TX7Z=y%L#J>E=6u~Qt?@|p zx+7@8%1HqxXTa0#qFA`FO3DPMHP`d2-7GG+Ih_2)>qi@N=iQXINV(BP&kGmBFlWH$ z3C&(`RgCe-)Vfhvq*>BEkdamN#mx?THJ#fJqH?nqVfYs*0$MZ)if+q=zedH*3T`9Z)0&4tQVYJP1MiA&0#WxEq#5bzUuXIPRCrH3ef@k=YIl zZhu zB3!4#%}ym`%4V){GpNWwD?Ys9`7LoS(~1dPe5|aj{i&LzdPhG{l~=Lh3$)|<^_8Hb z-LGJyuoygB&e&c%^%KR8WD4~w!7M>&l@ysiu&s|r4ccE>ow%lY(`HO`TSpU73f>V~ zSe=@71k$9kv`~glMK|x-Ew@8>rmj4CSS}u|l-2MTq*0}uK>V*U*@90R-Lg*ENvjhL z9Wqc#B8#r+L>S=;P3hVbV$`gOd^~^_4VSgzsl;(S%HwSKVet6NhX@J<7F=Yt-a=nG zUqe%-X8ic>x#9>m**f~Nxn0a=e|B{tvLO=1P9{Mek~ zE8YV9j(V^_KZh_mXSK4QyBS%ZMbS9#D&KFDelXW@YgfMJcHNZS<=WSd2M5j0bX8Zt zqtL)!*}U=1vxYKjW%Xy2=#l<^-9XyJkSWjEa%9TGZ^@-K&24iw_axZ}4XqZi*8Q2S zrEM6c)u}=Uq%FL_idT|AX7z52pWpVg?FvHuu;}5qCk*u_hHHpD7}M;YDt?R)T5>&) zofJ2!YnUqml zXag(ou)}zHnAy|VU<8jjT9Hs%GjGg`pxb=rpLis5xsW&y4Vwc{kqRy;mv}X7^Qual zAG|_4X>gNE-YmwDRKdbS0f~J zch@<#n^B4s3UPCD=YIS>rvRT$;y@P-;6)z6n!EVtxi9q7^CRjvF4v!))l1^9e~Q06 z)40p--IXg-a(_i9tY`qFFmED-e@peidXuPuGYd9bvzds%+hIjgO*tEvD3^OmaM&-*adLr=RX(8WekUfkWGxLa_C z;x54*f=ht#W$xUWJ9qw__x;|ro|ScywUQ^#K4<%H?|u4^d7i%K^}AWa4SdTNoR@A! zZOX;+MeQ)G_(n92Fbnq_l<}*VO#Ytq^;}fgufEi4YJsR92jS!SXG)_+NLeoHqxvN2 zPf+{#$Zy^X0FI1%=;y2Xw2JwPr>Ngq{K(|qwyA7)NH0lW{OxjiUuApLoY7BMK|N!+ zS#ZD29%Y$n3~-&$5QiLki7bR^c#)X9VqbP_u&1+~q;D5m`<$j|os5UEZp}f9>%cjz zD-Zf<%iuQ2u&c_gkW-VQ%LC&zVIBtq&RLCwX)_Y$0@%C_NRJAj0NX2|p`gyE=aw>e zIGnQgQT)w7aZbyRQU=-mIJ6{12@f77{pK*A%T~c;c73mh@;Z|(S4h$VDd`kI-!lU? z4gC%OeJjm=UIBQrrM~Q{QkK2+JpdY*v=6XtldFX8nb33jgrpw*o?6S$Ht(XkEGaLK z6ua^u^KDGz@aagg(e~oxhn5ZO?|1RnJV95N_cL2he@YHLLqb85Yu*p#?5_0BtBuei zGv;04mGJmvu1;EzT~tNKjb#x;gaZ8q-2cA(fMld%_esn;*p*mn)(wxGLpXITNR1wdA{tU|d2?;T8lphE7hz>2pI88O;ow(wVQXd{w zc2lcDh*=7A*yzLF7Y`fNrw0leiQqv#8QJdO<+L4#N{|N0R{kzeA^rX z7=4D5v;bV5xSFVXk@0ZK2|nHDu^dG!K!beF2NkaRM4SLSxg+M=A%ys8ya~{2kj6n5 z{3#U%x1Kb)M~537-6zFcjT^JfCtjkpj*(H4f=nFHy!C<u3F_`{rva|;Ew3VZSmVnef`3xup9?Tmw%CLQ`5^;X2FSt^a)tfg4gP=A z-VWYxnAL1Q=%_LV<9hWQ35W2D*FyhwK@x>P;xqGYB8pta?lccB*V(T8aQc`BWzYj( z7~~=`y?H`Fz#5Q*Obh6kQ-QC^2zY$DawIJYm_o-#Kl);z;WV>Wo9c57%LT}q* z(ODNYcS_RotVa<8+|1&NS-%+hn9xXrEKj#+3N{q&L9=ZhV$?V0yNDwhdIWPW4~*wx z82|W}GxPWJbI0blMt&rk51t-*<^R7a5REQH%=OdfW}2kd2Cl>2^EDR_+<%h@4RfC$ z2Uz&5N0vTa=TEFhzW*Bsj%?yqJO;=_jheJUf{#kU`aRp*YY8eaD$%j@A%k@ zn8InfjqpAfU}f=mXJ11rC=|3AHu}}VZ9YM&>C$pmH_L;W98(`0 z`=gS!>=&OX3QDB9b@o5@?eDwy_t)tU^n{ze*nWLnV+!Uu-s7UaH}% zq%ka%Gs02;oDExjBP|`;t~ROT?rAgqcSA{{7~`XiBZB zs?Hbg#h&sxak&2_7ykYr3*@A|5OVKkufWOHwhh6L`c1wHLDREJ7iXydEujA{rvL4= z9pmhmVh5)!TEFs@L^3ma<{s@sw!ps4G1t9*Wvj?;MtJddf|@W zda)%kk?~0pNPK^9>wTH5Kg|Fgbx1WBJ9bDbhj6@9EZGG^Ys$nTZ;o;>yIObj@ zOtVQmyS+_1`Hpx;fKO1qB=OhH_O*Tg3HxvCoObjg@9qBJi)|iYw^?vkTLe ztcbr2Ai>R>EjuHt>r8)dIHcfUHBZdZ#L==FjY!lC!f9i>64pjdbvH`FKdQ*d;WpY&1J5bhOCur*cfR6_iNE|z> z#TC2f76ZcIZ8Nsz(iL+v2~|A#4vyR`h9~h3;)-Q>PRkjD#Q}{G4J8$oxIXAbR91HT z!%bXBTV@9TXtBJg(W|G8l8)ixdxSzvYlOkc#bU;?+vvpf%`|Owb&cBQkyDLJ69fMTTK((M|Ld9qae-+@LoB)wtX|H5U9Ns+ zEF66(r()y&URdy0Hf1Ce*53GM5Kg?6q_vx?calUo8;4h8sHm!#GQtN#);9Iwu{HK+ z1p-uh#`fr}l!1?C=0*}a#6b#p6XPk++{TS%-D*zJr;5k!%kex-)*=;6cW(ZxGYVCG zkO5nN?38lLtsjY!nHkM${T+u4ad9}XLN%4gouzMJU~-pfdHy7Oa@^bzw|IAn1QKErK7&LXWR>dWNA{c74M5k4LU;~j{;q*b@4NM%{Ai1E{9(;; z0KrN9rVpYqr^!w4rZ9mqz@o&Y_203}bN zZ{9cR0RnM!o%vUt!LP111@#J#FBl&G(F-87d5ezjvr-rojYvQQ)*B*T%ronCOZEEVCfgK$-_oZ&}4NR-%_&`T0N{UvyKiUll!gQ`);3}t7yPeaHe;K zq>i4hE=9PR{-@|Kd9C`6v)EV1An5mnl^rV#KOdnm`Sgkpm>B!wumOq%0miy@9tB^% ztKQulVGoy=g2Ta0k)>s&7MnAgY%ZhbG9>B!@1mz;@&=6aA1_VE^9d?C=6;R)NlRa? zd*4pfGPg-ZKY_Nc4y`Jui(@FZ>EIvG2=j9^HLreaS57{@(MYamA44yq(eb=axSFKN zQaX*t!@?yn(+c!?Ue=$sZe07G82#>Fg~k7$HHgZ9a)vVzq4|Y4yXeO|p?2P!8D9es z_U}`xveD>E{wABQdtm+I)HiZe&MGz=wTQ1QzwY_eBr3u%Tyqb#;XO~<=aEj0r#TzE z?FPMHEk(A6aR+<_Id?W=_D^@U^Gb=;Jv-dXKy04gwojg&+5Js_9E=0JVsrEIuI__y zk(t{AILe=ce4c}g%xCAVMsqh6GTCB$?)S%~5q6jgva?B-?pEtldd z=snQAk)x`eMh2AjdmMei+$oLvs%CWB zIqizNG+V2iu+mik{tj9H>FIX@0nEzE${3T-5xTcC#}fLDef#s;yXu$~ii+VrPELHPl11udXJX z_5Rd1kS3|tIHNwqK*vDC!4Xu$!YVCxB3UE9Zq{)})qXZ5xDyKB0o{3?*1#&l z3zoT{>frb@K6%#iFg`J;oUnl z@Gl)8Aov0Eq!BJNEcVO=i_!j{byd*o8O%cht&>`-YvZu)_q~t`g?tazsWj%yqY_Sq zI>l3T6wSpP9IX$zre1c)+>Ia9FjMx3uDqfxFC03U&g=!ZfTzNz1)Cko$qwBp07>KQ|w7xrHr7* zUoGB{=xE$fH?(0tJ)Ch{;|}(8YVs?CRhqP;p*DkaZWG}77JYE~Al^IZkpHl4{};hj zCDG}e1Ej|Kaq28mjoJmgXHi~API99!0`s5ENLgPS#r?PpY-qVEVM#-nrQE2FO1EFC z{mng_rV^R{EhmFRfXn!#6U?CCHbpiEX1LqO{eR@p|02vW&3c=nKI@^-IJe$ z3im?C%!-lXPljbzRmV0UFRKg{MZzjVwbyK6Yg~U15p$sUu3>5 z4SFB+AGfj7|8+X%q1CRt0f>9bmEY6O*}R1TlnE!86b!C`ldFtcOP^lZXW#otCOpoy zr_B73orAFKR_9^;XSN4AZe#c-9$9* zd#>j;O-enfKNtqc|v0{2zu_^!X-~VB&gDKYg6mCdWu7Ep*i3331Taj$E7@*aW zlw+BsBP!m7bBALte3FNKN%h9p_Pr(e;A8%{Eei$r&u+^e2=9<$dY4 zlAO8a5Km4t@4>}JxZ8c{q?=xueJkf34!)u|JSmBkgFNaZX7S`I} z_&j$%^jGE625e}Mij{1w*PGw~OVBqrgumS3zru&!QbK%^7}9(y!WYCZsS2o6b#426Q9nBE7X0%8*jIVEi5Dh?;5Jb-y{@JEOnSEl2MB2WD)McdwoY8s-&wltzlY9r4B zvSM&ho*W;uqV$oFUyO3d*POP?(rRk#SHU#Ic_ccXfr)nAxPQGnGxfS{5?F+&7%wo} zl&~6^h`vO;vvF4!;fid^)#oH+Hn%OkakD=$RsZ)PZ}Fj5F*uWeMw@6FCOVuu?_;r< zH7UDtzQH;^NHL8?&a4$aR8J)pA{zY%dFF{2VnzddQny6%%o0*}cs~@7?N9QjA%>1zDj{Gog^v))B#Eg*WH7G=Ru)ldcjG?zXB= z>2IyTe0juwiGv7%Ums&0-r5X^vbTu^?vmjHCnJ*`K`E}+Zy<&Vcc_AuAIf)&M0Mc< z+0~dzEx-KwU`;c7Z{gWwbM|`xC!!^bgL4#K$-n?TFi28r`P!M?=HQjYpH)S+Ai82^ zMu-{RW(rd54Pty^!jzvsJRJqUKP=Oh=N-(x`%S1(QIJ%XW)uy<#GaF;<8QIl? zjC5BeMOKO3w+{m6wMqZ}FAwno;SS$#Ef4}Mw7;y!&R#r+MDeLb#Xl=@{s6L6125s` z9>XTv{0+y7TlG}ycd;Mi$1`}qr57p#RA1rX)DQv!B^}Nv0hR_iJ}|zc=lJ&e&(a-& z33om!#>a~>uGm|PMR|g`e|VT{3w#Pv5JJdq#{E4D?7_cM3@s+f7MlU%I9u@}wZ2ud z?56shHGF{3O$J!A+aSqZ_R2wo-+29phj0rK$_|DoI!>PIfvPV&EG2?f$v+7FM z%`!4Fc)u(F8-#zj7c2(mmg?(fN*?PLM4nkdYLV3m+l=D2-1I{EOc{H7dsUV2X-cAu zdS7&1N^i1#9BJm2#`l3wy|T>88lJobAQuAcwhN@$V?m+nW=!+J_S={&z>AE>+Y!}v zE6%`oUvhHWtVqH*S5e4~E0DTKaf&KQaVikE<`OESw&l7uVQ<>=mR=v2o+=Yol2;Nc68lzp zCWKI?bwdIu&r)G)H?OM0=v^-8ldd(MnQ)RT8JT-UvL@j-sq~gz?jtX6$$nn+{z_rw zjE=HIOi!@NN}WY~jX6e!517AnM}^eE=N^Fd!30P*s439>3PTPQ%~?S^B=}Wqp;0gw zx_Zkm77-5XB(~2C@KFBj@A_BafPTjFQjc^d*m&|tJwXNa7UbT*#S)$(?^ioDctZ5` zVBT>tl_Y1Eh%KGLIYX^4m0sfAK=G3m31LkzwfN832D?>JQnpz+F;%wu`g%o26^aaA z6^Zj#vFtk}>3@#i_yNgDGZX6S8x+mIa)p}FN-fb$tgL(?;Iz&z9;8j>a8A7;nkx?W z@$;k9lfiOnx9iaEv^{h=@q4Abzow_5P_AaCiFK;5Q>LM!Az8%N-vV7wLfVwW6bbRU z06iCeRuHr{&TX!Xzj@xor4+mU=KogdYA|M|pMdeV^{R*&5F{mv0~*@ACx}=IA(*rQ z_XzH`)H5C`6y4!XyY~pu%o1^b8Gv4xl`hq!IQU#!)w+<2-YGo}4Pe0vZ($lp$y|n| zK3+p{F$`N3Xo(%^34KGC&uOhw?+8!iv5DCHnT$)o&#*r#Z?{I7{{C2nr`Gv{^s>O4Y6`~$zwkQ+Scr+8Q3A3MU&Y`)`F zM|7JfY&|X?dHd@J8||4C&D$sU8|BNqY1o+g%YurYkJ^rlz6W=8-e9Ai*&E|d-stxT z2=6vYQjJPrS*TR}!vjL$U*JhZA+tZ&JuhCSQj&^6HZ`Rc?Lxd<$TM^P#*u|gX~iWa zDLA?u(La8CGOHL(4mqw61ENJlnF5v`a2WZyP zGLC(v)oc4s7rtsm`!FdqrB(ny?41;63t+KgNN9BCxW7uw} z<(XgB!=p_CC4EHP$N6QOpCOG(t@3LK4#$;%81g42z#T=OLP~D*g8toFtLj}pfok10 zKfc2)zr;yzB>Dz&jE|~3YNXeNG*VP}l5_8FKpp@>!H$EITCc>CzLQs{(0Y%v_9Mhx$_QePpI(+Qm&K3G3=c-o2w=4zI}Gk=*wir!#Hl+DVS<2 z=F<^uFgw^`QBMf6T8(%yDHzAnXBk-`o1Ro6p-iZY9sDpA9(idJqAq{dT6t?Hk}W|36|+9Mo*0uNkJ2! z4Lmo|_sX%&(_wRb?X?LsbflrzY;pZ9+k8mxuG{LGWse7fvD|Rm0wQLF7=)bF!}RpU*;OHHPwNyAn=R8}VuAP|<99A=v|4}7!}d9^Eu#E9X4Qvxl?UOnPC8ln!dw&x;Tc zbZI~ONHnFWAvY!$sj8{oJGp5{8>{ap+_m-@!42`x=D7TO^SwPV%m8})o-d(=zUgI; zL?#B2e|h3>3i7!{IVyZQ$mPbp76$LLuziks+1+zR`Y0;0?JOn{B%FDXUQOexqGBJz z7(FyLJI~q{g2yW#c90epj#BGv{nebAd^XGN92|c=Au2(D2#Z!`;$?YB`1rw@o{-nD z(0$?w8&Zyb6`v^?}(z)Hq&p7sFXeO-Rr zT{e${=Ax_HrhoWh|EdPr5w0GOKr>odwC|iVVEC+wG~4UPyoDL|9iK@PWIF4rhv%4z ztNB|ne_Ty`wA%M#tNcFKwT++JM{|`$5D1S}l>yxS!?l=>-C#)Iu-SNKLBUAkWcIdd z%VsG9PYL^ST}t?cPX|3<+uqXQ_5l;2DZ%${Lz573O;KayS$F>F6O&ImDk4gfpbUI)z=cFL=>^)SXZw-z zs4lKQn|;M!vg7hR8XFsjRNjbB{J?>hi&2tYMTJCsi}7K5bLNOn2`06>T2P`lB)i3m z!Xh5%iu&0WEacc&)xMnFQ}0hFE#{sCBVXRChN=z`oC<^YSmjy)*TfbAb?I5~b+T>ayB!8O;~; z#9xA3Bn7Ir<*l^S3XXl^=X-jc6tQ>AiYs`#!z@zj9}4>=v|3He8Hrg<-8)+Z^-kS=j2(*2Rf-eRFbcDJbFGy?XeA6xl z4S`J3IIMH$=3Ly5%d6&T=cN$YIj#tG@v#U83FL7mmTc#yc9L{W7s~19wHs{mx-9%# zthptd^V&1i0Z;7FX0 zZ@EQhe#i!|S>yhWaZ2O;^zJ3~>t3XjP;?XJ;%4phS58hkF9WO0J4&iEQ{ATv?{c*6 ztF;_ad&vG(V*Jlq(N9Q7h%^)vzNedl+gw;d)eiehPXIiE>KPb?9Ayk&X44hBCx0be zNNTv=ts*KP<)v;0(NxSQ=ok$fdta^!%$ih0ho@(e^C46;UZ4=nyIQs>a@1~6JjwA_ z9q5QrJ+tMzXYTld$Z9%umh~(mG0tgCz-q%M=kbJ6y4VqI>2k8^B3T^&iW{3rS4OzH zI{v!TKYp+)km!gobZT%aw;p6inHpu zB%I6fEO!51S?R{rCkhWpGhphP@D~Hil-G2CGTNW=?CS_{kqFmJBSf{_7oB6A_nT49 zf;=#dEV%#;+a1f2-0F{VHkL1+LqSF>;&%L){}u-U&80{Bb=+O?fEwfWYNIRj7>{j( znxI(MDL>)t%6POxbENK&acF>ez)&??4e8oc2@>_}$)QMi!kkxo(9Q9xq${XC*^o)X z$bMW3jYNP_9MThnQm|~(D)&2~^}flBvR}^@hCRptKpD42Pg~Q|3F$sHel`Ee9R|~{ z$jEt54`>sxF8N%;wbzxCd;*c#6&1n~sknw-+H?`oEOG`hr6I~$mOD9B-`4}3Vy z@!N#6CnnSV{{C+vi|Cfj&EuKUig6$-Y_dK41>gAisU{CXP$|Q*xGnNZjj~ zwzSUJ0@+`v2GfahlzQZ=E+f{2+ory=EwpEZe(SGS`6x#-<>xU{q*ml)udYI@qFqna8P4!#HmVTu$r4KGgjqy1L@ zlzNmh;BEo~pVuZrE%@dv2rI^cX7})D;m~DxhOW-*-XUs+nHXugw1jj1Nc=NND?{!9 zn#_rN@v;>~9Fo3wvq;z#jY8&^@Q)o4(R!%c&fj$C*r@_Jc~-uFJ30bTiFm$bc|q`2 z0igE&1U~NplJvtve9P^@6-!FNgk3QdeLkaCKg`GNB$yKsLP&~VQTWsHu`DTnzW77b z^6%-2>~Ta&D(cBWj6{Vf9Gb_>k34drUi9VUztK?YeM)V!(E0}m5spxkXMO^@HwTxk zj*7$jE^{-{2N|Trib39BeynasK?pNIsb;4Y{nTvDl|=3GU`vg+fgm9?Ep}X>AU0aC z@E1Hut{a|?w1zms?H09MA=%2!nJqweme2yESgc=dNp*h?W}zSkq>J1)e&|v4JVURa zpH&fR+QH-&fu~m4Dp8ry(W?jt+DSRxy*016cs4~F z(kjX+jqhPbp0;i0@NBN9ge{O#hJ<6E^HWc9@6XnoDq*kxY;FIy-)9giB=3UC)MV_} zHy=NwVjTA!$DP5MoTBv=q9#iaAIt++7|;F$MfvqZ0m+t;4WrC4;2{s-6BY$Mh@LTg zAE_r+jTVAXRI1Bca?=UNnx%cmIYr%oi-l>Wj+2-wGv>u(KO{+#k`NkkNW^RGqnK{L z9JOou{^_m6hsrE!)ETEu@VJWNFMDs%t!hG2nf&g?we5+gw_WackQo>Tk!-FpK7Ge% zD6!W45=TeaaZg{Oam}Z(mU;s94|0i3xYI$*JG!Z`;)UJpA&g~nVk%l7GW6SnFCOls zT2umyXz6)iDbrvnKN~02c)~?GA0dZi3W2@7Jrx5XQYspnY4^SH!lov!yqL!NhAEmX zZwZSMfAig6DKnju%u$5A68AJ0CB;nvxthtDtcF~nw9|9B22L){%Fy#Tr^jCVMSWFO zHWZ>%@kOui8@|0_JWh9?h`6ebz}hrt1lXFj;K6NTFyZUbVKR?9NS$sHkjo7-p^S(=May zz=D%>RPLm;Bl+Ksttw-{t>to=>9X#l=C`Nq@x#zm>MkSDnm1OrWJ?sj389JDRfqeC zIz3F%!d!zqxbyS)(HMHui?8H)5hMbLt!3)vyHbmhPS>-$MiwSHm-fU1LyvKMnJ>da zqjG=!VjL1E;FSp~v1MnkuY)yuBlg5oQ`1m-Ng_!9dXCj>blu22kzN!66;*^>KB;C@s`2ABPNlsyy- znbMN-obt33g7K6yZ81~n`3Gw+V;c^tZK*n(VgSV2Z6mx&M?x-iKXwi(>x$_UJG zdg5^GpqhFN+hJ$|8MyOXY>MH}t=c-OU=nS)|K6(C)KL|qJARn>l@lKqCx?N7QD?Kt zL%+38IIr)T!8fdNu7+-5z0R|T`5CHncV_2o{=mL)12clJUbzi}n(IlrVb^toA zwCx-z5&H+Ch>EI>2Dqk14Od|}i55aRz*7s#)J=lM$5=-Td}&bK)(fb7`+jb7;iAN? z;R(qG82A|XrtLFXdfrpf)EnG%vvbD^Hmo8$!jX}!@iD~1{j!GgW_8Q(Ockd%sQia)ZI$nqxyAKIHvpcR~Gb?T=9azQP$*VaxlE2o|h#G@fyS8 zzoU}>;*c^^k&@4t@!ydWZPQ+R0h!ywVt;*GDwY9}kg8P?YE4t?0BCt@>R=kJ|SpKmy^cunxb zkB#!(IyM%RU}4F;6+ZNlj#v1FU!ii9nE(>*$8B4S&Nq(v>p;C3{fyzfWc;hdIxZ(2GR|-$oS~?Qqcmcl!*g%PthzNwzUz_q_yyEkYvHq8#o6cj zonvoU3g>WJ4pTRX;9WXiC>VGP#QGf+ z6sQb`EF9?T%^cnX-pNDgYo|r~c3zFXo5kxIC4Sqdya3peM29?*O7cE$hL4w2=Sa^B*3$FoQU*@&-hG?gNz#|!>W^eUR1Qh$`}!pi(%pY# z3lugfFrgIdA^k|AEQRrKJb!qYwQl!_ zz0Pyqrey)mL^aIz_eG=m)?lns}WVIG9yP`q8qLEUsN8h{t$D!M$ zw1`fd7cPhOEw7l1wzh_3CGdh?O-=3mZ4jx__=azg)(>6M5*e>39av)OEo40-mnS_r-Oo|3G^H5XW%QW zaVyPydMGiU*M3MF4j@F1>w5Ke10yjSFss4Qd}bX3d@1Uc4GI6+As8v1LZS_()(>hZ z&3*R=-TP15&@03jeKXp7S92JaCsw^!EP}+q2LvlEUC*mPPF#Ox-NDUK_ML$f@}3{f z=)Ja_>Ahh2hN+2oEc~0naXR;|0*U*JAnQoCM?`wax;Op(BP&mrK4< zUIrmI=u$nUNJVNZlGJeWpm#Hh^!ne_DSBor-c$|^7 zD}tf{0|d9-$nm#VAg7`ignUwPIXPGZGy?AcS4uq4borG^*WUGRO@X)6c7KddcD{~K zn;{l9>@a7{%FF4v+Z1H*%M;x32BZN@DZk`G7t z_@0WLUC335f8Zm?yD^jF7f8q!c#X;g+;WNfRf*|`6a%d(Ad!iI-q~-NZ|op{T_O3n z99knsIO}x)KSDcVVB|~NcDiI0dgr{}DXi7vM8^aJN)s2^Z@;z(ct)ShO=8rPNcxy; zt7=9PzAgCth^#e)W*SuEO{UtIfE5E23}3PZ-b+M<35Xy?Eb}fMyp}A~>(5={1bL;M zw(r@{eQY$5MYtT0`yiXf-Te?lF<^dGtRyk(da}p_zBc@>hg!rf1DQfg9F{uHea4`0 zdJ1nI+Csp{^18tD9uzsDjVjF=!hl*+iRbHU+6V29wI-X6rIPhQx)ae)nIFzXA=}gA zwDBZ0Feq|Np*(iF;l|kjTLguZzT?=egi^c0`N2EG+P()_fou}~E7CWYJO*oXfXSE~KtRyx%&+K#Vs0q2p)t|btUWS#w0D33aoym<0R!e@o zYzNKjd9sV2A)?8=?>5u+sRUIi*?6H7kOnO1Nw;4!aGNmc8vY63W8)&A~=ODhdC7aI6vJk@nKx z|G@77%o^6Ducj+XVi$iEEdWi9jm5lwjbKGU7xFuUUo^ChyGxxXCQAVpR?Y3Buf2OP z9H!hF-v~h5+9^Th)pWC=pAqayvkJS*_uJ?RmX2u^&ofQoQHDNdH-tM8u#J{-{Upmh z2xp_6eKbb)98;}bZ%wf`m{`Psc0NnYzM>E0u6iCoFB?VI0 zjMQ0u2HeGHeu+(!WaY}1)ZP*0Fg)JGfDBZD`u39ike6Jv+O%0xOs`KHV$lZ&fInr4 z2w#*3DomYzwns%O%!GkfX^C^#gK^|rDq z>(jtZLbMu|t;1F7+Z$^Q396COA42=41gl2Tmzz{lq6}#22{xGw#7!^4#SIUcS1FP& zIA?4rhq*3~m^5QL+%bS3Q&Vpzu{D^c!mq@~MdE!XSDINI+CvOGGT%JN@Hm~J+oE!b zVRG}_)iZun6NBXHge04d3q6mCQRxoAN+b83$W)TJ3w z7_A4r<7EgakgFk*;`568o+18c2TIA{^)FBWDak`JD@(8q@Ia!0Gs%!EwmydG6+zH_ z^QO}ac~2KGdnssXX|(7KVGi75m4%&0s+aui5c#Tt05m?Z8LrOl{De*U3iR|swk;gt z$ra?7bR~{()0b=w>-_R0fpk&1j)J|rp)arWdHn#k?_fU7I$)ma_D~Z+JJTnSFOJ~@ z*(FXr(KhmNH;(k3I3zdl?7@=2Cw!WyqU}PaT?*txkK)PBsNL#P&i4kE5W$^%<3(ut zB78XE!fq|ZVU>OU!ZgY)>Zcy9+y}$2Wm#$Be4HzZoIxR!yAmN);HE89==X~iJ0~Y9 z@4lipY#i+8yJ=~3&gfb1vYqdSY~_QlU<9nCyhr zWQUm>D5&IpeT!?y6by^!!68n}Ks4+apgH+m*W>-A`PF`m>QE8&HW6=5qpH5fcv>+q zH@_FoOSy+%g4|ol0@j^`Rb^Xfkba{eC9>70HY;42XO zsv!^s-?%YE_wGYyQEc!fSSx0c8;g*D#^O`b-G8kq*l9!ljSIK_co4p$KYiK`e^pspiqF)F z0{R~|`Um`#O}>*a7nm`QMo6Lo4wAEaw`D%lSS7U*!^TIm{L4epjud5RIN#gzw)%`$ zGBNEYq30yP99UBm+t=975n%8XE6aS)V6_x${x;$i*+W1mX2h~nE2rO^$C0GUd?e!Na!PXfq$G_ASk#p^rmred zd2WJHc2Swtx`dR9DkX594%UDsIl`Q1k?H4J2iO-YPrKla=oi^pI%p8`mHi3NRhDwxhS>*EjIGKwhC>QwW`2?V^jRvkv;bni$$W#H3vBol^-mcXqxui9)V z0dj%mJ!JOw9}}nU&YRns4?d}-mtRoT?5bC(`S_3+We9@tuCFHb5x8$8(Q@ z#cIEt2f4!Y0jJZBNtn7&RwVNOj>KJxrBt+;b@xbd-9D>QJad|DppF0m8!TtVQk41qYUmm{uNK$F?ol8 zp_r;$@UkT9S7YW_bk+yQfDlA455HKM5$80lsTPVAhWkSB0UnRNEuO7q74;0R;c-|P zQtGY{)_Kh-v;*pa5}H)5s&1MUvX+XHch6FSMZd=oq2OH1PFL-vt*-YGIsKZKo@aRD zzM{N5uhwk5=FThLq^QNQr>BRGj7-?3Q<45~&lI9cHFCqt+|O$E+rjC9W9`g7J=1No zvEj(kVkbogXX~iSxlOzwi`ue$K&QimR|y8JCLODJYwRkhTIry|uhu%KWt*5Ti4Q2*nrkUoa_2I#j7 z2$0ox+Ily09@S4R({bVwz5`6XzhfrJfd}h;A>go0pqWBOZQdHVqeqP(_={g7^yVe; z`$KJBZcI9Z~qms zHz^n8*UuYgp1vO{ugPl7xqQ73>ns`*-}I3OzU2i67ohfEyb4b!Q?KR%RAL=wee-kO zIG85P5YR?SOWv>{Y7plJ5TH1nts*MXi^T`nYG_TbZ zs?4=Y8>7p{oviJX>V{o~85s~BCA4v8VVRa!QZWX5QyS?l^`ub4_4hARl+Csm*K3S~Q zaQQsBzKtOHaJ+x~Gfj)o8aBc;X+QTsA&X-yWf#KHQYj;dpUm~s8t0Nanbqqsa7Tsn zD$=7FeIQUv7P@MZ@m99Bq&YPD14_29(9uaiJ89gtX?gV81=$oh^5?hayXfdHV?3M< z{J+ruAL`)06$C8LaCcdX2+OLtLc& zzawFM;St<~ifuKeZMf$XFv_f}2lU(nKYBDXfnnlWla^4_-itC*O0~e^qrY30OVYPYzgq27eJh z*P{e>TTYtnVUsz-KO91QgBj*E>ghv`5wXvGAboHc1fS5_gqU53!t z+4f5FX5mqb&nzxVCnWS^Ec6|`H?$dURe1Ty%C@VSQZEe-&hHWLB5y@!1Px>C z`0G$eSeRjsPkVy$d`%#!KEn0w@sgaTrl!;W1esp=D+_eVI&gTM$&q?e-T{G+iQJwF zy1?VU5#;fbdH=K(cbPpO7GH|xqB2~Xp~J$$>a}M4Qbm-=!dklz1F?Fwh!hxGmP-fL zJI}8ACMi}Tl0WHTXcm)p;sZD}i}Sk}ZLgO#Sv<&qu7Xesn$iNW~tQrvyKl$fR9d zU(jcG6cy#d^bO=NLqFGJDmr16w?9L)uWDYMh9$ zbF|@$zRdZx`^?XC4({ak$6^r3_qGVY5&#KH=ts7@^)qvGrfh^JHc{s*@$vB=67VYa z@+70rSJ*}z$c_~V_(G!gva(C*b;W$Pf?8TzTHeYoO1Q_w#HeZ0WDav}VJ><1i<&zh=<}B_$ z5H;-zD$ip|Yy4R*C)19z3Nvcz8$Xs`KXUob4zwoMZJpZ5AcN#X@^1I8H*-3=3)3BG|u&m~&fP4jh-*JU}@ zW~zs3Z}&n0%<=Riy!WJ+%v7J+pUg9HdP-pED0~&{G`XF?a;~SPCnKBWBPBv>OBZUs zDPrJpc7}oT=!zV%`a(er*kQcp1%p}S6pRSu_P@>W)jgLEnNRYnib!nh2xxG~w~?Hh z_@;?97BkvdgV0e}7}Ot0L_?8Ju!R0J-g-w~T2Z*$ohUIK=bX}T9AqEF5rNy84%R8evzCUKJxjzs=uBH`C+R!(q|Pj}#!0AJz{{iD73Ci)L8~-5wTVfr6%^=^y8J zV$lS$V_7c8(BV;uv*kv)$jG{WarQLF6saQ6pv+ypjgon8NKR7_m~4b)_XB5sci+NL zUCQ1W%@fd0KT(GW293(O#%ia}20|~@R8uS9W!W=E(qPA9Wxv|=L~F?G(annH#fNtb zG8&PD_k!f3H$06~@vx)9{2Ee7?p=_@P}vkKA|hh3Q>u1#!wWuhjXmE}ow3@86gZkI zFM=i8w2`j*RzgwmEAqtz`o8ssVAKIXa1f8{dDAotd;pjXxKg#8zA3UTs>yO8c+YJi#ivKgr@#Ii!#jWo2a#K1ja6HJpHbC2&f4`ie+W zLTqZ2*QQ8A|A7QqI%%?jjF*;)Kk|qF53XD{IwF3L_}$SAiZ|tbgmBAj{~u>>85Y-? ztbqms2@-<4ySux)yGwA_;O+#12X}XOC%C)2ySoIqYtNaC?Adefx%Xc;{m{MEs`{$l zvbP|!&H&JFN*I=&;kxGv#KmAR!$aBPv7|{Vj*nhPwd6`_Uz6|bW}XvXFJXtqaA*SO z@{Ej>Y^!~a*pq*KN1uLV?#^llOSo)8WP`f@ut>woISiHo9B9~ED7@T&Xv1nV&TCCi#YRIy?=WP`M*`sx#m z46f9?j&s>sLXl$rP{{H!JB2fdC=4#MJyCC8p8_!Tp0*{nVl?uFXdecbM{B)L5mg{J zwePsh=jCB}dVC_W%D{A{a1zUmE0*dB8@1mnVX_D`ZC#&gk>V*WI-Q?&^($f9^O^gN z%^qjy{BGxtArDMe_`Do`8Vwiq{7dug@ga}}6X`k!Isu!%@9&kIHKCI)eZ~^2%Xe__ z9AC*Ly7r(^;~Q2j%|zAx^)WnyE?o%h`KZ_&C=`(Glk)JS=gX!UJ4gr_I(xspBfmj8 zo>HKoq5>KdJ%$ycM^adAaPl-3)flZ;)HK>X0>9_;5}1GqiwJ8}8mzN!TyB$^s@>5+ zpIVvR3QeCc(iye{mMgikiFc}dgtW!2n`YvF(r;w!Mz%K z`63-d^S?>6u6Aai_V?=@RV1>0k^JSn!MO&8Cv%6!!4$@uL4Q?4s}Cf(>)0TU}9|=TD6`P^bxNyy4&+)@ONx^cg~5IT>Pow^07y zAk1HBI+F~Z+=x7E zcJ1s2=j)F}>>pPC{(fdxKL-D3@k|Xb@%haK;My%zxt4zN_H=AU6t>mzc&Di`9=+Q8 zAk1W21#bxKfIIYqrv2eiV6&42y}4|~`wPEJFRPhNn?F?s4jvvq@agWsGYj(hLiI%6vIc#`lK3H_~s%=OU72oe4atK=_YI;$n6Au-tk+V)?eK;MhNv#WMk z?#QU0BrSb1raX&hACts58WpRq<$8M>Fw(gD0Ttd#yOj2l9bU>!^3eaI?)M5bqVue>ci!*Qw_qR)`WHLa;@X9nJfi_E zFE?EDNWfVFY1XV>(|8>o^#%yS3P=$qJ;cLHn)&ths zQ@5t+?p0i^#klqB>ufkgY2-q zp>WK(CA`1t)B4Y}%3uCPi+E#ROFLW9kP~mAwqhE`pIh~=?#6?97>9+0bt)s{i4xjY zbV8bSE!VjurzVYpf|5KmXHQf_d;x9BcT{R9$JY1dt4s-jI}!QR%k={!ZIHmm_h9p)=H{T}#};v~3U)T! zF*f|Yiv)7N?OMPY5-1BcH+e>mY_IcLr+;^cx>)KS*U{&qMk=`EZ_AiLsy($e|>xcXCg?DMm7+>QNu;f zem6MSmTnlKr~EQOm-ivtD+{5}W5Obr#>igmv8hRzCQD@P-@@M!6ng<>c8r+la>JI# zRrSs1sSGw%(F=6^Tf13AdvxT3?c+6hn;$+x`nKmGz{0#+ zHT~|R2K`~kDcp6xnDfQ`YxxxaKk4TFB3<*3yv?6p*z$sSJ3D20vgf|X2`wHPPMgqM z<_BF$L+WL`EdOSB5VcuHl6w6e5s^eH6R6O}gp{7W?ktS#XABg8yze1Lh)6@q{N8OV z0aM|5>Mn`i($)L0TE$Lp9mWZF!2_yxxyEX8@wcJozdTI;^^civa2Kk)jg>Me`JQ%( z;IP8+n_xk|x zqdedfn5>q*ws;;ny2U{`Y2KWLw!zLiDh_RTQw^heIXhnT-o-&U${*1rRq3W-^Ok+oS7SH|E=mO4U_k4tBz;YaJ6=v+v$)6#R99=v$^YN=4Rm#SkKde z!eV~?$R=WD*`v?@cea~%pzZv8Mp^9{s0RV+<;Dg2)O2)FB(ljnn3Vk2IkgT`D{K+% z_nkuihBWaJdg_G(GhurfAeO>CZ z$hu|Ta99zm`(`HWTAlAI)1Tc2vx8Fpw~E<+krwbTP$07bPsx#a!00~1zRp#7z0k~6 zCHFLt;z}F4l_*HVDMMvaauztLH+B}L@dc7&X0gbZ5pFPG1MrH)Dz{Lsa)skcxYW~3 zZ8PFl6mu}eJvosw$9Y2c>_g_tY5Id~wNvj?F_k9TUu6aUFUQ?py|4oDrb%;dze|cg z_Z*Zz?gn0|3(=9(U^Tcx2R#w+`~5ANw!7b(?(nG;y*Kve}xbKY*Y9o!BSC< z?jfGs%4?bE{KRy34=47xj@zbm3%M*4j|;$Nbm@vUl~yz3^QSy)_t-VARKazbcskqd zWmEJ$`QOXmDy!Ynf&8@-`MWA^fcnnWm=tAg}sIJQBr@Mm#dFo4QH-aboAn6PSw+?JMPx8tS$bNLRHxdw6XS|M%0#w~kO)QBlw}9oWV}&tyRs7!Yuy0gKEf znOT+}R9tVBv(W>B#EGAvK|xt)Jgx&JDVYOsHgO++4_qsDI?Dwb#*I}Fl2fH(*WH$> zbWcB(UDIQqF9{yA#b@A-V!QIxIoD4&1hdKsiGht`vCP&M&#$AVlIPCPbrAR4o#s;F z&8U76@icoW^noV%lT5JiHY(-T)h0|l_W3%_N}!_KB`jB28;aFbdP5`%_4=S83On?a z>I#eL%VdMCD|r|V!(o*u&&*^?X$SC%+vhr@H*o*!jo&Z>gnbGcO>RaN)+=7er*KF2 z5`)*s8sn*12Hx(;A4bxt1E0bRWCovSO3LQ~~fi@G7`?Ju%C@=CER&35QZBn1xZ4N=TKl##1sZRW?b`>zs_~5Q4 zpnxcB;O+ZVQ(7#n9KI+E&fFH~^8_uT99E1m{e*S+;n-hr?xg2oM$6O*WdrTM-j0tC zDJLAD73X^a&uJE(g)w&}c^N1OqRbcAem|G(z7$qm zu{)0B@xPR-CP01f?pO{*o;JP?iH%SANnZQ}0R>qVc=4HlTciM}8;rJam+Fa>iq~uyME6cj>FW&_|mj69KXG6<~@o3 zG`oA!_?|c9aq7tqo<8|ce7I-+OPvHD+7o@Y;E7Z zFP++D;+)BSL;Hiv0e13R^9wVA{CYRrNb@xd4*`LjkGGE(7CzO=c?JCKt$$CTIasBa zk|3nupT3*~%ncbRz}%>hF;|@?0oEjKr}PY~*rLo`%$oj)h=%DJ6!eG&&9RK02M~w1 z1m4vAD^}5VmfFfu$Su6GZW_8T^1qs=bE1jGMgG?h*$C%Y;H_ulV3i`z*C+ax|MRnB z2&NX(khg+_40Q>J78WSy}{wi z-KkQIJ1cYCkAbVgRLeh#OgYV4`M}`6OvgP9Fl($RDGVM+LaNwP`Gx5rUX#p_FI(M{ znW6apB!6n0CkLQcDa>j2?V9?iIP!4$zHcvFN<+$T^w_ zn559+djf*yEID1FX;{eGm&KElqugEhj{Nfo%gmS~2B?c`V1SSRYi~~=lfeN}$}2Yc zXilV)hsa|bxYDeeG$j1xkMt;!d71VYk-R-MD@}Fhpm?k2A9u*uxs10aA7ENH>;a4wf8q5p%9P>R_7dVETNyn7|frSo*KwHwtnzbY)ECbdTnjBGHC4FNCR*G#kx`{^RXN5m^*qV=UB?)^x{Br%bO&p` zMR!RCfwKNHm&u0=N-Z5eGc&_SJt{pjxz;BD;rOak7V1C;3QY0^=#k;kg$S^1S*odl z1qKAB%yd%!-5fsP_|DaxSG(4oegT1TF#Q_(xO}pCCh!97J}Fh0~V@@DDLA zkIteq^U%{}BkJyg+|Vbo1D9VfJsM``6jo-)mFkQrk-e|zAFnweAfRJ+ec|Daw|QDz z5wSgw$PugvtE&NO5L5F#X2p6Bc4e<;nDAe#=j2WT&#;Exy`Rq3x~2~seFxj|Og76hCobQy@M+@bI%=?F#8gIy zM+6J*x=4r44Rj4p;3;ApY50{zvUyQkj`sca_i$XF)I-LOD~XZ$Un zS(+2dX&Mpt<=YbHGC2=HL|`+RX)HH^)m!By{sv^hNc`;FxSgqqKr{ zm-r98c@sW`E*uImq5?i0HF~sdPWzG`3IgM;@hSL8;iKu1(2xvO-Ie}6vFrOPmYK$?89KAHBr(jRA)-91EYkfQV7vfN(30?< zE)5e5$JprG2K$4tMS+Qy~&gc0W(L@TcKvBp`F%9$B2mc>qlB$&%{0_>usP)Q?3s z_a)6aqK7vhapja`B38iQMp8r#w>svLsWnBwE84p%=E+j}zfiMx^(Vu~?yhrfyXBbP z+>bZKW($VrRA4?`;fr>o61)rw+8-t)a0}3HPF6QIR|TE9Zx`H*BX4vdAjQcb z;Xt$QKSM!Kfch;UBU9;BJd~(a8dRvs%jX(oi6KX=xx+FO@j)H7y*U^=B$N%F8ON?l zk6lpRuN9fBHMJzIK98c?RlD4;4~z_Vg%PIrRo?l}iZji78C`02)x4p6ia-zW0=foa zKUq1$9OR*=Cp{xX=x}AB8(pl#uM#~V7a&P=)Wi}8;Vk3))aTFh=tSMNo`>kljAG@V;ZH8sI!Fp6freEbem5#!@% zgLXVe^1Z<=P#Lt!EXa*|Om$$shF-PV>OqXIn0Bs!_j=1&_w&DeJMdGPG6;ClUMeCK zSJ(E2ZyvuuH+N47d&aEIF9p(0*qnzpA;|<@xHiRENGY{j8G2;kh%cZa^sCytBWaxf zewkFna!R=fM{jL6Hnpg0lR&!)+)O3>)zy_P!yS>+`D(bgN_l6%GfAb1rzHNoZIg)q zhayd2<2$}!P+^5MJATCzHt)+P8Rd}U3d^N{>{=xuo`Tn7;z4cto#(t|W|W%GI>FQjccu+5em2wYb?Odk&nY%g!=)pQ*nzIQy! ze8*uIm|GT8C(^4#J{EE^&u{C@HVLziQ)xY&kxBBBU0<&2c>vLQJ(#V=RKeB>Rva|R zjnZw%-YKPofc+$_#%EAQMC&Z8weCfRa{7qbACTao{nJyyIP}-rJau-B3j0#q(VjJ{ zFV`e)C~vl^3}sCcYTfEyv}FITen9ysXO?UUj>g>Qb2>GsTUcVO+0gk`GAi<(nr>Xx zup4sf8D6l+Pw9ApPoe=3x{8Gr>h&D^duzP2W?{n&f0zGnWsvKDU^{f0Kf4Wbl*^SJ zDSIY3EWH|+aD;wO>~@S%%ph}5vSUG#DazNBacH`KUz>jFNWXRDGSj=3G)vlykBv7| zo-}7x_W8BR*@rVw+VEd>tPlotM?6F5iH4>e0@C8cTPI#)b5o622g`;7<}3l<7Jjqp zVS1i>!r7PRgv0c`zv<;4n$wN|VU6^?azYMY1Sfp0%}sLrQAbC|l!&YJ{(K&nyZJUM z`-M<65}=iKY+naiZB{0qB87NF-6n<}vLSm=?b+9DH6>fjZu}MCQYGob>Y>rVqQ;Zy zph~_o-eK6r!i)(8aUm*nZG5$RdYYGHh`Qf!hvv^}?FEUQ+;^}zO(nqa;Y``!Bvn3t(B_97e>VP z`%wNCN+%fBH=lS>&ttJ;rBzZ`$=*C-eaan#9|>_;rAn&w`<{B)p6CY3eB+(xuLxrO=8qsu!zpz-EBdpKYseJ9Z<*zq7S>@{5g) zz34gsRo$!$0mCDjn@{0LoUs_|`FA6663h3+3&*}jIeRbYXO_Z^Wk!6pvQ(x$DA7WJ zJKLjuYij{FSL?=^nfF%7ko(V~-^agLHq#_BJu{)|k0sY9OEu7DhedtWwypk%wialH z3b0U!h(Tfj^q)G#t3fSkSMel^3WBX4Dkux0Dqw%`X`Y+;ojkyuZKM8$Nw>*|CCmu4^}V&)%l8zn?V8q)TgLlAVg zLqNneYT0azT38-fr`h*A<~arYYRg)D&8lxw>(3GNSM4 zpEDf&`&s|Zsz-?7@$#y=$=+N-8%DPie#Toa753?Q`bxWRnCE|Hg>q!Exe5LIl4E=_ zGBUV~jg9G}n#uDL%dKte$!K9|b>{;V^K^MsBDCpCz#td9lE3mmXcC+SN<@K%# zDusbjj4FLZoVK419Pq-Q!(9(Z_0w7uyxNn&*&K9mH}d7`_O{<|VM{;=*51F{e8@vw zz-U1nzN_#nsiCw!|3-7dR`XGm76;WxR)4iB{K0rt z>L%fnR;pEt34*l$rEA$!gvU&+^((pMt}$pzv&4sRR^N#9Ekmn zA=AR0UA%k^o9{oI+i%Ipp@Tfa)WlS9#Kp}@4$}^Ze)&>0HZR>~xhJYN%y+F>?~icX zd_B9b3*Jr}&M-cKojDDNj9MbjZ?C(W0u$ZCajL@!DOA_~dwA8sTI*tmi2` z9fxX8HIgRd-_9)?gRj8lGCDY|&G9!HtfY_2XAfWpIwV=`_BNbek&PdJ%S?(iDj^}b z*PBMf(2(c@44Pr3UbL;X$WOq%>2Zk8;euN8Q_yY-qaWH{PT$w-{D>#{LiSk7-=|%x z{v$o2uppyK#L=<%^VN^HEx&nq+ScXuNee1BNZNMKM!Rd}h-q6gzvV<1?URsz%22}qhl^`d+Y>iK z$w1x7+i8j;Q-}+;(%o$+>M)Lm;=P})-0L0?tO*k$s)iQI$RPJ4*}QUWq&qme+KzCD z0_6wVh>|E_BqZ&fUD0J@`!<{u784HOI|_xLW_Gnr?l4XtzYQ1IuEWOu0pr@ZsQn2q zhX(eIe&KAI=`#KZJr6+icEh5jPR&QB9v2tlHM;<-{q(KJI?diKX*8r#IHlzC8>KUm zi{lN_r*G&1Bp_eRqhBY(NTal)3`AhrDE}SF0m|Na3CX7108Om_+_tj9_2UNwh_)l; zG_}nwlp|(kgT*tF_!1^@&RwFe`W_5-NRP){cDqgu1u+)J2&MW&_85I~817TIf>!BHij3Ikm+i=-oH7?S!ZlGUm)4e$ zBh=(LIg5=E5fzm>s0N@iYIdBJn&P}SMTn@@uX@*5Dn%>Jn*F8Ym4V_cA>;PS1cxJl zP*I1k>zAvoeMwSaPtE>Vf7B-H;C!<8{Bg3$^s(QTz+!txa7H|~(XP>h(e=65h}0AS zl1y=Cki^x=AKce@2WTlKq+<5nw?7XU_#||wV7UIcce)47!xd*Mj}t*1TqJLdN`AL$ z?}koEkPKFg;)oPq=yXQ+V;sY3DwP*NSi;EA<1lqO=%SWI+PJKRliSTb35mmgP3Y!&~(wiZy zfMS}XOmo_NJ*{KoH24tFeg(CH8El%@;BrIH=I&CsjRA`pl#4tZU26<;MXMu}sYbQ2 zvl(HDPa(73@DZlR=9HR5Rs{fW;vym>TQr4EsRN^gfn!bQ3E%pN3yY|p7WGYrG`;ui z`dLm(loC;^CpBqn3-P@Fo34%@lk`3mmbK z6ilWsedfq4<$y(F-s3;r!`~gWDBi~LaoF=&6D}sJP0t}?0lYhfidB7NBy122c2ER1 zNAdPUPZcB*5iz0Nu0)y4P6#;q&D5uGn?`xrLfOM;MBD&T7sROG=Lgs88R3;)(8&6V z_Mkt)!0qp8OgK*5620d;gC#0ZRWCYamhiAVxx_Q1k*wJH-XV>;-o3lK!%>bmg&Z9= zQlAKLJ96QD)~(UZXfvP_1p6WMIJrmm)lOSTjA`Dt}w zaqHwV5YCPmKfk7XB{mq)w=d&4QB6Q#2cmg&b-Kf27k9*p6d0dgzFOJn&F!%#wpsa# zkmGUTA&qOl1;h{NQ2LJv--pn+Y&DApkiF=Zvel}jNu=*E2R_Z2UeDne<~SsK$|avE5dH*&0s@I0FuJeLXQuz_den33qSuii1!7xd5+flPF z5kn(NrBbM=wKVkt+haElU1urb$ZswBy6m;uzltZLqLeQQ%xP&_Fn4?ixC%Y}Fcd(V zX@BX1PfRSFJVhk%_LI+Q$>r#WMCxiYb6B-SYzud-aMv%R;RH!VnS+oU=2J{=`yZ`J z5y@sAV}Ex^nKW>XXwDi=-E-H~&7CpNdc0r{?e!T|dXj(BbY^kB$5vRg6*W_D%+A3< zaTd}2`cF$8{&9rtCmiXh626TleaS5~BxixWgbr$G zNf5u?LH!1fx=2n&MI%(HOE|IR`@y)FR?1wAP|>PhJo}-M^3oo}FC{D`2-)$vwy_cI zwB@ENr9!q>+j&KUm2Lc9C6?RIlW6H}#2X zVLtcg{+~_B|9~qWZp6%9Xkbg!oh8Atu_)LIC@6o02K3hJ4Foje=wz5b35Yi>??bmN z<4~ys5Rpv`uWTId`G#Z~@1c~aye?VBqF@WLnCnoxV;5Zng{N#DAN$ki*w_=*EUNsD zU4H+vxv!6~zzYy!LC@LO?8v)wVSf*f8?CcIn(GMlA5Zk*hQpg|%fCnuc+3%r_>o^%1b1k$RJ1co-LLN{ zE%6T>`=^uq9asF_ecp-a4NmPgUf0{{i<*X;sNNY9E&tig`ba}0lFf8bsOM4>g@uJ$ z^evQ(&PcsDDVDrXv7mG+lS^pS=%4LwB$HhS8%=SPR)Wkg803b$6|n(gg7{P}tP zHu}F|upa0gU#3x**ownF_MINo@}JRwPZ~U(e4+R3(UyXw&=Zw=tHcDqn%bfirK&Ts zNgKO?pQCHx?!nS6+;W|rN*nW$tZa#YIN4&bT1R6pnsvGLQrh1x6BAOG-gk*4GvuU5 z8(~3{pjvh4U`~12bMx*W7X+x;M(0n#g@(7xlgx|^TI)6=snt`e`|p23NPi@)%zt!V zkMk(!+&b+3R)pW*!$t#A6Zk~jn-{UHnWB024ndAG#dP<`lE<&k<{e_G=U&}>HkNh^ zj(!Wv*wK6C4mVA0524{Zeb40B#wLt|FwaDjPPzzvP{$0P{7SDOhw<)2)R)*QQac6~ z6;LxoY%4n4Z@1*9IkLRbICtbV1RE94L`}i}xC%aLM73rQ@cg#ha?2nt+-kXw{BI5~ z|M>V%nb&_)qC#)55tO5Zgt#Q}L7~H(Z;KPPmt@)bFW7GXXdqE668bOqaOYCdY&m@U=>q#~Y%R!9t_MmP@t+L8@N%3>iB>Bor z)8F6BfmqW~ehztmQ{SE>w)N#1<#4{knZ9Ei>t0)JHZ`Ds&aQt>CEmnjACCwBr^@Jj zl9RZaEbVG0`IHSM*uzlRRWzLU;?-`m@DB5=uq!#*Fd^b2@4u*UB7f)bFk(0c_@F94 zx;RRv-cXH#f@6Z9N(E@71|qy3Rm(`@7t23Uu*p;4sc8QY_; zA`#_+pXkxmI|N>i?Orf+^BTCupdfh|e3$U`q;h4;Vh7R%QVvXAm0m3rH??(}Sia7T z=X^Yc?7U_dtb&@_Bk<`cA*{sQ!>slASk1!spNYA@P}zT8 z|8MCP)_|P|f_%x=udZ!H3e4*zBd3M0Q1}s-pl+fkWx37~o}?S*@E+ediWaqzy$L{u zP%0-GfGkU(9Vr+)>$T5vpS9M!Df1UQ}ql}h4W?oZ8*Tm(tI zf7O9OqrUjId%ABYk>bt|U3Dbr_C7X3yI37bny%A)sPRhizr}p*jxSq=M?>?$S#8@j%&Fo% zYpk1JkWf&zQYv^v<>UnYAIDO;gU34_Fx>A>y91#i^}RMo_K~^Wzjix}^91(c<9`@7 z6Vc%4XG3>~s*rWptf6py9n-YQbX1~DArY_5zLs5`H#Sb${DGl2>v6TZ=7!KK1Lh%}B;I zWsokbQd+)ywcBY&;>Cs`5ee}i5yEC%e7s+e>+q}kH}#IOc*n0t3;YeHb>*^s8fUxd zLlkQd;gFBW+f3Y-itM8n#IU&7kv=7AQUX7Fg&m1DdBPg7ZLp;47G`Iqx!dhaDV^l$ z>bUj|KySZw<_&+dmtnBw{p=6=3+tJR9u)rzpPj^k83|JqgyUQne(r$VRV7Y zdSCTMj}sX$keI~bA2RsVYZ;KqN1b_=+gBjJU*b` zNssh*&%t{T63$w*+TOsyqPjkKRi#0(Bl;$cFMiCL$p=Bhox;MecW(`GGz+aWnzA_* zUnYj4T<@BY76c% zZMXJBd`bvVV|3h?X=MH+upgOUa$KKlL%hf?wps^$*o9)=-{6P@+TtkO&C|At0+(6d zQjFL1mePbrTJ7e5ci!GiHfvft zxIsa_z8bEB?zg4uUczAmC|#PDb!uUFdbv@NYzn@ zu|_<(ZES#~eh&|9XkaBsX6_Hcw3#`Mv}V`0JGl5#HQi@d%5m= zu$CI8H?q5r#^^bmk3z6DUlpCNc8e+uy8EOT+DvfUe?4JxJuVpDoUJNS;Xx#{6w3ia z+a-4w73C8>u{f*EW{X)!EvIAd@EK8=TFGB?*=JeT-$D}dxq@5Ho8MDw3T@fz6SO~j zk?{Q5aqyswfR*-mr`__EMMKwd&r^hw8Gp0MB%_C$1LrL`5-qT_)RHRsjWd~9dDNY$ zB%7V~KdY2~ea43&l<;R7%1WbK5BB49kmc0pgbDL3mzfDgl2Fr>Q{UT|&>m{9qa-ii z)P5x*(GgKlsJ>Z|z*+I|^vpXTl(5uY%N8cWV6tUcD5C6&T}*F#=7W89gUnJm4d9?V zsCz#|qfzx}y13$#j1|PO%I?1bcmf#x4KaS7GjNpS>oPttj#|}kDaaT=S?y{@+2!_Z zwx$I^d-oC`PKy(GVRt}9Lq2-rF-b4oA6vEohg1ma?{RLNE3i*6*fdE@;Eiy4O`sUC37v!DAvY=6Y9V>! zFI>?3J#0>|5ASzEu@MVTCopZ^X%vT|h60PIAM0#vlnOJvFJnfgO*h^F1B^N{MZ=O1 z>$2kyD1k*q7nTS#Pw~a|voY<+q3yUXd#*dW?Vm`Uon69&-z^r%3=4le!^b~h*_L#C zQBI3m_!VDeFuN$S_B9r02oi&9H#yg-x*&oIGJ4{(m#7|@)()XVjw1KlZkb+>g|^oa z5+P`Iv>@-%dO63iTxo@r<-W`x<2>J;i<+7iYGG|0DfG@;I+iSvN~94L0&F8-9)6GSK|LBD6U#dki8iZbfUf#&NhW);>-LLNH3w;9Veud5(pF!znpE z-<>92{er%7Pt^}MR`2~xEX}?L?Mr*R-oGpgaqCODwFdAz-~~(@p_{IJHZ~b_pry6R zOVs+2rFC;QtI57g2qZk2h4kjrxu=$SPV=vU#nvI~rsZCY+3bTe3Hcid>K&V@YCiS9 zGL&6*vLM~!m7F8^*Djg&RcdXcyJ{QOdgsEAYo~578uSAyE_^D?f)(n5gIny)ucDm@ z@Z_Hxt5{2hg+cRg;sPtD5aIVE2Oz*SZnWT#ijun>meDIuNk!{ z9s72_ed&K<`+xhS5(i`$32e?{-BcQAp%H!(xhzDq?-lr9g8yssy0l{K%S-Im7QwHE zFF6-GE^-xDO866*wsN_T(3fJ~Rl@GicTX`G2;ZUmU?r~9r5U*;ql#rh26sVY?6gRXz`wK1VGx+xR(79_i{LyRw&CR zU6jAHz+Ec3Y_z-AO?{;$;h|g0WDDh5=ec|^8+SPU#6l1 zbS(hxI-|!xmWME)U(;Nu(5AfLS#1+OwW~0?&lx=mo#~aa0VX_KIX(Y$?fp4Q^Z~a! z3Rl2_7Gy7zji)O`YCu%Qvom8ZswZ(7Ur2Lg+Y611#{+#UA%Re`#EJ^d%uxS&3XSj+ zzTk(PIyJ3Ljm@8FV81S*Q8yFe$YPvdmLO2~sQCsqEa0inKoI6Ae*#Ac^782?sty=6 zsOjT|5ECLN8&lyzR+gGeSphhRsE)fJjf~t2y{^4_&F`L^BL|1pp zMq9%=d{`8wIf?phYAbha!W*h?A^{I+w&5yKp>DG!x=OhYaoe-3`>7+DzGR-=RpQI+ z_lik*57L&?In7y4d$~n#mD0{oWy;IN1l^E8k?}*`jKxG{^IsBE{;;?#!-`C^K~ZSE%*@{B`dR%k5ye~eg?}Qg$@H@43nvA zjKKZ=D2sS%p6OhrYI!uq=xt-AiEY%h?fPis`G#T};{TXGXd%{HSZxXiHpz!mrOd!9n^c2Q>Z@Sl^Fs)E!Rzn=tZ+mq5VcmzAKnAiyRvQTpAXMx-HG(9VbsI! z(Bq+N14!BV06FfL+u~Wgil{nNB$j*_ClNP{2psNENmSao^lvLMI3PwdHwfm0U4RaY ze2im}a+f7*I_|1^y=|oVu5o&kwbpuS@zJEsI*@BFvSVLnP;YGI(T$45awPzaz8??v zb!V}?dLqxkBxmq+xp#o+%Ef{#mB&HEZSZuZC@0GheO}nbufTTiMBTM^&f6+`xv+$T zoNFfq18K6&*i~^@L!s|S^K!>)GSEjjl=}LF8I{?#&1qxy?FMMMw=<~CxZ_Ce(GOjq zZO@H>#oRi}9M#deGqds!kov!)zwL zJ_Zf@(^cQZ*Hm8jy5(Fc?52oEb@P&YFAsGS9VbGn%CHO>4V+3?4& z`~0fmPW&D$%czu0Bq1`besck=sj9c7_Wf&D!GAZ0db(hiv@@)k*&~$nC%q+02cK${ zPdO~wK)a{9Fbwi1JA^jrzy9y1KbY3F5}3nXL@VvTe~|`4oteJkg5C8 z+z1j53JEPD!VM})eqJ6l?HoHE?U^(|&IT%y`Gw;u48{2E{9$2*_QXWnC9(oxuJ}RTL^=qMURSksjq+4&rQyB)K2?>2P@!6Y z9+ePe6{)LPd{)r2@kmg}-YCD$_CBo^o={OAsxM;j%g4`|+RJF0=)77MmT`7>_xGY- zzcP)b@dj^g>6eiJE0Rche`!QB+rm?z1lA(?xeI35WbiN~qmUkaP*p`;VX;oNu6=U5 zV4lx5o6cv$Kl@u#@C-L-t>QooFF?!E`3me&yxP-*hr@~hm>~703}i#Kz4r(S38zi_ zE$k!U5wI+4wcTYi#|;gB4i77mOh%BzflKat#?21?so&?nS7k&ydmF{;quF9i9=aIf zfHzhsxeNK6C}`%TV!PO6a3ifl+#4&Mi)!Grp`??G$+H%@4^$Mz$Rg0^VLSYDYNmLt zr++k>f_Qwm(^yJAyhd+U$;hSX7X*)fNYb`+SUJB@RUYl1A23#*=vRfDnf z8<>quM~}F|R}CEr(t`pnXTN3Dij(U1d=_kTzwI2;cIU&n3I5!!vJ?$?7Tz}HJJ z*f86({Of}7F9C|hN~CY2p3V{ zH#!71=m}Dj+l{4DM0O21I!5Z_zTZ|x6EjCc3o)x`i+KMLR#iOrZ1) z2*G!sMJ}V(0q^kjbZXWG6PX;w5#{SaY*{r_7z0_hv|!+@*#|ZkHy1RDY~+3NzECIF zf#Kolr(bk(tF!hjOXQoyARc{SM?4^;o9}!D%!*zKxbyC79mKNK!b#;^M0Cy$Uq;_H34FJxWj4 z^PH-K^@($&JU@IrnlThm2Dj05zd%Hz^enerDXObR0D~kbBE#|&pfnd3jBZg7DRyEr z>jY|%c%4$qy&q@Sf4DWh;js>sp=Aq|d&pxc(mxTbHMAA%Jevw;2wnRN%I8()vzFux z)&$bH7qI~C?T&f^;h)3HiKho^G4Q~ee(*0a+-6^287>Y~ujX?U$} zGQb@_hcv&%+E=AT%C->!jl69oXaQ1V!KzpG)%sd|42nNNdL4>ouJQT-I+-73VY_PG zC8EcabpysZoE*>%U-N)jogbgD#jq53%Xku*YK@y? z7pGI$DS=D^{5M&>tcQgHN@i^T4!D@KZksj8UtC@$&s*EtQdDxj;pzKC!SN{{On6;@ z2cXA^dA>vTgPx_(91q2HqHbAOxZ`ujxq-w3UN7tnCt;9s={W=y=_k~fr^N2GHSSy6ujg}G6*-3s zTHX$SJuHK__zu^fjSxq2RgNZzW}nPRelZ^lad?FN`R=#VKe8k&8}om;jE3Ikxlh`# z!LiXvRQ|^KVb%|iMe}polx$^=kJcVtTNsXSAz(MY0qV}*1WB3{raEThHC#`;T`LVJ zI?wmm;NR&9xq#mT#jnpq=SQjy_1-E9ypR`3>8T)~FRPA9OizmH4UuM9I9%HL1?6*U z)HN^&Lu3VP<`T2HJsi3fVQxJbLTY^Ax72s{Y35-;&%dWjF5NxepQITYG&&MbeB=Je z|Mo3vZEb0d^^rEaannam-WG2N0S(lR=DtYsKcx%h7Y-dl)+|PfCeHd^oj%-uV`MY9Db1dr|zVf-E3HCAO?0uI} zn6rXfxtO-Gy-tvUwV>^_qP5+@Cb)Ri4Knlg_v%INbrEnjZZY%Y$z=CK#KVJss1Gnx zOn*WChnAuner0ti@Fx5zOnIkb@l?ArWFvOH;ksP+76Hn<>sC3`HN#J0@lyKI zpU5W4>bl%EPs1ztv#uxMN3L9NtHy`mieeV%wr>HuXRriYuCqmx>kET+B-L7QwPNVdy=@1_kLRoZ{ky@1(>&Y1@`7h=LP3;m15&jkgSun4`%lx*<0RFV36WmFW3- zu^&IaZ&yn^6IkLf#kSttB2q+0(fZN|Q)+BRNw(-EkVnIo&Uzx>{TUk4sAzo%5oI@N z!E-n|Lcf5@biYK#qoH6Gdn(1`Dr6L1ZuLl8@#wO(&;W47w%h!U6-LYqZ^0m3g7fRc zX|-&QGOaf^tztPJpW_iuvAULofEEJ5_}q^Nk&7hMMf}Uzl>@FggLWT;BRR;XP4>#g zWxUVC0pd6u3~$EHN0FhRn0qWztBEyKIxW-m3)a9%Q^243`T3$Y6I0XoPr;EFea+@r z;Dz8i)mBX!;044^`x?BzAHhVEYh6=S&ehF~a>jOX(=3ta2X*-e|IOVa(!MU1(|9fr zh+e2@EQnv74^7*yW(LD&p2-y&U6T{mO{AawMO)_De0AfRxV?}D_}Y)w4`~P#Kzj!A zM|QDP|4puqfSMrClEU(z#!dda^yx(GUir}olfDW6=fZ1ATK{pnaR%*O^_zQHIePf6 zQYEjz*7BOhX>_8`H5upAjX*{$bzy1_-Tp+IO#}B&Hwz_DMl_tsb4Z;k;L7 zXT(v0xMAPP#cVAXVO*+R>{sb7{R!{R&GnX$-;OotXbPvoF+h7Maeob-W$jvxu{xe6rFSgXdE>BD`?#Za}FlQ?*jr4D@fWucaWn3ZE^$E%Ir{p(-_p`dEnk~J0ZoXzWcsgFu#@tu!aB-+TR!F4C_5mh=N^ zQPjXgxLo*lt8UOk;GCdrqt48HmcOkAO7wth@KL*04@V0=QrlNK3uSKZ0jjln2c5gY zGAgU3l+Mp8dnm~RV5#jGZ0U&CQmuCz-|H-pvjRHs=bFv;P@NOo&X?rxsXr@@(S84( ziXPBo>)q~GXg;T#9a3V5Ak5QoFj32_nj)9Jf_0HyMPJt5%;AKgh2;mNG-b%04BYQ8 zo!tfYad|sm$B@kpJ`J|NdqrPLN4h$BnyicKB7(;$jb=5THwQvUun^4ptnwmj^PXTV zRwnKMQ>F0$`8*wALTF9;*g#0wL ztCICu%tPfAhv+-eW}6p+RlCHnk9BXkp{aXFvy6(}*_a!pr(5#ttH*(a?)=byeJ%xt zPxtK0_`c;3|LIw|n;_P1OF8q5i~fzg?NMbT^&h8dQt6J3xyb^Ye1;q|v{bXyoeY-! ztf!wpi}}4)AXMKfHLaMY??4r0>(_U4_-_98-!n41uEq|5#M0Pr&c2s#8;Tn|DC$1u zt%Fq3xDb(2wk_Z%_&}eHo#)NVU~K%iVJZl}_a8YN0?un8_yTd7rL!`Ja?&rpGoaj0 zPgj1h>_?{$@z5!a#InHaTtTm{$0A`5%gk(&oG|=0XVes(d|%JjAq#`um+j0EFK_6@&2Rb68XJ3kU$L$28pu^{q7sgY+YccjytpNaxf|Swm3T4=sS<-T zyqA2Aj1&O*bd_&Kg1ZJ!W;f)mPsqOFn~gsD zKYls9z)#fwh{+}X9E(R?K|*x6ptRj)m*a1Oe%U>k4P8qBgh5R%gEDh+f)UB}bWBY8 z;&=ISFUAMfDoT)|j#v^6p8xUndIR37H>+7el*Q#PG!~l(j&xQTWfOeA5~yP(?VMxa z=0j@oF9<@KdKn>`df$#lt~%{fzJw)^t1a8meE=RLNc0Dn=JriDZ%9d&#$PyrXeQ3j zhw(!^E){8ga$5xYLuFXn7V+hq0{0zGf!i!uFc_uDavSzjfq(1IXIo4Sm|VHTx0VB! ztjwE=nXCZ?71%yk*y34fXZ)LLjlPYcT-n0FfUVhI#LD4x^eW!PlSCVtBESpr?fnTI zj2lmwZB#9EBLH^;{z-VB!+;K@0u66n*oZSMN{l#06(adqLaBiM0jAx{B9niyufcE? z4rG@`z$y4|Pv7*M9L?I*SRLS`+YN8_IO-h2hpC&_BT!>VwmfUe3N@<5(Xnt-wlObX z)B3@_Gt)BkpDz9y75uAYzcWZC_~}I#%r?SAP$q`P9x@el3XL&t;l=) z{bflef;QuFudMh@p;SG)Nb)Dj9YWGLJ)H%h`4BUNH5Z7lV*y?SJ-l9 zW;s27;n0&e2e=J~)yCCNWDF$9a&nDCS6MHLFkdd;Qn!DRec&kcnHr+)u&aqjz_Eyl zP2}o1Rdtof-d|#$Cj_qFL+RR85nq~eaiRHnojHuJk!%p;mzLEocJ&Z*cbGESXjC!~ zN2?B0V4E-^oll3x(Fh^&a`t--U*KPM*|Y95G%Q`0-HC`k<%kUQ)_w3kN?latP9r-d zX-8X^fZ%KGdv0|LGBU(ytzcs{e*#%JJd_lbJQM9}#4&F; zx}B(+t!)E;P4N}#{nNXP_~zf7a{_>;!lhn?e{h7PDcvWL z{H~{~2a3I;y($7X(wO-xBJC?~e2P4yWq@3k4l^DNC$l%kOYCqRea?}>>So$OXp4Gf z{@F4+MG9#^c)^1xqjgc9=a-h?2bqdt^U)VY;XfYr8N)bDnTtQdFJ(!2sPc!c>4rC5>Y-)@#^f z2Zg#$B$d*%T3ChoSU>Va*YzyF-WoaPhV6N5>*G63sm&pf0T17@9pIYJ-iJ z6zii|z#j3#I}%6^o(LWS+WPs;Wt~Dp?7j%^ty$+{xf-D7_)GxQE5Y`J-`gj)^j36- zB^U*sLK7(KU9Kl4tGzv7G9>3je@`EObH(CSqihQ3nA#v{j% zibSY`;#ijhe(MayyW53GAb3VhR#tn`k<*3pBaxFhsPS<&NM4ek=F|kXC*`i*-`AEV ze$R?ctymle*&c#ntJ_yiIzu?RM)&8dvr}^ZoU;sFo|I21T*Y|frh^-zn7e$rBrnOZ z=F_bZq(ky7eN+5+(keRL3MDHMWP6*s%YU+vccdKtH#g0e&>tS!bcMWbZ*?2XBwL&I zYum26=AYS0IGd z|HJg#L8(H|ha&LB&7HG1B+0mP2KGN6CNh%J=}BW~@!R9>;i!24u2eMD9X_{c4s<~u z?_t|)(T^fvq1N)MBfw8#;(jXd^+9eFs2U0HgGIqQfWrbJy-Ot##jjHu4SJKM+LSg} zADr^{LsrV&nc@T4OC}L&6Z!ak9}q00L?1(@hz3jw>YaAalS2O`(?@|)q3kS+nYvIu@WI09PMn=MneIl zIDfN0`ZXSw5I^_EX((~Qm3OO+_eV^T&1mkkd`pRxoru?@M=TrPOagyLB(ou;Jbzwd zkl`J#hW?s@F?RN+nPT2ss*qxm`v{@mxH3-?)^qRH)--&i>15T*Y{j6*4%de4$T=9Y zWU*Cc4=6w2pZPNINa%lF_ngP-$V|a3Wd)`WSHrd>CAzIX;9zJ4khdlOdVHbVTYlO7 z7k<2R68h&4U11}y^Mc9KdnvO|BTiX$20{HoM842d3<1CyMwE+<^U5IIrz;X`>#{*Z zf%T1QHYR)ULZ*Xx=P`S2Ie@y#T&$^d>#cD^BZ+O7kdO!=LLrS5HU%rC?W)wX1Nod_ z7sUt-HG?L@gf^~IvhvI$x-?3k6{^R^*b(TWHl|g1ho_hP zuR0&kSEjY%QMajrdu0>s>WWz!QaX7Wi;V~`&6}Hn#*+n2kJMKLlYqwuomOWrGk>Ht znUJmR%9WKx1F33Twc?sCS@uh2yckunurx1HE-tI(#_fQx=4uz7uH>BKD=zbhvY^dw_2SnI;Pe^in`+(=gP2`HWR_!j;Ta*&N@9m+BJFtQWjP?5U9|S*@UO)hMD4sSgW@M!)N-vXtueDT)O9yHF4OjPFhktr< z?$!UIr+-3PK|zpPSyA5$By<^`50(@~_=Z`|sTE#a{m!j*npD3&URDtYYtP)<)1qVz zfYFGu#6I@=+u^1zHA)RM1{gS?vh~-W_ouS$#V6>MRSs4tg1ThREtg9ki0fAhAag{w zB3QLu9>kMLWivo$onQ6ps=CCFVs{m<(};{@jnc7QKZZuTtXtvqtEFmLH*_t~ut9&6#z^<8 zW67Dd%g6>Xcc-zeT`RLZTYV~*_mh=Po(VOg;l+{L{FPk5KVF3mDNv_W?}g{47=)V{ z6cFr`9vslUjw4271$y;zce=ZHY zEW0;fO|+%BCq3K+SEtYCPlU3C!OB_o(QiCo{ZUMKe2m4iDMQD&QlgSsZ8_MtenY3( z*uuc`MrC2i0R5{f2EDZ6p1pLyEPBR_AKFMCwO3+r-Iywk*=UPlBM~-I%ngV9-#d1B zeK6+Cb}#5)B8{dKjEJF)frA-PCOdsIo0H~JUT1{(tASx()$^UdQu=%p zJs6FNer9$?09p1rNeVpU3kQtyP#1iMALN|U7pH`KR(j-bd3=5`O$R!oATC2Bb9mRk zDkXC^lp0*s^T34T1JY&DR18om5qrjs8&pLOs=kCH3$a%kLvZ4$iES+?3cn% z97$c4*a5lGcv!0=6@hwsdc`qAsoeg*O_8D%0_+9~1H;Q!%{prqIjM)7)Mg9C4H3i@ z6Twzv&}<9eaH4{t9d=~UZmq$rOdH?IrtmTU%Vx|{PCg${;+=T=#j$$dZd7M8USykK zyJ7+ib1SRYgyfj*{oU|C1gi`ciSbwIA|gOle9@ies(% zFIGF*-01T|XhWrO5|dYD!6pkys{jQzN?ataLTI$0wQ17(pQm9~rs8 zYd7^#K#;A)pnpu+VN=-OpT`!>3oUZR(Fx-@I5~`?W7pf0Jh(~D^Xbt~XGzD;TXd?& zt*X0N0e(}zxxms?@#@*X$lp$8t_4ye2?M5MxW-2ndOKQ&MSW53F)+Rmi(LEgB}m@2 z7;i0d%5zD`WqF@)v_xmC7>nKT&Ul^mr(!?TUro^q#+bs&RQp45dvxv6x)F)d((#-5 zVQW_hyGON)W`ydO4Y}N?-@<>X4Q>=z&kN5?pl6(BuZ59ySuUbf#=hcI&lV3w2p?E= zU{G*q6f{8~anx6=+nXsHS>F#DIP+Y;f(AN7f1CG7_f$#Dm73&Vt zZ9czTkNHs@&Y!gutD~e3#(vv}aD<8IPTN{%;JM_6EN<8=0k`myxpna9VLmDe(}%Ol ztA#b%q}1bkI?P|+x^moW)?Pmi_Ey4^+$bU&s zhPRH}90mPJk4-S2@Av%i#?Yb6RA;*>dUBf>ZE-XGgjN@1Y z2bS>k^~?HAgcVR2D({aSF9opMe0km9y8X)!U%{qCSl?f-`!(OTk(*`$e$7N={M}^P z7tGFRA_cnQgluG5Y+ot!WT`~S7`e1PP`aE3E{>TSA2fLXH^8_#xH{Gad1drp%xG1iDp{?s97)@(0v#)93l@y?uFF|3%MwUeG{|AKUOUFW6heIo^#5@;(2aAj+2YYpme z&0}eS2|tO1$!pf%-=#3c_vt*`&6qrVv8qIPN`w{_F*24izA4ixWUWwBYSp%(F}8cJ zI=P@X{|S!ZZS>bYdA1=agRek5CVYsq*-L?rjg1n707O=*8s>N(E@mgu@o)=Dx*iII zb2MJa)l^eyAPg;fEfaFC8ei}JZ#ON~Kei~gPY-PIv=SD2@Ld1vF2j2vp8tcE!cL!v zkTu6ltGf(JpOh_ZlV?79*Yeuh1;mxEqaN*j+|n{f6gcb17WXaH(_xk8lx>g2pci)y z(bBa`ALw_cq!7B%Ahwgm!pG|)qY$@n*W+7f!TSwAW-iW%<|V1=YEwTVMl<>CXkx|X z8k!HY8?usVRmxsI>?0#muyfN3qWHOqKsX11epQgZETc(({mdyL(;l0~x3$$SR@pO( zU=pP7SQeGG%pA-_SSSU|465-uI|F=L}2Im7D#B38a ziSS*)5jEhDLIfB!TkJ zxH&$l66* z{V+aHkfw-s8CS=ij^adHNb(E;uY;m=fIhvl#t-O^n3NckhUqppwseiF?p%TK!H#U8 zA|*>UOt}C8Y8oGEv!a9?t%LLP0eQAbj@eG}HVEe;yya$DJt=(x?+ zPU!bn&Dk5_&>sN|;LacPN%piGdeP=eOC4KxwyKoyx*yEV4GkZ=fQszx)?f)~Zz@(0 zmq!zqbdYy0he(Y!)uW9urG|@K%%&p!UALNpI*n6I0^f%D{^j&>Svsj*_@AE}?HTmu z9nE|o4+NCab^P?PiZ6j@;qjYpwCX*Eg$-^NqUaG2l3`A}JvfPH$Q_X>D<#&@S| zJ}8{DQRumLN|y6K^whEsNPO&bi?yqR(P~`uy_1}O<&3(Hhax1aE7D!R&ts&ZU|d`}o+;4hu(iCo zRJ-#n%0b^D`{>9)QAz1T#*o^>g;ai7*|2?1hWdN;niAtCt;c`Wt@XdEn;A}hoVaX@ z;k!??C^I}WkiQkK_T;m_9dyRv0VEj$P9?;Xq$?-}KdZO#=PF3o`jJh+iYFZQ^Y6y> zZ&F{JiF$!Lccz)k_G#G{^#|8n5e>Iv!k^^g(TmBy^R|3+ zjkH^?%R?m+_?mQ^iw+SlY#*MDPem1LCgw-aC@9NAnY&6J%+J-yE_Y@9BPId2V4x9* z=B(hH@y`4Ku7Th$Pu}nHZIoN;gAsdq@4LAmo^%iixV@jhQ%2Zj{iK(JX-$g8OyR$o6H@vEJZ;p+ zhn}#b+<oc>`#Wdb`3=ee=HdROJri#Gl_hEc0J-=(VtuP}=(rESg$>xw}6| z^tpTQ`y@WJ8G^Qc`~9Q@04lr@tQy!Iv6KpZst3O9=12fw^;DHau8xE<^-lIR%d5h4 zywjMHp5l5%E(v95@o6@6CkK@};E-QjwMV=Bzr{PuRQlBm7M`>^rD)DZQW_b^=6Nqb zR+N&KI#x7LzAHUX8bX@5`-G?86Y{+e7WaNRC46?5E3qqH3VI=5nr_73c z@9J48V5f60cXN@$!_Bna$-2YV^T!3fTazW%BL^A6pEyfNIP!D8%>8v0RPvGjWqa*K z93EbZ;O+8Of|cxn#qsA|;&f5r=Qf|JUC{6RCLFo!+U+nBZ|0ryOxrl8HYTO_s`T`x zo}VemI6LoB5@GK01jB<=^!rR&-L`^0_eB59ubg|0cGR}0MTblCRo^A-VF4cF(kX$& z)ga0CHwJ9XR!TWnxfJ|{;}IRoz`9E(mRK`Jl)knYI>p});drdGmNB?4K*F=k2Hnht zgNHy>LPY44!6S#Q`hzm~X_=9v?cw$U+6xc-X3YmF9g;$V2n=~}FVhu}M$$>@uZ4m*RxZlN!ZB$&$=l%%*m1wZKu1caCo9r8c`wW0m` z&w*T@4j1{YITGd4i8w*jc`VQ-yk8IiacC+i&<;&(cp$qoTQ8uahb+B z7Zc|RpkuS$8pXe!1)=p82I2f>shBHQIjD1-WgpX064`J$XC7geG8)hmlcF#u(e|j< zl;6OTrFm;Ip-Q^_$bb^fQHIpfvBetr@q`>d?tI*6C-er(?Rdrqfnuw2%q>oU-(0qT zdvIpG*6en3!a8Zge{p)jC5E zYF?G-Ys$!I=N=>TN4K)JM?_wq7{BXAGy>D!9!}~zoXRikVRc}ePG!?Say~0dZ?%w_ zXFVI;Ml0a1#avU0HFgeDc9~zX-{5zi8&xMfhAl#1i#xtTV@>x|TYBk1)cEMH(fiTB z-ETPDNpY8qFt`jBv0F(P6Zx1_eV)jROj<*JaJ(638T2`M@iMneZ~Nu1uF`zrDZcZN zIE)r_*C1rH*EO}oYoh<&-XCF<93L3QKVFexsspCk7^^{Fy3dAwUr?*>KjiA){gcBZ-MYot~TFu?W+w6MbtsAG94J9ZHiz{ zdzFy(Y=oo_1UC3@D>W+Sa<@g*Cj5Lag?TgU^?8x-IOS(f|3lJ0d$XC+y5My`I{!Il zMs}mHhV^#*xoTQDr|?(3p`Mv(X2JE%X~G-&-mR|gt7n3b%caA@zOpK1)f3h|7*UW} zuQS;`@qh+d*vHh!i&M~c?a-I&;HRM#>j6sffj5ENvwQ zf6k_15xczbXxDY?EVDyKLj2mI@k{!)(j9cHW~c_fCjQXr+WJE?cP0`*#SjiViGPg5 zKn52xdm<+Jm`%uO!Icw;$@ep!A!vM(X1~+ zIK9XC#re%ma%u|oFnZ0Iy#dj&%rRMUmYDzGCnX_`rbcN9hpF6F<0Wsoi*le`MI)3z zQ|d1O*A#3dny3BU3ePD4*EcQ4pHeOjDD2slUO)6dFSp~~l~wV$J|y^pJM)mfZTRtg znvH9ZtBo`MTy5OJk~#jAvfcqdw}q}J_h(wyJ2(y1?z9Y0hkp2Ea#Rp{_^pKV<#Fdj z?tvnJS2x35p)E9UC>Jue=6)^&^00kzBs6IX`#xZj_WKdEiAtN?<1b)0(Tp>fHo!_S z_Iy_m$q{m0OwHq7GIOS*H*J0?p}E5^;o2m3HCPg-Ed{I7BH__S{T=pVYVV)%j9kW`W)F0|2u zlc#0CY&=hU_LIL&f643{ESmR?GGNl&?7QfUdy(z@duV#d^&Z7#z-48z#%z)b>Twm7 zubI9Et=Q_kzNvZEn)+ppepBExvR~%>cHGyl%%OZ01vP+R67rtNz5TS?)A`8N-)*e+ zI5+pgcHpyHoiEj^m*|pzrjTS<8H7X`zY7aF1rnp}sYJz`no5~#nX8#TknUehZKT@M z(yYoMs%7!p9ov~U@=l5G5Gb_JqJu#X>82XOG2AfY_rPAU^LT&9NL=O`*x{8^Evk_t zn)G*I*qJg=xo$hRva7 z@7ap5h=^I!2bC4TMnHo2R_tSHsxH+x?p!3lx}8zasxN<52NML!-Ln6rb0Iiuw$MwZ zs3@Yh&5^$=5geCwd6hIyh-1xDBGxAwcj~4bTN&I>hc`cm{1v@ce5-cEP$F_9d7r5d z;J_W9rZo6s6}hkX;Rh7D7l=3U2_5t61XJ``q;$5NWzaF_2;9yVP9hGEn(m#;qmd|6n}b7W;9pDVl4@PL*T50Y=bix zrY4$unre^pR{(crF&+clT5spny3-!xG$agP`)E>x6PGSLf6nrOkf~f18o$DN_FWET z;caZ_gUtt7kMKa}#;%BV@Y{Q3e$e##p?@$6y3G=%Q$RkLSO?0~MPzP;H7J28<% zr$jU%Nxb4jas6KSLi@)*_SzpA&{}}Sbt@__%JiDtf*QZ?Wwov;+Q?Tu3W>0Hi6j-E z%x0n;_-=I3LHY24Ch%}=23zoQ&$6)>PWb?1IY z4YgT)cG#4*I< z6JqOI3Z>CO1JWcMKhuJ5KXf-$REt5}Zj5}XB{%~b># zzV{zLHT-B9*p*W~T9sOHTw=2v*tM(v^0L#^f9ke=Pl@vS8d5}EmBj{(7={*9*eqNe zbu76Q!o;&hKZgiEPVE)WEldwKO>iK6y~z-y`OjKfBfQYg3j|Bdj6HSkf5bw*qy0hc zpUK`Fy=-%qO*?%>dRe#Pv^)87-9oGx`}^WsPyKlo{0CCIO6vh8k38||Dl8@kvvcpi z@hbbTF9Sd7nyZLRke2mD47_uQ)B!`7?(W>ghTyZQ5ftr1nd);#azW-n>U@U!v)Cs? zH`OMM$~J?bIvchTTpCayoZ7Pnr7hB}CeT@pgYOErydgO$NeZy$M)`c9m8&~t)OndT zATig05ak|*;x5j11;7tC^JTvOOjN|j$N##g{ML@Gyb!&Mus0M}O!D3jnwjeeG2%Yt zGVS^e5So3A%1z z;NM33&+dHjpZDa8`tXR%90ZKom{7vr#kcm-AKECqz(neLOXp!2J?2b=F8S}lKbpje zMY^MDoTYg=AQ4BLKJI$^mG4IlOh8;y&NkITg}4Q;tz`w&j8UPbSW?yq#+#?Wr8c%& zoWSO#Ucl{-?ZdUiBJ0NP;tsgr&EP4p2d9esPd91m%=8+ys*_jrDp#gT`>JLy#w;tp ztDAvFeP~kzqwvL6_~^?mi@E7Cb7N}$bK!LewAnvF`V@s;GEsBxK#lF_do1-8h$U}U|KI?ysY$W^ik=$297q7^`mRt_-664y7J$?hZ!TF3IU zD75x#)@Lj;QMPg_9B|R_XJ_3O*f-p%gr;|MRa9xZf>xpU&O*28_na|{Hd#L1-2@aw zj)0f)zyqOn^Sa&UrsiKk8Y5-7GW6F(};chLWb!jvdN4rcXOXW_s?6b7rN#bCYXm13t)&m!mCTuu+d;}SonOv?DgT6Mb zZh3KN0%<|i3RrU>;8UV-px61=$O8+s|16T%9YJYGH-5s~^8L1SXrb-YWuOFe?@2C6 zTodu}X28i~q%>7Ek%asGZ((B*`3?5*Oy%5cQAK^BZ_noZU8=$U#zmiSj$J+@xGjI- znRjHBf*udaTAf2q2S+#TUO8z`XwJLCqJM|SHaDRGAOA{x{Kd>x+ScZKlX!ym$-%)Xhu7@fLa7l9*(>xCV`hsOZA#oJd1?OXn6V3>bC|@=b~?> zfM^1Z_on#D?a{$UEkh}UsqOcPnAfj5?Xjt@Bl2EWVZH9`q4X6yPbZdX+NlDvetGqO z?uUprNk#jgm@}@Q%Sy>mj&W~}zL;K{@7EEfuQLDF)(Oskw+RLXFgdhdHFzd=*(T*| zP|tavt?)S$<^&*O>c4}BV!oJiJZ7JePMO+~g0g$eK1|xW)OH`>D3Gj*`o96>rx6Tx zvtg@g)EgVmEqx#&+BpQ&1Uzi_W1TgwN`C%`M6k>9_Fu@9;IL7ZGj0t}b(-6tKgJx$ z>j6tAFHmY)iM66U4{p0|BhcR6wn_ImIepMCoY}e{su9rOySqHyIG&KSNNu`qm5iTO z!aZjUPJ?p4Blx{)o|HE>tocaz&T%mgCr*#+B;%y~C-RLe8K3^D9C@vSKOl%eC$GzT zS%7OsW8`!7IM-Fcesv?A_m%T`$HL%D_U@0BpMt{r@Xrl^mFGaOicaLy9d*h^k5_#P z?M>~I@!|={5Yx@inQ!j`ceXe>g36R^y3_a%-X`QNU63_O?)&e_c>=HEe+s2rRLFGZQx⩔Kfoa;nHVgS@5HfO7zGhLO4+uF#Gk;kXsYyEr13 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 q|7(i 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%0AWV3HR)zJ0~E%x6(iN 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
s01akd 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 |clrezm> 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 - ```yaml - channel: - path: /chat - auth: false - query-parameters: - model_id: - type: optional - docs: The unique identifier of the model. - model_version: - type: optional - docs: The version number of the model. - messages: - publish: - origin: client - body: PublishEvent - subscribe: - origin: server - body: SubscribeEvent - examples: - - query-parameters: - model_id: "123" - messages: - - type: publish - body: - text: "Hello, world." - - type: subscribe - body: - id: "23823049" - message: "Hello there, how are you?" - types: - PublishEvent: - docs: The input from the user to send through the WebSocket. - properties: - text: - type: string - docs: The user text to send into the conversation. - SubscribeEvent: - docs: The response from the server sent through the WebSocket. - properties: - id: - type: string - docs: The id of the message. - message: - type: string - docs: The message sent through the socket. - ``` - - -## WebSocket API Reference - -### WebSocket Reference - -Fern renders a unique reference page for WebSockets. The **Handshake** section outlines the protocol for connecting with the server, while the **Send** and **Receive** sections outline the message schemas that can be sent between the client and server. - - -The WebSocket Reference - - -### WebSocket Playground - - - -Users can connect to and use WebSockets from right within the API Reference (check one of Hume's WebSockets [here](https://dev.hume.ai/reference/empathic-voice-interface-evi/chat/chat)). - - -WebSocket Playground - \ No newline at end of file diff --git a/fern/products/fern-def/pages/wss-reference.png b/fern/products/fern-def/pages/wss-reference.png deleted file mode 100644 index cfef31111b480b5f53f2c7c960a1144c260f0bdf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 456280 zcmeFYXIN9));3IuVr(c_K%}S?5fB6c>9B3|s7S9$Ge8I}bO>O6)jl>!G2Lw@2d7nxB1G^6*Q< zq0x^&s3D?E3$;ciAJ(tC9I2z?{Z{Mc?D76yD|=F80{MW{c_>}#kfiasypvI4`rk4_ z_J_f5G@Kr>MyYWx2bOnl^W#r5@xABB ze(m;Rn1lCgIpk`L2!l(VMC1I$mrk$6pLE7rpLn|G{krd7HT<>SE6zyXh&OMhpA;~w zW`RNLHyM&SiS{ILUx{KlLm2m`%WuwDFLC;pVeH>Xv@V34J$I$W`>Kl2oVZUfEnezw zk{+MB-ugF-S1&K};ojSViTi13Ge|8@gOz6|j%h>Z*Q2g>J`K3EEoJ{w*f?2I?rE&R z$Elqsy4@$S&&hV4dT}p8^2Ke5l1t~xR2kh)sh(0-J^J*e_eu}vp$XAp#TtGw^Je1HD(z09 z*2}G#VcnCu*BNemdCscWTc04@eSxs;tg1iSMEx;2Ir-~`<#H|NK8NW%Ic_r6^riVVT(zY;8RCWpJIL^!TciXetH{j3drm5m1*aW6u5KM z&K`Sv8+w&pT2-tEe3fPHyXNB6tKA)Y^bd9UNV8&i_$m`fpgx^bQn9ww*x6H)J)t9Wz zZPPDzhIj7n=u$88%ID9T@TA*b9Xh z*FUpde*f*V3ETLaOJD9hJ?yINde&8>G~WBwk9$k}TQTbV=Fws})EPCls577b=(Xz& z?1lE~JUTzmZv4{ej^|~T_c7ldtxLKI`|$3b*%hooDXKoqPSjHrK7Ho2EsyO9+w+-k z+|a#uInx~;h~-Z7b2uDE2v>xe+-^_}&<@D{`0?q-=?{{3?|v-1lc_zI-YyV#GOqik zPV$NH`>1;znT1))AJ89^(i<}R=FfSk__CR+S?UyjOv_NoL_V_38OdMQznk|?U*z$k zK0FU=kdc#=?>bj?|hE6E=rYC-9v0k~W+aPCE`~2}RowuY4GiEc~t%a@3g7Jc-f*slpI;n||bmX#fv$(WTI@HdvPQfHGiF_HqXSz2? ziPcv~vnSBg@Y2s8n?JTaYKw*^!Hr?NKi)deIZBV_^)6IOe^0hXLmLJtuTD73 zIK(*XJ#imDSAoF9{cx^;aX~m%Z&=7<-S(6elDUVjcNdKmwWQkeIyZJ=n`xUM3|NDG zQ0H0F+IaK8rH&^FEm!XAv^{9EjnIjJqn%P-=$_TBLeJyX@bA!EXhQXm+SlflHDg}3 z)w*uxQzJ{1uC8&N6@!_6YE6G3RVbfx36I0_WEn6B}yTjSzLq7~BP3Nhd-Tjc+s?lPUV^`PY z3JJUAwU$5~+C|R#te;!QgC?0mnBOv)FiSIAGj}kj9Zmve9@1yoJXCkMn^l?pk0an? z#^>E4;Z5h)^LGM1tb90jyF2vz=Z`JzEvYX@Uv#vf1V6<5Ayk;Q;a#?CGe7(4$m_}b z1(DutP)<38^_?@*vEPKx>ZRV7yC?SA;f>v$?y!mT`~uOajPies{UF||sD`@g zyYkL3Pisw&vJ3KyYF8)cBwW>S(!MP4RbW|nA??B~#7ut?w5acB_Bh&EE?{M&Lu$j$ zrt6lR9xTg>_}=CZH~)3)Y;njDwaj#tmuY1JnUHVn&TQB-yKiJ(`+l96W^?t*^K#H| zfFyg3P|7Df2phc{hHR;y%+>|3@LT(}wspSlR7!eo{L8pvcy?)a$@-BFG;3o|w8hxn zz5?fD`?73nI29v{Ux^9Dd6D?!`rI#^)poj78}ArLz3qHI6=HFBB3sVYJ)(0UQ3UM= zOYN$UBiE9juOpKp)5KE<^-bQ*y@$Au)g1E@{o`DwsDp)5ZMBu_Q1qmLU&5mVyX*Ui zq?WR1+tq|NariZft45D{c5kn-4!q2Jx&GNtq~5^k;PgSpY};TQUPQKd&w~G2?W3g! zW+r=xIG2IAw2R1VRHzGLVPR0(*|D-vpeU}Wp$_jgKEW0qy%&w&j2Rq)Tfwi6tOd?= zh9_v5YgWNOI=7GaTb#2PtR8kEk91jf^mVL0-ZAWV{!S=!>u4+dSSVYy3(FsNE@|+l zCZq|d5D2I1GqAlM%RGc!?I-Z0x@pgfz0bRu4pkE?)8m9K_3iT2@DV?3dqbW>8VxHw z@C@OMSfxR!@QX)o^%z+jVlv|OP5n=uB=Y#XUft~(Z+Q}migbzSzbLIzn;G%Y@Nr~+ zcmArQI{X=2+sR4coNqx5E2N|kF361*;f4KyGDF6 z(Gq-Li-(=(ywXGDBg*3g=p1~oaiFrUB5mo&&+08v%5aA66H*7kJ@8;ee=UVpUp|^s zm)Dj{x&wc(8h&2S(xV}^;i9+xPG~EysfB5SG9{akHbh~g)J}XO9LJh(>TZvxZeL$T zQLj+b0>9BD)=GcItYkN&$)%ZMzaZy%63KBJ6-%his;t!~1YTA<)|2fZx8}90K`m!= zbPjpfu>_?aX=<`Nve5rN$=4|A{Xx)^kb^H*+_y`r8T+m5p52^AGv0cg`<0DBS|#X1 z>D5-&2ln=v5%|Uy3?+)=>A_LGv#LkeeX2E%(S)zK?^#l4*@tWg8;6mMLGQqOuJ1!f z00w)@)=0xnM~C4WaD9YY3a;=U9x|BwyWcq^D38xH2ferh`Vtfz^^no{F!!J_$6=nv{OlUNvAm*{ zqJ^RrT55N8R^E!+N)4fIqrc{W+IVcGrt0xgMkdgaQ+%pH4FBE56|oYWdX?_X|K=WG zfSf}h+Q{ku-A$cLjKPf*8lDXCXA};qqylV1PJ z`6Z~J!2)Bwao@$lf#oWK1q%g_mF{`^_uKvr6`kC{ASQ9s$^sLtzfZ+35!H=8ixK?W z)U;7SO$2C0CEvepZ`uI!XRPMw=P#raY_@ca>%Cp~HD%s-T!)w81p9{gv@ZV>2sJ65 zsiv;fEq*%gb8QsuHDTQNIZAm1bl_YuV1T$c>7#BP2mbe*P9=T<#?<(n6#mzO@|bYz zet=2zeIOcxuN9TAbL0Lmh}W5-$|hZ4(cqgw8wG54Z;OyL${(-&Z~wL$1RvQ$BT(AU z{~B-n&`R}8gu`5W9Afab%~scynf0RocPf8(*QTFG_?g$}7M)XqIF5Rb!t%u`e?0ZL zkRw1hn1ndUxnXl~AxsLNgO?+vEPQ--JjOeiXQ-nnKjegHTO zCd&=m69bGa7awr@uQhM7UtB@83o-Qx@vV7L3dG+0wf4usHaiVduebnv3uwjfyua}n z7RUbgY5fKHRtrqvYWiv8-mBZ+8tvFqKs=JBuSAuXDZ#=QikN;QWFVC0U&cpJuGjt} zU5Br^={`5&F=DB-&A@ND!f=%T)oG4o!1N!!=Oz9%d;pWzIKmJyju;w<3}xR?2v~`~ z^KWbZ?IJk$XzV1ROO{YS;@ZZY|MJ**-3m?e?}-K%F~I{CP4j0W6p9wTuN*m*Slwhg zu^zv$zluEgVtKx!vOON3+4lo4&s*I3mDHsc)KtwxUBW;%age}A zTLjlkZHXhnI)@+P{BviPFx^GxM2#d?7AcFxya}^9aNoY_&7~?r;LM;k(_e=_S=uqr z=7qX(r4#3=fAptQiMC9caM^%{d9wcR)im)P!Ygf$E#yK1^3n-vAM@U+hN^}vxTnl{ z>m5063Ph}umjjT08Iq$+RX#)(z=*jUF1Vfizb*1_PSv!;rcQ9Cc=rvNvMF^IN%xr0 zXTqT$Y(r6+jk=v@Nn20I7`d~2S;8LV1`N~Tnth5R3)t2t3wfx&w$&zBk+Qrs3NKD5 z^O*0wB(Aghe=)9TaBmw*nXs{c?e`C?PBGo*@%aR-L^bcZY8n%m*7eViAILWx;^aFg zZea$iozJ>$k-YGi!~N$#Rz^(oGdh;=GFsNE;iccp)I00FXi6|K_nvyGSJ=7-I->o6 zugyF{{9Qys^-M;cW@BW#%mBo=UI_%?w(iFu92Q=9@Y=bX`^6oUTm&yLO#%P&SA4OTk_4E*fj=IMWdSJp!-d3j8> zD?;?`Ul8^;JYi%~I^^8AzvZyGFtB+O1;_fJmBfa0s zQ$U0N(MbPxPYKgQbP&4MTnT)P{Uy&4wH=Q6zh z8La-?3B7abO>i(}+=qnD|N8Dcqz0dB5H(3CpG$Tu${nqAnfiRq`1RS}Pmt(i5-})9 zoEJ1wW@KtS=b|`r_SGdIU~%Lv@JmF3*k-9DB#p#X==!K1Nm3vTKT8z<*O{O#HqsoO zY(_$f`b4|vk8vV z6y5RauZ-HFdmIfs1~@4ho>_P!`1IMtuC|$O;IRu(h@Xj=-=ML*e%(@8$Lnj|jdtKY zG;-8G-7$rs8x%-vFoi~lsC``ZCn+3a^kPO`X~B#iqT%0%L#2Tu)^nGy8Ebh!8LA5# z_jXCTz6xeK$53Ay3I8X+@HlT&*Un8P#?f=f<*VgqdVBqc3wZ)KI{JQPG=TN^%3fn5_|xK&(pk-==R!RY1? z!T!&!M;(eD-u@J$TT8g6xb%cIKQu0VLZrC9jAjuM*l~Q$FRAGG_FoY9FBkvQSAune z{Z?wSO&S9O;_s*21MRM0sVn*m8a;5_#l2Uu z^&g~NstLY2_x}S3|6$8VKx~+JqpU9;bKq@FebX;jGQR{4Sjy9e0aDub>ZVHM2`7K` z0H3c4;WVx1mrL(6)90v<>ZsT_+El`5wl+bdIXuDT!3}5=m+_wk(F$4LsTT0wUg>T!m(%Ws2JM z4bAl%W(CCO<;L6NMDha{M!X0C`M}BCD99(gpQ*?t_#VDtKB}>bUiG){eqQTdBbOru zA*-&Y*i{CuDqg}5ZuU6;c8VTBmtGB_@DsXO1kjppCO;L9ql|X$Da6UMNCV_{8#x5) zIM}B%eoDya>96ndmn%n$MgpnJ`2kzQ*(T-BzNep)&0naYEad0YeaW}yIS>DumjO&J zT;Sg^<*y442;Y84g1M)0#pa-?Ar(kOykodj{$Nr$*zL~mM$*WLcNUc11OtWTay`pJ zYEP*0V>+hmhwM0!vEQ_BUS{eFz+yB|PGuVCPJXbW=Y$Vw;d^ADM}^Ci)t+>5|EXgG zZ_kS4@gD574P@|a<~UT1doC7uP9P7OSpy$%%^hY9Zsb}$x#~xt=2bN;!#10wx)t3s z-h*fNr&y6j0o!$iLcGFi{Q?mMpLpiKTSiLtGbr{OU(Bmpsnwc9H-!_OgJxbfxKLvk7=3s$DF~_x$lB6yMBFqkR!lE^T)_qj|CiAI&gP zIfd>+1g0%Cr!Gf5n&`k~)(>3~+J!8LZh97(a;9$MUG>bf1CvM10tXQf7E!hdwJZ#65n^`ddwMOs=_Z^LR0_cn^b5Qn$2a0i?nHVBq4-3Sv zujdKH$sRNd_b%y85!o0=d4TSzrPp*v4y6Jl<)iOg$!KBdcc=4I0zP_#sLti3WhX>R6+Uy+!g#Li0HYSF|-mh8aL;kJ7e zRjcGfpo0mPRE|=+bv)aiAK}bCQl6CJ-YS^tq&Q`CNO?m{LYxUn9h7)t7|b?BK!kuJ zzTvJkf7p-LM#+?S^*N2&=<>i2UWW%f4{zBe?Uqi+z)A85su}@eS~s8)hgdPN9~n1> zs{}XY7I&H|ll&Tk8yiOS7P|cEDNsn(@BGNBgvrPMq44vg6xg6)8Ca<4R&$e-K6b03 zSYKrq2U++^5-cL@q6xVeKPS2rB97ecSQv3EF1%hd8%=SZRXjBPRXosDDKKlqvF0Cu z^2qUflj|Mg#m@s1#7qs8<~1M}v@;z5G;X?igg<9n7D<+Ei;oS<#pNZxKxo*w0Zi|4 z4L(M7J0nuLcC)s1DwNkkiFhM2H*IS>h(*z=;5zRS?Z@dhG%+%ap2q`5wGcYnPWZtN zQ7qLoSYX$^^+9_Y-Bf<;2(2Nq{)?x8i>#}0mm8g-9jvh)JU}A`jrCK*-me4hS+1Mx z`{nd~r`XQ&PSdA#$(uWhiu5c5gO-v`cwX=Rvi8JkO3||4$ql=xXQMZ5jpF-`tBbX; zgGP++XLaO%vJ>y~#M)!EhvbkXkKGB_E@#3nHTO!NZuu;$jtatFsU3VvutBp5F>jj$ zi`$jg!Uc{)xD-fY1eW2{N7=s#4@ZHjeI=oJ&_W-#hBCxa6n;{uh2lwynmur)z_j() zY^T_8Yk*h`+~!%2sx3U&fE+w7v~0vuA`f;VDc5%c6Q0Qb6S=&nH;E$b*^QT&9hlU6 z|9U3#D4$MiE=Qrx0x_y8{)Rqce{;xC!)CpOmsWy3y#9eTAjh{&Vd5b@4s+?GsdhGO zjW}jJ!JbOYX-cwBHEuZAUxlM#*=Wx^<|Apejcmg4@rD-Yj`?jrdp}9b zc*0mE)X-kTugvKs9T~DLt$Kz7J1*Q@)L~fDj?FK|)>=48ZmMjRMvhXgR=LvS6NoqyGK z(OsKcE9!f zcYDm;YY9N8rSOozn7Qq!+b44^cg-}Jo=X)Lvgjee=p2`D~4QlRzR@ zpy{$ERyFpBy|9=K8u+t-&~kXUA#&*(x-^6vkB!1=`11PyJ3HqiH|sWT)uLK5<-=QXDfU70CcWdJI~V z&|XD6dy_1NfHDk^!_Hd>;8Z1%^Vtz39>1lBN~=EI`H^ki0W0o^19!?m+HR+Pr9oWw zE+8cme(S1*CKY*_mi}e$h$iktt&<;8*X=P!x1S;WRpD;vq z!{1#ESoM>=kVaku;Fd^H!~&QyuKtN28U>(|E|~qkOU1iBsTI48yuV_6qV9# zZqnX0?z~$79uv6PDvK?R2=MvLp8DW7Hy5$^^|o}Le2EH`%n^L@C_YYm3_J*_qXBcO zRHn%!PYqepe(@fZDh~-UFVeM>N{xj88Z+;Xs?zn2uF9(dp1(SE7;&vBjmPM$bTK=F z2v?&y&-wnMPHbZ-aNVS0vJxz?!*t?NT0U8BR0v5eqm^D5i1z-JLRgp05L1Re9#tyv z6zGHRHo9&dEXfY@CJR8?_A^u{8I<}Is1yXZH=2ScO&uHCPVnF9D0^XiHR?dM>#?v} zPS+gi&ZvQ8y;PJ(ePuSSzV=X!-IzC`yu$Wci+sZHx#Ok_aB4=(7I9#{zlH}rqlKPR z>R3+64s*n2HwdG*Hk%mtV=9RQP7q~M+|=(XgLY(-1T!+!*sD=~Ub~ZZh%Rk5S2pgV z8ix^s9&TAPWu`y^7idH9=+oiSi9R`9UzT#dap!9x_ubtOXx=sOIp=tf*10(RoQJc_ zYF4Mme6@P0lcs!1pQ{@^8z+z<@-@i<+!vwN@-MYCSYYz^$eOAyD?QpI)2irnf`|6a zMcq(9>Er8&RE@m5lx2VGZyEESq^IfX5&kAgwc9>R0U=UnnRJ3TaDqL;%>`YLD30vk z68W-0j)-^=YgVyz^K()fG7zzj6N=P{PXD~Yd$1O&QZVr=!mFQZ8PY`uky5Cpr6W`4 z1ZA+Q^6)_xQg&GcQZ6EuumvEY4`Lq-a*p2+%1)CP2=)L^YV^2bKH=-x3burh>q3YU zTX%ouY~CIAw4FO~GdafX)=ln8vTCm5ObYBy6d=E=mvbENMq^jPI(!q97o8ag4=BY4 zCRHDdH7Jc_O{6c_$}u7>GL3zf>s@5PlJzDn#gV~pwPBm%?pE6pJ1lq_fOmKFZmCb# zC8_x36qw7-ROnD}we?vU2}KY~Ig&FkU}+dmMuES?wxa}2-x!o{>zQy}>^@{?!Zo)rw| zSJITs0NDbrmPYut`v&6wG;T=ClG5t{$ftD#>CXN%lwxlsadY6uY+Tdg!LG`Iy&%`{ z<(+LqlpxiwY$t2h#DnPr`p)j}Pf zil7eXWgPNMUAUupX=@W(XYwxl5tQU`?S+A@J)?MI!E3=4bABX0Q@=;|No%*XKiSag zDM{jeh)TbD+fBVyZv@BhVn@sQt18&g#!r^EXHxNVh$20yCTXv7qVq^)XDynH2!v!m zSUCa_GM2y0_5#IwXTC(!eh#_UhU`yrjX`hU759CJwyo-aj}PCw3K5*xo9yN$L2omK zyPx-y&t&6Bfv&eGcnw#^dDsEUD>tigF%azCGUoWD;Da~NpXZPJ0W{FUOWS^T{+SlZ zd?YG;!XvsIks~M}$K9N(Le55mlXVSVE1tWNBrqLS!1xcv#^8r%)p-pl8*FRQ=^QUr zPpeNpljIfrDI2T}NEkDVv~b5PhEy*~axRpY0~$;wYz4`%z!@#5L?G+|mD>{1l2c!p{rL>Tfktf?Qud{1pU*5Hue~}=!&7ZC$ z3!c45Wd$-Z>m-dBVOh0zV64t0w5o|<2G_zNDu^de)f`S(HNJ<>q-Pk5?rueWbN&hP z?lfJi9q+kiIMOe!X+k_;UJKy@$D0q6fSbOgNMQ=bHr|K*+C9*~V|TEy|D^Hq5`5`g*_Q zWe8V38f_={Nr+TNNc$YG5#``{?PX6$C zY?G8Z`|i=n&bpLNLFnd|koDvpS72hJzzkR0R%+zc^){D+?MI}BR&gWTNxDCFL>fu(G& z3QvdbFCexfKg1YHFj>xOnc#a0be3vW%n$uGQ-Inpofq#$^l#Ubln})4pd*a{?Q>qf zt*Zi!R{bPi5xc=Iq$=6`5Ui_p>Zv_(5_C0-+vg9nER7O7_Xh0VocK_4^L$!Y#uR&$ zz9yxDeKzrU5{`zls?j}E_Y##CK*@llju0#C1$TkRv9_ z*WBT(0&=hZt4h(~BrbU1Ug9Wi8X$RcHz zwji3TVr(%~WNymRLo$L}pm5l@^o@&Ja);w`!8W|wo+Gg!__m&#nb1{563UF=`&GoE z^!o`$+{sjOGhwfb&`-))5}MP9liPA{5G@8F>}&Cln2->q&HivnHPYVuMXOv9S=(6+ zRHh99k4*^c+gB9hBauMjLSzqnoOC&8pGYx@s4B0x=$<6gq2A-fgeH4k#Ra?J@zV8b z37~qRDCJ;mCO^A(NEC(!9sPcv*ZiQNy;M&VPXasX%B_F9lHaGRP#BhX5ID>6&KS>} zVL|j=gVR*rTW7^C>B*f>h;|$j-bHGbQ6dZ_b+WpYO^IS;{wxt$^|)wvDEWZNwt734 z-er=URug(PDn^S8l0vKH7#F6*CU@{o=MCyZZaS_!9_@?gtTwhE3@}U;g~Mv-^H#qklQv?e(ROKX49%f!VQbjm=k>5M|J_fTnFR3LPk=P(!JoRXpCSDmA0h+!4D9@pYak0qzNORThZt zOEk6^6qUION#bGx4<7#WSE35rv!^rVHwpZcGsnxw%+*cZc{GzHNMT z(5PV}WuR~-`qt&h;_l60kev)OlD#R$uqv9N(MB9^-7+(LQ+@JbwB9FvBMki+T5B## zF`HF|pC
JGFuDI4!u;JiGCXQh-O0H!ddrY`7a4GuEW~Y7W@Ed zd(>pW*dDFV8c7Ap4}+#JwHH!iKK0eM;QFrWS+aPcF!* z!G1TEG&cppPDe#NTVi}$zwGlsEu|V_^imPH-%wCIieU(-Y&tI~4xR&z8u&43v(Jv_ z^EW95H+IB}*BIUDPn!I z!ig-r{x0aAoaN*v^s3JZIx{)60dtN{J`Q9uAq-m(WjqGF#FWWeSbq zf!+xUSU&_`R*R&7@riZoszN=CF`Vo^uXq*xvCDPNeI<6)pq=&C9&fq_Ta^wf>}*4s zVs^}@LS`|9^pKERD-0bB>$n+44|#tRTIf|~4{(7o#%}2sx$AgbUxj}MCoDL6^3r}z zLx^QG|79>&uXu{j2on;uztmNs8)Oo40pMj$KCn!Xnw=R_nWjdN4Q{KtjmIyxdD~BX z(+&x7u{M2RO$n~s+_c+gcS&d>fP!?(`Ayw4?LCLn#;E=Eu?5KDz@HlfLh1!c#$~C$ zCXnmpwXq;u!JVo?{vL@L_8n77>u44V(xN%|6BM(pmppWuZ6~=PQ^Q5lLgRr=%}R`Q zj+l!q;*%2GyM=4T&|K~?yH%og;kf2jH;87(tKs6sR__rHO7{}6ZNy_IJon;v*)CpN zt9s^vB)}W@^XiiYj2mJ$i2B981BtHAJ?im9wKzLL0&%m(Oshlh7W+-qSq&8k(nFQ!;63`mkr#yB$^9wQ4{$$F^9Z#y?WGG2A-F(+FPy|U^ffl14+5=XbJN1 zD{HdGFYC};?Y~mC=ITxGxwuJ_i0>A#_8Vw`eF|v+Wt7_Hoy)S_d zeluJIqg57kUp!wKzx2<6$mGBteqZ%9E1zBydvn}td5ihVFwm9CIFxfO)M?ENASm*q z^FM-GLpPozMDrC^HW4h|@JqtMAGIc32TR3%N?FXSK(_ip{=_(|8PJ!CH~_P3x7%rn zO_Me=x(ELD!iO~`zl-pZ>8*+OVrmZP&CaUTstI4mhW7oXgd_>h{Fr&U;CDFM-d0s( zgEE$FBQ<>)lv)LAG1C%G3TYc{8>v*2JM1+A&93}z-O^4=VjPcX2Bmt6;FQsl6Q!w+ z*T93Taj}`BlEl8Xu{$n6iE-0x4zwp|O0g;875FI)Y4IPM;W13(DuZEQKuICg!`v<& za0wfEogjzdD#_d6J(wM}Yt6<6qQOP>=(G@koaPn>PETQ790;Gqf6Nh&8rNiUbI1B^ zWbm5D`PAwt3{T}YnnEXtZTo7fVwBT_ z1c45hrxsZ}jKL{pdPHB|7of4reNneiJEnI}EtU7~eyknK z?JP*!vy~As#@hY<8}FfRH?CwF-Zxa)L@c_j*jxOrMg9-O0$P1+?8PF}yRE0=Y6PPA zzErAyc~f8uUJ-%77p384>w;@loqdiYYT=Gsyt2&Rz5@iYwSpx5Y8Z{U)BpYWp3eF^ zi2pRZIrH_=g^rS5h&g4jPA6e%PT0E(%JyJnGJ6W}Gk3pdKqOB05 zT_wOjUwK{JZ@425=(No`IbBQFjTiank{>cXXYY)2hhp$V<&m+_TCof{#br^>qBfMQ zv2ouk(c&7&&Bevdnv3W6c@|@g?-kE=e{}`#!Q-8}FCxL$bb^-Yb^57vLW+p;PBW{) z{fn-5x=}ZhJH*o5b;L~fLq*V6-%7mGqH8kA-Z!H_@4-R+Rx8jv20mZF1bBr!CLV zdjm~JdT5Vc4a8TUFWOkv+SrpH`xU|{EW;Bv3^?-&FkZ*LX>-WZQl(e0t>$OoUTuSZBYv_y50#bylpzB3NjH8an7L_ihj}%= z4`&4bq19wzkE47lR$%;s+em7g0K(6{6gEwn>b%+ca;oO=LncG_{U?{_=*5XR!?I`# z&tY4{9|@q)Ig{If9^gm&&b$BJ$jY0Hd!Z2&z1$DSdA2L3+K2#Zj#l?@^gt~L3?Xue zQa6Bxbl>YjS5R%AtJ%Bzz;5A-P0Xwpe~#E&s*h=w?GgQBR9onpcr7v6aRC;+96h6W zLkK27datJ|mx(t(A8!OYqurE@aa*QL&r#$oTC6CwDsZtXPjL=oI&7a7P#eDB=#BfV zWZ}8^*dR-oew;2r9^=2ukx0pQ#nzQcAN;;`B|qMDSNd7S8w(mj0_apI)Fr1x^$H=5 zYE}kh2@8;~^@#&eLg}&}V2jbOSZ1}MmFOC33=V@n$Y_C|!VdF#>Gq{ekSxJpB<+T? z_Pyg^1P`81w$S^=x(oQSGQylvactm-3FId)owRUNt1_9BHA8!b8flx9?>f86Inh?r zY&!~i!_vJE9|XQ8;@9jL;G@1W3OR0G{_?_l>lu}?HvKR=<*O}z4cXSB+^2S*?7cOt z|5$;MSw?9J!?cAA2I-CVXiWt1|7<|vlgJ149&B~N12N8IOzLKV5ATs%`7#qXWhxbK zhz+Y^x;NU{OeHVMV9+P)a=UB=(!H)VKL)2R>K6gETwf1Lmlx1?TdKjnl%!0gcf$B~ z`%UyYlmqQ7kvfFE2b3S|FOu7WNDpUV0%~`0)x!o)qnZe!8M`^VmCzH^IMtAmM`bDy z86#JqF(rRpQ=`dtVQ*vzYXENpx(<;=Qe}2#aq6YY;~O4p?r z*2VqqS-2nP)9wNG*M&};dDI%W{l)?#N)F!+{C@X*xK8wMG2NP=prW|`K62^eO-aI` zeVT*b?0i+tho3-Kl{y+Hd&898)v=PWE6cb8ricv(N-tvCo`H+>s3H^OQAUy|1+Jun_%;(@@@+>?3JQFYwuG z*(1u%dWp=J)a^{aTQporH2hDx{X3j>9tsALXYFX9CT(dW`|I9Dp`O8jP?o_{8n{mx z48zzKZIs5hjU@QAS3kk70z#*Cz;}8hYVSw3@)+8*vjC@s9-En2$Yl)Pwg&u3q(x!z z=a$hnh!&6Cupu}tKG#j369O7a@YmX~Dtl9`#VQB0LMpk%ev#p8AN2W1SR1IWM!JWj z6r_T`di#*Lce4?3BYIX~Q}B%jSRGsI{drnIt z5FJL>fG+|{hWgHRxb_%?K504oO-Ei>ju1$cN`spJ@Gcclq5X=?KX$!3U3ZVXM^b6@ z{dt?$gr!l)bRz+~kx2yz>LAVuy$)2!yhIrvkX`^fP1}O%G=7SG*J9e1tsK=kKdvds znh->hgd|m7WSP5Q#W~?m0A40SS+Z=&Rmxdr)8AGwU)1qj2FXS~75-)K%6-qN|7wwY zvCQwbhj!P501?ve*xGw*p<;i0Ng2U*q%)&442Wb&u4&R*%bP4^6EErAEWZg|arX03CRCIygxa505zQys?K(GCU_=3wx zSM=_iY6!N0Ix=HLi+58txmR&M^YIrOiu4Y|ool@OS5f=cBPo&ML5&}Nl{VjS*nlUjOD1QCe=wcmKX|E&z zYFwRNgfqTxS1vdj1*Tp$I(H`Lh0GYnnS1NhjNSoWNwDvl6#a!L;*xz= zblssBp2vPHdwoqNdmZKwVz?E;Ey;oT~g`p_$7E_9pIKII`{*+~9n z-{}-z>x6>KyTPVBN^vLOxo!KEoh04Yt9hs7)t(h|liLZV@}r}S>H`V=qQ=7g*h`!K zrUt^4?Lo?Bhe%|m7K_>ZRi2G2z3WDm9#OXDSU_u^D8}h=BO8yN_>X?-KNX8L$6%Y) zI-qfMQ9HJwte5dhlxh>52q07(*yLv44+%&}H|K(Lbb1Ua1~JPrYWCwyk3%z)?oS9E z5o5Hbw@$@16-W19#+{9}xyHFu)-4oOAaxZ}E`s>ft+GEn&#Q}LpQ6oK(riU%oY}1S zJ1m9g?XM5(Hv;`bk8wag*UZkJ^ogC9(i7Usbgjc5P^L2z9A}}_gZ;*XD*3G+*7>s7 zU*VgZ&u!iW4CGr#$2(=n!IkZIftXKTXoe!oJnhWg8x)G2s?0*w<40}6yMU^^1I|;c zEPTCPIl)a9gy?mGOVSA$Etgf6$r4Y9N3pnH?< z?gNak0CUXVtcYc{^4m}(};gq%8NnIpAsmo(gs z>9*zVAeq_E3$0=L$NjrY1N$G|9~cUq{-HSN9xk{T50ng-Ja}iiJn^J%fgB0O>a?9N zLamb8B*pS>W$I%BZL4Z=`&XDQpij$tE4_IQ!1wk*OoG*9rBBSH5Gj4h9c-uL;#;&V za7yltyPIeLofeMv%OD$D*u3{XpU0Lso5sgj3y|8DP&K&A%{frNLFu7iZhd!ZUKz$e zWP7fY(T-DAr-R|UGeLM1-P+4HE`^UK;=97s(MKN|1=U1+)GDV~9b2cfH<3#^C5c@$#UBY1N{$%fqW4DXR>O=bN79DI%4W_ z`+^g6Gt^j;bnjf}K0ME_Eu_x`>l02k417##a|y9QMJi~uh6(|#n%ky#-~Ps=kxip4~e(t83|+HC!gZ*$^Rhh=zrZ& zR{GV^@S7iQ`wnsI+;M+BYU3aG<$;nwKLQNpu6o&J|LMj9wu5q+bd65~R9zFmRu>vi zL*$?#{H04Ob!X;L2Z6Um$A=hYx7tio;9q$&=xH=d{H3LIDwk9mqn8>Mi82`O757~9cLZjUs>;yGi1BA7skb(tF8ZbgK>C5@HV1l)JnK?>qmCz+hd?MKjwQ*M(m$!YA#$rq@Qg_R@!cV=yx# z$3aI$)jL!90YPApXNAb6Wx`~*JxSA;3k>Mx@FU0bkWw(6S>W8jLM{84oN#PvFfG8K zZHZ2~cGYt|MR)dB(P8jn4|L&`bv}_;KWux*%Bl z`RyxS=sQfJ6Yjf|RJClC>FR@{%B$Nuq^xU>n2(%j#qN;}Ml<3prlhamNPXcyawf0X z_x5C#ab_QvkE3jnDC@Kdf6HE*5Pdz-N~fb5CaLW_K3*R<>sC>=Q@G{%Z2#D&33KgC1t6Lkb8@}C3n%Q3%Xl=p$ zXkd#kVo~gcYn0Y5wZGQBBd2fRd=9IIz4}aRHc4mIWKm!)LiTN*O4zi)8cSb* zsT)@%Ki9_j)(48jQ_>c^4y{$%Dy*xQ8ehKYbJFz=dM0+9FX4;JBo-hArAF`WjqICo zW>CBNK6LU%%|eQv#mUxoLRieIVr!1u#8$T}gaSuZkCPKg>?@@@wVs@Z?bSS0*AT`` zhbSreg^KVCy#XunFAtW~^P)*4rWhu*nGa5^^`q9}a7SkmMpJ5~+eZ(zJr~=A>Z>wY z_6CPKh7r%9B6y^WY9@<30xYe2geeT|Nz3}3FK0T=DoWo*<#u<~EU$Hsz?GxpKk zwRD}`XR+-IwvC+i`IW82eko1qp%Zlj78^_S+iV{D*M*4qlmHA#+SNa;jM5MhI3su z7Da;+ClgVPmp0rQ?~of%74U1C^k1AJmY(zPh>a{TZMqbsA8;FQQ)>Z`$XU9QT?cQ~ zquRnR_n(ay@1yi_c)z+O+gi^w>^Z+S!;mW6hE$PNHd;_)>Hh>C}(h?i4!1iEdzy;y(B0!=aE7Y%8H4V1}Ia z7Wc?P3JPr+Q&O(iEEj33k<;C2*Ph~pq;0FKcp^I7m=|3Qo!F_zq$$kprtOOO(6NiV zwe}eM0|V<(tee2;Apq;jy$KMPBJ5E z)>XKMmUK>Cz5u;)_metGnaoK1e>R%(Dh zng@5)Duo%RpI?SM`ss9&{xZw0)8`_Nt6?<_FO>{1-qg>Ggf8oyCr!nB>S>{iCAY!G zn^J#ivlYd~30LkER$rm^qXWhM@2UD|gX4|n6s?Nc+%ZU;cWr}Xn&aO0p{liaFB$mj zGU9g2e8^*oeV$Y~@u=8s+&VIeSbo%j`;lYlz*_{$>O@?|>ueRvZ4T3C{lqs=vZD34 z;j-YEl6>g2)6FK9Lo@iC=h~%6pQyzh3$RP)VcpXM51!xMV;Iyu`2Ndkv(Bn=8e5$C z^Cb!NXPs=W&aRZEM=h?mnF) zY+=)V3j6t6=h^bYUPPAQUFlEz-F|j%#V}6Q`E)92fZgSwsP5;`hze)*=EYf54QChR z)HKPrxAmKvHaUz05zXRKYp<>u*-#Kxy3E&P`Lvxwr*l%Qt?Am!?Q@v%f^I^#uTh)@ zYVx^5g1K%X@j;5OSM`@BWh-sE;LM!DZI&y7w z6IE5ZxzgBk12%UTB4%Z1s(dDDiJNxZJQ!~KJ|?J732V<;_g5;Rd+YHlseFC?voj%M z;Dr3tpXzy4v!8pE7buu)g#?ypN9GcPOtd+<|D_L#CH@V&FJ3Vr+4Y(sF72$EjMS@_ zk$mV%^2@b*$DaiN+>mHWUViE7Ytj&aSUfw({WgTWWK3D=_4v_@ikYn3l!{t8~;uz-c z)tk-T&WAJOb|Y!E-ZAG~q+ggH)?1YwlEsDVToT?AYU|lJ@L_G|p;+5NGnq9H)(w1W zFJFtwzWieFkkmf@D1VK9kQVRLR*iVME4S_-Eo!mZbNsx#s@N?rb$))HU&EKs(?`s{n}|xB<>}2Wf5QAk zP5NebegG*EFjmYVcdSbvaBI5XFHO-Nv%bX0T9UJ&`q{yp$ZmZ9rI=5$U%cI`@tT(} zpKuJ|^%tme*68o%wx}m`Ubg7WJQCko<2c37+L&YeA!|`yEzZ~}V76-EYN&|*wdta) z_`K2n1()$;rmYk2#sBy`^dAt%VKLC-6jrY!& zyUD8U&YM>aieGsXvdw;?#M2*HqM~80+!wn$I9ZHjgA_m6DRd$8_I^Da*J>lP5&DSj z(Gt5Ok1C(hEg)(1$V-|J3rkZ$m_l1i$D3Ltrxc%cW~+Y4o|!3=j}t9cEh;xZ;cKqN z{m4SdUu4JTj5MMvhA1ddm_12fY-&O%qGv_){61lEj01Gt=_87>q ztBt)8RvjCV!CAV$Vq*t2X=ryfZDIJvm{^IvqgU<-R!vwC%&RK0^!e3PwD}JjUW-Es zlI!Q`=jTNAW$`uH1nwBg;S6u`o-fKeJR7?c-o7oTU{h9#l$vB*-BO@xG2h5wze@i} zg0Xn+EPK_lrv9S#tb?j|e5Ui%LdQ%f2sy4H#h-X`QT;WpIF-k`{esY;X=mYD?-F|) z^JT~)->?pJXUJK!47FI0KFNq?#K86#e`Gi)f=AGYY;^q+u}zQ&f-9PUDB z&er6;h4u(J7$JZK+&l6?<+<6z4{gf`0H5vAc{`BY*jQw3x<8$lG)|e3Pm567YP(fWeeGhf!zoctrw|cgy1kp94cUY2*z|&sqx*fo$mZwM%2A~5 zEDKq${cnHVadN9=?uL49xsX&fRgb=A(=KlG9j&G~*>>|K?n2UXgC)}Bz@FIDerL6y zEG9L(({&E9dJ-04sZB{5=~lxPnF8^sq}Tk(XL%k3)ET=Ct znA>e2tHzjHByGVq)wI~K!-07kY_f}mhW5e05`2ecEJD94sV2+XJahRaGjl0wsDhoK zzi?rgo8vFx1(Xu4#ThSM-$NFB!qbt|nVu>#`Dx6x#vK2wGtA~trZU>^(DFJ$c@;9s zBu>oA)Nng~&2F_a!>`wQb!k@jG;>DLke96%hZGl~lOz}}Bbg|I zf$mkA%uYk62te^5QP-P4PGF*B(}=1;K1A7km1_}U)D$8M-NPO<76)=K@2xHrdvr2% zG0>I-!`>ZuSywRQw5|9?N zD7FtPmemM6qg{`BEv)uH7B4^4?9soXmfJYqKQYDMo1Y>R5?2^xOOsZdGZtXWzA@hs zWsx>HY<^jzt#Pi4S4(sxXx2yZc##lyXXMI&e*(Dx<2EFu|3tl>Q$pWu*PN zB_O$CavPX5-X|^?YZ#AI@G6y(b+D(KwPr2_j24_$pr5$CRSD%f9X662@?kK{^EvrA zATGIHb|NIRxsW+vqgJ7ZHVX8kvOYV;=cw1cHYg&i!4I{n9O`>my4IUkw5{5~BgkjrlyR-9Fkm22LthqyMXk%XsRryJoF6aBys^IC7O_f;dy` zpvO*LBdWER2-V^=gb%t}j#`ln5G#A7w^D?(S`Cm&c4TV528H{<{ck|KX@u7dIEkmb zsCP1++D{rcWp9+4OawU!6@)3X1UyNuK4s}GJt?_e`RW-rCD1YN{MnV>7VZsBIUM?- zo|qLcoYJLDelK$9K$&B1@65Fu?ifrt#8mL0ctT{q@2DG2+u1x|^c8}= zpo4(&HoH3p{Vr_X(&leF+H1~j44N+0g(WOuW>8)2}+Me;onj6P_HPn*l z#O6j7K5c6g>sBT4mU4b~ij~+%3Rzhr~TR5O>TpvBm^vC1L#)xHJ>wwj4?zG2i83qQIOK9x-nFj%f8%0{mQqQaA z>gQl3(kk(US{W&+cY5p@)o9~Y_MMrHlU3c)`zi+qQbk~} zLP?Oi40f3t?8*~18 zJxR3q7LG)bKh8!8&$gpU7o@q>kNtGZ23L`gCy%)>AAToWDA3OJFbZ#0(1_DmavhkO z%d%L1L``>HA7Q&U+pj9elWC5KP@Y6RlgCZNBGX@hQmoVwQ{`R?E-G4BFew{4*EM7BZ~nC$dTKBS2;-KZhj zq%~82_8C}a;hi#BWIr=JWS%)4R68wC8uB=DHK&ZzpW!^T!A!S_{N){cZ6)k_#2O?&;9UJf3ED^ee1$teq(&- z;;&ocfPaa$^O!P1>$~H&b#o#;i7+Xg+g=WA`1$L>B#3tC4(pA>EZ=Ovf#MQG5komi zrCE&;RM(PvPS)@F&We5KxvpO)8N$m=pqA{R8Q<>SoOEP;1+I{C7R@vcS1|b`a~4j# z5&%_LuT}z;5Xc_;e$JutOyhenEWS#Z#Z>F~rqj4wPfn?x1KBl4(Uotg`pXbC_xC z<+}IkRSSZ9hXXJDv1AACh|zDd2k{Ukh~o^i^*-$Jxl3~=gYDa^{c|yq52r4=ldh&} z736?_u|#U9xVMLxEV`F{9|pL{AJ-63fz$@m%l5XBq_ap_y%zDI^5f2oo%r?ZGfb3v_K=G|2$42ejOkjz5!Jvzkv5PuQw1`dayH0R^_&r_`R@Hy^TQ>r zE&S9Ee|s!6$%mz|ZoCk8D(MD1UkmF`&+P8t%kHErpemM3u~gI4w(t8d$tuBnyig|l zO|UQcKFJ4`r&w$XvPVFJDZsOYoU|BZPYin6jJW@J)Nf1hbuA=yK;&bytpQ$drqk?o zO(Mw7tjBwimAp$Sxbxp#O;Q;ymSAyk?5C2Nf2`}D3;gGY`rV&iPPR&Y_d`FNq95<( z&;OD{p6sE;ftugE7(jK~KTd@F?cMx&Ti<;sc?f!sbPYRW)V_OLKlOh<-fSrB(y&A8 z?1*2#-T`FeG3DRjK>+5zemyZov2K)N=}(0g{#>-bd|+aOsN({kr@=RoyT5$nr*~ik z>tSxP@E@7dAD{c@KXUy7cna@9kA@S!@mR11aqq`a1vi!v7w!AK&Qz$A`@QJ`!I{7yRZ9A@hv7?TKM} zqrme`0Qi3$um79`vG|fZ&f^^6o6!Gpxxe(6*Rx3VR_Id3UYz;8t*j1*EhqE9w}9qv zxBL$;94-bXt7WeK(C?Y76gZO7{_Xqo41~XGXrosb|J(cd+53oscml=# z#QpDX=D!~4kDri46d8@occuJX0r&6LwjMlTZa|sX@4e_4X7Ha`IS*RCv(SIL4FCC# z5jc$Y%A1UTcQZfz3HOFQ;AYg@#Z7m^?9@+#PB!%81rg;<^ag%2XAi$*hX#(d!WNc(H0`via=$_u)ZE$h-d?ax(5=YfP4N^8A z-ztkd3PqY0>u91)rF&`D7VF%K1!n5Su_;4H!Q`%{waZJP>5#e(qX^Oj(ZO@O5+mla z;+4sHbwCzXvbQSeqxJBs_!b?Xv!5Rhr5PiZgD+oTi(h zd4%XxHY0FcF8^L1(c(1V{E`FEs@kPL#L&CBVa3-ow}4RWEIbB!sU5V+ZkL7iyAXoH zJPqDd%(}~>DIEGgvk9a}+$NvsBu7j?AFv6tkuJr9B$M~%RhI4rM2K&_=nnEHgZ{&3 zemTXePKMy&_!8@ay^ru*f{tQxqV1f9MP94`jKN5RMw+YH3Web4m93q~Y!2me)(QKv z$5gWm2y{2J~k6>wT!@()8{non}2SkH{p=B8(+j-t_tBTcsCUa*LJ6K@>W-}qIvC?_u1~ubY1YJ*mf+6S0+OU|A{+(8fER; zzGJY|nh^Xds1j4e^#V$A@!Pgj95}_e^AOK5MCHU7)f*=d8MFZa@B_maHt$q+s@N zSZT?u`B-4@d@nR$QnYu8uH1SYWv;Zx+t)P<`k_K8uWJR4vl+}wLNBGW5ovuC9XUY+ z7GOLjljIkC`$FwJ-c1xe9fp@ZS-f!5=W-9oOdSh-z;cPss^CL*jFUe)A`zp>V2_eR>%TPgq>=&Br{j58}x<>p;Yr*g2%T=4Fy#xia}!I-PRKYoedl zy83C$HC?YP=mNw7<}|%Z;mCpuxQbZ7tgu0iU&ayNY7oZZMvM!yP*;{3x4JD-c$lOB z;W&60P-(gk%51s!e<#fO!hNVi{r zP&j?{gw&JA?MbQmCT$=S*902|KM?|IyjJ+CUFX+Gy_;d z^qy(z=Pi}EQJ2p-R2nj+(_yd;$N(YQ%OW5h^IBs?=X9%{Uu+q*#tCAfYe!xou-;xP ztO!Xs*n_TB&Ee66$16Z3;^Qb@_}piz(S@~LO z1)cguJu#xZ{H!;0b9gb)kFD-eG0Co~na~rp~i>i9&PK;?+6~*1=P)bH#!=JG0qKqoLI$jrG%(WM5TLrd>i-@TuFOjP|$)ytDB&rR&l zNJcvJzYwB!`;n2Yx$Y^_UNIwWKl1(%2iv_`fsth08FR|Hu~d`313S6B1ts)5$wmVm zr5sN8?>UT35IU3whjLmsX)MBRZBcoUFVPE#Svu7LPE4eW5LKK}omhnz_AL6Hr4k_} zmux~JyT=H4WaeG;%G$aXl$^-GC@bbhGC4`+kHNi$v1cB*%G}QFoD8T(k=|{;f49m| zW`VB*feYA)&tAl*-zZJAJTgJUaVJfoho3D)8%FO8-P?P)0<*o@yZ6lmC}^ujK6e^^ zmDD$xcV$;9uj*UxE3Wq7?C?$Pwd@KSjCD!6lCl26xjpwx}E4_AGtax77?eeAKY2J}3KY5W5 zd!Jhb7>?uD4?f4khX{#^Jk^qy$@|IEn73PKzSLp8NGx^FcO0PHg448?1B86B61tdm zKxe1P&qtE{)zS4HV_XpQzE!lEp{j$gKZ(O+d}n$ z65FC(w(yd!C)vfojNT%?cNhgaUbYm;Fq6brQ~ch23nBQMPdFOEpa$P@ zn^;XKZ*rPU&78YT^MGR#%T}~=Sd7WuV2-Lk%A9ZdBqSR`%2CB$5C*=Aa@+l{! z#4hmLO#tf&bMpW)ewC)apsOmtRkK$fPs&X2y_;n22-~_a7zqIltIys!VA<<00Yu}| zm5s|_c&b|{qZzpp?eldM4 zSBRQ!dfDr69lffn(C|77AgoCzcnhVB2(RKJhUci3J$_We91qL=w>Vo8Pw z=h!D*pPF;^3!`u#gW0j(Rc9IILlW|7Hg+trvuR7686iu@0L8}fA=yi*`)!TdE|X<5 zpasm5CfVEuX*Cm^`Bv6D?~q7S+lwt5(PwDoDJOuQR$3zx3e1aw|2lLY({PZNGKz!h zDe&4xVO}~z7Mn8s{Hr?o#MK6l=S}&m)A{bxw2Rp-scN~9I$EC4?-vR`W_Z<1US)3 z#xlB*ZrHukX?LcGg;K7kRJ%Pc+DTuitvI(GtVvkqb5OHg;~7bQowHhr*oSp}{lWBN zMWsnE%V=m}+h}=HD!axUGE*9WF?(A_#J_CAa9z%V9m%{^kV$M&&4QAY<6IXPf9+DS zE{$udY89Oy;gBC18R2J=>r~GtpbAm=zPIxUGlwvdAkC^C3aMGrYCFe!!qin64rTMl zw?`nyi(tQi2mmX)DLHvnek^M6hO~8G+PJzB)=M|k;q#-U&geu-@>i*um24b6i>O-UckTJ|?86SNNnxJAMv1TF@$g=O?KtLn%}F`#X#L}Hm> z+eBxYDA92C^uu5S)~)-PMh^yv?h+hL=PBKB`lb7(t^KM>+r1LsM#fSrJ23guxOXM2 z(NH-RY@b;JzIE*be5XhmYk4X`Cy^L97C9sQZY1`mIjJ1NGUeHEQ1qmRS%!oFs5V}0 zwTIaZW}o66`@k5#(j1DC2VS!H1Jw4Wf>yQNCZ5<0LV*5aAS+KibskwObf1q=iFS~xIaxSy{>Wk9J@t$)jB2 z=)vEm5I81blv_Z(Y=awqf#*7yR*;e3rjoc&K6jQl_O8NmT>8my3B&#sj^!L@otuxC z8{z2tfo}obK<8u>#QJhH=2;47v{yvN!R;u=j-0!@CHtPM?toJiUkmo-JF8c>=$3sh zIYa)_2(^wh6C4eyFhhOZ;)WT9wR{-%t2AD>>GPI5R(>V2r)zjxUJxT9h@YxEi~s6Z zfBG**tc(j9ii>a9USw-IqciANysnH5HpDdTQN{Y>Vv7l#v ziVmbukDoxoRL#ZtNi0L12PH`%ac#K?B2cRhHjo~eESTwNKbk<1j|8$6)%4)WwqV)S z3w+JHCL-M`&t`OKyucrD28`;YO14u)?r<{4g^Onr(`zAy%kC;K1I!KIDu`^G4I%>7 zO|TWihehLe3eHSaa#x-3Lx8>>3Na+JaOue9Bk2qQkHXl;E`#N2HdFy_%nVE+idRQz zKb)|*x7_=wJWir)WC5yh%lJiIN)JL}0O8>nd+M8;ss*;Kq9We$RVRsc9*BSvk>LPl zo>J30j5L&p862OEoLeaf3p4-eLjNU}osox4Od(95yd37(AJPQY$l7-v0JN8ob;j1t zfrCh%3xVQBQs1?N2Ro4Y3LfUO0WjdMs8~R z+0x0UdwL6vnXf3##&R-sZ5SpsgoOMQ8z>k=3UTZh@22;nZy!k4^WDLWy~D(&6(AvN zm21(#CAu>vO8JnxC&qL_7;{xA!vcql*6g6W(R^(Ukb8KG+>TuM|2PL*^(Uu5L?AMP zokogLm?Reg8JF@v)-q>;ekwtI35jH~yA-!WnrKNOh9z<|d^UWsRwO(t%yk*v(IpTu z-cR#(aKVkob)eU9J(jz+ikUL5!xZSg{x+2Me+U2WYsVQEmKz-1K%Kk^{8G!9{5d5Y zGSYH7sh!T*s29<*w1N6&f5VZN`7P?EecJ-Hb~4=PLbMl}`yq-Jh99t4tY-2Ndd5!3F=ZyfwvF>gqK#X6hadvA8G9%XU&W37|!m-nWq`^Hs*Z##n}shj9H)!Xh*hA!EN^XEt}Az2(jYBn~o?nsF%Yjw%t z-YS$-6wQ5hj~y~iZb(NJv7wYOXqcZxlOrWjEyJ1j@&!s(l?CiXV*UVZjQ}X&XU)Lm zA6^$BHgYL9RSptw%33dKYfvOrys9*8ZULyj3rj%t4+50~9~+<`D2K%)4uAm((?PV# zw!QAB?hWLHZwHpubvWOXNrOadg>CD8_pUv|W2v7}F1*jB#j;(B4Zwh@kG*GQ!r)c zA4lRH0*0%{=0*}v-f4*~BPbLQRgrVGZ~74dqzcu_hdgdi+6whuYb(O}%t9qy28p4o zEDXbKRf-RHgRG#|V`BX0E$&9)r-*?chW}y`fG>s24+6KO{Z z-Zr55F;JO6`CbqZkd26eiw-3q#UzFs49aW_5QFV&c8Za>Z3izvUZF3i3($f&`!;rx zt$5Q53rLV50|;ak9`Uekkm{==YrYI5o8yUFeazc|=+X34iauoE&@?}^5t<mxx+;@qk_$32E27&(^M& z=+8oZ)D$VcS~u6GgW`tk)95xsmpMR2R`f~)v^Gjtyh(Oz=_=SZZ`Uj;;zIBLEZZ~lHso`@7vgeq=H0F39)&kfXVjBqm#2>^eWm;c0Vr^C3$QH z>xI@p!OS;0(|je8Qn`#Z!r`+GPRl-)tWFe$8aq}HT;~fqRcHv~&RFcE&HO4NOwfo( z&&>Emt{lZ*Oo!pIFTr@T+&_2EB@MEi#3f75y;yY=_=OScj9&zwxtHr1iOxL~BP>wN zdXw9ey10QN))(nKC|Af*6iQytyvGuT4TglXu|)$F-VecfznpQ&?Ttf7XWcVu7D`#mx|W{-;zZp88Pjg%tZs@6|-8-EshJy-3caiV^9XKtAdGLH&hGk&D>TfkZG#NNs1`1_)MTk zJ7mHD!P5k@0s{~)Oe^c9>jjsPE`)SIU)i|8aT%K;mCkn_19uIg8Q40Bf=I80a4(bI z-nMewqzxZNoPz)8)>lY*W5ul$sd#=?MokiRX%TjmHsLZHHV<;OUqe;EVcRi?lfp|; zh_EfwL%fogZ?3dphC6bq032RFTLIJ$TneVQb5dj~nrk0>nWoy=L_ zKXG_8*p2i`Oru>92dHrvFHH0p$9VCYEC_p{KhNvJrmbmCi{YMNHKuIzk$wXM^Hi%& zK@c!t&D@djZ1vKnmfjHub&BW~NPOqQ;E$FO7+-^QccMD&REq zIT4ok|Mtb}b$~%U$=;P^(G(2jg$-xal@{o@^(xLXxGFKA!Bb2R$ON=o(wm(SIp7oT zBb~31V(oFzpn^)2$w)BgTnkKxJtdH90!exbUWT&Ebx55e@tt z6t3Bkn)nd(wyJcid75N(sm{|1JK3bp@Xvl!jEB9=FOiL3YXeuGLK_F2^1I9I=OTs1 z7tjn`H!rMdJ-+UI&&GLaU;)ywYN%!q*)8{$l(=uQX3XI$DTf2iM>yM(z(OB@?Irr% zr&c#gUL!1L4d6R7TGtgN|1qj7G1Q6D+2S_h-bqIEHf4W-mp{Zvk0Z?U|6;1RzRK=v zOs5ox{2z&ejW7Z9P2xw5cLl^;+tHxtn=gOuHojF%qxd#2>6hU*AdA)n0nF9Sx3Qb~ z*;XYVF8C?!qz@v@9{jx^H*1w@3b;r>s7HGpXD1%+P7a-&*{&Ba92}I<;B7zlv!1dX$@>(THA} z2@(3m3g0>=OU#WD7XPGSo8@mI`(}*cO^cwHWd9tb{7Z|EfujFh(CM+WzxSrI;7v!0 zpjp203w~|!bx2|Ht3vFa|JIvEtHYa?j}-CyEyU>HNm%^VK3T!bzxAd?IN(jk%SV3r z#jeTMMgI4g{kX{g9bES^ZSoKB8E7F z?T;va+!+590EI&xt=)0pz31P+Q~%}`vcQVv_zwP(75eiQ>K(yC{QF>kF6qB-?1!`P z?^gVCXRLqt_l$jSlm0ax->(J?p8wa}e}7#5H6Guu1}WLU#^d|r@~`puel`9z9{&}$ z{%bt`H6A~NqCX^C{~C|~tHz@dfk}dxV)zO|FLJi=U~pZy;e<5a0kz<4)6qpc3YeB8 zp?7@g9)1YfNAK5@ZJ!ds=m&gL6dFBU} zq1AbOT{~crLR+9Cp0kX!#fJuCd{T4hpyO!_0GZSltZff)s^k$~_}YReK=V>dl_HT5 z2~BmbbFXdYJMH5UxTF`fK~Z6VtY`uhb2!p_;&GVh=4rSPzSw)pg`kU-=pKYG~#^uE7j{PxC_%|1-G5D1UT=>unPT@QMT z2Q*3aA?rKjEEhr4B}oK#eET|B6dJXSfIw~Ijz#d_Wh0qYoHCXt_G>%b2!$@Q`drh~ zMg+FUo>utmxQd#70FO~U6*ni#9j~i}-`y^X^s0&@1j_6vk8Q}O{6^}xb;UcVy zPPVqr0>DSF>B!ZL%z6R0N++>7;Yf$^i&g;r@|$NhNbY=rkP3LvFhfKhB-N$P%wKy0 zU8*Le0gbd+JzUv|R1dGrAPj?*d=Rrq|DDAvFA&3!ueri?ElN@z*p1M5>|)T?kwbVg zPSAFyS-Pn|GuSW${GC@zVc0ZY7wPRWl3vn)@p4<5DBU%^BMzFJHV9M;A&xwVh-oAM zwk#NdTA6qtty2ML;U?K`|6{e>Cz;a$s`2uT0=qWA-Hm))%{6xk10Tj1kj}ya7AOjU ze&s6D-e4Kk7Joqg))`q@}ApdHT28H8X_tt&Bs$TyiDm`7+o zV*pa-ST(cu4`={-8vDudzDhOs_?07RiKa3K911P&Mq-`t z(qPPxq3E(&J|J4BYt${9RI=W9s6%VNX*ek@V#_Z2=PaQKr%yiUWl3GyX>7R~`wNWH zat?Ic*3Ki>)OQVZxlGq^NKvAJWN9&;w$++xp}k{xW6vd)kfRTzLgyX3-M2O(2zGeH z(5(9N+hc(q!&L(~C*!$RLwSVcNcG-$O|xJY0fTd7f4s^+S^yf8{am`MxtLY+g3cyD zH8s>@$`6_HB;!;m_`mpOffi;T4gp2WKP5Y9((wAno0A zT_yv(+hHs_rcptPE?^4!MltYzULqV>WgRsmik__PCxg%cy#6rL6uFk=bVe2U zdG%1Y4(Dw%ilLo(Rd=}j;p4Y}=(tHSg}fsDPag9N)c`~CPa>DvTW^$H43Bf6M!5SX25_8My!y8)?P&8H|anA>?~-?4vO z`|B&)XWF|_S8#XPGqiUtAhb~9`&23q$7kx?)?PCovjz#&FXof-!b*EbDCr+Xjmw-Y z+Lx4fejJEqq0wyS_uLWeO9z9p3(UJ(_PAo)b!B+~xGd86<*s=vd8I@IBhUnB`D5BW=*J)&cFHTIMe5ei7#73~JxZP0) z`K|QYK%UErxyWR|hZ>Gvqz$6i+=(z5w)ufyItwaqddkG(@z0-$mn&njC*bumFLHJ2 z=RznTDi}2D;B!U(KmgkV%B5DABt12Mp%33kAut$)p#B1zc>sYwwoiHy+2w0C8{${Is3g>`$h5|92QXXyoonwGwWcn%8*b$%(7s zzD^6wiSHyT0O(ZZrFzd^CP}sU$thV<8EI3BA{Q9BA;%=?SrKL!Y8*%Fy9j)?Am9wA z)1LR*P)WL1);AYxr4%=k2ov0NkF(Vw)Xy5cBfz&`l6|6}7kaaFQE4J+>$RJuLetfL zNu2@V(T^=ieSoh?^|-g8X7T_5@M*6{8|PNxX=MoTEl4$NF+ZB{E*Je6!#U@x2%=F?LM7S`M9}&YF0@UxTmIC!Rz=vuC&SVW+eF5TF zVO2A4%#)c*9pI<8rRTVlf8$WV2&fRh(Ufqk6P`~N*-P~x=9yI%f?vl*U}Nffg#xJu z1eZSBR&!zfExu0rjp`+ht{j7zWa>3Zu49S0qcJF}+--cU9O51>gGKSj-H8(b>jT4|>^mfz1}A;Rpu)$|cqc+b;r zz!vk%)HuXzb}hT3`Fw~tt^B>{-X$|L4b9Tk*)+Er&e?c!&#|+;nM7c2N1*fyz-Q5< z>SFazME*0dNJJQU={x(KF3tlYDfLSXn;H2_{}PmvEk_Ey>#GL_(a$;{d{VTN0gkX6 zqF|piOBRgiG&eh)FatFOV=zi7OTz)Tl4{$|-%~*XWC&CD_H`}Pg7RU`i^f~`0>er( z6?WR+-N~Ea6$hT63RxrTLgMNPd9>RRP{Qzu|FYG zqxxnkLZRB%^Q>`LdFF^11jYk#4qxny6;}DYEfZhGRcaxCSo#<<)I7cN^00dsnFu13 zjB1?)2-9UQ?W}}08tWugg4f!@c-ej(A?nw4!S~#zYS+H53mxZfxA>8s4lsWqPBQ^C zdeMn)#~1UTZwA##A`8_}O`>Gepk8v~k^(V#aghfVXJK3G-rq%9R&G5ka$P^UC% z4tuj&q(9y;i4af4YqZc(GuRqcgwa_1;#g`yAm9l{_u#B8Pk#hBcS|R>pp%-<_P(`a znXRGqlSQoKV^*p6elU0UO#fGh`?h=C;c}$nrQKGY^3CS|`Q&>txD#dUJtGOrA2G4? zu8*#Zljnad4 zIs5q{t?Y!%{Vzrn8fnK&b(YnE$K={Pw=g`Q`-nNP;#^R_B@#<&ZqA#LBGddT{~Jk# z_&HKt9l&3Eh|>V`EE^eEdn{lARfHM6g4yzzmF&H(bP*C_AAgslFoszS{S3QC79sDg z6?7J+h)Ak=j|9D8c_O_sJNzbt9>-yMTHg8zEAK~*)uq%fhAMy&>#fTf6d`1G53SE0 z=|Gtf6g}6|W}0RmEIxWbp8qTYfAr1Ooafmw5g8CXk2rYLv&XC~A2l=y$k+wrAT7H~ zlkeTh$b96U&_sNGwVm>sH?IDLcvIB5yN5g;nieLQAr$O0GgxU&zH)o14f$Q4CDXYL zI)!W1h8O^Dw#pRvkBAfZ$z%0|I~Xwb2Fm>NaF;Ta`CcmTI4A=-Zgi3rCqs(j=uB!Y z!;E(tjHQozM91W>u1+c$-G)-KH+3}!cdehhvIgKuzT}_)2y~LSb^8}j(VuH^DgbWc zNRlJJH!BG%f-irZUI)x^-%Z6J*NFm_I>q9!DyFSoCvAq>dMHtXs@RD=k_J%y+Xfo* zX_(%L$3D|6I&y2#%+bgCYPnA_bClF;#raRpKDGx7t%)Z4+HeP$ z6OT^P$28r~C6#BcoWRb00RH>#CyO4>6Vi21lOJz4hGM-;L&%1U5ypBDStF27)34{p312ao`aTUSB(>o2mSi&|YCZ)Ee z)APwo{24n;Uby|nf{i0}yQ;cz>^}K}4`~9WX&`VYzVXV{{AvzDcYU>{_rRg@T=07@ zrCHY92>*j$Pg7*xk}#?C0JuD=1!Yb9-{rwej6209pY@QR0PyTZ=jbVv@m4yUD*^x= ztTG9OTb|mfV(F)h_6DD3*vvq2=pQQ>6GLP(1>Go8nIIk4MQOozCn-N3d;2uOQzK1# z|BDBW(I%QoAqYKNJOAo*j5pJuI*M|O@q8j-FJyQtR@SQ8I@jGdx6Mfz3K<9_HV3w7 zUP_$_ny*8TTQ5HS2)<35Vk4G|0ESR`x4>KhP&;Vo)wJFTW~69cJG&Hf2E|UHursae zX0321470#-J~%ObOfXAue}gJYEBwil$k$yerb8M0E#{ER1$NI!C|RrI6O+72HhGbU z#ZF}%FmCN=GclD{XH!{?IK&(eePR(NaVHSehY;Ypz-W5u)q7WZmtus_jDfx7;i+xl zdIBR2cFS`zD= zo?pD)L23ip7sO`ZjN;zZZYzLP^Ry1TMAVzCH(ihZG1xdB5jtVXVbTAXmBU|*fE1;? zg{CSze99E}eI6q3`#??kac2{fGY!FJu2S~zJ(Ql6aF#Z}KV~QG*;87O0xePvWMrMi z#}b2ey^nYPGqTlv^2DhIhqYqwh5Upos^?E4xc*RpcqckGmvT1bf$V<&;{wXmhZ8cS ztd+VxOc&c%E)D@NruYy$^<}^%d(39;IpuK|KsC*TK3W~sMIHG>rK`#tp(&`1X3RT$ zv==fdP}-8bi*_KUS~Rf*8FM~c(`+SFoUe2w`N69sy04WhcaamjU({GZ2(;`^?cTA6 zkpm}Y*`%oC?nR9g0g8jYHYe_K#vV7FAT@)K4hCWe@cf(oC~pdr#MR)K5oX}yFk7T3 zQ_h*U2PUH|cNTVxN0QZ8fXYa7+!wP6RLY3|UFK|MmcmZH^A(g=IXJwz5~+e7 zmw|n8q#%QWkWSsk)_%9iZ4IZez%)RK^c)qSB$(LfKC%S4Rh3r7t{ zQah!JFeEI3w-O}USg137RyUL0XG{bkV(iB(lqr#55dttG+;HgpMJ|=+K38Ax@2~@E z4Ac5OKuMnw zvh4y|} zm$Rt}`)H|bda3w$0>W}C9Z;B6yT`Z83Uh!6LR-nfx1mggxtgZRGW-otsIWK1pP0T* zDAbtq+F<1%QP#6iOx7GoO+QOhBkiVn5`qq^8kJpJg3y)A!0!*=vh$FCqzENiXSog6 zh$s}~;2zFSX8;-D%d}egae`&|A!XkxTkU%#XZ|q{j+)-Q#b#}vv#SSta{76;!+!g9 zTrv_XsC^!2LsYC$oPN)p$=~uFIjd4T(}kvvVKk-WA{6a93T3o?cFPG#<`;%;I^HL) zuyGu65VoXd=TRNDehI^Sd`G%9)P<%Nk>NJ$?wZ3r2yze{JF(13iJLRURR}ThR9VN{ ztDKd}**WeMLn+Bg+v|#~P+NW$l!Z9AYF0Wq`ef{fc$Zf8QMxUuWxmOz(Qv|1S|9RA zqiCW5j_DdL)l_t&c2V;HgHO7*RA{bgk7ljJimVOpNL0*vMa;eUXnKFBDep>+XT5n= zPw9h!d9vq$=@$1)aZnoUU~pqVW)u}_?pkXh7MGWk#RgJ0+s3pJfCSq(_1N^86T9-_ z2s)$i)6FM+teiaaSSM1okuj*6q@?xtos9s2tmCR*yl6r{FL6YGx#u^su&kk^x-)|C z4pUTgIkmF;N6M%2K$J(BPq@smfQIROZIkS2Iak~LD_%%^!375Ei^qiROn{0gqK+a} z<#=qMAG8nH89w07H9!7m5_Oa=fY>Ma*zzSd#N`D@+t;izFK7^a#72;j-cG982n&nm zT`6TTdg=o!&D;}TlNqTqZ4TKz(T9&qcHlK&H_Ti~Vpnk{7hAA4^a4|V_c z4@YSkm6WAIlom!*3L$$^G?o~XJt0f>Jz}Dy$WpQ=M3%AdJ0VM1voqFY-nut@A>7Di_C_3KltuhxT)G$5uoRzEEQO)&XPEz?-a z2R|@C<(m@vW2~)=m1r#hbv9`KOGi2G=(azodZ4i7%vYwt~`cG!piio)p z^v5NOhoopJef509UrlxjSYb#o{i;ObCq4%gM(lNmGBciNSUCbi@ttQ~WVE-{4Cc-m z>snsFOsOK9A5Xbk+Y31K9RDn17Lpn)8@VT}$1`llpp=+;>VwavG*8XR05$W1k$Zc@ zrcV3s@402rV?XmdK1SB(dj{=0GQ=o_RAws~Uq=(GR-A61lPsn^YulOa0tP=>r7k+pjNdanfz2HNTuECnz|kYuE^{7ZLkT-DN&`Ks$jX{ zXjvJPz<%*q`QXu)J^-T{K;%X(y%S>2T80e@Dg!Km@BILkFcD$+d8JE9DOE+xx9R5R zg8lntEXQC%HQ#@%W}7sxRQUkICFOY-qa?isSF=F_*}R~sd)>Y9$HQ%Kvb(yzabO-h zB+%>cCq^kZbi~H5sTcs0Cp%EVg*^S2WM?9gC?4smK_gw(F#|x!FaWvP3PCo9iL?4& z+WZL4Bb}n3O)OM4BasH=XK)MWFkyPQH z97iWf(A{^6D4odHVgj#A(QGdxMc+n_98S-cPkf6k22;@z>29y1N)N!6?~^ENoNlN^ zsj#~OPWGLLd#-`_)8@x_=XLQV%!AK60pQGDEo-V-D4BCfGYGlPYOoDJzZ$ZNOMT_F zZ+-fuV&x14K>gr4EsdD&Y znd76#jGBtxLSo1gHtZo?@E6Xd?7k?#t}T#u(%!3;BJ=Ee1ws{A9JYLaL?)*a&v0gN z6UjR4|D7d8=eOYNl}9`4!w}eeMxQBdlmR<;=F3U?g)pMqzEdG*o+(#UAyk0Zym|4Y z8Nlcbw}8yhDG}c135-iIFk4KY7q8ET)Imni$rbNF#K6Y_+u*p#T6Q-r$AOBuL;IB{ z@D+P8GsWjcj(G@?xe)=m>K_pf{U^JNCYdIZKFyf)X#+kD&>p=l?OG#7#QfnTgNS*vq?0{+x`S@L%` zVScX%ETBxe8h=K%Hd4PlD-|Xw@GtFu{@(J|8@lM%2`fF=$A`aWQ2sUCVKMECB!RAbU6?0 zEHlGvaRqRuKjn}tr{xiaE|BTeG3~u?CX0cW(>i=yKseB46xcwz(=kZvcxWi9>s0jA z{@GiD0;TNeRv(PFo;P?5vty*C`}f}{18A-NGOc3)ygTadS2Cpb1Rx$hO|nBuP6t6$ zS?5*r-90WyHXSp8MljTThgVbm19R70wQNSv_Xsh#&_6ST1+ z2&|2nF?S`bO7r#K8!6jpmZ7#9u7}wPSF%l>!wby4>x4G90YSENOufknuc}J6!q9ix zer9>{>+QsUbr9IVpP41wr#f$w7y{qOC9x{>Ceva4h&f0U#iVc49Kwus4h!i*_nVqq z#dq^Yc{H?T)ZE#MrMa)tN$^NO*OG(ybVp??tgd1;!==3+SZOYO^?5{6jl|!`7(_S* zi`1aXf)9Rcq2sAJ;dqBl;-4*L%f4Us>>Nm}`iZ>R8PPL1Gn|suxYWS)+6E;9^J4VK@u|0GQ0ueH--weNr!W7Fs zGr8;6=lZ*eA8e(2#qqb4FGXM-?nN z+Mf@HO+oLGnp-0Zjr%1;JwfYTAWb#213QzslLYUx)Ij?v@)HT=G~e$nHxHp7SOt|3 zus<%gvV7-jhu`ovGDuOBmHw%mxbVm0R$nOgy~hY{X=uh=9Yvyua0=%kIFN5K;N+PP zn(BL=ROYI%`+8Ma-6b(}deJibGK{fT`^3u{{c+&=5)ZzG&57>KNB?T3zc|vbbvL;N z0SntZA3>|?(`;h12?Tp9G>z{N`?ZPkjUQ~3=`%gBDKIQDN)cUyRNo0XosD~5vXxe? z4WEOx!yZPqAQdvZT~#BnU4>>FiTWv!G~Z*vZp-A>>1ZvkLb}9le#*;o0XVkxmcXCq zV{Yv@d*`24IF+=cKY?zh{ha{9Y#Iq!rL7Tt~znSlo-}?BbAdgOu^D z*k_qn%=Z)mFs6LNEINDMn>^L-r^mx&nl5p8r@EEl=OaRkJ)~#YLWdaK-ljD#AXy2@ z4DCWF&`D$k5mFo7>DiW_#nsBEzgt!Ns4sl=vUL3QR_5MX8B)Sm9Ve?0NFf`-Vcz?V zty(-CW_nWAazY?A1t;%*H!wjO@D0j#;BX^J5GxH z?jLBUeFhC-Ei*qc79l};8_<|;8jBv)H?l7y}T?k+3 zHX@TcExONrY)OauH=<}+SFJ8{eFwlpS)|yv6X7!1dwG>8z0G^!8FR)$#aJ8CYY0~! z)+adiYI!$RIY^TRMj1}eC2VZL)>;8mbpTgdp)~e38+!avDsfzla(8u8=NiM`6P%lZ z#)E|_#=mqWKHx(BT-R(d-NyXL$19^RCt?2$P~;$yr(=X%k_!SpXG6l@FG~}f@w`$U zwNt$M`JRt2|D6SJ8)0+80A-QIxw3-ZMriDVP0veLJx_@Aif&umf?2L-zB}`1yEB4% z&|w{j97%!q+kN5bPQtkUN<6%0yiBylS|~m(U{w#g%O27!Mz2VX>{(rqsZv98r=Ca(J z_4M`rM?TXdY|VP$n-aNY%=X6%{C|9I31aPX&b{?NTYK}rANJo5KX?}Y_cH#UkKO-1 zApiS-{Nn)q|KkHPztderbNRye9G_vo<$hsw)IE9%X<8~K2E~kL^fX>G_nQ?&R#3U@ zr>3=*@6$4U>N-M2bu*SjI+l~|UMzdb#VWr|kw&3#OeRD%3lweQ)40rep`?TkoDFy| z`(!W0o+IMB{=@&U*-`GnD;w6;?q_?pi}HW=pR*XS^0siC*#94X)_?m>ZfytN-|lPv z#`>f)RV&w^j)7Qcmt>%?-{s39e7Du;U*E(3q}#(PFSXZ4&n2rQ-cyacdx8tL8XBKG z^q+s=qV@wnF^9Zj9n<`C<^!dD9celiOakTy1=vey|GG$Q6O{C5m2}xawA#0K=K@6e zcc1x>uY|a%TQ<%1HU!`CEHgPDbNu_#FG`6I4Zvo|(V9!kz>JvN?M2UJ3KyH| zRLG&fet1+mH652~y-7R4;4>`jo(})Ma{530<^E}uRf~2LN(`y8WiMP~zFa==`RBHkM3RYw=W-ny&*~y0(P6>Z~wY6w_iW2DBCy~{~v#+XX2B4TF`5o zpoqJF>(;Hw+@OE`C2=+b%8i4ahJyc-@5JuUU#_Ed>M41Hl-MnMOZu;e*X;&vvtfZ~ ztMPySruaW~%RaDubOW>9XmInd+qNk6tZ8{m(J=Hs{VUQEQ8$H5f59eK)8T5LiF9=G z?teX1zwU`gPQazhd05ply7fuZTQ9uKcweUy;%6bRFG2o_OoFr+MaGx^q-#8*g$dhJ@`D+?suvj$p`=b2J+&O zGqA<9sgJEb;u0l1NjbnvdDMc8W&cUTwd7pJml*d|6W9U+p1AUTtZ#VRw@p zJjJ*16uvYQWq$W7myfOiz5%X;Q`E)xK$!lD#c|NhZL^j3A7Az;Bh>W5*lf^1c&QV~ z1id}FD*s^pugiK?DN51fGnFIJAe1K`Z$h~n&DzP=*nAqvWfuKO6?)KaSq^9=sI&<`e0Y-s9gdEvgJYeWJvVK5FJij3;SsV1RDEE{R{i z_J}YjLCorcxDRkI0=<>PYw&$fsmu2I*a2?O&?6k*DXBy@O~v#1~*J*{2h)D2P2O9tmkHzv7+K>?xJ-v3mMg28JSI@rMy5nS_flY${H$u$BMiXo1Ew9xYWy~%cf*D3 z2#M}G(oivaHNH8AS%hAM`8C25s|hdrHi_*eB8Tyno-+fA^`o+^2#|6PQo)03D3k09MKM}3HYQOEqB$oogTo8t!L2X#-^}SGRI+5^P;^HXA2JPj>fMJn2LITqwWVaz%1e)Tnh6 zJ4ZCaq_u-$rMDDLY>iC)*W5a#y)3~e`AqZ+5jC4VAiZ6*GR(AQEAQ{NPFdB5TmeU0 zS;1=YN?`wvdLHcmHY^<=ZFkNj#Q0{yCi!@Mt)GX43>%qoGkti|7MBu-V!Z%|r^v#N z83~1qUv_{#tW7;P$1_;OL_LV zQ&IO~(x^*r*>3q~ZBK>}?EcW;(3!i5*n95ZuAjrS(WtJs2U%#EiCqjewo&CyKQ|Rb zeEFuqt@6}*PGf;qsw5A+TwvBl;A4%}lZR#oH@K7SJthlSg4X})sA|tdDY9~l>?z$^ zlw;hBD&&XKm=j!ZyWXR|h*OuE?mZe5%r9oh#2 zrh61(9t8L7%EQ9-zylZ6rz*$Y%>W5pH6q@rH{KRT3XHMN3uDw;$;M>T3NXjuf1GJ{s6p0>@~bDNiI2ES0x+x2D|cpo}- zqYDH+58#|5i3BWZQ6-R0&UI(SQ(qptA@ftjmbV792?lW1XJS5FztSd7n(EAh2a$*b zKfjP#U;N=LWTZU51y0Mx7OhBbp_j#Q9cOQbUR1dCq&ZbfxCqu+^f_(%*(eqA{?%ju zyTdE$8A|_>jjFi7*=ZB5`OTKqIbwv)4FlHtxj9t1|hgRY$&Oy+v8yPgRLyuwwkY+=l0{i+PLi@lSu3EP)q}H?x0u8OMihf>1TR}Lg3T1{GVRU(K;#dXfZC!B(@a7IQm(5 zFs8;zkkd4kO!z(|(evWKF-7Ml_#H__bXC+ z#1l(%{^AGo0EVV?e70zn5PyB7T$)oh;Y}Rtkli|#>Xgb`40Z~p!66>q6jm*g6hF7c zo-Wqc!by|SJi{q+JWFAi-nW9ZNZEhfnRr0PBdt-&F8pU#g1Z=!KvTg&EjmX;evLEW-Bsp{JJ1 zks8pYaO$>ecNWDPMK@a_{L2h z9XE4q7>l5FEEzU9<)G-%H|-CQ@4IQ4*_ey57gIs2-32m(VRSSN^Y!LJ+likdfk|aT z9mbK#>N#lK@S342#|}{Pb{8HZ-H<9lg>$F%PFb2>4fF@olx43Erw)gAsMXM76aI7% zpK?3HxJ5Q?6iEGUHq`C$jd+wixV7=i&$KcZV}GyJ_Z!poueVVflbQW*DfW7J3!7`yXIur1g z>V|Y@E~jV}*$35ltd|3~r$=xPCFa_U$%AyAsCio;Pft2rC(sPM+Yg*!zoVApCG|+Q zRywC5xLeO{F$qoZPELb5Bi)0VvCxiN^&%f5XXsT!-%a@wxdZ|}1~z+|APXXr&QGR{ zK@rw$*T$FKoV^6aawgumHBJpZpdh`lhOA90@+y2i&A4*|Wk?_-OKuR*;kT8?i(v`Z z3esQkI{PjaLm7x$EtTg`44k}4glcLQtnHLI5&K17Kx=3OwgB1>jg`7=hOKI&ikQjH zsuvE9uf=YDGw&HVsS)`W#n_pmA<*qz%dAjt;PJ_Z7{smd2pmqy6W3eddFee|v-QuN zl<^t=Fr6Q*`om{%Qh}~wAy;^Xe6(m*Q(GOC2y`OOsFPFTI8AcO#=?3U?hk-AJ4lyrNgP!qfIXt zfTd^`%biWCFfo@b>vtr~r_H6Cz&x3>xjiWoOe{m~AiJtKuQqSc=L|oWH!VUIUll#( z9qXK00s=c5+Mla7>dnGJ)#x{ogyyuoQ(1;hx%M+X-7qvvVNfKTZZEu+m(E4&SV;eJ z1R}NozjSW#W9RE*u;z|{w2+(!$WBvo~9)k{VH)PLbxV%HDlOPJ@}&q<$h zoque|-IkAX@RkpZFyV+_5+h@ST~DU@B)R zM#bxVCotuOP%e2-NKu^}1|fho)?~Ncc2WS^b7iXYQvJn(*-hvvx)G85l+~Giid1dL z0!VA?3ctuFqbCH?R`hrYVw<>|ry+ZI-^PV=Bv&P2(F9(LU+vQGD4al{Tll?9qUN4- z&qopG(e48b8x8>kWzRl)k9YKO4N1sah_kj2-3c%7(55`e35)wuR?++|^2M+hk~rpSINJZQS`v#M`fWi2@9DaDG+BIX1Fd(BxvZ<4>9rY3FBsG zuT+^45DTlQ{wCTjS6-;ETK0kOagfjPD`z;2Kj$5$ex2$A2?A*VC zg7UbdX~~#f;Jac|!sTRij|36=;~7xs$WA(+tIb3@FPQdB{8Lk#;8k6`_F+0DL|YEZ zbKdG@PQ2Zx$~PyjzT;K>#YRX-esJZV!MCVE>h~OL;r>eu3Dz?&JX&pLZ~I-Oh*~1xe}Yh{(#& z=Omx?s-4;_a+n38vC}|GXCkGKHF&HsVv6!IEKl=kPt_ul+VOM;f6%0(gj4QkRPbB$ zo2t`LorBd!`|FG&aw% zWd$6xL>O31QF4ieSrz(FD(ia%GE^1aV(tW-FCfRxwEA@r_HwhD#q8u9F*}GIP)?Vv z>o6!WxL@LACp;eYy!TuX>AJQ?v110O3Nk+8zA2$LfYy1A5Q;+Z^P0t8wcrWI{ ztdWzF$wt3FG1rysR0I+)NzV)zjmA=6M$PeWq-H%Rr(D%yzsslK5F_gRI*9Wkd^1VhuW3Kk(Xi}tjvh0`g?F*I zEzO0l@q`EbGX2v~JyC$%R=`r->Y~u};rK}7uWtcJMFm+$(QT=gYkdsoT(XjkA zO#M5CrA0aF_8vU`KJV3Y8#^~9nYombUtqMZw^lcJYd^{D6HS>O+`BK|e_$zQ;CpgV zn@QRudrj}k6xYBW)#CeCG%{R$8r1j)s<&=@Q#HLGVCGV}(!?+BeoWs1I*bF2EKm8V zuGa-$nj;i&<~w!idR9fKxpmj(+D_bK^dc$Xuv}^DH7b@Wx{MxrB=%(_vSMW4QZ1{m z=fM*{CFA?=ZzK&8%r}O#1JmKC{)zAD>%0ybDK>7(I{_O%umT=_cAR!vqd2$Yc;#l5 zDFiOgJ4n7gXMsv16!wC~ZN|M49w5`8=B0P%kXw*yllRqFgni*=!oXw$gxPC8NGJW{CXI8|bg=~<&ppDf+lbOtLzesjo< zV1)P;m=tzm^H&vwXRbYlGS(*g4P`9Na^ve)_}o^HRrkhEmLyo1IwINomKfCpAs@~S zux0Kr^~qhXP(ym}3%x$C&2;&JcyWBz4V>w!gN9404j3SLc8$A~PCCDpf2Kq~k=MVm z>1-7gs&~T?#8Ck!w|q3;XkS2~CyOFV89Am;u ztDrHGYs=~b?4i!pZ8pr#t$PV80Eze!wQ8EFiWHviCoWr5!gAX0>e)uRKq6RQP%!DU zO>VuyX4Gnh+i7feiX|BDa4o0lCHS&$tSW!PY`!0~_~caY`EP+Q_=i}(FQ za5b!rcdH6-tjsX++pHJI(vTOWY1I3^^O=23wpyv3503H0w_h34=v1xgD&%IG?qy7M za7n#U=o!(o(Um~X5iS(9^O)%+t)9DHx#A~e>3&S3t-mu>?31Cpjb}Kf{McM(94ay) z%NfdJd3J#!eAXPAIx0&b3J@f4XX{4 zTZg2K=fm=w_GBkg4^QrUL?ue!j7^XVY?*9J9Nu`cb3)9u_(@=u$_XX0i%AtJk`x

y%W~*r7z*I$2tTX(MpqKr^ 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⩔Kfoa;nHVgS@5HfO7zGhLO4+uF#Gk;kXsYyEr13 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 q|7(i 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%0AWV3HR)zJ0~E%x6(iN z=2uXET9PP~&J;{PZ0U=v;F?~xQ98s`YgTbi7mabpAk|l~^nc>>1u+Lp!KIZQ6Y(9a zwoLiC7TFH?+CNKf2)aG?=2>2^7FDd(OGwZNgXOYWXoS<#wA-o4xpEXpeQCOXuHlc+ zky?lWtU5{fMvM=BNm7*geOADjmjAJ$vR*Mx!8>916Tb1RLMavt9p{TD1;Yu+X?t^% zHeJtORoB0YtQL~#TbB#^cuzk;cQB!l=j&n@TlrR?_1(!%q$CTuk)$S9%CUdr<-}fn zWi_$k7_|2RrD4};uMc6m_Yd!r&In{aOiyX#=Q}FHs{dI=WQzDnKiYGCLcjhk9=<642~tu{93cmuQ3fzX^hl} zS_b_N#QK0Qy8G&pjWK9&Rj{2k^!UQUf zd;3jSt>|n78Top?v3RqP&N-9Ixs`VmOJ=dWu%sD{TdgUCZQw6wa@m^vy-forCSETy zQ?2jrzx-9j;M4hXEa99RLw~7M(jhu21&B6 za4cAX!bsmS9}rBmd_cNMBzsF`;_54OAUDOAGf@#_-QTJM`A;o2jS1&2YBWTxI*k>&ojsv+cfF6yysmX>1D< z#*D+#@wQeuLEQO__kNzt4GjfVV<^WLuj-*1_$(Ku$w@&GO89h|t!s7*@Gy}nCQTER z#+2IXs=M=$!FukeM_M8)y)U3>NqVwan@75L$8B^Vf0iDMfQkC$f0kmQoIlWBf9{aD zZ?77bE_qYxh|>$)9(4mJ&Ka<`bx_~hoh+|6_RDPgflIYVdW~u@D~A)(HAsUSE80p+ z@}zA7$tgiq((AIalM&gQ^SVM)eX zl9>1;H;+Dgz}jK$*5x~*>t3}usZXa59MhH^ZM|noP36!YV-l-8x(h{56y?}lGA4C> zo;zargEyuK!1?)Ap_vY-F9vaU3aHgB%)Rn=)s?#+2>X+;QRXiJ^yY;X5rIaG>XtFD zlkzBJTAn?Ajvwr87FK`Q{;lee=((1f)w9cRCjN~pcnvP0e+`Hxr_MbmCQ0s&DPNz z#5rBBw9u^Eg8UGP>-6`Uq=l5(eNva_b$OSDiz|hcjO@7c-KKNm!hwg64<7{;MZD-< z_K4D`h%o(kdG@)c^RSzB(;PLR07OZYB_AASE^Lg_t3^;<|OodQf)E7WS@(Y zrTd$frd-hC2Y_^4W2mMa%5At?7lbO|dRdSwQg=RiR8JSXMlmSXnzS|`rYSmx-I&w? zveo*r7`H>F*IbHJD8^MK_or0Lmk?7T_Qy`fz!SEwYz%p51ZN{u!U-SH%3L=f4d%8bC%+l=XN&f&`syQ{|d8 zaiHn{w5(dN5*v#CrmHSp=hRbKTx>O|$pP$_7}D4Maq7s)#~$J5?-wMJ?gXBvKau#1 zE5)*HB;!YRPHmAVS!HkPRl)*ha};u@xkXdBFD*%Rj0Sd`&8@KRO6ga{RV;%?3*Vwg ze~)}|JNGgvFL!hJ8<2B`*y5K~Hx=p&59Kyxi*|_W*uxYtpPKN|ck$!4VYU21?$J3_ zP}ZhsXZ4hZ?^&l9HQ1cY!4xs&w91gtKKks}&Ew)i?RWDJ{+CkzOjGv! zrTIP|AE5*$E=n*ff55!7J)y}k7Xy96t7k9>;f8`@ye4DBScmPMr@`n!=+1LVxy-5zm(Wz zceQ9Ck@Mq*G&j4wsU2GIz-1n#{vfH<53yxB+o0=F9EL)Q7utQ>a6`4#h|yZ?Yr-9i zOHzkq$%p()K&5f{{D!)ooZz|xGDn(07LPljGb(Sd8A}lHG>1H=$n$&!zv&vwzwdK+qh-eLnRLG$FD;~y%>h;X~ghs4@3G>seg5ZW#6v9*UmiN1T zCcjuPdN!FWXqpJ4r9@)eYsq$^;jTG0BHn9VO=AoSWMU{C*pnxKbXv#%=TWI&^8?dQ7|0#Q3s8KZf04`r&?}j4E~g%T;5_#iqMiQ-p+rSEW`Z#zHSPCv%@TmiUF>kZt!cmVbft94%5Ruo}m zeQ=!X!wNf8!vv&x?dD?ujr_@cYa64w4yE4R%Vj3?o9xNr3}y56DzPzfur<3Wt7^Wt z-E->pEd7?I*-|Zs86-ZP%`{2QAOWoH+6n%&8nYxh>qc#$LpIlc6owh^aSt;F!(i)s z(NxGpq^T`xOQ7d6QyWEx<7raf{^0O8$CCyaz$;r7L!_+OeX5ReA%B~3nG7vdU73*obSt%RA~Wt)S!u$|YR zY&YwEP72)OQ_T8(D{H&^30X47216Q*Vx)A3U*0{FFRrvxp|$8+jE5iDVb$*yCwZd8 z&Amu}&02&>r}4ZFclvqdy-O9Hf#qM5QzvjNwe4Z zt6tv5rRSazcwGu#e|}syA)8HpiQRBxFSB(@1$4I4+`il1e5WH{M1>p;O;0-tOX@8=bnb zCP#wBRj=+`!1o{XnKYh=XKl44i3+ks+A*H;rXVJCaSpNLMshsm^CD=ILjZIH4LI91 z`!j0gJyy2%yq3k33th@5n}ESG{izkTc7<&o^#xk+Gw_-baQD>(~mwKHRoB z1wTLQR8KkKYjV1_)lF^^C5+1;PwsK(`0CxCicWlH+Zxx32nJv4VLo}9hD_Dion2c~ z?`Pjix)=ti#0)%jaYt`{&Y-jz0blOt$|MYaphq^B9iYb4Z~f8xxuAdIaWDeY8)9Bs zz+v%U_{8TG^c?#2M;9lbd>%a)Zh%Mv_%vD8-j}{&`m)Xi1G?;tx+2t7WkGf(eY?j6 z{Ufd8^JO8%&YrHl%f8&^sJCT&wZHMZmt(${My>YLWMi!N&nbUsRgrE}9A#|$(|=E# z0GQLb7z|th!v3$yjvPp!TMCmaQhq_6qL9$5ZKC1ATV6Fuv9TnPsY01TJ)8}YZzn%y z(PDe*f|*&I$-zPc8RXH6SH9hgCqKiZ<|Yobhl}2ka^Q5DR~F`#BOF}0I8QQU#rdU3 zct`be9vo()1^Ss-`5dY!#}hBQ{A~U_IduN;ec)>kB{AbTwJdIzmzV)&FObQP4hln~ zSBIHs`LCldE4<9yFpYtuM4oV>+uWo*BX`X!w{qhNo>rRgzKj%hP!L$Ei|{Wy-_V!7 zt-EB&a2WoC^$uqTm?*kx&%aBK$Z@5@9F6@%S|1m`AT9nDNP7xol~;~mVzDt`Txz1q zB=s^k$YoTTcEM-dVJDv{-5et2byNVZ9@yDsGSDNzN&4JFF7`DHg05Exo-Tiv0+0U5 z*EyYEu_W}lo$`y6hY|HI-rs)9Bcq*~@3{}^MO+cSClGfM*nQAZAd(b!7Z4bI$U>WG z8iD)@DE^{8C$M@_T;-73Mjg zcVt5I+3wRArergi&l6v;CpuzqQdp=%Ng9n6gp)Sgeb;oXAVkuwXpy!9i5S4SmGA|`y_DY%Oy$Ss$y?LN{yRcM5i@EHh?)ziBI zs7{tshuq_Hn{;T%UbRfl^ULuhE#%(&()9Sm&9L6@lN0&{+b)};lqPPw{VrmvG7RgH z`4%hkUbSI9v-_925sn%9;|GdV^L_LTO8L2I0o7rNyv(u2vbvlRlEtU$nGX7+|CSv- zJkTDs2LHwovtB`8)1Z&>9vqHmg_O#xr@r&WpA+auAxL|F1v~udd1QS%i>NHnPM%Q7 zCGgXi#-!nQcmX?jzJa&10LJO*x<+5brtp6(>9sUqj;eLPXPZcIw2Gi5s<->=`-zjX zT;qvRZ7$P$v0uemRX+6Wr!c$mYm@+Kf`6vPQS#Vvv05vXtTA7*X(!XE|tqZfNoSm5XEzWh)Du?ch zVDs~aGooc>e&OKD?+@?ZORf{tw?7E8dOY7ebJn^mdG9)4FG?%wZ+2va8dxT z(@f0KyYH%u$naPvk#1s>Byyck!#A5zGjBz2n-=xd)~gT9DdSe+38|7SnCb{C~l zpB7TVU4|2)<4e{}kl)@!X^rXTv*?0rQOE&%&huS%G;;vl?`jXL!MS*P%e(FU;yM#i zf~U^zgN+iWAsOWS;vNzz5?=qqi=zcQ_2yK}V}h^G&0|CR+m+N*%#=RDo%GQ=_p{py zW>$xJfTGIOR+{+x`1R+Mt0F<%k3;@vzX%7HvPf zywUd10=1vH!U4b_|0OvmIP=T7n&;Uv2x2D21GvnN>(Y-pRLPmkdRxrQ`u(#q7X^SI z<1cO;Mi1|POYM-@E&%KAO|QlC!4I^V`vjkT2fB{lefd`ETw8YESHx@R&_9SH8Sf3r z?XSu?+OB>s=yJmG-fJ^_mU{sOeVffm?7VWdT`J^&LH}t_A-8zruu=kj9T$h%QFQ0c6i)u^ z5R!`dCyzPMF_XLLa8 z=;%ZlL{d}Zq9_ztON;f{iuP6^ZOT5`I9_2)16f4DIgQnx`hvJ8F~_%FG!In+l+z%8rGTy3SL?3m_tIr01^} zevNl5 zv2t;fD5tGNVfi)tp)KUohjN@XluTkB-j7VQQGG@nnRSd`P5d{E1d=aju$Mj!h`&*h z#XT2BWr1^!%(qqliV6r3j43QzexS8hLYr^1X0Rw&yNQ>lOMXBx&3nk8DK0+ zrto|w5kfyuRZ$Tvsub*c@Ok_8tJl*C4;C=RA@jV8iE5ePeT{wm_$#v*Kpa^GpNi55 z$gHOTF2rhc7>IqL9dVU}B#<(C_iJ%1HWJ+&~+E_YrQ zk%5DY^PCWg>!eX12!-kb6f^I8q*n7GJnnIp?axZNCygqq9OX5+&Fa-0q#wKXU9C|A z$<=diDb5d|@r*O}Ww5cZ&}9cHh81)a1%To>zCuF;A;VQe{Yh^}iebL2EXz_@<H`)#dQA$z@QDFsOaf>?h zY&%vgmhD-6=8+}Biwf?0|AVDsg#?<93=-Gbf(OQ^+%eJ2br{vx^ zqseP}-t|TG$Sp8fx*_T?Tf0MYD$m-9WqgV#adL)&Y-$jb_SS2})UY-rcSkBTrcEB-qaH+piTUaLKw8T3cyaHcBl9upL#q*`1nl!lOk=~13d3LH%KxHR`ABB% znu_s&PAf8<>zb=9g<*^ixoYpte||zpu3+sQ%rT0yoyegK=IWdnxTqcw7e`s0eiYvMqf*!^1RhYxSIr{e1 z<0D+Zu#%cxsNK*rpQ#f1{;$_KrV%Zhs3MddyV*g-xn1We=w04G&dGv{Ykzg)xfCIS zMLV$~a;4j7PO+$@M}m`BV(x5F*!Som$z{ol(z>G&n$FloJ(+l^d}!eb7-Ps}1J(!= z&mv{?(a*=RWr$hMp?eWIt5pnRrZa!whnww0ZmO@1J@?CKy!`l;9ic}QIKei2n?FS2 zI@TP_*0K5gD_IBqLr_$81Q2vR6x`M36TI*)TUTioXYgIq?oDG5H$j1`W9UC;C~s~m zj(C>J2!$Tt zr*1f-s`mcw#)HZn#;!a(H=V5_b>O;yXB&aQIgqER`N$}IN?$30aP3Qnq}#cAkN#b7 z6_nw%&x*x$f*ej{VPAqQwe6=*+wz8~prkR0YQk5q722qgA|nam5^VQ}JKB2_?1f_8 zhCxZsTGxL60xXF+x~Bz4@L2>?%?iqByFlnNN%HUu4on zu+v#CA*1fZ*fs0*Z7r%_GqD~qOoVPD-T-?N%%7Pmzwb~db$&Vc>#%=5#r~FY?rHh2 zrdkm6^w_Hc`=-n``G0iq_&b$gl4&z6O-=JhG+DXmCV&4HUv#!ATw5cSl#y^uK|m1b zRE7Nl?e*xeE9i;7(Eo$5NB?noT1DG{g@lwfLHNgt1EX$;C=rWW-nG_n(FASE>InJ? zGF6G@xHV7lJR)LMJcECJf#S)ScQ#`8Ezc8!jO?!h4b}NXU3q|l*6YxS_wM}=`h|Uw zj^$_PCYkwBqp;r`NvaLw1r?*RL*DDIX7p6EA7+hH19C$?8!0M%{TS~BDV9lRnqTXz z9s5l%Wk6xK#~3;=lrt&Eo89M!U|IT2*ZFC6)nrchMUZZLyJ6QwP6f(@(;+xCk-?e0 zzeKC#8JPES5eG~z?*{;t?)*Gq_16M9r;CLp;R)DpkABVX9*#X1Bah|8?lR>3s%Wd= zn`xqRUx-sH*+RUrE-QB!p!mMyJgcfi9TqNfc1-_te++8bo8aD7)-ew0KBe{6&_a|M z4Ea-dPq0#S@6K=?m>zZ+rMQ22BjSHhXpuZRF>qUb=ee8#k5D_i%QD{g6wYkyQ3t}A zGfLv@-nc!~RW(7QS=`uNTvbu9lV+45`mk=ZlKP5CV*S$6F_i9-;`W2~iZZ^U991O- zBS*g{xS9HN-Fe2k5OoS)F`-8V|MTm38(D*2mgLWIjEnPjN554vJEe`s$y+S&pb%HDPr zmd&@#d<|xY(Z{|`FTWc@JpYbQo0#LqBQ%>2rl`oveC}wx z@J5%;XV+Q#+!!GUftD|=go??}pM_E0iTGK+Nh*{Z+1y{l&woCO{=voFb7zm%?c`1J zuYT3R^5*}K!3fXd8_B0FVQIJe!#-K63Hsf^(z6d774fGe(EU2 z;@dPSS?=&FVfC29gwFgdw!I}kI22C`b8LdMTS{eiMJdum*ZrIaAR=h)R~djBpK_T_ z`E;to(s>-adqcgJixGJUCD>$N5oyhwUXf%Va-H>8vzECb9MM>PLUediwE-0+)Avwb zm&~HvSdiG8!kr$GFQeaIs-~IWd+u7BT$VSUJtuOXuMzj!=e=xg%E=!@AzrZziz_~5 z@C-cwxM^06awg^CMW*m2k?pVYSx-lUy%|-dZOEy~Z4a6PHdrj2K;(F4=F81YVw~%W z>$IX)iP6lqcG4U0x#)t^7*E~(PO1x>FC5lKK}Zg$L_gb8Naq9DFn0=u@in6|{%FgZ zAhq^29(Kpg`+DUs@>hGGkZSupABuPSiHg@dp(Q!ag^@xU(~pR?f^=Nt0W9HHrB&{< zl3adO9F|#Wv66~%ky>j4Oiwp3N%{FqnKQ~e3a&T3&BoWG;8v!^LYArgE;}JZLqQb( zhIR7i*J!NX=nkY)7O-M_JA z#;2MU`I6MF+It1Q%B-j5ehF?aDQ+0Vh<VWmMF8*Yrt!wtp7-zj9oF%lL$ z4qT5Pt_usIS_FM>nk>AhMhq?(HKCh4dFOEj?!c-E^Jzf+wlTxEKxh$F{T6%WGy0$= z??PY0g@1TTAF9z}Yx&c<{n4JupXNp0D(YEYxPhpc0*qWu(OPwDiYif*@*7zKqFiZ= zi3JKlh;C-Qs596tnBLQZk8bTewm156yN0&RMEL+y=k|p(wqFztzj$*9lWuNqb(Lo4 zTvcvUeSpEBJh=CPhHZ}8Yt>0Kg$Yk|(a7-jTcWkg#*h;Qrp9#J$1dohJEhwPgHnwk z2=CilqI$aj3dh}{`DR!Le@V^ml$Tihr$KJ#8SIj`t)%+-#dVn_`98)&n=2ZQYAlsXZF8-+_%g)gl@2c`GNt71Ie~H?0Q_Uxz8mNR!gdfsuBH|2S*LHg7p;!05Bfo$vpb}}C0*_DncVuJ z$__0M**U?H1?GXTUYa zWP>DfysMW%@w~=x`nn6jOaUn(BIhGtb5fv|SMzm}lfghQZfseVd?)DTNsh0aN5mGB zVsac9Gfy7)8rvo3B+T4)x1;5zFY?;6t$FmlZAMTB$mj(-EV%FnLk3(~5i$6tuopa> zAEegyI8mTs?qDBM;5A%i0=b?yjYD6xM=83t9<<&Pf4n}ZxYh=p{gRTYjut=_^ejFN zNVVGogkshBb%hSJzOQ9LVSIfdG|uP3ZV!`@(`NgT@thaOyCg4kc%wlMiLUHoq`xk9-ulI=U&4+P0lrZZI;+X*d@v0cXZxegF7$VWIIT0@q$$ z5To;$V?6v*3~qw1uy7Kt7IT^$pu=^(R2~LS@~Os6wsPAFrE`&N>U|MqU+#;Q`<9RR z07#{Y12U1NKUyoDrYGjO-1{o8o=#n3`T-K;ahUoo+u2W4XNd~kWXc?wm4%Y>SBw8; z4z7jr^GnG@hwq4e2L$wE%G@1GDWB!&|>3O}!G+*oQmbB!lMZdkil zMaC%x?=8S5KbVNF<8UtUgj1e4#9g=~C1NFaxD+}%)6B9Q77GkUAxFypTt$5Mj3?^+ z%CS;@j(%>LbD3s(M!RAdXvrK`o%672Cjt^N%l*vM1Z}W3j&D{v0*r|nDPOM@7*<&w zdj}P*<`+lDN=Zp#5!D8UGbdG^jF?(jKBZ@LY$V^Hl9b$26 zzPqr{TI7=(gHS`v%k@bZJ@KJsLOR9Y4~Wc>Un=qaaUuSr3;aZb|MdX)DT3B`#APg=9^j6-W?wDil_odiMB z;V(^1EOIhh>9E?xGLfT>nYQ0ck4K?NenlX&I@_-7qLG`UY;zfd+I;f5?X$ zWPga5+ued=-113u1M0CKzb>NQ-AzD(rB3h{OV_4Vd%<6WA8#G+AY~Eo9K}O}*;YYX znbo)N1U=nBZD`pYn3S*V2QH(z7;mz$FVPtvKmRy^KhVjp@Dp`Dbf}b9b#A4(L?&^x zU-~P*UvBA++my3*E3!VrWL&2Edge^U4eQ$_1;s||cWwE?^{oo=8fEqqBQQYscLeT4 zhKY|?W`6LG-5()in1~z1Y%hWq`TOtOAJ?n}JyWSdpI$hJF@;xlCzg35X|C9FZ%4C9 zfe~|4M1GTfZB@Ti=OuZhe;@XW*hfy-O&S&0TrzV8rk{Z2hB=_dd@ST z{BQg2uVVQwxHE``Hzx$MPblw{q@xJu-v@h)_X(F@)lFwiT#gz@Dh00}>yi1a`ax!E z*Jjvs2rk+x;U2lbgG<+^qu;Opu?NRs&(`+G+7T8#rJz)UtnYK2fYdY{Skn3b6cGa; z9i7CkhW}^*056GQLER*KY~T(;#=lPje`g?nRg1C1edEcEt5$YDo^qVaKbd!bMzwqe zgrG8m;bm02(cg||`UEf8#Exgun88Bxk@;wT&vYUf23k&k&vgC$WIUiVU^g>Yil+$n zKNm&M2AyBn6MP`|2su_=hBFYz!i7Oxnnun#nOfVzE6mU$Coy7jc8B0;{`t9#jId{~ zzv;2(V*i=IDRBSrIlae=hx_YeCuS!$)7kLEA0dE5Seu>;41&;q@=pK9`M(PA0Zj+p zbz?K}ecYrlYRUPrNvvlCbH_8_dFmJG&igO9j=xWEAhBKxf-^A87W@^SS<%MRq(z>>h7WR-! zo(ufGo2GptR(-WV1O@TR+9C@VEy zm@u>d+vp~6CH?ucCVFwjMmtF6m;%Xx`q3{x-S=dy}kuyOQ3qdg+6g`~&y+?82TE_t>ip z01TP6?>^jx$tUU~4ydhr9t7~vVlV}5WbFE#e=vLRk3M|+&yz}3|LjBly`%qn@(8Th zXu26~(hb{y55~+)yuSex!nH!!Gxw-WrzLb2{M?=34YAF?R**R2n$kG&zIYQfjOfQK z-kg-3ogB_GXM`m9td%wS%r0PD@B4&Bm8>rZ@b=NyMc$LPQ+A^WV*ih`4H51f7kuJ% z)t?={tNC5Vg9iTd=B!j7$YFMfPtv#{<~6+*(4J+7fjx`fK;##TCDtQ{IjF_AV%53f zgmQb0+WSTvDtF!|9VQmIcv_g9GQU{x)BYbP`z(n+tDggbJ@*8>>h@=kB18qFTfXPN zoxu7lPy-mj0Yf0YELvX=xq~aC6Nv{PUC9U!eIMs5_r7lrSq&PdfY@iZ$;;_8)D0$a zD1NZd52GI@uN)Djf&XeF2gJ}@51ao)rT>P8zfXH79dr-U^|D5I?7ugOo*T?v{P>m7 zpWp)IxKc20_uPTs1-yXBK}A+QeWQeeuFia`u*46`n1V8m#|Q_!iwFAgwbK}a@&Du8 zYGE+u$-fMUIC9(3wH|#;`z!iDgT`k9G6xV4>rqFN>MErV8c<)sEC1PbKJiez=V}Ui zn=kWRXlLw0=BGrO?YH#mHB0V2?J#}eRtB#M0#{zY-p`BnXl`B))Dmoc4gH3-SFdw< zZNzii7x6<2{U(TatM)k@X#}#?;H{KayEAz>X&nwP-T%TX;b%5|!0fNd-B^=lc zswO1PK}7iIGk-+<%GU_^25O>ExOBhRKVtvqhWS^#|8GF}^Bog>N}YcBvQksi>}?wU zTC|uTY^2NL^@P+VN4S-|&ky$kMlZ%A(pycs{m-Wxtydd39Q8v1XKTn_uAyXj81AZ2 zH2ONuoEOg~XSq&$LJkRu=>$(0?P!ocv0i9rjbWyut1BMQ^PR!g_O>B)NR3>D)Il1H z^w!Ca==%CP^S3j-_uSvA*1u|0KYlJLD#l7SkpY>R|4hM2qiN|GLujS0hAfS%?ueXQ4u5HD~HDK`EwfFb* zxVU<9@^q`S^~Kd0vs6Jv#mZ6j4bh$}1KS@vze3scg3t@3g9n$@8`W%(T{&paK(Tj;8a? z8F7;C&BM}bH38m1Wx1}GJCj8UB;_YZ>wZD;Z5S-iXVE?7NY^uf{`&M|&<8jErxFiV z78V5^D|*jHH>->$XXW-J2mS^8+y9uv9#cR?dp#t7 zL;#iy1-j3`i0C+!2?_r?``EX0_(P@^_>uT?=5tQNPtG% zKm?DaoPyDUkx`@7;5s^box{E-ZKuri^0E9PD9XyDsIVOYRc*S0$Nfel4mHG$)wgAV zlbW8sV4+2$luJWhS;BafTtQ8Z5-^um3?a=-NHJ4(Ws2PPaKD-eqUv1DbUIxzP+Ful z6?PL1#E{`*CGU&b5;c`gV=q6_Y;mBvK3tWfnM_Ro__6D1O-O3L8mPCEKO66DmzR~O z{AR1MhbjB~nw`U%;?&D{lzAHNzgIb377BcAA&lz73M2d{f&25Qihz1XZiv9Q`@d#0 zKC$RFl-V7z)nd-c`~Wk%+1+IvaG6}hVogj;oH*a4Fj?#L)kA<`#bkGVB%PU?n}XGG z)dxb0q$>g%VRf+<8k!tn@kY$T%Btw3(ja44pP()bnVXsdRD2}L$;_|SbiC-Bo0?+4 z;LLf4SMVsrwt_y6EYNM&hX?5Ve-avEU|p_xUz~8enf#|tU?+lJg63LH%I*K3YxsXI z>DbpzoRYg1=uuitQPLEE6VuO**R)OPdecDsaZ<37MU_cqjn_9|nJ5Imczsq@`7+)u zf-I3^Podi;tg1*qHB+iOI5U!tp~lbadO?b`GcXz0u>U~BZcRp~;lMWMo+6vcD)CXFPPj%k2IlT#6L@>QA z#ZSgdcDTCxG&DM#eG$qO8u}xvsfkw-tgU@rC~7H#QVu!c3JnX%-=8X+=#@&`f4skR zxE@lzxVRuMz7>sVJ3ibk#j&0!Y;43`w&_t@0G~n;^4O&nNPlAB=CxVN0+nTaGTZs&^7{32mIc7X(oBFWX=-CZY=&S@J%f2Q?o zbo9%P#+PrT_U*nKm>cz`)8R6y9dpC0?l_7IGheosBxIxvyPTk|4->_6MI+aX&fcFp znVG#$-{fQ{%!{H4Ysqy%9ZO>g17hj)#t+`gPq&yy^3loZA~VA*)J!Sxs2_v@$^)yU z`_XUP7MF9-NGeqrBNEZG`^1wi0oK|aA@Z)gbPhqXU)V%+VGK z#q^|A>y_*|%fnmPwYI;zjJ9%B4>)j_dvUJ+ikW%xuzovC|Cqo!ZI>4U*_a1^Jo|qBUW75dYh{RgVj5Rr}k z$cM?fQk7_LAEJB6or0(ee8~92R&ngrxE~s&EGk`neLIWg1s2Zuha7;XQ{CzLJ>#v; z2wl$gE7~DhY3XV6L^rLcVLkNop~{Ye$2JcP){sY44GqztNP=vG;oVWL)2s>j@8=jh zSEt@jsYvtl-6JF6-90@nk5kwPKln2+$9NxpY;@X&z^zLqAxDb_dnUjgWqRHOfCdts zTrY;8nCOki(v=U~cajUSx|}@?UL`sPzE4i)$o6t{437~_`;g)Y$=fk6vew)6ee)re z6vNibRh?sQzrdlntu0NZ9HL^Y_14&5%_*;_xY!UOI?Ulm?*$<2oqdnIb2w7}EhCYM zO_V$`OD>^O&$olY)y;Jh+o`2#0CbN@Av<0>#v@hy_!KLr8ijBx<$upKMjHAs7+bjC zg^*|#Fi-8CtjcGxBJJ*Un(yNSWw_Gp?{B+UIYH%Qgl-ID>u`2sir!^xWJLLt!Q{$R zuH718cX`ninH_rh!zK=Vxl2FZeoLoN5)Bzk=c*jmoR98RIJCF3OHI{lE)gPlYiECH zip2#TEUs(Ojk0OFdAmAwZZI64?p9X4z=`6H?j$BEqOK&I>N;%#3Bw)Ks#_6_{Lm|S z{|y2uRd(22cBZD)z|8x#6m?I&N$a$4hcreb^Yn!AV8(i<>*&=>7@9p}K1*dUX76bs zKlyHKo_!mVG(6XD;4#9&VobJKk>0xZK*UO87~B)??ZZd7cG%Z&%w+V}b-5ncjhqun$bj+ERULx>a{ z@;dfZ{BJcIPxB};U4CF-U`$&K6(aVEAkyY+DR83anI9gQJVCe9xm^;9CTP}`hHY|Z=X_LgvWW6}x$9@B4sI6tLTAdP{w{r_d#^Cl zOE5&7?&1A!SG_RA7j^LmI3*^yN@oJ_3s#SEyUEm zF^nRA9v03^d{Z;zTemo}9IoT?tR8Vusm>!1fsKtlg`4T!g$lna&wk6sDY@xSoU@Mh za``bnE^eZ&+1`Xx>`;{?M^#06GVmJTgag^d{dO|=GM{#4woLuklS8(uHw06Jx$K0` zo;)PiPPc}Nx>X~=BUFza1WNO|sm+X84~3!uKc-X^6ihzdE|&&}&v<~|>4L5Nm@;ap zf96R*Xs`z!p90e*ysq|y+U)qf$uwnTSUhXZSh!%*vbQtKvdn2iGkG42QU+ihVBNT)z8<%7{FgZ&uH(MQ}sqLY0N#@oPS}ahhT_PWx~hI1rB$<>di-oIo}rAB}3jTU$GVWMv1I_9@|K4I1{q50Do_$}QzOqVdSodX5beWN664uZ;s zhgI#n7*GqTltcfR0y9UUvRvM~vOUXN8=FEI z1Vuxss?8_8r@QVg+M3mANPyA9YZ}!UcljzIhsN)#$f{@VCb~K-3#qD+^t=3O@uqVF znXApNtl&+%;6PS3(7pz?_P`c)>!tbNYJWUN_mb%alpk<7Sn+&KdkGZw^bB@e(%{XHM{(G*gVQ$P-5#c( zpH2_#b=CMOR^D3D5aN_UrwpEa`~=lB21fhokT$4kFT1no`?uz zSIn~|b@6EZ{|wOtVLn2u0#dLSEejg4KS^s^D*}SV#$h4|==Il5)o8tlkQ2er5OY8? z>MQyshDcdus!oH*9bNQLruRA?$=7>voZms!HZSeBFCwd+jR_gvH>T}JATw}y?i_yT zRU`pdiSRD?aCGrX7!otTJQ9A=a_KZQI%=eFWF(??JOX;;281_RzwPM(`U4$d@;80> z)^RfB+dF1CL1@OG$}1#DpWPE_XO|7_xcI<6aCM7uMH6y7PkEE%EZNg+u>l7d#gNi? z-Agm*LlY|dX%_T0zRN46=|Z_Qr^c`_nvqm{WbCbN#mV_gf_R>Qz&Ch#JXV8&!YR1f z&nxZj;r@_rx6_XHP&H3t1{8U7BiS+_hX%IUem+IUZe6t73_Kj%)U-@Kd+coM_c= z_2(l~G}`u6@jUOXJ@l3|yX2FOLsTAs8%_fQX+3FC3SkGEk|0-c=r>)7v3%uBB*gp@ z-Eo8qeW@Qo?{%#4J~1`tM^8B0sA4Upy%OxpT&3|@2~z*QB-+SGZ?YGyz{<{mYn<@qV{7D!>!~MB z?5UDJ#O-z2BM9}KL>s3sJ0t0h)O5ne;h|JdAgZzoy?ASi87ZSGrp``0_R3u*xKuZO z3<7bZHq7o&nAnFK$jih{Yzo0h- z{df7ji>Ga+t(w-FD&cBPXIAZpk68kKCZlw<@ijnMSw=CLI4q!5pr!P39@)q~`BHtt zFdZbWYc0EmjOd^Wb3yQ~(B7Glr>?cbv)OVSm!`qGu{4boRI@Np!HX!)0zDyQSXm`+-*~OgzU^uoD}6p2{9mFZ||owUS80o=0CSlF$I!gB#`DxZJ(f z0TGMj6AVY3zI@9Ay=NUxb!c&|2xsA&BNc@7U7b>e?WR;v z>JGhUcggx1Ey?`Q5fTz=&`peasmT;g7|EsA ztkuGkRgoDVPO$hq*iqhd2lqt~8hoipnVTKEx;m6Zudb$xU}{Lf8{74Nln{QPIm)tq zUV<~SNg!l!8b{aBUJIef_#%99TrAdv`hoi=r4$C&X0Xse((Dec{gO+&;V4i&l*HNh zA2*t-nljR|r|kx7mG-W8#tnwOv880H>+(RY@|rlMWp(+(x#GWw3N9!`(Oq5eQh|shl zn~r$R1=dEwrtOnJ*dH7U3ie1!Zwf7yGF^4z!>?1UAQVDTuMV%F(E1wdu@0WPuT$`D zSJ`4z#97w^T{o84l7}I%T5ZhH?b<1-rZ%QJo=wj98*(qe6r$C>B3+D|PI?p5Hj`n6 zwh*q4ce*I}p#oz@I~59_P?n#N3l}YXt+6q{V16Cta}oc~Ezl&6z;z6j0D<93x^SEK z50YT;gAnSInFxIOql7M!If+KQK(!Hgc7|=DlJ{5EV-38Uk?gw>f+0>MZ&jS)xd}81 zslD2Ek*kG7ysHWO*P_uA&gnF{&aB&$QECiskOX-$7;kH@Ial7?(C6lliO*evkGuqM zE92F~WUYbERZL3zJ%_g<<7ey)7w0zFhj8^*=QrFM-evwd&8v~4NE7CbdnnIWjyQyJ z^ips8Dsl9wFk;=D_S!T* zdLvapAAf7ICLIn7eNWUm0&RMvz#`L{Xhvk*qB#%IRo|Q_XzN9={V(!3(=8%4n11f>lN&|N?Vv5Q{!!l2AC+0;b9ioSjIc<}6D5v|p=a;fz(&#C4ei@v|I!oW4s-2KK_G@Z1%%B9xB z^69hQLDfnJL56t?z%$b6n+$re9{R3UM~j1z^D@paga59mxw^8*;{0sPB184`5(&#v zowc!de0YXz|GO*IAT2#O<}fy%#G<}O43%b-V)KoPe3ab-+TNHfx`5mG_;B!MBdeM>qW#lk-A$I()9?CJrxLy^g zsTqSb^w|-0^t0PEKx;KfU`^)M#r@jx=vjY2v*2yR2NpU?Que5i*U#<8+*_s{KV7E% zeL8ab`rZ)l+R9)C!PzSkgW2mlZ)Wo6!GLs0#g|KH!*Xq@Cmj!o7xoTEO6X%XRxb6c z8wb^c!{bqd17h+V6LdDY4|`JJb_&TwYTdCFT5hx~ejKZpi&_WBSc3;-W|^+P{&o59 zyB&FSL!6lj`^)bAu6?@GC*gr-TCty%TK8C>-5Z(C*DMogxdlzA30Q1=<&r zL`EMQgnd;lUwV-^-SQPfCSNAM<3zV0w&(i6VA;Od6Xn_Zzj#2F^*wpbBd}~himsz#>N^&7~{BFSEPILCoi?$`oElq{vA zO#Ey%a^p&cDXRL1K0;v7v#T=RFE*m^nO|Ur=CpL~gMHTwJ}GkZ6(T8^!OOGZx73wp zS=jDK^UXOiKi9j)`z{aOGF76KS7b}rqS~yVqv@}ME0k-de1HG;;uW=*Vk2z$XR+r7 z5B;R;$CD)&E))JJq+MI5=IQBIvy~WjZmpkR2zqv~-h}oK;x5uFEi*wUqv0BUR2pN0 z!r1oO8OF2h5Rd%YRcP!XS?;(DJCqNv;_^TX z-fO-Hlq@Xa0O%z|MXSFI_6A?z4l3jmd2OMSan@;6tQ$MZgoE6!*AUmrlM7pSj1*Nc z##wL^6H>*OpK6vDMK;N3b=GEoM}73e7IAJzJ-Qp6h zSfP`D*(SYJ5Y9JFS8JVF(L)85$VQp=mqt zXD{}zR*EVwNU!~DT(2JI=2=!!vU6_t5m)sy?!`{bl5|?G8CeS&c-pfivwQ^1%COY} z$Fb3HFBL}8fMW@;YpSAr9+^A$EkDwd9^S(aKdLlzYywpeq<|QZwtpLS*r7Bc3-owK z^%e~=p^m?!2e7|^9ySTWLt_3H7p@c5cPnf#F17Hr{1;W#{;`=UnLMVI_+P#?KjBdb zzIjC5{_LyLi+eTr&CoEJJ0hKU`~!@r!teX#A}RdSP)!;>i&E*DFdb^~Oxx$Q z-fak$e|b|lg?*qp!>r&YKq!M>W*YldlN{wtWx*|(WEMZA4(y#5lp(Gwv)Pvtdj8ZN zUj&&ayLJ=2l2T8pv3mcNQ*G5G0-gweLsVjpW@aO9OfsUAo(4Afm49N;xe^FHR0{T9 zieO)NrL?pXve~n=AB&42jWn3QW*1TLlEF?>mFpv%J;$PXhiGma_qHESiQM3Vyi&!6 zzFjgh(rTd{cPQTEs_~-a6-G3eCDxX9W8e-{=j_ZfOM{q7>4X?1{u1aEkQ@^JH3&h8 zm3%@I{h;uSdmQ@!JUnqr1m=i)92TBRjEAZKDuazO^uZi&?b3>PE^QFe?d+=W;Z7Ip zKZra0w`Aj+{*Y1?PpNIgZGeiS+cMO>FN4oELFl|kbBVSxt zG~WY?;1u_mv4}UVfRd#j!Tn3v7&yx~(_OSuYndS$9o@mVcMGHv5fU=Xlh>HO{J18^ zmeQf~9rX?*cv=jYrlqi$n~r68I^aewW-Pn^PX3-4lUjsX-gVaz+Yboe=!U62{I=a8 zIXz_6bdmgWPm4p+Xv8E303*`m=QkGxR7&Jj-Y6*74(A(W8ep$io-aK{p#U~6;0GT~ z!N5T&xHdVd7;88%I*AcJm%uHxh@I#*JI!J46@jH%;wqF)8=-HEcMR1hkW)BnfUSpdbgHSHP=L(oBkySux) zhhPDM1$QU7MR0ewAi>=&NN{&|cXzlu$G-FZ_x`tvnwpv!X3t*ItJmtcpQg@w{wW5> zN1xov946_gXsJY#CXWPHo?>$385$ zd2>^cIpM-I0yUU39O-6$_7!Dwe+}7i%r`~v+=#s3 zkq4F85|rIsO5uyMRP(6(r$)io4T?tN-LB|4EQMdQN(d-|nBz43?!%*QfjoN4Y+YR3 zm#4=^YBstU*aQXH^6%6Aoh+zkVZtXS;5ypjPivrumb<6in&~2*`skvvq_}doVH11i z#tr~}cs|d8OgtUZ>R2a@|2yE&>q zf8LG9d&zG-mh$Ltf^>hZ8arIwOq3|jsjG{vGC0fEfUgN_5~OzTGIXt-5kaG{vO& zrF%`W^tNL#0VMfHAubUXrkiDq;}c1>p{UuZ>c$K;`e#MZ#c1&5R$|~ZoOqILela33 z)Q#RUrUVIonC?vR7MUV!_lIp}Hd3!2VtkbRE_ubJy4hnp)W|TE??kmJ>1YGL;(^wk zFP3;2BUur`c69jJ(Aj#_>x1F7bz%Y^jPhDjqj|MzbA;_1Z^smVL7o*_vj3Fo7J>R( zs`Q7@F*Q@@;@=yHfgq9fthcx#6Fs@ ziHT>_u_$zljTuNEz@O43q)w*mF_Ppv#0PXK)=QOP;ThbDVs}}6#@^H{=I7#QBA%9% z^c&n3kGZh}s;XUbt!JHhD(b%!@x8s110>hqL?+H^fD`2=p9^-SRWw~|{GrK}-_EmQ z>mKR%Mv{1LETjnDZK}vNq-KMza;*WWQ*5W`Mt`AfjF-$7g<`jRjhI8iESCsanJSG( zu2Tw81&GS&4wlw5m?ZWjp9I0f%hrAlKn6_dqCsV#dw3%geoHbLf13?lJcxCOJ&)RRv?=BwZ8^_UTH;LchJzT%*h#<_F^*EUt$noZR=@EJdc>pPX zdOT6bG!=(2G4coDBL^$X+G(+>@`%5XlJiXDJ;xzsI4#gN2EB|4MhPy_B+%g&eL1huDY5?OH&hV2^Qc zx}A*eXKD}g;Di+|C;mx?u6Xp4B{NQNnR_r|a|BRqvmXu8mEreZE4-s7~4^_r*i3Dn5c2 zPHO{wbt_v{qa9y#^NEl#ZZb1Ym6Z|`&}Hh;PymAnfp7%3tPBx~2y6xjz4^(EKx^at#E8A3Ug?Smcs;bJp0HWG*5Le=H^M;E= zVzW`-NB5ny8?&oVMKqk(Jl>E_L0xW-qBIz%iTh)b^eH(GX!`-DT8w; zTgzt0-u))+W^aH=V_Xb{kwPz=J=@as{U}hgQg1BwM~wM1|IlZ+Il&P+M9*O`*0G+u zkc4BbyAGe@HsaAzl?Ir6X9wF1MJD!Xh<_zdF{Kdmxd_fNxkp|jQt(R}vdhW5n5BA| zVNaxl?4=LKQ%&`O)9Nb8RZ(}wgj*{fMA=yb2(H0^;IqSbVLCMS`gsZ&7zXv*CC9 z2=bBLR-@TVGHd|iWb$Ds^j{ISYTudmsO0hUL02e*g6pV2nv~RpP|srPhr76rqw58% z(SorYRr&t>!4p6%HqPPw9(yG}V%fECAO2%cIAQKsj@15;@s=>%i`fo+Suz;VRsC}0 z%-A`UIyCEayp|bCMM6NyC;1#et%y~*-+QQSaxi3UFL`%gWE*!;USD4yH=ni{S=ebG zeVm;F7%_&A3aQV-e0Y;9cZy=|#{{(=eu``uyJj=sw`F&VY#wQ)odhg(FxeA>iQy1| ztOS7&CRNZ#uaf`3G!SQ^qT07|04G6U1YP|z2P^qvW$?^InTmmOR^>`ErcK!EF64Yl z)Q%IamXC(jh@{&?`I+$OH7i5b?5b)95)HNm#j2!j`95b9u;GMaYh24#u^fh1b-~hl zq&qhrd&c`ibebVD;&&mok6f5`u}}EAN&Fv|KeRM=J|DDIuZ%oiQsLvg(Cc_#5KW$Z z#ilXZXOC8c7)%o1z>e~MA!-wiLclVM2}*okwAIV0R*JXBQ3=aF#dd&T1qwg*diNfb z#qhPMV8&EN^W3)-ztSI`@krSOC&w8Z$ zanE~ZXpGK{&_rIcJg`+r;G)?mCU3THT%djK=&bdixS8WUKUvx|)spDc8@S>zeKZad zWQtl+`&r{2P?%REuN_n7`GQkGFTo8T8k+Mb1`tkXZdmj+g@oFdzeA=2=9D{T^F?y=q=U7}F=;1rp z#2y!C8bn~bOkDd5YP2x#yHY4)3g55j@^EIc zPK|kdl$Gm0ab3)~`{+mVHB>-ly2M39{N9dj123Ob2p@2$W)=mx4yvX6xj=}v_= zXniYAKV6_urX+xyWdBR__@{WGrHY4sHq?Z~Q^%UX>uzes z6ManjW~J^+PP?VeEyehw4ge3*^E`ts0cZrLVK%nT*368P-BVu)y>CU_U-VwGC-N1Q z^}+A?(C>2>}U~-;FpY@tuNxW*;<=kJMd@3MZ$h*b6-$Jjb z=IgdeYH*9zEn3kxHb@X>bdBXoBr<|aDf*r0rM{Jw{>U}brM+0smBZ*k*%zZ-G#WHzdPgGl@x_~5 z&N5h~y}@w@GaLvL<+x&f`1DmFnO)gF9o7B@q#Gv;(-QxlU5c>&Y8tlMpi}a`N9b9` z@K27`q@VA-8t}u9W2DqtGbyxmyDo<-IQgxWD}GrLhiXSYO!F zeOTd$d=91hX<-1msqGu%D}O-UII%`1RiCbW7zrL2ljq-Ml^PQoUU$=k6xMk3ya?ku zf0JfVab~`q`U4ap(VNj7PKrHyw_dwon`^7?HQ*@Ll4je~!#WdB-x{D!|B|}wb>bz# zPB3(27TfUaNO5fnWK_Du_CP6M;J84cov)ffK0kYUr>YFo$>BrJ(@*xpSg=3!H4o;sSTPIPrE+~jw%$4j2VKt;>*RA|N|Zy3 za|ltlbb#f$&ZJUxj@be~G8IYo?qh1GOzgHjpL5~zIB@g5AnqJUe@q#Q;qhP^ncJG@ zq1#csxKcJ9W^8RR9uBS=9)~;5QHuAH<#RdCCU;@o9SJA#!~aUb#1%1oam7p-Kk{^U zvG?-)B$8siTLCXG(7j)gCeZ^#x8%WZby*X6eZ2&deYe{1JwUITKFuD(UZaiz0U46a zXBemCq+*xZWoQ`SuzFvAi)RRe@6AoPwW5>`GH>nFH4OpVydb{v>)&S{+)#dy&A9b2 zTEF+*koAkVPm|2&7gssw=MLT(afOdE%;lkj@=|7u^P@xXu07pRk3Y8g^nDxW_D#ns za-0swq(aAUQSf9tpYJuo?QHRncn+F4Hh-Ngplj-v1z+YuV26{hyliO{?9Q_Ee|SoZ zdb?79=6yoM>WKAqg@0i;@)#NX3!6|-{O9AdhQ@a$bN;(D+m)U4oT|3RT(pYTld6$@ zlibuWyttDmT~`qx#e#s)V2yosDr4e|Dq~cx%v<>YvC*IzIGYNWOM_PuQrOY;7&1zG z{tQP$>Lo*Gxc=*e%(&Z6ADNwUIt2Rs4hgp-HJo+@=_M)-w!^kjrfETdT=k^s+BYdI zAbwfulN~Bk#i&UD37gDOt%r{TY|FL8tFV(DFwB#?3u^*GPfLfpyP%Ijo zBeqmbh=n2YkMtQZnftplBeeZd96Fy?CCl21!}8*3kaO}pyFSW z5B*E~qQesybvU&zCTUb+4G-=pwYv66`7zg8OOc2KzmS=&wEOSpRL4l9b1kvU-7v$R zzjKHXJZC=o`153M!W2`vlst0xp~|))h_X)Xdl^WWgwM`*-(`wsPePU7X7PRUz>~vX2~J@Ep=)ILIdtgL z!}Y}WkT#}r3pv)<4RCaw2OM3~x@kX1b=5KPzu@!19cGeAMc8S=#csaK;D%jvd4RIX zu)hqS?yufq(IXxb2!N( zMEUaS=cDjuQ~=R7CXV+iT()VP&?ntv78Vje!p+{tAo|zKeR7EVS{b+8?pr-fV<;(g zqkZW4<}c5m=R1R%F|xQ3d-stGW!y&EPVq~0s?wuxvx)|}))-JUPufm&(*xpp$O^W8 zWWX=}B5FHFvwq(eC9#FQTklc|JK7EjZT_n4lsKFy&49Hm-RD_zzSWCLN?S-WL4|#% zba03}T?r668SH!=bFmCg#a{k!tt*J#1)1Gkyjc8JC`@9DhleK_Zs`%Ch#{r|XJiHm zTuEe@{~3pEo(pAxwoRZ12)w-a!2dQ+t9MT|6TC(yc`A$2L@gljx%5LzzhQi~QQRG` zaX)#ofJd!^^%#TFaK03g+ZWDCvCv{O;v$jT+j}kY$pnY>tL;O#^eU>@^==v2?L+zW zDwbD{>gw=ryHRlF6WJ9923&i)sntnRO& zu+Vp>QqdA#g+w_oeA$2hX#u&qZq4PSdu!gqp86Cxi3lEq(l9eSLoZ9q!m8vi4-L^tgix zU2U?D z6wpIX)v(_xtR0-@^ry1uIw;Bg(J!rm3>S)H$g0^M7&RF(Qdby?n6ojZnFPo=6si14dTLilO zy*E;QKG&bw-Q!?4NWXJdtC+{Bs?3P5JQouMWop;tXwdFq50p*3R3>_lL+G^_qA5H_ z+(=HGXjFnce6r5-w-HWVvLe!zGPyJZZTneYAMBe2u8yEOkO+((FEoQi zXmXU>-`nFcz}TN*&5(~Hdk|ckg6bk{<59h<-psf@A7hw^dtfjepN_;=`0*B>0IS?p z2On$Ra$TM|AdQS1s+D(#J5tE2qAv1xJahSdjKYZkPMJnAzFrUbR%kX^iACg?-8hoz z%E0t>(D$|nPac6gZ(M4n3xfA54|F{^AoEJd+WxlHMze48`<<9|Ewa#+gon zv&FG?izqJ&^o$bGB9(uc9aVg6^sxvz7FP&R`WO4a?^q&J!&(OG<#3WETquA+fn+5~nA_QFKu6+nM|))q_X3Ev?1+ z>8a_-xwsf(1lEUA@+cMVp?;qTWUdmof}Plg#}^CS!&B2U5|l^_H?_zo@xj6-H~h-pDXnEq*O*d^!@#AK z+o~~KEjFt!_FntB<9E!XFTsMGluP#IK99HXgObBVUkZWoBlM#@14w#?DpU`Oll!v~EBLzDwWjSZ*3d%kPzI58*X zHZZ~X8ZwP)+fv%)(6K;;haUlCwl;eu8Ly3f60s2r?F2mJD0>276*lyu;Wsn_Wstt4 zA*rwLXVmsSvkl={ME?KjrFQ*ka9oBWaSh31bg!IDrir) zM^#gJk+jKSgaidCt53v3a2Cy!ZWHrq?9Sz<*Bm^2ubuz0LHt%jOE%zGQ#@-TZ)|nt zX&EFf2IP6HO+_v}LYpmCDpmK;xm^Lf4t_=Dx)sIW;r=GQPh@w%ss1^4;AB^sdKBnJ zVJ<1-`HL*~>0C7tX9{m|9h2n}udLfc#wM6hq|{`X2fPq+>U{|JGB)6GdffD$oJiF0 zh2CKD^GSZgP9rCHK|&9t!ZN)UxXv$&W(b6QhROA_uxQ#z_y z)agaTJ6plSXz!gwfzbZZr|O5{mopSq0CuXd;cLG%=KZ2ZY0aZn7&t=)tzbq_uTtje znTD)WnyJu+BTTATH+6h_U@Q^)goLm?G&i_Hp@JV$reWvgBnO1egS-c=1u}FMR@$cZ zz{zsDV8fN02s(^G<>|I(bDf`z0ruDfkCPz5ZvhO?%UBuOnpQ6<63UbVa_fONN>6lQ$4MCCLIzSG7Vx0Z zBBk>(6@K3>mAvC+1}m_e7h^Kv<2}A~3P|%-Rw%?DL0cgF_6EIQ85rJ>3e-zqO z=QtNmuTQ=hTUyfykY^x9i|f|q%Oo9Xaw^6wvz8gVNn_(+nollX3r=5dfi})(Cgc@c zd!>gI(sI3G3Qo^wbT3S!DjqdIj+cU3g=ZIH8_+H07Arn2<@H}|@KE@q8C*NL?uK61 z<|BJZj@y>#Zn>jbdkUB{L=5uSG93^xn{8Vips*nxB)EK&n!Vw*elJybi+p8W_lA-k z4W=>K_mQ$|E4xVQr{GoH%}tA!#nJjZ-tQ9x@6512i(V0DDhZc9B<|hI&tD-yEPO3` zpiuY0S)fTjfW#mZ?xvh6AGNzB^br*Y!y`sx@>umhq z(&7ZQhC`^aU{SAEGO=hc!_0ds?_9M4^shuHHTbz0y*f6nPxme zyfc~XRBxb+jb8nZ(RhXZgA@F(d6*g|TDiV*3!f;`avyV%*eGDfauag-_RHo=3vbFa zfvv#n2W4HF%y_yazCvfO&o!P#QxGgQME%&GeX1RWP38BwJJno1pboFMj}iBK5m;Jy z@8=#Td>XR&;_WQ|i`?RuG*ya=qibpc>0|T5aDhUpm2?Bs z5^kyZv|dHNFJU^)$5=_Oo>qh{AmsKd9DBM=Ea99KS|`rEGC1{uH+ul%U%anTbkKW} zNv>Ptd30(gH=@IyNpA{g9t`$B(ID-SzRwrbojJG2zdKD5W^(0Qz2}>(Jx;z!mP1aY z+L|na={01!*=a&DA<%3ZAl_uzux>AW&W8`=6n45S=9a_v`Z6jw0I$!fJ^Y&Hw}_^F z4D>;ZVI45bsbaa+wL!Ps&vND=qK%jSNX=&5`5XP^Re3i>7k#v$t;FBWV-bku>_X>a$^qiq?h9I9o4__9zI;tdbp5ehZZ?1HXJiXln?y681208_~R+L3-oOnxQgL+F}*G)BU zRuyEYYqZ#YJgf4?xQ}~4*o#Sny?l;2V-F^qPpORDE;u&jhH9prM7j8+2D46z!DX6m zgG&YTLu1AzgDzjsCtZ<=5tQ$dUtK(znUa?&-`TT}(;Y>^P^K=!+B^p-%+=D!AnH_6 z%^yC#5`3h@NClo);cs@%YOV3?_=2w4FlR16Yp!W*poDbIvk^8)FdBid${y`M^GP=-1mk z`i!2VkLnx(+yd_pg!O54NN%2tb$=M3@saZjjX3!>?$1-|(ggOl#l?Z;{@pEl|dd*xJ)G^KRO0QmnMrhVpr5|vaw9X8O
s01akd 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 |clrezm> zs?cH;kGml6Y3HCZb{x@1h zZ5BU6GU{Cpq1nN341FB!_8~)MKm#skD$1lMdLN4@vnwG6P|MZ|YyNDp7N05@-S*~3 zIi&6B{@cZTQ8vp{Z%$OP3XKcl-L-(n_m~)8#O;0xngS=XoD)LN!)y9Mx`_4wB6)4U zZ+|6}N!S=H{U2VE*Mi(QYeoutO>YrD@;_PeXN%vjGsP|w9Ac%Eq?cQuIv_g#xh{xM z_?{@ISj%pTw1`!4>9Dh!vkMgIfRq7yA!v|GQ|9=B;W!1kAGVtMQTFujD#Kl*U~DpO zeR5@w{C7tooN=`B{Uscw7hMBqx!xU62*ZJ(6bbqn#h`K~b}T>!pi$9QIECyU#f>w`j?@cn{) z2!T-7P=AKY^Sh_la}VMIpKtbwBkwDuRrmQnM3ahLRHU1gm5M!^Bx=@UD_!-8&G1|& zzKSg@T%4mKCv1U-awQe3>~nSaF*q&i)U?%&4{kWP9XQ3D)f6=j!kDdZFIwHIn~oyc znx0PBnp|BG-1{D59zGuo0%nT_tU>Z= zI#KwOSyzvBWoCaGCdC2aHoBH1&68$xqa5qYwA#gw(TPRS()RFM?CxE|00py)-uBvA z3`kocIT=p;e4IjwnQutfpW0tzimCSf%yb`pMfABa>P!7jnp$Q7A$~MM-_FY@G94VX zMYWwFZ2N*vz|o5X7F!T373T>4ZXLFNNM6Seyq1IKp9f10Wk>Y%^c-u`33W+f*#D~W z{ayMWz_L>=I@6-kdMui-YtL4Txz@Ezf4ZTeJbE$*WnWA+t+-y~Z)Ewx*qv`sSQV6C zSF~?^E9_sWb1E(4a@%q(JPels^!2&E^UP@?dWHvL!o@T8RA}i!lHwi%Dd!smekn%&I;05e`#gS`2zh5iXMr)6* zz<{#{5)>xpD*~bk$sbJ(TXuU9A7}vq7Cu=2q@`X;R)LN4?&hWoqIvmbGKJ&n!4)nV ziF*%8A)$SHODkwLU9jZa9^h&^!2R4g5~To2#N#;IHe9{-J!oSJ`7_9*fb@~*L`U>+CJ&wp09Y8+WP^E}v$bHQX9}%4Uz3~x$MkR~uJ)(iP zI`T~*lVOF}E0|xt{Sm3A{PJrh#Galv%cp^j|Cr@2M#?nxY=%n%=}klCF@#V~XjrVcpx@qiwCu*M!* zbWgUrj?D7>J^UtksQSY0%4sRQ_c$6z5={@|CznbPjURzt=yt!EZ?d1ap+%1YeFTW3 z%=-=;S=3wlj5%FuIc~&#BD`Vce%ntCs%lV-x_epLTVLvtV)POMIN=*QX-gk}J3n2e z|0dF1qnrN?Dxhfp^KImNktfd?PL8?t5_8il^Jtd0NAorcT~C%*f4K774D+?$5{zig z1~Sw(tsjT>azY@Yna(hC`=DK?uZT5dCrSDrX7G2rfqoBsI0-;TX2n<*rllsI3Z80V z>aoDP&?zCIf8)Qu#4>g1KI+!yQJd3|;Jb&J)*jJ;+-0-FSy68jr-X_5<;9^f3GePV ze2Y=mmTKmF5@wPr+B8dt@<-dz80&ipbq!1P9Jc$XtFA}sE|{V@;C-`HK^7KmJoY=U zpoX2N{ps;vQomol_RI@&r#r4*;1}9G`6%hIy2(i06(!KjPiK*z(2fVZ*FngrH#bfG z?PdgAU*#OC{d1R=wD_+Naxuo|bv>BADnfvxG$Zr<^DvA3YL4Z{LCWr~GqNXa$e{Q0 z8KKvxU*}TVqXJap)koUKiVE$m`|VGWH-<*r=ZziD&3%?K=HyGSF*z#n3GdoJ67o5t zoaR|(mrkv}-o!@~y&~vV8Y+b{Ol`fFJ--?P+Wr3N)^t4OR&fyfWM>LphYYxrmmeD+ zwD?hW%vB3CT$Ge=pfHr-w`N$@9OP-_6M~;#KIvV+Q)86ZwT&HiS1r!}z%gvH&`f0s zeF7RcSv8Q{X$p*CPHieNEw$Lz+4C!i;jTq22rj#rUs#8`jMvvr0@SK}#qF?u;prY{LGNn`a-o5jt?0gayR#cYHPMcZ3YM{i|d8cS_ z7+@4h>NPVKeLodla9hH)&&8S3(1gJ85O|J=6fbyj8r0esUUWf-LkL9Zj-v!whvlVa zJD$Yclf~=mC~QGo!YokY#bqu>#xpmq5MyK@=#ke6k$btZ&7D#iB%;}d;}CA2{<;3f z*iwW91nK3&IQ^-x5*qEQt)!?I3|ZXP8}LXT=1gkGS)UMH3tldvrTlG*H%l(QFBUEY z+5sDuW|aSA!co2G*FNnX7xIz}NAy@K>2~`EiKfWpTgEn!Z~dvdTG^unme)*rc|{HT z+l#IVttMU0?`7QIF0rVm+!5{VaK3^|XrU!Sh6^8IC-CV_-oNK|y+?pk3GkFOpT-ko z2P;uY@-j`ayx+X3&}}ttyjukmA;+{E)MfhzZ+uu1y(sMqzZgE8l}El&$P|Fc1Scmy zIRhRI0|s%ryzjqLARyJW)vW3V2EXF2yYO9rzq7@&*D)E}obnv6HYVoub2mC2?UgU* zNdfC{kvX|P{S~KtJTNd`c{ME8(14#hojVQ#0TY#wHQ|Pl$PZ44$%x624kiXSSp7-xhe3zJ}_E8chVg5 zd+e0E9F8vVn3J4zl?U-tQ@PZMMOv+n90ollxKVJ)JL`wDtkjJ2VO_xePY!6uK5ij0 z+v}*>sEo?^We;asLBn!6$B;_ULTYr|bHiozd?wpNS6yvSr})0hmyah7vnBOOye6#S z*PpY`Km8*H^M?2wLUyxqErjN+i@a%3X(Z_z3l^W0xqcj_Sw2`aq@~O_Gs9X@Na3FR zf}84A3X!siiNPp)+)3p4v)ItYB64?{BdoS z)+%Mr0~tEG_%NhqX@z2#{+@F48R8sRV*^6+#zX&xz^ZaSfw>=?(NYU6pl$5W{@g)_ zTGP=vlZ7TKnu!yHrUN6p#%+l5q8IIyvtlRoBa{MpCyQprhDiq1KYj`XQ56-n z)a*7r6ddt6lb@#l6J!fxDe8)YTl(iD2ftnfY+BeL^O>H(U|M@Ih5m+s+3>?div!07 zz}XWTv9Jl?EhQz@WJl%Iau_MMqf`p3`7?Jg&09EF#p@e`g*Fc^H04ym;x>{w{6Iwe zAOvdDu{03_dkV@PDs3yO4_1o}r~~o@crcJ{M}wTQ?GI=#T0LRTWRY<5ELzl8eb9jl z9nZ?7>yF@?Z)v024N7(Qo)}7sczRCnm19+moA0T__q7{s2L@FN?Kr7may$(UDMx8> zPZb0dTy7Ls{EkP#62MAn7Q*9S^zH0#$^6o%rDYXaYfmo}+_sD3z0 zn$aW5w>nR+M3IO=Kt@SP$@irA0AqK#4DRf{bnKy_p(jjnabO?-A`QQ8NSbCd^VBY=k@rN|_FUf*@9`&yRJBRq4qjeey{O zv9WS~8?ZaZrbebqHaZ{8Yd%|YS+9M#qWzqNz*5bU6jxl-Bn8p$-uzHT$I?R1_A*ei zmsLacq@kt^=-oBRH*wuAcd;9=ZsdJ`jYkQNB;rbmtTx)0-)_d(U=a1J-qI-Mvpu!q zzd3gJ#-IOKDHO9aGWF zT125=UZfa#*f<; zT9Q0tZ7Ng^(*cx3Y(r)^{J zv4}yZ|DrH_<*7HGwfE)O!-D@+I|_U=9E6MYJn}CY^Jkw|TBmw=SI|GJ)KD}VYp`2} zMi&z>cg=Uy3-15;V-u#YJpN&0o{+hf6&^cZPj&uFyr9M5Vby~jFX*Rdo}#z+oU|MB z(6(3(n)UJ3ep@&5=WpngqxXSR1X1kf2`-dk|>8hWvjvKyuN3Q2N-TuMMC9!r7L>9RG_4M6-B1|D4zmX#$8PjJm#MV$R1>=H>+C?58P zDZgq$Q4@g4*r>WbK90_{dd~1u#?Jv$?Un4+T?T1VGWuO06tzYpe%nho;k5LK4aT>Q zyDs>mlCs`WuC)+I^AAs+#J07=!E5^ko~WOg-O*<*icmbnwBca@Natr61LeZ&c5$JS zSj?oUviO6W!=AFYNR6Dh-K+C&Wh?6J7YFJr@5^xo#p}n9+XR%nPab4mbbv?7k`6OI zePN;I1L2US=uGZFGB2I5*Y+ElfRiX?X>%30;r}RA{No`D6_!`GXdRA7cZyo7G!A@lWV!2L zpvLo)z5SBAV+td?rKLe41O7LPQ#8IY5#X*i_;Y`}pqQennoP{yboKs>!OxmQ?TDZG zEYP556TaF<91-ALC1cOKu$jz?nKO|aPt+R|Dy~O1gJTWGhdm-JIWkE-Jwe34Q5T$r z2BSh8w7a8q^q5Ud`SG&6vUr?OIB7!!#4c@_FvYdSkjI=31F@iu$zZZ>$xKifWcMk3 z5We5NPp2>nAwPkUWON>H&xkV=2IfgZ(QUh6kRZ*hhPK53cupvQwy9E&b(P)WXX*EeyRMc+zWLX))zN`&U!mtdp!Rwej=(M+=4YQ!Z0< z&GL$b1I3u+Nwi2d3KMoYoZzy(MBM0ODUEi-h{N+j?qNWvqTt+pRueBNJG#>reNs5u z>)yAXLE9H@T%uy&*+T~V26FW|Oz)_S;i`&t7lIe#!uIOyRN|134Kb;6=BYW7R7!ek<_p=Kbt9Lqle5T-wL1?H<|>#n z+u<{b;@1U~p2^bQKYyvK>v<*f3w(yYyv@^OGyS!f%4r+p=Q!Nn+a1>SbW6d@3r8gd zI-|=!Tl9y4N26q9M1e&7Tu38C-Re##_Qzd6dRB`U{BTrcEb)huS<79HPgVDF4tPK{IKum&UYghEoA^VgfA{bE9LO$}wy;*lkmrfn{ z25}iKO^F=~TK~}s_~U%`#b@r=#AhpPunzIneo#@2U=V_J%ww*-60npy=w%uz`+W+1 zd#h3P_BW?-xJKdEn%u8dLj-@erOxvv%@$5{^grs2-f+;|tX{;XvYJERekX9hnzK&w z9(*q`X(#a&kClyeqjGkr=(IdpTSKMS4O6WnCkL9crZrdf%NLq(Dtcab%Qy@k^miW> z1;ux+*a%HyezXTumf1>pd6BNYZivx`WeQk+v25j>J4=|FcC~W1+uEUbTjJxGrR(Hk z;u1KGfylkK42`kWF=vH5*GbuD=8bkjVptE`%yoy2FwMP>lRkZ$e>2Rw%g;}VB|2lv z5NfFv(k^TMYz&XN6o-Yi`5ALHP@}D;1j!c)s-ea5lkI(#K}cvMfE4fm>@c9(8{v#j z>DWpH?nEJrPS`5sRiJ!(?v-}qPIqQ78_Zx}Zo?rm{|Tuj(2Z6zFnuNkx;=o5GTQuQ z_s05pwfGH^<@3j&rC~)UY|C4yi-vgH0h>*k zsWW%G|AaS{Luf0^WmpHgK&O{E|q?Uj}=5&h^Ln^W0r<;TV+ck?2aUlpA`Vt--n6X$@VIuJh!Fd-`vj_q`#!VBVl~mBP!FYg#)r^`uV~<#!0nFrn;jcA=NE1 zGw{jovFP4X_4XvkryGUT=_xAGmD1AknW|8R9+2c0(e+T`dN{@RVPm4KE07@AfR2d?Kpv^2tPBm*D#9kiH$9$S6LHmOs*^n)(ob31Hl6ljj6Q4G zcBY@g=R^7VvX?r6@#^LIq_6+#OCaQh5+Lv=&w$jAWQBiC2T*s)TVyZDGvJz(f}lTe zDFC8W8|k~FOXN$qCi1UUg|ugh4wPN&Oyz`cU^NJe-SO+kg`Mr5?wzD8on?accja5( zLbda?1QNMn{SU4?do@<)kTCbGCGqKRn_ zX<#`dh{ZSb@4i?@uI#ofZSRU1!FD|^oyR177a9&1)qUJ$gjs=X)6V!SYeAprhTh^8 z03%_5Hj9q@v3PxDsyvDvN5pfh>EhmPSH_Ccz8&L`i=AD6d5q*6X&jB5*)&L0+BhxI z0}TKO#8B!d$teZ}5?=X&rP-IYC}051XX0qGA58DNK!^=z z3!$Od{lgT2cEDrmkKml}G_5zvfEX~~+mASTBJ#jTL&z}E>NvQQnyh>PRRN#LFSL{A z$w@SBcT(vSoyeKq z?1UKN9U;g`eTfu>jCaK5>WVsVExldx2WgBPbo}Qmk=WG|q zsRqW=1V`yr;$pGvQ$UF^36Xkj?mSj13dnCRkuObNMPXU+vJcEC#Cc8*$tjN;>x}%X zDyz&VLw*Z?^&*|;6-vD|I?`aIBUJDV3vR;i)oGmU4yr$zA6_MghIWL|-?G*myZn$) zxDxL(0ZY$PewgO>$YdqNl`yW9L>t?}g5w|gJTEMKk!;~sv?iPw>kz)!0wLI(kRiF& zN|?_jOOmZx<2UW22weHE@QqQL!E;}O9qIH=SIQC3U#T0N$%w}P(+LW5z28{*5 z1%<=Z(ISCxBWvO&u20u1mgg77dO%;&US#xeq-|)%ewyn1RU|Jr|D zTw|@J^)BGek{++?{l_r+Loa$wX-- zll23SjK~plyCNLT*?xC`Y@_EF^)pwBH2385r0yqjHd+A8$7n*r!{-4?R!^!EI0`&@ zv!5I_ULEalW7-Xq9M-v!<{4%zl;=b$)7g{b@Mr|#yj#M@U&-;PbUa2ySL{~nzaf~b zNTT$6vO;lS>ib5d{M;022tiiZ#m^iXy~+yjyHHg-qlNg+BwGeqH6d+-tiwpF_l^}~ zkOk4cc!HuSUTMc)238mH_f(AFQ?Cv#*%X{YmiAY7@!^Oj#33qD9JqfG5dYhe{&&zU zr`=Ez1q)+s&d<(%r&}kViAF;5bq!I~Q1WxfS`X)ih_puss(&)#s3#6H0&RhEryQ{3 zI$%qbgGtFS$9YmVaTk2t8W|)z#>7K)j@fxduxd$1r?aOCu?r}Jb&z}rSno`7d%7+O zjm08IEL1V7@_W6JCD#4g2V=(j;RcJ4X{Dz21JH9Y=kkX2N}vhMU)OFa4i$jUePfqA)O6s5XMEH{&&KG`F^9 z5`4Z^Ar^A$)+m%TjMX7l`l97G-u^t5WP7yHnlBrZm}prlHS0#v)rCX9W`|mSZ}R?2 zg&tF7sV4rIb={OvzDFRLfOJ~@4-Iys23+wBfoQiz=~CHbUcEB0pD z2%>VXlR`OH39zQw#=QZ4gQDctkA?%K4@c6@pZ3voeya|ZoZWb_q`Pr;||I>b30`$DNPe<{oPD<1@ zEg>!vAL#iunUD~HQsi#LeA+}));pld4H>aOHaz@d>Bx2~vT?nut0!1dQ_aNc!{d5` z1H2w+SFKsLvs1+Xqaj49(#%c3Zb0nx#_Ks$HnNDFE+0%(sZCwlaWlrp8Mp)J z1GsJ`sFM@?1g|||7}~sF_1q^335n>PvtB;WoYw=`OIIsXXZEG7xxIRptye)omOZgC zI3&g`)=IG}gbSjP@kZ3d{z1jCi1ruqsbmBg!V#5mH$wOKMxZOO3kDxbQh_J@?RMt4 zp#M-9QUviQtnL1YPk890+z5%|9Vkw{;N<<6NYqp=!r^$B>W%F)1);#ro}g^WSc62^ zd^!H3I^O4@gZ;*8^V%D~KQlCb-m^Zq^+^0Q+BBVRkKYzu0&G>&zC@fQGS{X=7u6bU zf7Rqj#%m3cg4B&5r429G8E@0&>IwOVCl4t(xxP4+5r-Sdw5t6>9%of=W}`w#ROXzH zI*`hq$MkH?Q-Ju5Sj}&=kgE?#n;6%Q3!>Bt`p~{eo!6?s_P*`Gk5nmIslxJ@M@{di z`5%?$|8@?4yN!u_SWt_jBauI3v2%8HwNd*o^z-RKOu&vuWF{U|dr-*n7I$fr@Q=6m zM28`9GexdedHXjw9NzBhn+GIu2ozJ}<#hc^xj_fV^qWCaM_+G>t=!2<$SjL8)z@@{ zc=#n$PrmP*tePJ&LrRK0!RU#Tn|;O*W^(3~Cz6q)6nLOYSea(eMR16iFQR|)R!o$wCcXu>{SNA2Zkde!h%>%{>Wlqk9LO3cCGE#)! zeNzDJiv1PS7sGvXd>x-r>hD4hkL($gP%b(;#Lr;xMdAAET1f>}YS1*aParbh#`0Om z06dvz0GZb_CZ$$;bR{~|8}3NTun=ZtDKmo8_9L`fU6}5k?u%dk9X-?IZ9e|+Xj|yf zLcRw{1igLzvux0u1QAl`UpKhm^QRA68L!Hl#btER7 z97nqY@Aq2Is-6pRHR|0_u^>&f7+GQxUulM9QNvAwRN7L#ocz@qulB}#+a;oLgTu=otVAJ~D1=e)q(y-klAA)&QCK`sf$R5l z4SIbh@*fyNTbQRW+~H-->M|EWNWklgAqc)?fXvCp5+!DdJ=fF$@$cz@KG8%qdb8+x z_Th$vgmki$exb^&=*pFh9=a7p5i%LVVQkuxNu3WZo4J;}xJumF-|imwn2PL!yp-O( zTa>jB5d$a5_0cl^tLr7px9Y))Rda5;bMo60HpZ_QYH*Xx80vbQWc0le*x2WE(4yp& zUWB(?Ix|J3aM8_oZ(2Md}FHSH9md%@YwyInM7 zlJUyoVmI_X(*hFJIrZEcdE1m(kX3Ev-qw$(_N6woOlv)g(wnnMcm-XrRDQ4H);l}u z?I!+qn<*aG?ja{Cm6M@dXey2_y`nKIrKY#7>blDzECr*!Q>8c;%lwilrXj z)fL&!Eev9NTtj<0AzYiUVRjCls%n?VxSGb0>xqj-qeMFvr|*wvO3I(|5K0R%bE0X5 zMXjf(Dk(vge?hKB$P$oVh>;XM|8~g2&yRv>fGIC|Fh4(|NDT(fOgP}2uwzJU*~-ts z!WwlIm$bZtgrTpkI2!YuI=}070^EW= z$g3W+=O*}CEzHE5Uh&J&Citz~SXavi zHz)72l7{H`0jk}I57%WMy&vrqv}Yqg3H)et(vBBlde-o!sJ;)SuD+MNeE?tjc#g^2 z!FC+b6|9z;3wBMcjv+kloBNN=UF+;SeS*DyzKRJaduDc)3@gSuIU7^y= z5K+!Cxb^QBe7)5svTWGww6DAzZX3dy;bJGJp(bu$n^T(q44-hrkXC8C)R1rF@k7Ew zEc^FP(IeC1VaqpRJSMQ9MB3*DN{G7s`ix>ojqaR;GcpZjF?>c6-X{?;h>+gD*4w?gFPHqB9m)Y3Wv3FmR zge9>y_!_8wm*m+x*T@iWGJidPyUmWbqO0;y-tt5KGq;6j0jrjD7m^F9 z6N;?IVdWdRhG4-)NEONlF$sGkx@(WWWtEVxX}LL`wik9u%m;|IBo@8Q`ma`~|K$q) zezgf*L`PR~aDy3!xGGp5NHTO((#qhHIL5HR<&*onHJ%Ovb^l_kY#_A-$RH`8|El4m zjX@qmr8|16ouq>L^_kM(HqEi}SxH95A*y3BUlZHk5MJVnDLZ>Rj=y8cqf+KBpiM>}FmRww@%U=`9xf2dWOB^bUkoNHAc<0G@~ zPjuq&;5+bnVHdVp?C;l9B!hY(C=<-A0{r=h_(oB7Rz8pbemptBLvwI&aC`2t%gD$; zvg^?A8yLO4z2wc3H7a{YH|}ZtPFMy822vpkb|t9lhR|bJbkYi9)?QHE1JS{@QV5VP z95GK#!khy6z{ZY_9vjHC8qtU9+zHdKU9^liP=kXAWCD2aNL~d`Fo^NrA+pcSY>l*@ z4PAAvwW%@8jBD42;Zb-{eBF~vtE`lKN#U4)eM|Xmi+WpU=G%8ojo|BPHSRc|7!-+b zJb`zF463kIk!^7D!rUi@>&ON7GHAlLPIMJTl2%RVkNxJKDirj?8&3IDBB^-XjVD3= zPHR%3x4F(DmkUZp29`_3AB^$lepw7oz7R~Zy$QvPdSK_w7?|5m;7(T$cj$9MK)w`_ ziDxN5LGbISY|N#IfpilZ&4~g%NFl9!1V3`b)?N3341FNBaEo1TaFOmA_dwziqx_Z3hj(3O^`r!0Y@(69PJ^q@G0$M9wh zSsu0+SAlD5dcCvgMo)Dh@A}`l49PZ?tS!fLRp3^Vxg(4LOx1>fa}HP>%B zs3?EeO09Dejs10pK0={Wk+;85PE=m)A)dH&6c`7PavGth+6=4n&mSN`Z?UR6DYyBS z6b$tLe|)`VSYAyMEgA^HU4sXQ0Kp}=yF+kycXti$65I*y?hrH(+}+*n#o_KG^Uch8 z?ws=%p1t4N)zz!3S68q4S8ZD=OckTb$f|sfm1lR+IF%(TfKDf*wh2PNfF6$`U%n)M zkrfXOP3C+=g@A(6NK7$KNc^@@nC0^WXho!2WCQy(T1()=UYd=3lM$0h$9)p|p^4`u zAZ$b^(i<4+9Q5E+P{4jMG)$@5xjF>tqaHZ9*9|3J#oJ#J!IbRVipqX}NbTFd^Z}4; z?48)l6xKB_DG7YYCmHZ4g*%^U5twF4ex)Su9d^-14>}?jZJK^}g6(kgV&8Ty_$f>* z+a@JY?12t$%j(moLAuhO+O^C8WKE6l(5Pd-EAqc1!q(6Ta5K1_6nfIEsz*TTHHlvq zU?8xKh5RU=BC!e^ik|TI_4)KUIB#LrPbjG9@#5XZdn3Vl+TNqHilG5f+%P#68=mjT zm1BfxVZnO?{1IoA7%Hsm8%RtaFj+$!_sUFL1)fn$9{0v-s=|AZlBl@ok)n~aumj51 zT%MX*m1?Rj4crMZi>j%nvBC*onn`gzOznJ)a3&OkJ2m5Vr@ozFPdTR3v0>;v=fDCw zG2^*%uQwQO?Bd}tcm*k>ca7+W;T9sxI)oL}H7(w~&o@Wmc~z!yCy%A&bJ3-D?5Wh> z{*L4C4Epdxws}qmA5a_ZjiaM9JIA-Sem9c95#!v3p-$+d-kV)8Gm#oa7$FLTQr8Vc zuZiP8R-YCx`R(9ue3SzNyO=b2VJU!(&_|n=?Am%!0n)b_kCSSnzc{;Y5B|h3zas{~ z4uI}=U%E%|_s2a!6@px}Sd3js*u`Zcc6JQjPY0s=jvT)_Oj+Yl zUG(n5cAAX4Sw7aLk6e&~OI&+I&LS_UZP~bjW*4JpJ)d~#a&4!`v7foTUv|dHNe3yP z$jr>xuU1>xueamh-;B17_xHP_N_-os=U_s^&hiQauAZYfYy^EeY82!kCaY;8@H88U zPSCKixIxBg8GU%(K&r`*g$qwoUulNJb)9mE z6_9QW{c6@NRmO`m$SW$Q`LcNF*>-6_fZFqH88)xM5+lCT5Ji<6$9r$Y`U9NV_36+R zdx9rjXuY|>NwuLAJ-N{<o=Az~wO~T3G1iP`!uP_ciYwD%i{JmE6N^eJm|; zAKWel70xR@Gm@TxQWX;H&{4Ic2^AnVN$K^xh)Y z$}0?|A$z@aLUu=ZZ_iH4g$zgLJ|Tk{{IeDiQmW;1c8`4f^>}v4xJ@rWcc=bdH8NGr?>LFZ_VnXnKu%Z{Qs>iVL%mBNlSr!)=olOYBO-uA<=P zM6#-*5z=v?&UIBv>K|b4;PL<20LV{*>E*@s>W6h|qD4z)aYP}_VQm_R zZJ!xXl)M09m4WL%o@;#S$?K{`fMjB@)c`e-=gYX!h`{yW2OCW;E}_NCbEuR%s&XZJ zuLRmSG`+nA{VR9S!orZ*?s;<~81YOHe$Y#yyMzUfi&_pR_P z^&@F)n$q`UrAIii=;Cn7km_eGx@CrTavE!tSluD`xPf%frqw}l5Ej*?KO*U}en2@! zw%dl^KQ@Cjc`G*a=7+}q!s+k&26vbup4<*94x)LaYcucoPs6EeI%&#)?u}KUzuHL@ zSI&i&sXtun;h?y~+P|Ly6afIakt~$X&mJO|WeY7*WoLFa?%dWtKD9rmWJ=n#@SBvW z+rOo#4h0@@{RrkA3Q`(tv|IJ;u0z3NGXT;EBZ$i@@oX$~OY%uJmTH@w7Y)B&AVM$&H~vVq&n*H zw-a97+H|HAUrto|$RfI9tlQAWfXDpWy<~Z%@VFsJnh#*D#bP?uBykY^#BoolZ+9q5 zih_~x8rkYie&v03$DZ*F46@azHhWmt#Vg2o1L#HqDqqp^oUz7n$;-;9xi3I9{_$85 zBQ=lk#A@G>x$9yZ~E)H`5AwB@w?&Y3Z`Ox#OE}5?+_)N?^RH~uLyl38(aQe z-1bv`aLBmL$4QmLz)5THJku9W871P{B1G=Iavc{cRc`G&A}pS|s`YM3gIHm2=LDJY z(>KJCQV3OQR)%Oc1({|Ahl^L|Hy7rKz?A^rOoJ*j9J{K-PXs6tf@(8LvNnQ6YYhxO zIa=?crf!H7Fcvao!r!Dz>u37a4d${?)m9<)Ir?Y`a-t^#Qk^`#;PH31Iw42D80&8y zP@d~%D3Vyu|A>(OVLP(D!B2c#PEDf-DwAz#-^_t_2kih&%VfSnDbOypc-bA!z=!`vmQ?yKmwvP_(dFu>oOaRUEf_UCC~2@rpRbhco%b%N+@bN`HSif8(PxR2tbE2qG2Jzo?rw~XPGFj zJzlA<8Hm7jRZ`(}I^tlDN8H?_B^=4Dc-q=}yOD_!+9NZAEx8&B{75IK+1Pt3aF5X% zBg(}(7~mSULV`Wrew-q*Fv^1gUB`S4wVSq>)7bMJiMyr?K6sHes8LcbE(y}h88L%` z#QMckNIJv3wtUdCs6=GfBrEs2%Uj9B_y+|gG#I!0hnFF06juHG73bV+Qf`FLYhJ-6 zOeW)U^5P93zWwtJu@++#JH{%e6F%A7!%!6+;od-)kj`rb!`E|e3Fl+JzSz9;=y3kK z!0w!DtbeosLielp)m#hC>r_Vc@~?`oIq7pXzexI90S=^l7NKj8Wu zrUEh>*S>a5uYOmX9ni9Uh9+Tl%u0UvwInO)20BAi?1{$b^()L``Q>)G4byb8iz^+j zWuGoBU=yp~b0X=vNqN{PmRms`_;7-)7?SZwp$a!u;CD@t7&u1!WtMr!WJgw}dgIkd zDI~z{>%)-PlfZTb#ORo{Io3(GmQ+!9=5ek&p#A#RiB#yC!FdtKY9?(-T~#|8-F%L& z`@u;dMb^Bm6a7#{z3$7TABRaV^Dbo(Er?DEh(5237av$%<$2uBxDfLxSy|y zzWTGj|AUZDXy_HieH1J|L1 zz17>b=$0D$(yS&xFwOv|wf3EC_t?P2{F=S$1>Bbf+Yv>~aUF0*w^ohj_jzn>9*X6d z$r_H`c^z9->-s5g==0Qgs^%ieTG1;Q0tQ1$1VOQHhX;j+6Llr{g0}|+g_qv70mbi6 z4wg&m*VOvh()#$?o_Vq`v9ge|u&|n;k|ovB+Oj>@a6G4oNYC>EbTUM-6U7;O z*+Y0Zg?pOc`HacP`=W|s2!%udU)d`pT$Oe4@<^%KNsuRQdy1QrW}CNbQBtB{iIDx} z-Dvy6$4ljMQjNzRPSW>@6fz&PQXTf_kBbXuXiSSs1#g;bAGVZJ*Sm76%g|}b(cIWO z>YGE^9=hU@O6by6qHw7{u4Al6C-{5fxnAortISb4dAJ@17LO=>)1zEzg&N58##v@t zP8y#uKwtel{4K|H*f_#xi#By0*)TcClDn{qEyA**l+8TAy`s2AV&zK%ms?L&Io^V% zV&v{32kELOaBu=l+xNUB2t#3Lknz;2O*Uq^UsG3YHI$X3&RDIKb93_|2g3C@L_uok zqeL|0ExzqKX>u(^wB;l>cG{wcPirL4oMqZKF+7x`s!!!%9dOjCG4Cf%Z&s_S1k80v z+{P+PtiCQ9v*>{B)MAGHjOPiSG~Z(GY#x2cCza{!97$^}E)UpxzL=1mVh`=>^0&68 zkR{jc?l3DVv+A}uf=x(-I_>z?VAoR$10QkK(-{2GmLhcT*(-v3z^7h?4aRggM0e^C zee9aQuI3FCh`@)k9ddxl0_FWWg7s2gK)?+eAv}|gn>?>Cukw$~S`M&h2srJR1>6p9 zrx!?YrA<^`n#X8eE-Zk>V6(7R5%ITEha~IP z22U+4bbEV3R$1U_Pf}j6imVaHrvg3L*hpRHuBU!u681!U9F#GqNIv`}r*N<}SNlK< ziVBVo3Jhck(nKX7{9tFNWQZOY9~T*MLE6n6enSQgrh*)j&Xd7aMsZjgmcd525ns3; zeX^hzeX^?{`XP;LqgE`7dk;zT={=X16R{@9)#vcO(~o;^uTm|1-pzql+2eG^hh!u5 zi2mUoYkgxYFJw5}#d6?h=hM3s$)pd?FP=@IIlS#FNLu*=NXoYc_0q z{8Yp9g8Y2eE=#MuAoFnE1KLW$w9I*d1&-4Vv>!x0+7h{6o7nRj>}#%F*7(2cr6^y5 zdhg_=#ao^cN%qX&61e)3^O^2(jO5xN9*)s~@U&HP&@u<&g57pBmwq8-M)-bPP(nISyFg3>{aq_}6V_3j=}A6BpL)3kAN54uN<&c&yHBVB+I&mAlVpf^^(~aLQ5U zX_mSVgJWdXhhPZdv`?-tyWa8v!Z+W*igC=k>Y_Yj682@Hk zmwndlCSb>72p#EVp!N`1oSHU50yGe9B1)2ed?>MR`7}RVNX;sy{_m;8hYO)eGi}p3 zVJC5wp_#5|If=E2x0S9Kwo18x0xrN;3UTLB<+)M6$f>VlL)5iKv}GcZp}M*QpOLV) zJ%z(ImQwDN^}R(_GVx*}ao1kG5!QN6xA3-N7sh;*uh2yt36qj-k{ep51QQ$)Mb2hr zC++}Q#L6T|vaaD#)M56g?}X+z_K6R`mX{+f)47-LnKG2vGlR z{)_LbiF$(L=kA2ruO`Eb*xiNbrrCb&C3vBZiH^3QGt}-ms%iqn_;!6Ko}R$~k$%|4 zcEmh&gQ`#n7Wb$34YZEGOnU^4q_Bk@ZRw4##Vl1HBjbqY4W0ZEYd$-c z|D+AA7d>`6bduP#uvOn7avWxRb*kwTC}E+D9mK*vm4KBQj?` zWs?^XVUm53cD+CH^k>_K}*COj>LKI5I&j5v!@-fT7k*z;gC2(Hg*8=FhvW^(0uMiN0FTNI{ldM>Y{NDd{?qZrJtA)nR_f*Czp%5{(8F#X(MQif&$VOu;Nye{%R_ z+0paxsGLO1IJvB}IdQ6r&nswK18THaS671O5|4)OO%j*XK6j8B-d-x4)o@6jq+fw% ze}Z4^CGF{(6R{?`L@7To#f7oAfv0psdXw9c2n#Ekx3<+j=!=rgO2euT8j=Z_j_cK1cd z)Wwl`vW9b1tEXc-a|T1}A1>vxLf-IRt+CO0CqmJMy(|bgpmf@W?us6xye8Vf7L`jk z9c$LZ9L3nKg#_Tyx#r`yZuy{o?<8g1YCHUbRLh=6xs_2|{pgV_7h zoueVEL_ryB{pXt`e>UvrykX)*#hb|Tp+m^ZG8#U9H+(1Agn{d9>aBqpPbsTJgMY(&mlFgB%3<1aV$_a)bJo4N2i;uLZ-~wF);GPSLbbg@iGj6wOxHgYEjMChF?u@aLliw*BND)S;zY)MT)`f#Y^)M7OlKM__Z~FcppwM?W;U ztvN*oDTE{MYlA!8--iXeckY{(VpOxYZO+^E4RgZXN(bm9?6j@&b0AHOFk|=APuGY3 z@+#lHA_a5mH8haDG=FJn|We3TMri$ z3G3VsRxIg7;;6q66=p!hk2HU?AM`YJ;-Sr`Xy-gMU1 zAdFQOw#mk0Jr@i5Uu1bGqRU@DNwqT3Y@j@c`J4e=07c90XYOT zG#C(&nvz|YD*+Z(F^h}Pg8>H}9O%;&dtUWk73SZDfM}#zHe@reC>4pDCV}_`bB-n5 z-k+Rxa`8SgZO@YDbVl=rxN_rS?-wGgWkt)`uS*uKq$QU5;`SUj_f)p=;*|+FSjEa> z^`rMQpG-)UhG*10GFD`$WPzX7fF8u?#+3LZMS{O6FwZTY=vb9EoszxW&CVzPHT&&( zdRBdqPzB96uj3v44}qR4+in3;iURgdVk&v)rV!uYXc>X=#c9L({&b9CdEm5slE4!} z8;oOYxO`+p!W~JLuJoR(&2djXtvtc%BwDc4eS_&!OMOB4XoG#^n6qcE8~5`wGNY$z zFwC>QK27Fr73kZquyRZ|JAT87UFkvf2bdC>ECq4}S6BBRY#(7?s<(eGF)CxJ8fgp5 zMi4qs*WvbL?tW%I_}V5cs75o|JsscD*UKuzp>D#|Ozg8!>PfToCcX0E9=n1i{-j5n782Fgj3^c9hIPjt+Va&wYh<}yshMzY%&crb!@ba z3FHt}6ptj>^~uci(48%xDg^CbsV-Z_^l)JMQ)2Z@&1P;KsI^3=9cZFddQelL*Tn~9 z*U)W9CsoFD?BsbZxz&Q|N#{)_npnEqft@WbVNNS(FR4K%OJlHOxrQ9#&RrFwP!=0K zaN1PIi0rLmPKVxo5{P!jj4Fd^YqMu@QEf6G>+p*7E#lUsWBd=A8Mcp~-$0r93ya9- z31fny2qm40?YO%|%QYJQiKakb2bdL+0kh0l9}$@^yVcqXd=b#r(Hac)6{K! z6RE7DFUB{M>8WQ3Be?UDoU3NWr9Q&$EqO|u>9h3I?}~4(9X-mEDJB3rniAgVplqA3 zD{SMdkbm2cy1#y?o$QWs%o%qG)Yi~$-sc3%-4X^wx^a%BeeS9@k{#~x?(W`um^igT zQt?AKCHeYjwkha&*`c&Ori2^b8*V(@0P8hk0O4!%Dto6`289u5(wdezA;G`zfk#ho zHqMc1Ri(Uk+C4)z`eNH}b-JEqX^HP1k{dMjX=Wh}b+1w@e9Fg%pgSN~ci+Z4Tvr|2 z_ua!`U?@JDwrmBcej*p(Ar?)Wt(1F%k6s$kW3g;4a+0~c975onqTmN7IDB5!DmFK~ zR_EoOE*IH_kF7?WS-hvJKXP5@VG^`|glyDA%@M)13a3u%BDj3}%yn~-SWlb$TBx{9 z%l+P`ok^U~rb$sD#{i4a_{Ala0*$MYOBSW!^*%~SRl-0usb%bj=h7H*G90HW*|Nha z)hKP|`s-3wTc)+EY2EAY1Mzuq&to)VR~I|45pR1HSST~*JX2deJtG+(%HfqcM2Vcw z(NFWXhK4u4)72IjllL#m zARkYz5};~P(2l{Agd}qGg8y@Q+=QHh|6sA=#=((=a|fFcdYKvml8p_#$03!i2ZCVV zgn?;EnZJszubyM{$!+i5L3RJ4yq$iajHWkv<*NDVR5OR{2@J|8c4gG`{qGHXzR$`w z{Zp9GLjxqJZA@mj_NPU2K^O7S@g!uv$U)$dd1}lX*+2+aqSASL9vPR0NG*XT20{?m z>*n13`?&S!*X6XZH@r(e;;%Qun&}k$PiL59>k^m7Hj?k-_K`B%bg9sj*!0itap0qF z2f9?Xa1ny8XejA&Lt!yLRX=P>>~jUrSAm?r##d!6`Eb>amdL$IWm-Sw3pMO*eZg@3 zAp$9lyzb3ldsLI0<VGx1KPtb@wH(pQcgL+!8Zo;!kgfE?)*Qacih=p0xCz!SlakuUfJ ze~8xDs>H`;pff88B_;H?(YCUqcVdV{+4A7>OvXQ`y9m_?eFFQ#V40|ycvbzsmzeiz zex5tl+$NinOG|tQ+P222`R2t>a4df3{nK$u(U}nHdrT241IoLj*&K3`p0f0^0zzuL z9D{+BjPMT{pYuDfSkWsVA*p^hHjCAH5zrgQCw}$~geYi8a?d!Q$~G@Nz08LNWuD=q zTPj&wIkS#-JjGd2!*-wH~rrJyu@`zD~y9$1_zPbp4SyT zn+u0WsSHu?Q&ARa_zSrn)5|0stvPVex;52#2_VGsr7OCv6Diat>sJisQR(%-WqSdo zsfJn?y$_Ex@|~kcah$PI&Bb;`N{?Uym(ForoBdA}kD*wVSuyR~w+P{ZBu+RO(?J2D zhHt~q-O`y^Q`YcoIKLD`1OVw^S3L4`SGAk^-AMA4=;tigS?1UlW=@CHaf<;^O z=$_r#VG^on`oJ$yKmKQd^@4~v`*2L%V_yOCz!}~nQ-;142j69T^r}foHAiQ1$%BhZ zV^L8Ql#W0FS10QF#>MvNu;neS{94hhCVD&QB4xBfk|o6d>&f^ZJ{QQF#2i=02p_E*UAGi+Nud!Wymm4zOOL zYT7-JxjdVQ{VUlW-}fyw#_l~(lCHTGs_}S`%xicq3Lkrw_5}zYzL%lOMDcetnn+n(?=oM!i%2J&4m!BQy1csHBF$T< z2j4&G>!S!*+N;orDmszT^5`DxRKK?0_HgEFX=d@qlim^;JdEUoD4XtAoX`8KF2AaC5O|Vkp?pR9aN%T83MFGSr}rESD{T03 z-ZmO^q1MN7wtt-1UaKpcAx%0>S81lqRq}ct-iBD(6vs6zi;I&l+p~Glry{&{5ba<) zFuaE`c6C9TTakT<7*lxfb$vj15{_FKcyv|7i8L17-4H)>*XN-Y7Q-9KHOW?AMd7vS z5OR0tzMj*(>lwDhHBPsnl#6L($C=D^y7pO+B7YBpCTy=u`zcE;HSbvC@$7{W~Q zmo}32!tynQ{bxuXz<7+?=%(S%Fr$@>WP zNR{bI&A?lzFP78jJKv1%XXAvWpV< zTaRfyc$7vCT!?&kSXXprAj8B|r}2SAn+AlhYAP zn`=t{L(leuA-wMO!wQHHw!MR@y#nmlYGjAB_3W}X8(!bKwv2BjS^K)Xwc+;(KgfH| z0iL~tTz)S6)a}gjQ{+%ZSw(7*h6rB6@ve>U2jTq?A^`8H|_5shwb2z?JT8kCo5lNQzIsPe8BczZe+JFP z^?Y|(B;)k%ZDx}m<@8zTg~9auNJ4nBoV!;7eBZrqdwMKxFUDgxcx{70chlY7clY(x zAr$g8OaUZLNy=>0;CoTW*m3(Nq|aEWKCL^+JQWCM2zHY5aEo zR>S&{6X{k3VyE=>TOLAmobzP%ho{ZdCd9r=n*LMD>1j4xn46ipz00HStSF!wwkH;P z;PLCbi%Q;@FeFojZrIDH&Tr(Oiu^vA)g20aIPIW8jTh^(!7+}6?)EvA?xqGx3d!8I zRVd7DJGw7k?x>_8Hoo9Wy{%+CKka#YKKqrpY+g|U?On-@xT}62aD-vEmQI;UultF& zwowLiS|zq=mHB)K<*OcMIoF#yxSRWBef2&+3bQuxQV!3mX0OX2q{tNP9)IzC!fdG~H9uRI%uz5k33}q_+H6d2{yYg~~Ra|bZ zC$z89G{S$<2saqbSm99?2Gr1IC~PfSSgt9KIla#2%ft)zJaDobB};)==zg58TadQz z34mLJBJFE;TWmj=6@I*d33aBiuOVA;J;~2Kp=;+hv5p#jE8@AtSSJIy?rP_*sDW=< zxn=CA?JtP0uhiD@Q>5DKzUx{2ICV9FH@9NL(t|ej3M$zTnf?H8GjDRf6d{RuVB@di?T-z)9(`mt8#JtI z3PR&V{?bl?e3cY285L=Rcxbqix6B0BF4``NQ z9JJ-Ij1MAbF6BT?G_{t6bYbyIS#!qaz6H#pHsejbaeZSUZe@m2ok78oy@hts7(IsK zifB=#jr}8^eE|1>NGccN-e4zTX5O_uT za<24KTFtlzWLRW5NFE{Ntv#zRx3?2>wSKdilbG|gF<_sz@?E{h1E$vIE}yiT?j` z+c=M39oX|l0H@7VM~;5ZKYK4W^7WH`t8d@oz$lPoC{|>ADTV(ql+0qjeQoxUbGifj z()OJM_MMnVoEpv#G+-mLX~1gd3;*emx%hX8QJ~oFVvLKEH@h%Q z5}mHRPP+e3zaS#t-EW2C57MgrdsPO?1#JC9y;PV55C2dN?@?`;aw5`L=Bf&fbp9FE z6Nq%O!TNR)aViMFzvGx-_Z!*eFUS^u3n99^pa<7Qz-h!FGRXQzROGMU?damF}@MI+Vf^!lZGZw z-yKA-y-+KdB>c`E2pQlL@0v#XdJ5OglITbO`xXDofCkikf}D=>dPxqV zaSNEiQm_-3jI^6rVDs>}B}?;r7Xa;u1s2P;B&yuBFi`GcFK*+Aq(U{L4IZ^D#u+!K z?SVfshim0rHxl>TFBZU-K{rwgsZTQa8rfCl3pM`n$4Q0%w+RA#k`OIwMRcg}v`!84 zn>65;3Vmv%t(|ymN7O)7$Za%XG5=qeKR|-rOHZ;r$g2}Uw8Z;zvrU4w4@OxX3yxPU zJyaH{%>IlY;2_Oh54}RCKEs3cig8A1>T9Xc!Rr5~8`}N&*x+tF-h$69Q7RD4F}Y|* zUUGD~(P({%OS?${#{Em4*x~OpcWBda-(_j@Qr_Ow3gnoHB@Fer*?Nc;dy&jaFKu>6TmDsY;W$6&p15>;hd$ zxMmuY?D_%JSD=E1rnt0eGKdEPux1?7D%k=>=6R}7W^s;rlvIH+6!$ole?s|xI!6T! zuw!k8Hs&GF7cgVX2QXt6Fars|-4zbUeA_=}7{i1dH*Zy-@ZewBov0lk%v~le;t`Ec zL^_J@;T6|XT!H#nZ%Ac}HK4Dx!97_3)}#MH_IHeKS~>tLCecR#A}HMcGxPqu^#8QS zmJDnUP&xJ580v^`(G=k$cx;7tYE#mX3pcH5TbR?saiG-t49Y6ukhE@($eV-n{T#hgJhWNB;1jy9(qz?y;E9 zZz4}z`+pem59J7)mI!w(eZdgt25Oy9V%YTBE5|JBn_3@~^K$v>n{imiX0_uT|4wY( zNMCn96}r3G$!5W}p&$5*CC{u9Hm04?y+5L$o3>bH@Ryb+-p4q21^7O()D#l#nCl|3 zTye?ZdQB4T+Ma~ksRz$1x|z7Ol*Y5H?2l&8dukW#5tP?shm-!9ntwj}f1wHqMEa4u z4oT!>4fbV~>TrABVt+JfX5i60-7?6R7J`|_n%O#&HjpgxucIA-&e6;(H`Y@bORE#f z`za2SxZFKj<`};N9vVy%VjDY}>?7(P4mjh3X3xT|`f`on@{wM)NB!(>EFH}MbL{r@ zz(=o&&MH!~2~PQnS5qLi|3-L z!XNFONFFY5h7jguugevJ%cb3?GwP9EjlFpP&lrh-4v|}f4#sPu0CTfE%X~f!Q?~H5 zG+X9UxsI78`nR3zBETsC@uW*c4nPwB`3M!%b;2K)2J?x%1%R#><3oho^Tt47r6`acT6pwNQqxk~2rE3awOn0fk{t+m&1 z;3jeYF(2^6Q^$eEGgbK?d}{(q9vF_bpUcZou{ww(Y^W1-9RTmhzmueB+Bnni25Uye3z?Jp*PaKQf{($X?9dl z#ZrGwe*g!&CtAjGmtO=N=GzXje1x;FU0&}ZCC2mnEBV%l+xNwfRoUo{nkdeJx{#tS+hFl`*{&FP^e4n*f&UQ%wfKZd4ipVf2iIt!CEos3d6}{Ittl|AiJ`ch#2I_;8&=SR> zuKS7--lWCsB(Ung-s2czuw_@|V2H=^ypPB6?Y_XDGegQkTX2FMi-Nzp0d*ZuJab6o zrgNrihnK}c8u>sk40#zy78S61yVMC}Ilizj)$_06mkU`5hR5A*5_Ll(T~2;8Xz4)| zbjd33UwCrgM%yZqBZS|*U@E%0P*j}=Surt>k)QU(#0mZ>@14v@ip=m#BipfY?J+u= zoT}^0W#9_!|4e&io4ogPnZpo^jhM6xt$3ot(4wlwMmdIGNX7EYKq0?#Y3oF<1#m__ z;bsy=nCHLq-yqW-;kz63kb<3ZcYH-Br=(eyjerOvVr~w5cz7r$RJ%TBGuYjK)-jO& z8Q}DH9UuJ2CSxn2x`BoO`f3q3xNQ2%P1USS%e5Ya02ke&p3!q4DG?SMA0IHQ{K9W^ zFB(dlnD8ZudWV^nWif8~l$k3>Z#b!ZJ-BYE(dJC4XzW>DQ`7&A&lce(E$ztQ(9jQ{ zV{Wy_9Ko{NZ>1{exuq}4+TSf?YaNzqy#{1RDagR$Z@w(FO)W0x&iBT{yV^(AkB`rX zq#ml5X*9}+Ga6r0Udx_T9=Dccl`ZT(xkh$gOf|WUo*@BM4gVG6|8l`{n(q^`^V!R{ zSvW8>aBCNF+e*k*6$|P920UkKKSfgb)$6k0xshEW1kb8$p0Wqlm_09g^29XJY>Z2iY+ z8ydQS1)mQ8T0)Ii4livi%~w>)8CV#e~$u)Mq=5^6pDQ-m$kf(mle@Z-19yg=Mc?r;`leMk#FuVYpG2TeDK{ri$md zT6*JwKXJ@fZYQ#=BW3OAZ}g7K1U=A@`dD}ot*&YM_mg+jnjz7|Z!mgy&?E9_?>a3G zo9uMhdo~C*9twI`^?T@%dY?%ZjYW9BXn$u+@pD*XqgXV~d3gnjvpm+0t_3nP397yn zbzV8LWZuzh*c_MM7R1S|sRra^{vxh^1a8lD0|l4n3ErGZ{bNkwsK}B6j*=Tav}6*U z=Yilo$m>UbP`mx>yWvYL_=oo-DNYidr314Kk_1;2IUN^)keG|SjWkFavdU>j;n1M| z%8JOIUnt$id+fQT4JBJs`g-KCQ(qxdU~V#4yroLw1b?Iazj)tk4)7?Ln~}4#3|QTz z27J|K^F(62PRCg(O)jU8+=J$~1l^mffTok)&d`i%t22IBc$jTZ5LRMcQXl1gY2(TII!4@tO@IlSZIP3KGxrHPf=sYdfoK z89nu{uh8vm&s18s-)&T%=+*Bxp_r?)Yw0~eJ4F>04L^INOpJcI{r$M{_h21F_Rm>* zk^IOGfqZA=;~L&`?2(K*waXO~GI$w^lct^*>|tsSLReM!^4i0i5X2Fh{hVH~4ZN z`*a?7puXA&85)v)R+L~ErbZFSriM^DyVZW-C{)+B8m;G&?#=pYlzBfONx9mBQGK;b z?7dNcE-NP2cK+>TE&94~?Z?I1GvXG|E9<4Y`s;$bXJ_)N4iusoNg5WYiMHW=jQbe3 zY3|WGs7e`SwyJ`*Q!#_Fy8}c{j*s!eN1e|faD@{`T-S$8f8n6`?|ZKfl2kqbrxIHM zv<0q*Tb6Clay~JmOH_XCAl_PL(TnjHn$RZEc+p2)Ub_5v(VN>2x*uUHJJ9DBKMdgX z(-jD@E)ha^*H%>{HbTLGl5nAerO%cuCAwGkbq4P?NMprk|gLT_sgRj5gpnK&_#`cS)>et>!nCeTBLR|le z<8#N1^=K;4T|Px@J98&zn;O<)jFhIfG30o&HPrdGg;i?TV*2^{HEn^G(CHq&&)h%U=}z{- zgoH(Oy{>8qAhm)FuJ%k4#&(}BV~CZv$XDwNGS znZ3vq9#*Yk^8(#%hS3KHKALnZe&)Fe zqE$I+z|0cR4763}JX}Q`1EoO7Bc$gqM;YSpW2ZZ6o(6$SZIPSaca?Bq6c1^1FrorY zJ7+j^V+{*9FOp7QAzU|i2+2s28_d@^veeL{OJD6Ffg<64B)Z7JMn6DB>8?n?0<%)% za=LPHd;&!27QH79sR#)bTh(SE@cgaw6Cax0OWzOGwl>DjJoAWA+7;z6_*CX@f|FA7 zR1WmRN=_xe_|HyFX-z8*ZjYqFAAEGUxOj0M#oml%f^Kz+x*<@XaliUhe)dXQm!Cu?vfrSw`#h4%87U*x2tiGEcc|`_7YmvGOdcm5Y=?>EQ zxpG?4QV-pqf~7v=Qv6CY8cAJ)S!I51HbrQ)y{$^+)Wmnb_GBnwUBNam!EEX~dZc9q zaY>{|qOQ3Uq&`avkH^URS(GXslD4zf*?hy{-gkTBMPk2+zA?{oq)Ewtd+d~sk~-dl zC~s)}{DNBQZbil{deqX>Mlt%T_nCAzw#BSY*^iyMF`{+%Ih2lRMAH9$OOhx{?TUm% z#O$TqKaM6jtOoS-D)Lj%$mFzTMe@HIo$H-owGfgoTJ0j?ZgH9)dy?u|hsj<22djme2{MqfJ4_ zgXipAC+8g)irO1wzdk{oX*;X?*r%8tCu>~UT#%+=9VTuqPHd+C2IXKB!eqETBqVnx zn@HOkD|v@E8iCeweb5Q$y8&9vapl;iNmGHXAM94ht`~9Yj~8;Hlr`PQw_Qr#1H!zG zyM08~pETUvU)I|!$7CFQNJ>d2XJpj*GQ;6LM{`oO^0McPw^gElg3O=ierBu{qWYtI zEVCx1@IS&IGxB~Fnjs>bhp(m2{y8{_XTv}{42(i$WbtkSArlvrqi|Ik=POlceSLir z{yL-KJ7PjYCrVKqKyY1%vWp5G!%+KX>+mpo#K-Vw3mR7}5Cd$3)%rXvhO_M%AL^~# z?t->busOB4MX&mFp+Bv25*sZs+X-WlqrN>Tc%JwUvH*gJ{g^5%qM);Xh!OCk1xv<< zKFu&y)M}Zq=MMtf>pvP6Lqz4$YYvc-fRhxzM?dlBgn-6iBn&Rc0_`PZWg*io^0F9> zD&D(|L^De)5CqZCcz&6{oLM{I=XyW;K{(wij>!Q{I)}N>4FzKiY46DL1MU*;5{710 zw(E+4SIC~@_K1qctK}1!-l-s>2~Q5uzqtTF;_VnIbgLP6^UEVzIpcWvg!taKreR-% z`q_T2`H-~13_qN}E@&0bXxlx-j+NJ zC;|ylUBG2;oim4YTRes^gzHcS5w2>MpSPzyf7%PS zqy#O+N7xCs^xPche9GNTp(Ad6P=rvv*iOc5#(ZjPMrT&=eYny}r^QF6EpQ!-5_QPi zL{w0v;MY#xy(zZ(q4VXN6q5-xpUn3zQ5Q@Y8& z(i#3sfFiuokMP&kngel)ly<1OZ*}k-=Z&_$B^IixYWow}w@q&JD`kkPWVgqwJnvU% zGOjI?V+Nm__ydBpnCaloCvSMRPZRVDKJ%}?=aJp?$7ZUe)NFJ)o}a}ji-b7mv~9X$ zw>#|?Io0|c$A}{$MrfnATTQe4`pgcasn4FSfoJ_}pD2MQ0+2%o*yBa_p5ZW! z%uEEGjIbqPkDq-Y_%Z`Ah9~tn@wvIXS+AR37A2X*Q{0^5nOH^N6!5yCHyh51o=r8F zGmEuJ$LJ1?AK^<#nG;0ScNm}R?o>>#kK0)w1H@Ho87BY=(_TCSukc*X)z0p2nE3c+ z_~`pwNBnCu5VV zAg!&f{dn12HzQsj9C9VWC{%fR7NZvQ1kZ4s0|ReA@H!G5-{Mv}K}QKu(d*{gS6||F z_(Ni1ViF=6Uz0m;jXTrT!CYX=QS&=(cTvUV(fXV!|2-j5G&Kn}r=lU_pLq;eI61=C zZB&4Al5`BcIvowIlS#nh_IuD>BFO~rW3GJL~kWat&cFH&@nFJ7j#Q~WaCLTc(3neO~V;SC4egY z$m~hC?FfU%O55q4{{$F5lP~tL(Ia)_U-16b^66Nq~3HM!=B@3 zQ6-GIFa4h6P?StF7^MsixRh&j3$c9FYQxRch_%DV8I|uI~VPAcFufo{u zOtUnEciu;(hDp`S@6}DQ0UoP7HFNoQRLnnGN|eB#1VAjzTj4JO03frVg_tle}F2rS6iPWLo}8JCPs_^J8Xg&~iwk?-K{FGI|@{ zA&*gBS2P_jw(Wx7YP;u@1toN9zl~WrR4sH@6F`)*RGi#X*Z$_zkB;!9Foc#60C`)M zOu9Nhe8zQJSuwO;Zjui#2Nm%M9VQv$R)xapq(Wd5Mi$Z~Po*~Emk9iY<{c4Gs`bq+ z{A}OjXyQ+QK|cx{_T^LgK_=C;g%o_L)m-MSKu^c~&~LOG>yu`-8pRT^)xXjaOepnv zFu=Qe1p!QW_CUH(FxaMVly7I9Nf1y%ose&4`Us1*+%8b~5 z3{l{*ALNX#Tc=5v@4!O#sb|Ao6-$BSq&Si`szd_SOZEir{ops>wIYr9;O#c09$!3Z zA$kt&wT>&xaAb{iy9lvO-%$rFRKGQK4t%*jSdsrLSt1S$KePX!dgkX#pNsl>@U=|z zX*Z2Tz~utUpc)+t_E@7_)QF-eyWsGB@P+rv4=DAz!JTPt_g)NL#R1LO;jPK_NIg@0 z9&+@(Vw^ob=l$4(#v!m`7MIyjE1DI=Z#%o zDW&qjqNLEIJ{w|ECPPhH2v3jK=_|@;Z+I8PIgZ4@-J!87xv{BhbNl6;d5Bm$3N1Ly zS3cKm&pFM-xQ-RA0g|`l*j2*Y!^5l{+hA`oQy&1Y&-&|&H=i_7a6Z^8glX$n-^90f z*c84@kIi$n?i?Bw`jOYm&wf4%cOOMRy(w?G@_>cgJ>Zu{qY{3wW8k*VCR?Wp379vu z`Y0ykNoi33z+}BtjWVt8Sf@Qj>>=ZDcR}#$GoQpMIw&Rk^%_?7Bel>1zQ7eFbKdN2 zu_z>jl)3!jj_81<^QoWAJHYd(Nq4vr;57!d-QxZnU}ASY!uc$lh(CddoN-Ka)_U@E zFTWF-brhOyxJVSfzIDuF+{c`DBf11PGmZdnR-Y(&%B0~HY&wtvxac6RUuN~~W{dnf zU$Ws`$0DGCSk(x4+r_uV1;%|RcD&!Y-tnY^Vq!EfTR!aDT+Bufbx(i)XarQDiV|9d zR?l+s2$0-xzQ_*NWc-M6_tE2IoW#Fv*U>J8=kegc+Uwy*A+BOu80iO;!bxCPWckqO zr!4%49QZ>5kh5I0s2%GBu*q6yPtrFl-LWS#xv}(2Ms~9$nKKP~Rdv&a$=8l;5Ttx4 zanW(un|j%6<}nJ6%=b|e+%jfB)as5G@PGE!Ntg$*e*5zHm~oL13Y1w_At(a>a`Pp_ zXdt0vJH3M1VxaU2N*ZxvtR)|Ynq@0F-JQ!;7p8q)r@@CLO?E-hhq&D{i5!-g3Z2iJ zA36c^GPq|bJ@(|syNmv-16XRB&IHd|>ob7($NMTn#O~Di@TLduQ9g556pGu2Z= zTOyhqQCQW66huJcZXU#-ze6|DV&jY1S(4M#4Cm={1C!xH6tHp%k^qg)1oVw_3gtY-v!a^6KRXnF)09B*3NkB7h!vf=E1QoFvYgM zNjZz^qV||BpX(_>%P!yc78SFauOW@~e;!)`Wy&?@d9ZFETvQ6ksRbqly2i_A>E zM(`?G59;{ph8p6G8_(PP<-=#`IJf2gc?l7`-deey`~5Ae?n|yF51&(L`u`I(@av!^LLo zMI&QZU?ty1z|}Euna%&nr~9niX(QhA!*$*=SYwJuW}PwC#MV7BA(s!QY`*7;Jl*{bkMLrI?ucNXV>z#< zTfCX}XL8J~1`+%byot`C8~gRDtNF{B77%MWx$?6=R3FcEI**O2mO@M3BFp%i7BGPy zPuKes!qR9t@nKnxX#uLA5~PE<8u%8MLn{ zE%~*`=hv)EnzYd;34RUCI(gt1ACpEpVJ6d`CL&2ZMa?bV0=^q++C{pDuzyP5L4-vn+B&L%AkdU z)v@1zoe$!E6|5veuWLsU=x~gUZ4!QGg&U~JuO)3~563KkPb>i7?2E;^?Yc2r0sy}q z&Mok-Gm-&?-N6le>GI8MuU(QQFH9*<_t`C!#_$c>(_PCzjPh_t z4BG$4kCj-$0C+SF*G$OZqXVCpxJ3NhrDOGYVa+wEk}Ncj1N)?-#Yi9}se`i@icAud z)N(vE-%GlmTQDs8<5wBL`!2U{i)dy8_vMp;!% z{O0?&spW63`6$c80>ap!NUAuZt(C){>cNg!H4wj<7%d@aE&HY8oF(b?s zgiIFGla9CgOP=-X+73pExVLow@G|%wYj59~asxkcQtG{KMw_>>9)<9{c5ztAF{IWi zYvHhNvk+vy_CZWYzeNPcSS^|h_bSCw9@1B!@jKc`X7ic??b=66a9PXI=v!3z$+vGH zF~lq50x>q$3tZt+m9yDnHk|8Ta&TeC|< z6E_?3?WG7E=q`)1s&ne3_vlT=P+7OK%==;eheJe^_s3uHqBS@E;JX+KL4+Z*W`wJN z&Hi2I+xj^2A`*-4GgGKRJ2?1u!yZg0i2OAf-R&~)GL-4$sQ^>(+#WSWII93`-L?B= zb6ypqC1!JZe$^9zm=m_UU8cY|(5qAcYnpR%zx)#c-_)lU2@ z6Yth}0Uzc`2K)cVFrXo!NYhr!Z0N_Vkk6;&RzF^~t{=(CD5zi_#zfQp)R8p5UNEKv25}RVU!+Ox}FACOJXoVI-%UI*d#)Yo(0!(K%@Bq$lJh z67J4<+R-lqHnMv((w>~a&xChDEy$Z28(;GpCAIUrLR;-VJFInuqLL^u3ExmXKD_kS zYlVioKAfIt(BvO!xPxA_kzN{Z(v6k(4ED1^a>Nr<2$2<-(3v$Zhg} zl83w*y(4J@Tlu$iLPj#&Uw-CxVv>Ss@oU= z%dY|6;)e2v6*iu}MBGa=eA#K-No(3g2J$5ty00E(l0fuhn&U-Syo6`YL&%eE=CfwO?(Q9_lD`hxmef1bTX!5YSxPbKs`pR&haGW_4}Zty&F>{)Z=9F5%1>5h z;T1Qy9)A#FqGOI6;fOGQNAiUTVTia3k<2TrGb}xX($@MO8$2+gO`zNmgdetGUS*W^ zg-|6oM)d6KeL3mKx_5^bcgSO9cCT!hgaf^~lTO`zvYqCsXI$Df$O(sexv}}ol6EmV z`tt>rg&K54LC2d|0MmXTq#FpoEYr^#28DErBB7HZ@-~@!g=e~#DjN3g)5mg{^{+V3 z8qZX*4@_4ntM!(Lq_<5E<{;S)4td!gI9>Jj zzcX+0g_rg~^}9Dz^}ldY{=(wfRckl@J~+I4(D_Co~V~LaF>TlX@1r7{*c2Wh_G+W^058R!)**p<^wB`S3uu+ z1qG=un*LJ0!6Cb!XQUvP{AW5H5elOJLns~*`;U@EgbM%(KYCmuG*2`~ldEjpw&6n3 zg|bD?1K~$KYe(P7@XHzT`L#285o3evK5>1>X>4PIQs&ZzYCfDPC1ZzB4l$%qOL)gW zNQW5YH-#{9>ZzqxbmzRnwaCg3hqDn^9#7m;Ww*?EBPEsomZ85G9rA^?+kyhw%bGpy z`HIH`h-dyn6OkP0@JArvjuP(1P{P9T;RShn~45Uz_6MpP&F7(esa5R zLt+Jo8->)pdZAMp>a1S${MtQ8M3i*#IE}y``|QcqD*N_@+wMLz?7in&PE$(7%c-9p z#@-Z+R=NP&j?rp22kZf|VADE;uh02d@LhEO@(=2=IQXNcg=RMISBRIlxgl@&3c+fS z-rBjYy+Sw!EWQcHUm+q>T>+e10DZ|MC2kanXJ6#{Ln8?al0R5$d>C zNdND%EZOliSN(|GEA_@AUvjwq2IV0(#s2=QC^Gp?nT&sV)*b>-^Y6D=Y)!qyGt}09 zN7QW>W|XWNp1IQ_xKDM4k_SKYkx;#j?tpmT+aLYnBNntnxW6V5C3jzgY;L9Fth$)L zolI;%LS>dYrms8!r?!-qjK97%`wT?n$8=wj+KiHtDD+>w$I@oZPHbFR`4}t^`2{WR z+Cv{ByPzJ|)8()?+dmMUtYV+cs&`^^%sIy<5wSFX)lK9qZ)9YoDD2s4-w93q;Xz=l z_twih%J&x+4;ND+iEZPmM_P{U7lQ3|bhEWZeZ2W6Uwk2S59?DZUXKgdm`vUnNAqE$ z$2*jt=A4QXTD3c7k3GRxANo82bRDnLiXUc^$0cEDzARZmPJsrGu*>nBjcO4nZAraf z+eRO^K&fd)UEQTAtDujTW|&zgn!N94H-DW9>+w~-N#ne0~OVd$U*o?I$*1Y!`ir6d?b|eHy*q~V*)cSJjnzUy<-0IuG z? zW6>}HHMB=xFV;uIx~c4Pf;j?RAx$RlEyF`lQ(vP?w4CQBTosX=7Q~&QvT$wop!Y|;^%!DZQcacNLiS`lal>4fSdDl4`uNOov^rT+xOQt z&q`oQEj@UX693o%?(_ zGbOdm)~}sC{{CCHb9>gdC5f+3tOsVquQpS-C_1KL0FIr_cg&xZfh=CkxcXah@2fQf zz2$%z6_8X<#oRYr_pXl1cU_gwUZ~!ml3l)S^UwDMyECPtNtB1UHy#W~2diNFMg{V- zpwKb%j!y~Is)@p=zq$VE(}y!}Z({i{qZ(!M2T=Dfq}Uds7G(Uuux1=Cj{->5ofeA( zr!)}7ac94a1hivtj^_>zh1l8kWy$cd!=QDZ%Hw-hgmF_+tiF;Jb8X~Peh(--{vL+# zf!&;26nuBbk9kPeljgjC@|1vfGQa#p2vsm}N$?C2MRqs1rq1!!rz2fJLW=Bg>2ap? zImY%LnYlXzYo^x}GCvl%|{R;D`RW}j1s42d(pHqaD3+#=Hiz(+bOp|Mpq8AdyX zZ&f~`pE)>`(rB*T8k&pcoQ`?gBc1});`j-PSQtd(fV_n6gs(oQ`|o_-&rqg8+H{RF zo#<}q7|IL{_Rk{6KT&N2opuoREVzRG{9eqZDR-!F)TG`f7AoaL3BIii`+#J4KSZK* zRRB8cwG*eBJa!d1W90Dh+QxE6E^(>_p$s_Od)HZ&`Svc7#=ihyzP}ks^;9d^U2t>E z-m$7GF)F>*_>;=U7jP&2i~Kehux47CMJH{@SI< zZ`|J*Kd{&>M+MYvxU4?1-qJ>X@lNj8t1IbTx(H3AJLF3p_D2hMvO&Ckd3$pZsf-h< z&$DQkJGkbf`!j`8yaNOJ$-de3@UmCxQT{rlYp7VJn+ zCO}>~`3}{_dwzx+U02?FOhxT$QbmDdQMLYOKH&xU(C;MzR$c0=^@bdBCF$SYKQgU# zS+@uiZ2@a*d{`I5120*ZR3M|UNRIA9EX{ld&W!N`708Udtq3ZzA_743lzN)*l#c5Q z11Pxly1JJ)qo%4hU+ucpobT%{n~B!rL>)sTfRo;$poH$P^!>;VGSp)c{ueOob0qvn zf_l*e%3y1GONi>Q9{(FyUr5{Hx=3XIq~lgocIEnw4=3Ws%f!HB>Os!V^%T5eBQG6v z{U*9uHEtS~1jz?@i>OmrK5ThzP`T7S@7q zv#wYR)1^^bJS1y=2$yE?-v-WyRCII3(7tE4$!3Bw>MVHS{i2?c=Pe;=c|Ye{NtGpPD+Y2Q8H(IW_HZ!_-^jWfEj+^%mVki;HAR7?q%rm}=$MPG|bZ33QAi_=oRcN8^m$C4Hx@Vu% zVh5}C(E8!Y)0CB~u6_3#sSuD``YrFX)43)~3{;#8)E|?pdNbP-PkhsRyuX$Pge+VR zX7cT7k__?O_bZBvDcK+JH#w2+#>egwSDttQSF6GRBkJX+^) zSC6d0wJMIVsKg5ZoUlKNRFU$L$-2HGCkM*F`!V@UcsC{8Hvd{SrPqZUj~*y;!9u)A zOyopWFH|N9ADLuK+uu`3{{r>Q>yZ8SSaPxh+5zO@sxQTq!u0B0pkqeJA0$5A;3d8i z(v`_pp{mQs7>(jGR{EfC9c{@=Ow)0+9clpR7L)GzjIQT{3!mB%WS(ADMTam%_>|gZ z!H(qT)sah@%5p`Sa&frL$B5eqlF98bzL&lp6^AkYLO+j13k&3CFY+fmyBDFl~vp1QK)48IMc(n+^aqm=d>)=f$tEA7)>Iwyw?)(aySN zTRn(}OKTV>L=p?F%;oYbAh!~jkL;jQQ*UJoMcWy9Z!X>?G8kj$H81sz;SXh->s<}t zVsR-O4tIy?WFcnRhBSC^IzKf&gX*D?Z_K-H**&D*cOve6XmqPyeg^l>kuSFe<0%5~ z#^xl^Sm+9CF_@b*rS6DRG4riBQf(BAhHrU$F08wJm`?^@ds3~gASe59Mue!{Ke~KbQ5Br!X3manTw!Cy|tP?~0 zM;+1M2}g7bu=uyCDP;1_$BiF}s_#EU`9AH7Z0J3QNg>s|sX4vd2QgAUCT(CVP@+A2 z!WTAbtZw?6nGfwOqzjujK2&QXprQ5dO^s4 z7n>DNvq5PEajiEzW2~d%X@Mwe+IWph@GG!*5%Ft_}T4KuB&@9xU>w;yW z*Jo7mfE2VQd8h`z*3%@9T>Iy#+JwF($6*l==M(Xv?l}L(OpxDQ%n-E>>K|2KE?6tu zd56Pthb(<;xrvb+%sPJ-^7BJ`DN|ody&-%L{f6{CW;G7<969;4xy?o3(yJz!J=O0q ziU919sq_}kYDqM`FPRz>ItKHj`Nw%z+rs3QK)c;v1I_OjMvbLa0L*|q3q(@#PLGl< zTu+SrQ=fv{sK97xtcbX=RIqmP7cyqCcj{b5nFIP)FA3%3 z(cQysjxz>d**QpxekxWoTKWkRWwn}@FFfY<>;+LT`sH_s-+Jii37g-(;hf%+{28(< zcYUOa>Mbr{z||q5Pge@s{g~{+!fbSg?G{(lT^cJa>F6A7=p2zb3-*Dl=y(w{dT(A9 zZ18X=`@v@udh?y=@j?q#(br3!DLlq5_ip|@Lfwk3}7n5|5)><>;`Y`_XOBxoI8kL&M} zdW_coT(EBJ*&l1E9U4nKX&~|Rv^G#sxT*E8T8Op)KU$%^l8y4Vtxso?Wbn9)KCKs6 zUJ@b+>)+E|teud<*R0}|zgnn|2z{DBSWw97xTV!ZIl#zTk0s^{@qIWqz?U#OI;ph7 zPQ^~#xu-Ax%#q%6wj2*v`j~Tu5n<5o6G)j&#`TFhAt6C!S|v7dL;GoBmqSKLLEORN zUg09!PgEh@1(7?^?*Zg{FW~0TvEmQIZoei;{UGAG4MnH!eD%D1WPRLLgCq}c$q0>$ zj-y(IchHws#Gdkbx~GUe?fSXEYC`L)s&VOz)JrijNhq@s4t*ptd%-u$4s&x`X|?P5CV+Xn%8prxLo_}sX3^99<{ z%1ZS6m;Lmehd-IhE5qzW1VOyzZC8Y?Pj^IaSKwjewIF*LJOd@CFjiWVAfMYtz}2pl zI}leZalxfYq^IFxz(UT}GI z)_-!@JCa7ey(8~OVjLaBL{>?u4+CR%wZBX^S>(=aC}T6J6ON)eb+>1CJToN`FE{rq zn;7%R48*48v%x)}M>pfM?^fbRsOSr*CNJ%YkGq(^5_gygS!PQUOlRmCLte?lm#P<%R^1M1FOhj<3Xf)3C1UM^UV zKKeO>vWJJ=QAM9&n_F5&86}(JxjmRNMHWx;;5F=N35Kg;KB(lE=#;d%YN{{!rBMAFGB%XTHR;Tn}Hdkp3|F!41 zc^1#WdR%YmbwjqtA>qOE{j#LwZFCp`YrrHThF9Q?P_4(J4voWO<$ih1w{6=#|H3Cj z+UnF}MRdx$H^gpdi0QQB!+dyEV_C)whrc-NF8~1?h&90;H%KgP0ZNbF*owziQp*Sv zvk)9KN5);$t2nHN&U%a8diSdS@k~E&Fdd#Cv%Lm_F?fF+W?wE*dDA9n13A~5GYxdm z44APuR;|7lb%e77f`12c*KXy^`Pu`3oI=EU;OvBgohB0V!8UzhOYU`)4QxT8dX7A{S?N)&6A%*kjmvu$nf|w{ z=LYTiVNLzLhVS3eO)J&7@FI!AuXq0@UOGl z?tAc}--2Z^+M|4YJ740Fb5Auo%(f2NcY#HkR^gbj48pAOkeD~96efO<2@_B2xuR^W zK`~4;D6z9w-P~rne(aqtsdQhbedl{NFluO2)yvlfdRM4~GZ|$tqBRXLJ>?iS9xr*G z)>#UR^g%FZ6 zsQUz{2k)WORw-TC4p#(=((>s>zU5UJd09VLxYQRScql9&q06nCVI?7LSzQ_OO2iY= zGLGkQ3Vz41@Z0yRUwQVUVx5c4n(K1@;kl0`fwRo zLIM~Av##?_ia76GQ*q*~!0u-cC>kBCIm!3}x?Go3t>rPHA4jjBUwJ-1(CyPIYgFaxrxnsn_^h{xw<*j(D~a*TfOD~NM~vxhyrG!eVL1js zYR{MQJQH?#AB|MmGdx3?;Ku9Y?!#X&8(!dBTMT1hyN|V3a`n9z_AI9W!*W%;s3Pl9 zh>Q^w>cuOsnVA-5tpyQY+~hD9XU=Nj!c%4~>yRee14?-gbYmQy%wUi7;$psa-{aW` z)VLN^NJYHFeZIX#Xl<>270EMYv@Vv*ny;sZ@B4&!+IU!s{k_Q~lO_F2SVj_?;I$Nu z@QjMp8r8s$o$KpxcXC(!N~PV?9JfbXcHflu^j!});u96L1nke9@^6xTCI!#8Iix(_ zBs{+ZYknM^gEX;hZ)}QZ`}RL@eqTf^O>C)8Yp8Jn<&IqiWgwhehxYrk`4XdM;mP>H z{&jUkiK<9Te0!jsRH}YlF?;u2HlCa{SpDc=4|8;)1l!On<7RzYFaVP8ozf?Z0kW~l zq})c$0XGE27z^ z?6r)nY~9{)r&GhYnx`jGafuZ=9uZy7_0u7%0oI;wOG#TB30Ga6jJ%?~rPz;=`>C@h z6Cu)eUNk=n)CjPN%&T^#B@*!VjfX0uOL9EJy92h|YwBgtWhQ5(av<$50?UOA_i;g5 zsCEF->dLbyXJ;F5KKjYa@l>^c^uUk0VZ|)+2)@)4M$vKBm6_|y z!K~N|WUWV~(!xSb#GQAl`sHi`LqwYd0#me5m~0q3wzgtcvKZp)SV`Yc3&`3PX%5IP zTwK29H{y#?lI!Q)#OOs_UZ(NyeHvx(!HXdjCKe0ve`Hyl9U=dElghM?q>KeUYcc=P zStnL^ZeCwMM{)x#I(E9*9Sl-_3$8%N_`!kIog}lfL>lLYB>pWddud_nb&UKao`oeKR~B)L}45dkYI9hjXFe_T zMI>|W(PV8R@nq(hv};mR|EQEmp9%_-{ErI(9lG~rU&pHD?rwyz7MxM4ES%qz@flwZ zr1<%m%>0?Absc@)$9d257Cf~lBxVZBdh4s+y_u$5KvR@uw%Y+T!BOW8-k z(_4Mbjt7gL)!R4p6R!OwG5Z!9py)K!!-+<|I&I-ZK!kopw#uLYy@V2=fWkashn`@*{oK94mMZK5Ls;@h7loi(bLMip1n*&?ZR=qd{0{Fko2W&h z|9$yOk^A=8eehkJ^yjjON%^}^9Tf;cH**&Bd1qX)qxwK|ezfGiq8rfy*@Z9QmH)>t z0Ke8u+tIG;d`LibUA- znHB%_;T2q{XwAc&7QP0AD&SH0fwAJ!XlS3QMVIdi4fu*XC_ARBh8`3{cYaZDhW_2_ z|Jb+x>qUnmH1=K#V$9@k^Vi`G{m?n}?-YibA&T{n&Hlgc z>F<99$whM@@F!Z%m56R<>lt*;@SYh5tZWE&N^l`yKDmFUOeJMUtiOh+*F}=g1z_x~ zG41?c7%a1h68@re`u=h3Y7+u&Td?EP(abZFS}0&c_xG~?b8-Ls?+FDkocD1x7RA&n zLwFBI6BIU>_{h*1>49Qjy#I6Nw2=1$f2`g7G36Ea!T?ryhcit98iu-K`u2stdkZhg znoZZ!m`}$b_9B|rHQe36#5V7LxmPCzKXGpofzSdzO13!G8+f%TRo`E9P$0||;!9e+ zdSK>cOGAr!a7J(g%Mm&5g-9nd`e$c*=vvw}f$fXT2yYCX9|MS1I zafIS|=OprRk!Yu(;w5U-e|e;2zaMERnMJTB!in^YijStb`s5u=doPQu6aM~I#{e*g z`XoAFcPKh2ij=@8P);tg&=LxM755Y_e$LlUVO$tl^K|HT98!Onq$@g1N8pV2zuvMa z3^2x4FX9!EUqan(LTXrVGWCdFdCt-yUP${n){BV$v$V2BpdVn@bCjt?#V^p;$khwM zaEP2O6i_6XEBglKN;!WR!!*Dc{@HSK<^bn^x!H~eM3tiB`KR1V7xmWXqO~mg_ z1GoDnOSy}{qJ^PA=Zx!OmIp@M5okBpKkx=a1tv`2I^gM)@&mUbw6M6}HB=^F1nTG) z2`4Kh;0g16)I-y`hTC&t8E5-vKK^?~{qcI42AIjmcQGmH2t@`bCBp?sg5*$SG}-$G z6JALSgTN;H=T}a+p?nCh<8-=D;jqEMIjP+7`4yDeAwwL=H8L2s>piH{DcelKt2w7Mlnd6$!s%iX#<{5(z&uwhO!O z$5|IEFDKy!0ZPok;(Q$;z*i`P`|0vu#sfO(MerTeo*Sw_CE`u@Fqs3ge=;j9XR_*G!Z{+9_*2rM(#h)_J)j%S3Mab?mcPTXlTot5YrE*54fXzG=8*Z{9_YaL** zucX4>FbuFR@@I?Lqaq{VApy5eOhtZ7((3EROM);W;iscnC{athC+qn~4}=IZ+nRwM zWR3p%&vE7dnSVgf{^>zG!p*ue$rCT_b`1+K?iuhEfXV*Lw)t@bt;-X|KxSTfA4lrv z4pL{cLbt}c?Vv$lpl44_?xL54dyHjm0c6c$%5Tjp%8yWL%{kBi%b?42P(Z!9B>B4f z67z%=`so2HR3vuri5a;SV}85i!#_hdlJY{t)N)`PPbYWSyHmb49#)2&9N{FSl!IrS z!owl#k0#43cY&u2|Lf|%H2CmYG>i6Gr#_u1 z;^%3M8W>Cjdguoxq3i_`^1#i~sl;5a>yRy!Pm1!_aG!)e)=U4j$Dtzr_WEM>7}NI+ ze=vlR3NO$afCz+0Na&w-Bzj9LZzS`;90nlTG17nT>aS(Z2n<16L~3-RpD@CAFxTgY z_!qvFXVMi83jgVl1hA)6hNOsi{xOdXXgjXa(b}Z_NTE%fG4aWv7TdR+Kr1i&YZ}|J zEI^?C_y8&ZVkzM$&#`8-9+#35vS8Tsh}!nG8ah8ezo@K4%1w(GhzrMwP?F{3nyPyt~}_WFh+VU={%t&2>(4{brgSt>H&GA{?l7knb_;4`;ZoI z?pi0~M}ITovIEg~x@aN!L56FU2vLK3&!p9D**Ko^^D4}JL_`EYtcfjylkqKI{dSU2 zuMO{qQQPAL23BTj1aqYbj?8qji;IgjPs9EA2-KuW7fK3RSa*gTUgrMjb@VLXIFXyoR?JDE<=9 zUT|!%M8S7LLNnLX?d1F-2AbmDIaK{jOeH6GJd-;IDPYulwIK9_Wp37&n&5!~R z{^`?o9rx`P0it-At#VPj0W-plFIkGAfo!_F{U$F51vZ*qR`|NKy9uG3GDF`gZy0uP=E7Wx>zq=TqR zlNObT=Kr(1pdg%7IH8bNBLem&6qd8S-(o3SVtlbR+Y@Gy7_a0O>vwfB^Q{pgB^4FB z?~>Ps$u@m|baeDgl@&a<%~DYQK#I}oCX!9aX*ESZI?Tb^ zh=8H3Er+mg5w=Q`!%GKTeMEw$MFX{8pR3}~ zxazQR*Vy1xi&(oX25!;Q;{00EZ8Zk%ZfD82WoAZRnU5w6ptv`EtaS5+eMv;+ z0UsI+)!B)PSM4^79XiPRl%s^PHxPCqBB0CsSr$#Y;bd5!f(1yv(`0F@`5*MKwNSc* zMqfF0E()8P+)Lvn(__q$VNo8*y2pnh@?>Wh!#qD0yo&TKk~S%Vx@MNCsT6%{^W5#3 zKf?^Wsu?Z?zfD3Gi;U6KmQzNg8_f3DWSZ=@k!jTG3=*zRWOhYYq3V7PyIOp^0y zAN2YDuJ=9Xy5^6GCNq2A`{r6}6Y7KcvKx$nPVSCaU&UUfEclq?%k?O2+#3g5STIG~d4a6IFZ?!NhN zn;jeoVSmTve{=f|Kr~b8<#!CzlJtrpw0-+*KjPZvc^{iY1jdcJ<{A{JLBxjyW}=>k zIFU@T2!v!H2QY2d48=!rcJ6Har541|w6&!-!fuWT>z`Ry*dXdGiqf8(8|8TzsTxhw zGq#&%o1PpFO@yAtWz2YRa9CkIC7d@hSS`t-z6%EAgnY13`mhmPH@LLfNMa~9h3?+E zPj$y3qP+H_xM9!R<>KlAf+8d&Ola%-#`E`UzJOlPk#GA)b%Fz5vPv<&?K#cR-q*YE zwUo~@?b4D7H0mJ@!D!2G6{8XjjSbVc6_z_oNU^FQgXjE{;rUC-X-#A<11=h?i?QfD z3&Y;$8d;-A z%Xn8k@HogDNilI+&c=?S9PECZUCWQ%el87HmY5XOJa&k7E|%q}pu<%a(`B_Q_S(r= z2qTwpmFqjdJEa5CM*v8fg2lr5>?X$zTg-`$^6&%b<>nWjX{j-id}_Rj2ts^W58znh zVpVQ6yQId#vHNL(uO&Cip<57y|I#>*pw+i$R7v02DBWIDhIWX=EbstIz`CJ{`w{`u z_fu{InTl=sMFpj8UN*9M^mx;7c{jVZmhA(k#1aoLf&`7agCm{vp<83=CuMk>&HX|8 zT{JwDfQ*ckkRLi={$Vxk+oEui71f6wS27b0SZo8YQKj59h*+wiQQdgtMN{ zNpctjrVanCJ_x}y$;WRK0?Gk-VUIapJJqk7F#lwu|E8t?dEz7rNOmLvtpP9m4qbUq z^33~TAP=v-@v3`cvY0%ptMA$-npstaTFFp}N$h@U4bTQv*h|aGSjL3q?J->Zvn{7Z zH|;}1H}pUa=U)``<@2uJr^j}9!4&G~3OMD;Dhf}s`h^CqBg%G191q1`y@osbCd#!g zCfdi!|5C-J6`!0W6f4A3_g1!fIAJEyP=^^3x{i;ZJ$yL-#m3sW+3; z>(K+B5ql%LFjIz0@miq~VBSWFYO++dkIe6~Pi>el#NiZ3g~?waCDbpfy_~YnIDHcA zPC&wuZ#z!xSjx}zg|GYuCgr9QflQ>(ehT7QZ}r_^Q!=R0R%v^pxSWcB*`BevS%{84 z)4Xp&ZKTw0c!(2p6{5aCjB}vawT-Z@XrPcBO*h%HT}wQjKD-S&Z*iEj(m(e~Hhc!% zIDQ<`@ivu`5ESNL)j?3sm$;M7-=jZ0(#m8Wefg7;YazoZ(Td^rL_AefE%F9|Y*TSD z{%q+T64<< zsG?bJR#JtiHJ3=h&y(>L?a-npr1@dpqk^NXnID0eGa&I%LU=U8W5aH1XQxORbBux5 zrcqo*#ywjm6r2m_OCm@4=q7!&ZVSW3$6di%UugPXH;MY5inyCmrPjGI=n8&1Se?j) zgVUVkGE|5n55O%Xe>5Gpxhf2j#rGRn;>rzze%d$8FkcDVZ%~P&QLTdPE^B)$lWjKG zPmpafj9C*O7jmhlr)C8vYcR$Vp8&<^;?b+9nRKzxbArK$(Q*MBvdKfgJ?wiHM;g|2 z>JiFyoojK38Ru~UqXG*%zC2BBh8J*0DHm0J_N8-hK$2#$!j>F%)dh}Skyg;un(_;l zXV_X4vYxsNj_mHJ&^GI8=2Z^TxQ23gP4%eYij>7y2jF0yI)kkJ$a-|QmTxl;nk{8& zO)%a%obW5j5~D`&;y2E%dTF5ysvl0PsD)+MukufML+l~L1p)(a6jp7YNlnpI89mdL z-LgOe1x&Q0-CA6lj?qAT#xdE5YAg+JKT0`?`>LlWDK2dw>B06G{t+}vV4SY+$|ZW) z-=yp7lm;2>+LY|mO-!gsRhIh%g}5Q*$q;cLCugv+lc9F{r4}rn5(V5XX%Y=j%CW62)9}*-O6!Q@u^^=0$k(M&#E#ak40*E= z7Ck`}cMuYc7cXbi^ttSNOuRpw2#hS4gq>L}U!Lr1qq=ShwflR?-xD$}jSyb?AV%;m zDn$Z0eS@}S6>%yZCLCjG-uic8)#+u3lHnro+x334x;EOejHhhW(&N^K(`35@%#UHC zu>A2;tJV=6e4^8wZdL;~+v9Zfxvpkxu zO~D&u!T%dDA;9`GES|LOa3TKKK2T+|5fOT({^kA*At^Sjh5PHv&eKm-pR;R8*XSVc zcs8=gVSZKl3I$9xx%%tDp?P>d{ImmD&B_wJy<0&D> zFV-nApslOLyKRo(?(t@Hd0^&A2y^_Xd@i+e)@1PCl|b(8Tyqo^#ZQg1Jx=6p_eMLe zhK~jar@Vq{Rac)sPtnZrSY#m*mEs#2kl8yv5#C%`E_~94C~8*^hlzaoBq&^gUR@U- z|6xu}iWg7h`H5I1Gz29+fxKsf|BMO~a-e^p*~5DTj*dBLK}IojM*vDz}eL{MY_GsfYZ#X^vJBp3MpJN9pPpJR!f z6WlH;b^6cgTEn8SH#Z1p#&-k)(QghK-A*h_>(@#(4ozzGsIV*(ABDazPKKS#vgm1A zH>&(NxzrjZFolT2BOmd5kZrJRmF{keaM4gyjFc~KmzR{2d)x_iQ4ifUA$pTQNi`tBS=~knwx=9kAeRA+dOjUluF>hc@vMQ{qEaJOtSb23bmPF~Y zbU$@@Z4kxL1WMndTIsyImg*-s2dp~c4~&pGj9v7$c47V%n&zjhSezcb-}LKn8CF#F z-p%gkabCo|hNwh&(-YLz4yx>I3hKV>o5gQA(|YMCp70W z+OqZWrFgk1da^ant9tB!z}h8TGJ&sZxylot&{_9gqSP*!|D?S*!E$AHODILn&*m&1 zHaPd?)AK)#6rkSWAYZ$St;9#D2e~eL`_p3BNYBL{WgX0+r6>cX&%X)gKTkjzUgrgP zF9hTwqCj(23LM?nWe@95fN)v(rr5F`FU*biT}9J%vj%W|@nfV~q|zV!DpdU&*xs`X zL7xP&_fF2w2U!pqSeTm%ef|tH`*OxD9QigJgmN!=cuow{z)yHTEr*g6YyKhGW3*9} z%Q#?vDb05v6?cB|G)qaaD}mS@hh0-RTrsEHvA#xURr3WNhrQkHrw!2eS+%GSO!vf8 z#?lD;?D@p$!!Lkg?RY=!t3MC z<2`P000|-Vo2PxL#OEE=A#neEch}16vS#UOhctg_O%_t23lYsny8P!$Wfb+5ySJwn zrrpo&AZ6&?c7gqZ&}jE0+fU8mpAZ>c1e+h9LFE3Me!L*Mn0zT#p*!A(*%Y>ijF-&4 zw0e5b>>{;FBCP`geO@}g8#xGr(*T}~_Z~^EF2^@03_kVhh7&UZ?)kE)3e8(6KP|R1 zm3MY|SIxGxcQ%>Cq8*Q@GNN~I_PW)bHa{=st9(cpndVO`>Y+Adm*LzpPj-c`gO^*p zj*m5EQ{nP7pj!86us#Y~a*!C+fspfdx{PX4= zWHLM6K;aHlhokHa`TsML*ISE&-q5EGn(Nh1E4Wz4^-i)|6P9(l4k&9e=*)r^_ zTxuo!@lYkUJ6YeW(;t9uP3Zn`Tt?>B)`-uWmJl+{Hm8L9!Lok{4}neJj9Jo-@Wk?v z`9x!!n)u~qW4oIyqgXgUxD8)9F&IsFK0=PB+wf0=a2yS674_gS7}p$_bpG47Ju?QM z)!cZv(lX)#8a%+1;?e(sBvFx5XY;RKfrpsa>3jU9Z?Cu^3-#?e1jLfl>$Wj0o$_R) zM2cqTR@jbJznX8`W}?m4x?(A~Jz;cp@mrT63%wi3W?t02+}{nAQP8kxVs;o&qGogS z-cN-hU4sF`c~a+@CMD^2rHc2sg5lrXjHb(8EhcvVnLzXbHRq%esg_vB4aj)d(GU6~ z@FJJqSu!VKp`-f5$w>+PIQm$KjB=tH8iLHNMObiKko3=^ZKo-=HKQ#!7oX{0ZB~_w1OU53!+*6N792 zazzo=x-c7$4#bQUdujIiu85m)@{x*CTL~n9*CpUnx#s7T+v`t}eP;idQsJQ)D*GaW zg0sR=TXUN!EO_bpC1}FaLz1JKUV}K67$kmdye> zNz;j&vEQgqFwjw|G8c4j#!w&NlAet~0)*U1QD!tEoC%H16d*M)qd}Ig>xC8NJ=q6S ztVrF#B*!8{FVghOnhOCLFfy&paPS;WE){3NZE50qyGUwr-l0-e>OET8i9ZKD+gMH( zYz~#bH6tWpcms~P-J=zH7oPyBaX{y*3)>bg5>*}R+V#vwr>|k|6Ylq6C6vzk{9fSc-s6*s$}5-G+ej(`;NIfDY|7-p4QXXoUR|seUa>>%{!#NXf~`R(ofk-0HTNe)R@) zbfL)BY$p-uqJhI83g+S}pGORx&}Dmwo{Sus2tqO9v73L0+2_)J2+r5N^bOL5Ls+1q zVn#ct$HX8O3@XB-Q4>vML_pwl%&N^*3U0ErkkVVRn)*(}rN$mHH2iU!h)qfG842a^ z)mC$uJ}f5ZYtn__J366f8x;Oa?M{(dx$YcQ1%h#9K^2ZZKy`Si3+ymt{kySFfj@3d z!Z&5jw=uSwDZD#TUA?#i!^f)dx*k7L`nCB7Ea>M)8Mtq7h_m;^Tzi|q3qA`kdICU9 zt|rl-in&<|q*{KrIIwb%8(X@Pndj)x>sRW;CLn`;jr3M-72`Vy6wN9-&?FH(-H@;fu!*G*$N$d2QC)j6K zyBLKi+1JB{WB_|UG|Zy?oR7)lNf@OpBi6@MQsS#qari(Qn8rhutg@Na597}!H(nV6 zeiN)eBoq#69dABFpJZsrdWSqnE?K$Qv~xlXEFDpw0L*3hr10x|_Ew+I9a$S!BKg_kE17wFr<9 z0L+S+ICDkd;hy_*&dPjP0pwRt=LN(=U;-B9^$l{XHTaYSANf5W(web){OEXcA^EX$ z?>i0S=~$WMxtU*1kGVdf-;E`Q$<^zz9A%{I zw`Wm_EnGaUpb(ILgJ{U#lz8qe9N* zBGs-*I{Lu(83q72@MT0{OvBJ+Pz~2;WCF>3CsA)+WSo!#Iic7*Tcp5 z?>0@WC5D_QcRl?&R%S?ruF6-r!BL3HEC6nSh!Hp0)>=<#!43-SBtAltEoq^ z#Kk&pd=zjo%{fpH#86%cR;c8&U!*YHdF+%it783BG`p|jgP_~xkD#r(k4U#dmLcB6 z=rP}m2$J3_>*|~>l{R8dY+0i7-_v=Tb)2qJbt(|;y!1=Bhl*&Z$OHrVBbSFh2mdxK z7;EfO=Q>NV=-pv2xc8$523&?<>{KMHqLD<5JI`T4q&1TW zB48OZ{$zA^f*oUi4=0|PcB|w969td6Rb+pvBghY6_c@%uYbc{nUc~q`6fX4$E0?Xq z38jDuI0<{5lBA!@@$a5fDI*b?$fs2+Q^ly%T)a6J4U+134M*Eifm=PW;NW6mX7-iXyuY{iXCtg2oXo{MgKnjJKcbzTT?6%9 z{USEgXDu&CA3;*5B$wtU+*xX65KJ=Ck;pTiV<)n4nE3MIa%mhAEDKu+mL9#v;jzPb zT@EWFXY@Xv!^VdHO1cH4h#!dqh^^owx_0XnDnv8(7GEx%s?5*t)KIfkPm}ViWx^BL zjuSPW8C6mIHw52ee1hyy236fTYc=hqZD$yY;g9Ug3hs5scr14YMK2lcaWoAanh#K; z*Ysne4}Vn<#znh&2%;IKH=0+n;uc{#mhT4J4wafAFj5W4a8AwhYHvy7hQI04zk&p?^Nd-bTq9~VjPDWlzb4z8W$HYyA((Q*k_+;+WMv!&SSByn-{O%zL~Tua7Iblrzm^avQQp&!2-HX-9+ z`sHFjUR2@aWJf2w4LH4Jy{4MhtS*2tw$9R77mAx~Yktuu^`mIB-V$?M)aU+Bo`VVY zn33Bu^KS8f<{RFh$h7W1?h-nVo&Y`p^v%n~a{n=@$1?Ch4npo}Lr!=~=@)K`l<-v1 z4e7k&8gdVetF*Z2v@LZ)CDy*4`-dieGV9*S0Pf7xET6fmtsc|mQ@B@{3ti4WKzYD7 zOtZ%17kG?pdAy$-lP1enUbUU$<~K5U!GDW^Lj!5UO;Jv9sCaj3DbAjr^&UAo`aAZx zhPrtx`%`Mt*zR-AX~W?{M1IW?SL0OV$rjwwxcFXut`jGM8gh&he$ zvTb>>JTv8-hTL&QTExOzqFE$iqn2X}2t+FOM(H*;_M4aEasV3qM%VL_P^V|~m274? z>`Ht45h{wwDnR~s8l2l1Bg~d*8WLx2tN;4Zf#ayDX^?_%END*n&6Y)mu{BZ1cyrN8 zWvP6>nFKEjt-W-y+W!g!#W1SthO66s~~>*BrPp>$RsDe`wo4rU*mk42Eow-8#smk^RV#k$-}M8cCy}M zuRu=xrbQ*i#t=E;#vRCr%iUJf&*M-y#y`ljc)pa6wj(O~`Z({ydcAv|dBaH!X<{jN z1*HnfP9HZh|I5h4#N9o+4iqZq_tG3ii#4AHQB}R)~W`>A?VZx#{pzqClUY0(OY4_&%#LwVw zk%I;pVXsqePDQSQP*`Xj>T9!V&nSo)8GDZFfxE?po`@JGj5wU6gO@BkBv^<^uIkaz zm7sgg-xBnM1&xR^6YzvZ9GLjMCtti$qjMPCEByZHqC^=Q5w5!N#6sB777l34AScD@ zP6$dF7Obfh3N|CbP6+qOR35<%)b(+L=(n7H$aRmZ@0pnS5Pg{Bavg|pH-Cm_DLf+0 zu>$caH+Pra!lBfND}P=XQFMHaLs{Df_MiXjiD-j+W{*+vLLf&WfWjRhyzG^~5qd7= z&s0}i^lm}Vu~IKhpzu3{dY!WDZ;t5y05ufmzC)&Z5gomoaaV$?TSW}S8RsDQ)8_K; z$ENpOWSro;;4^nf~06=8=zl*WO|%# z(0ek~$N8cbi;d^AaUf~NQd2~>z*XFa`)!g{IE8=Y-*Sr(3=d`Pg1ra_D^{(Xb$YP?HTWanN#hN@D)ZzJR51iv{sZrL^MPoM$Nc}i#%j&qf? zn~J+&tXkZzQZJ+9AUuGzU3*o2^E`fSRV&zEw?sBh_0{HZwp_r@j#)B;+mY`$?5%Ow z*XEnYTK*aXPS4_^BH-#6{GPrZVvU@E1qj9{e~4thA>(T8pfJ7(PRpF?&IYX>T+#Iu z%go~MIL3x!tYZohu~IxjC|SdzC$r!0Hj#uNU5VUy@4p_3C8vt$=~EtG)i^dxYs6H@ z=ldvXde66YWlKKQna`i|w##B0QBEpyvV*$dqPpBJzk=4GU{7;#m`1A2BlNeNjbo`c z<3c~^U4f$ZutObGLPM?3zLTpj{^S$9O9*9j;ZWN&nV6`I4Jt9)E^KEBuz8-ZUYuz; z=5*KytHz>;Z0A0YE1r4tm6n?a9T<-5T$c$Sq3hTkULBv19kDG0Op*5yGmbQV+b$wU z(#{Hs@wgrCgFcuw|Gt}k#qMc>tEYD*bZ9cYBR;mxANIVCWG@;D*LzNqEq;HYm54l1 z5CWpBo1waiHKX<3$M zSt+urNfO0=bus}nJSevI@hwJkpZ@JneRbjV;n&dQ;UQfo8wvwys3mf)hDaKy%?JZF z)%~g~izUO)2XjbC8Yvj@@v{le{{b5N3iGAp&HEaZRY#=0RIZnhl>=7yFD&&A3T!ds zmv;eF>dgDWs~B?PlXw%UI3y>+vUGE4!i+kKc9Vn;5|Wf&n5?9ln! zW1nlvj)KWbrUK7Rg!YQDd@)0HS{CW}@^bj>EQ_G9u+Gnf;nZYCk0qzA$N|>)=zc)z z8bt@xT8Q3N2?DwG^!8=vy?66if%`Xh4;$PB2-nF2URbC`j>i$>l?6j|}M z|L_MD-MJ6yEQGov@PdZkMI43F)$OyLep8ihbwIdzd9o~AtU+Pe?585W3ou`lX|*T~ zQp@nso>MoJlL`&Xjg=C%GNM3yzQmahY8#O=;s?L5X!^+ow|}{l&gAy)KH~; zL-NlNmwbD?R%gcRDQL5aUjll1wC>D#Kc*pVgBWnu`#!0va>7Pne)w42gNU&51pp=V zOKDPc;L%~M9Z_0i6ZP!3wtkvdTnfP8e2X4^KQ{LHu>LXIMAy!a^RUP4plNZ}zFMxr zP7ESlT_rdiN`;=14t9cA);&5XuFX!2TZPl*tV0MV2-(Nxl9Z%j)m`HQzHXmROLlB^nqX`|D?|K`*v)Ipsjh1PE z2!|v_g6-bgYtneGzTTgADtrwzM38MGL%R#ZtOQ{^^gpI4)mEeA`8)x{O?r)*UF!Jw z_!Nzl3tNo;jC9~Jz<5y)kjVI-!5I^4eq#MOc@6x0&sL*bFy2|DqCb7f({)f7uPeO12kP8NK36E^;P03v2;k$_Or7u6;O%JuNFpO}PntU{M9s zW#XKinxyf2s5{P8@uN>=*4V zXk@f=-LuszCX$!Y-Y_VL@8*31@ojzzGO6JCEG0Dq%#?-`3RH%(3W~2{nMxiy3@i+a z&r9P#`=z94RwJuy(EPH_Qch&H*?9qlW*vO1fy@O7Ba^uwz|Fn1_I!YY)o?|~%Ww~Q zL-b8C7CjxQeVe66Dm~Z0_<;-bO?6^2{))9(J+x>@Z? zy7Gd`?juXmkO&fi1<`Z@9IXpyvtOZS?MCd{nN<$~D~v9I3pUWq%i^~=IN<*|nfK-0 zz2oyznKbWV)o{EJn2n5pYkVF(yT!$phyMeS4nvpIddj2}W{&vP_Y*C`el6N*f}wj| zpTbSwN`8vx1v=ri@{G9k&{72O9FQM4(B`8zwSzxtr@%{ssVf(g3IK9v#-bNf$8bP2 zakvuHFI=)}85Tx6m%d#PxS6n9pqnhu>^?KfB-GZxu0ad=;0Rsm z64a?s{Xb+m;*FLjEjcKJDABJed5~c#)i_+~grGg|+zc(_YP744WW2`+q4)GxipwNx z-0bpA(EIRIS#sJkYN@pR(PgDoz&WBEEAM?@5LQxu z-N+1+tgEWt;m;MGMXp3B1Nk3_kI6d|ub}t*30IlltTAK$F7eWkt!}yfZr#$@q70${ zrW14nr+5c~Qu)*@D{fX}d@^fcyl1O!qNB=;$%w$__V$FK%cx;mC=)@c$hYTQcVs8|Ryc3{-&{51^bf>j&3BuQmWJdi zg1HZwYg&RKr}KGAn)RQ99u|9^a*DsBtm|k?7`e45imN-G`}+v78c*M-&-pm1wWqfI>O-~XnwIpP0U zkxzjtP6grB2n(K;7oG~52|`b93K05Vu1L!3K=}apQPR-D2g=GUWV!L;@2cXNlMA$! za(wlPhXAV$H<2#GWrw}xwzL1vpjXzT?V_k)p6zen1W)U|;REp{5FoB?Flk2JshNSo zGUwD`>_KxCrJGHzuH!4q-lOTXcGnJ}7+u_T{zp3v_k-gv6|fUnY;a}o7eYKv(89AFfnrnX z&v_|gb8pi-*Ko2>Ofg9?^0}++-}2E68h)jKJf%#1Y!5RVv~%K6<5=6QF&Oz}=rs%; za->D&P(w8a3ekEHVsNI`YNXpp*1x$}RL3|<6e9%p`yu?RErbRBUl{V0_Z_Znj`vme zznT}s9jZl=OUM5Pg0z1FfxthUs=xRXgfK^op05HU(btNoXi1R&Q~Jt+H(?#rJJe=< zFP?!AwGiI2t4@XrXi}>!Erz&2dG|J0lxW`YBFt+ER-QIsjU_wXTF?CNKgWgzzv#Cn zlY-uhC)7tucZ#?F)uz?5g5JC4*0T~G(*V}sO3EvP;`)^2rFNXvAmgv}kg10=z_~!a zv~T495-m(j56>P&JVO2aoVxxLR^CMKGflHRs*(5Vp|f~m-ND0&n>>(QgzTO~A73+% zs8^Y>7ZnxJ-(Im}e@o-e{Dwrp<3r*v!eH75FX(q@=vqm$=+P5H_bn$k7jk)d`K}kB zxo_N^M|C|(sMfvGsqFhT0}?&KA(K^9#9C3gDzkCxuAQS814aJR1kl=p9w6vV`gczQ ze7wG$cEvR!_(K7VBS=_pujX!mKX}a*yASW~9QZt*z-xr?>-0d z{i+D*gCGr3?TEL0e@{UEdc}ZbFAM(%#uy%PYC?MV+pj~{TZ|hE+JuIf;u`eN`hKTXtvnx9^w${LsNQ&p#FFnk{6m^rx|4epqhTz`Eau zuny8`Z0;Mm>hH`SbsP%pslDCUA`9R&?0-HEpK24L=^w89>-}GeYF$0GPv$7s{O3dc zy;vQgkam>Qrzgk4u|fH~dV|<}?gLE(M*WOc9*IQg0fgOr#V)OGMxxOCz_dHdLr*WR z|4IIt^x5P&1eh_MT5;}Z1T8z!jv zs|f$M+4G+#0APUD|KW%F@w1f1CJIX^9`pu(&PR)x%bl*SuCw`Wq@0Et$j$zU>xNG5 z$D8$V*43_&B&KD|gVXs&xMg+qL`GxAQT9jbcPYYQ*byT5Zqg{HNW+75jic~?4j`d- zCovyNuU51H?{D+C0+yY?g-I+CB$#iT%r7xW%0NXS{jQhth|MPBt ztv6o=q#gM$wS~oI%4vcY_QU~nW$=j>N^?shLC|w4+ z0n9ZZw6>Mc%XS=2n%gMm`RwmC|4%jf$CY^*Li%tQm$@I;ogf~+Lx{p09Q`O#UsLzt zbxt<1dU1#BzsC3gfSc3|VCli_T)fy*yMc%gZ3N!33sv*T?u2^A`1e_B(1lFcrtuV;$mdod?QGeo!%VjtJ)ufaCGMf6~^x&XN^|Y;EYt`z< zO#WdRuBd9e>LYgqE)AcIHA6OW4m~xwD$dx}CK-oW7f~RLPd6k9RA9Wb_n&=MBU>x} z0%PpR*UM-BGlv?0umC$FqE)dX0N4vxMin_=FYV+&JQ!6gu?%$TQ~vF<;l9<-n+W=akCg!k8LgoA3Oh42OcQmu5O!m=dV&+cAnaRcEmn;6ox}H3>tm z0)6edR0%=Xa);XFPp|RnQw;Lp=}I%!uX_YT;;8^B3^eN>@`~BT)o`osw`oFi@fa8Y zl0UB?j~(Mc@v8!b`M_!ROpW7<$3S4RL558TG2lr~`s({1nx7Af)ox~JwQq~d+r66> zRP?z92L}r=`k@f*(lA)5aSPt~)a!+EjMXc7Ce6jb9@?{ERpu zBZGPE^gE^kO9>{@0Sf0@dsE))<&H-v|5{}PyzVzI`2+>~=oWe9a`_U?6!42zB7}se zv|#Le&jwx68gummEjnq6Z}GkmJXoz>`6F>g=KmTr{{MR1efYi7?_#D@|)+LV~MWfx!%-|Om7KP#-1(dEj1Nj9#U%l}KTi4cZI2`4S zw{SdK3YO=;;;{fJrGC5>kEK*r#>v-ph1wL3{8(EF8m7bWepWV2^*-Nx$et-E$Xh5r zkX^~AQ9bKw*A$LJp3=14=1(Q-LqpYZbH>2L(4BBS)$Z;KFDxnRvpjiu@8jzm@9;h_ zA;P+$fdG*fr;GpZ!@O1wxfMAmj*onX<@FWAi5^BN{+C5B0UVW6qL$s}eR>5TyzB)6 z7YD0@+l)Vn`w_MNW4#=?l2^;4`*5q*cr^e2Xpv{1!JB}4eq(j?#kilJjtxUZJ-<9V zjl6SgnOshAW!dZ(Xg(iu6r<<1gqPJtGaqR<>uD5?h^QSTNJ}o=@`ql(mawH|R<|@U z?RGs(pxRX&O^z(Au$uZPpKCq@-QnvSh?J#HKQu7Z<$O8DB2*d)jf53_-oNSCe*f`9 zQ4!&oezMz=;C5qKo20X3kQDPaCC(EFi+~_-@Vt)&fQI?Xa*&g|@|m+8@P{0)x*4K$ z@e5e5syk{sX_N^~XlG|=uGq4sI~^G7dv{!vD{Q1zkI4=d;xeXL7nU$vR~RLd|GkjN z(2!e51LF9oXRJZMLb4GlrTtpSH+))!tG^t8SG5ul6SQ7IPB*9AxTYg^1a;C5sUB#d zofh!AbM{cpI_FJz&|g-$gJ1c((~kVlpzI$X`P*yKAwyGSJ=Z_hWffFIG=67yx@vhR z&L%a=i+D@xf+<23dUouM*I>6`oNs#2xvxv6>r}N_cpRVwL7T`WMiWug#}O;-`Rs=l zjg6t()Ca+L!k3x5q7f^)ni?7=oDsjCSnvEZi|5&H5S5vQWuxnItR7{*xNfi)hgHp$ z2LIvdwDPE!PJ-V(flbe#=*L;o-wqHI?QB8iOF$D>KUls9%)$*9R5oK5_k@t>bpV*dCst8TP`$!jR< ztBsR_7294jZon(<=D+C5XNo{7t#b{f>xq}6*pDIlie09KBmP$f#`g+!{LnQ>;~2Js zvWqCzi{PJX_cT`F1u+`aB$?S#TJ8|MoZ(5Tv*Qv*MErj<|9|<@Yl@IZg43)3uyjV+ zyXl*-zTiaGItxkjNv?B))g-l`-=an}nl2B*W(SA3a?32aUm z_y|r5uKWzEY^ghb;U2mVv>zH>y?St5f+C>*_M0h*?1=N$?w(Gxud4 ztldUncE--4wLFFi=nuGQGt2aTQp5w@Z(kO#DQ8W)ZysC!fC z@yUfqdevJX5K(t{mS$-435lmm9^^T+K;HTuEr%?&X#HN2vl zP33T!zP>@?&=*8cS@xrOZ@_QpR<98foWdX~A_e(=SH}N4BzRe(VlUO(tm^5_nfO$P z`X@mUW{whF+g`sas-gfkn-_9=PLa3Q>9^f81B`7>H>o-Jf(+K&$Di4*5Vh%q2fJ_F z+X6n;Oa9`kh)p>cB9y{ZOiiw7o5-RcC zgHK{|zAi>CC&$Muc$XdA;MSFuY=$e!LpeD)5Uw}J{Y93Fy8SnJPS@?_Bs@I$XnoUvUC+gOt$ZS~=NgBCC$miJr7B2sPHvG?*9X#G%SOBO z(x!6xdEiB-BJPKE&j)4*HbbZY#t*TgHKsiQh zU0AcFHStR7@3+%I0A0xY>akntjXpdi3q>MC8`@~KR|Yub8W~ud!xCh_32^u|NID*4 z=EfhiyPGn8ecZ#(S*Kv87HL2=c^vu5ERqL?ufTTT?_l?@%lhYu3Tg$=GLNWG9tMNY zEv=b%%5zfI4gaoU^OcKHH+FoDFsAK0Ard+`cWdjO{rUt!S-2|8=6XLtf8UQ3^AHC| zN8ROs>o3niE$f(b)zwwV8Hqs;3o0$wC(TXBhmqLnfzCkglb=rp+8!*hT3aK6OLQRTy{-^AQOTnByZ&7yg6_x*ebZH*&|MFk6&szU)0vDuf9Nx%tp@@=$z{MQ^7hR}ju4>L2 zr}0jlx#51?qJ+B!f_z&_`r*OgG;-cSuY9U(frDdwX~IB`Y($H%kZ79BlY)_y)3RV! z(`h1)7T;~nlfEmsp`|hl<+#+`>3o%LvwK>KftU_UIZ2sz@#$E%1_)@hNMahP)d&_`m?7)`z zb`9+BJoyd+?6ghd5rQbf8!{lu%guXeZ0e7s0bmo}f_%3b;D7?@Y_-rT#Ox9WF!NX- z0Gq{sT94^oTwJuyU4uU8DI5Ah^CKuUT+X9?2=CjWth;hybv4=}(h+NX2EB*Re&R29 zvUgLd>bQ)ue-925@>{IHw*oF?tow-(GNtATadI)0=*Bp+C@ zg2}}Li5RN2Bw8n;q&z4BcZM2vhL_U6`-XqdJ4SVT_gyxe3! zb`fHaP@tBR3ARCag!Mqboazi1E=t`Atx4}z3xyszd%A53QhjDinOy14)%{i_Lr^4R z;t-&brnA|JIn|isJJr`uOqM;yI=QR9e9@hBsRxbN^;7QXajS5R@{#uYzSk$_v?Pj# zh;WDd>+KH&ws2xSZi~cD81jyp001ZHF!qv|fn)0Vut%L|$NeJlclhQbfYkHS&G$xw zhP64qTw##&vyIz4_lA>6u;MbF*>MzCJc$d3fbJQ+`R1e-=^bmbIBQTZ zQbD@Q2U;#muQCA-D8L;f;sIM*TWep>-}f)E7j(LP^6%1)Sv&h4-Tj6Nv49eHw0c9! zO1 zI-i4C<`T0s!2_S~;d4JIq8x;F1V27MUL!$$y)sptA){MA~ky z0b9oN{1AOg|Wfm57Hg5de)D&&SuNve-yualS)~o)KKcF4zSPFh> zw*+0sG75o?L!>=Djo$&92m15mey6jP|H>*PnlgpueKRZTe_WkYQLJQ>3SybZI4ECT z4dZqH8gStv#?U;SmgdRN{jfbxs(DC?WeVDvgdf4iFn5PZpEp^V ze|VB`0w!-DfK*R39m(3RXAL?@ep|A#tQWnzx3$fA=~qrH0cerets|W#B#+|ZwfvS; zxTPtKQQPu~dY08oES1(gApHeCA}}vR1C!Ve1f=dhV5+LQnxJ}c(ACmSbw(Gv>Dm9> z9j5wl{!ssM@2KiXZqye}GOYgzYkm~M@t%!7>E~ZIAi(DZ?mm`T45FC74a-S4Ig~6U z_|UVHwvoXaliKj&dM@Fl)B8BDTtSd#UP|vLv^Jz{NJ9Bx^t<%xyBnir1EY#tzlZjx z49!OK69M9;w$`|~#Gn*U8(*8x=$?2Oi0N9 zW=+iDpA#3S*9(*_$P;iev5(tpg%Ue|cR9RxV3a&y3g(T-#WL!q{t@7_685q*8r?g4 z``g0AV7r3T6eueVPt$l76QX3(rWP$|K@rK&t< zk>oP11_+a5Ns%LPwETh!-%$PAC6635{*jV!s?>Gzo5xY3`~0tvMDSkp(`)Cc&>4vO zoV_OiTkA^K$8&}3<0Hgoh9y^V<~h#5{iy<)pFDe*U9E6kCpH;N6(o>GJe`2D@99vd zgdBq(VUcyUOx3eJMqAp$B=#YSCfjo?9XUsN_2h;!XN0$@5HgrQ_j$gHS{!wvQ@0C& z0(oNS;`9H9&!7m~-&oGp z88&ev#8gkEa43lK0lA$&pqe^Vl$Rg?G8P@43i2fC)C&zpEZ}= zNrW;eu_<@#1Vt+@IGmmR&+TL0z6((u6|dauLgT?iIRA@nq9qDlNPJ1Ozcj`XPfa;{ zi&T*OJ?r{B-qnu?o<_Z{*r~QF4I3wvH`Nnup=m*8X4I|N!pL0#~;Wh3~wAAjSmI*?J;Tpy6V4eLoWQNY~W|ElUf z+6ZK_2zbt4gBDKbV53!$FjJfPfF_B*9(_K0!H-W_^Egd^OI+k!U9)OZb$%aBbbX@` ztV@PE9^-{>G>nexe54FXBPY0!RR=DueDYH5h;L;hum9p%H+Hka+B}#a{RI^jJa;_z zGXwY=bZP0Y=#VIyf)k1|FD&Rn)ImPPPeS|1Dx!p>S-H_Gu|G}>TrI1gUbq}@Mpu#= ztCP|inQRSr9Ctn|%Cii~U(pB{&O)Kw}e zms~hYDBYw~Y%%A(a_}Waf7whJ7Ul9OUJo;-WNsbcS6p&U#8;9xOq5b|^;CM)TEovqkW{O33AI}LPC`-L09&$iUebVIn@b0#W}``y0kq~;H!`Z+p>M{!0R zFI&uC^gD0yA{8bMRTuZZg{lcXe?U9`%CmMbpvir7c7L$Lf;n(I5l$WO%m{Zq6BUOn zk)fWNh3lH!+RfXaKHKi*Q0Jm_|F!pYcl7hrwa00cQuXE7$MET?VYf2MT%lNz*3~hJ z&$$HEdoPokc)8^B!%g!!*F|)(j4KbhX_AIK#Ak{EA@5brE$Gl-PF%7>dY{9up2i~Z z6YN$Nie|GsZW>LNW(1ltLg$;?FCn2mQ=pOdFnNmGp-b(Ji&oz$Ikrm_wtM~DD@Dvy zoe<5vN;#W=>vzf)6`OkncY=2qTSIpth@GT#acD};R&qs1MY-g<4B50%4;9Z$j(QLo zIJSDn70uxOf`Eog#x&r3u^I1gH%Nyx*}iI;O_$ayN&T^y>aI&95^jU<6(sNg7kNeO zzNsuwV#zh76}RW&hzU={Y~NQQ^5mBYd4P8`)AP37I9MVR6>~pOtfJ?_m$@2ljQ#-` zKmAys_^+4XBSeKBSX6^Veg*dH0WAW47XjC=A(ZmhkIf*rR7a=VN0V3h!bp){d0UZ> zk9UCA#C?T|ZmattS0JAE5a0q_9&3}ba~9ogx3!0o{LvN@0|V2zTK63!JW*yyr7kLJ z{6$Z!hq#X`loimCqS(KnYg4L!9+CTh*!l{nD!XlMO4x{WDcvEBbW3+jm!N<&(hW*? zcXvp4hcwdNEwJg%4gZUt@7#0$d&YQ&V-GgC);rf+bIo|3xp1QWUfcse*&~w3xeuNSMZr9@Ztk+)%-oc2pgy|R!3lWLZMlin>JeUyi?u@ zH{uVL_*yEdZ{C-OG`ZK7uy5-0A>zB@lVYhH!n=&t~wLWg_TUk>#Q3#HWP#?xo zfJ=(yw3J_^jdEoI z5~*WoXe%5aR9Ko1%`CPZM!WZ5wt&VjyHt)jV*uW6zur00oJuQ)Mp6l!rmX?rdS`hY zH)tX4{4u>RRTk}LBrhjMh(eCj?WBBLij3?;LDt5jD<%j&<_u#ODncO%4kJ%$gMpY^ zA>~FvO?*t-mL#puM;7DeMiKV|`}Jh^()cl@^)1(VhXBYM3gj(hfGCuEEVzQUe;;9) zDb10lsE?Qai_Fyv=@Rw@m*OQwU${UET(SHVEQ~Qlri(FKj*Djn?U~jALLd#sv$hF) zdmlKFrIHtgpi}XfKpT2XrR=pMF{wdxHQ{Fcjro7bcp~Jn;A}u?!?T|YD zk--vm$wKEX^kVt@a(+DyjIULugNIIB-9@~mi*?Gwz`Z6;VlR*#9V<&QX&_rMMW41m z{2J($ms@Nz$NeC1OA)728|_+bUido?mnKc}1MO}PNDeV~@fU7Jqjg%qU$DG_rd2(6i1FX;K{-wt2Z24Otf`l>XmM1tsT)k?&uTQw-K316Ey*4 z^@Qo)+q&A~3acb}6>FX?A8C=mg4h{g4sH43;dpzTKywkf7)t`IU1#3}doq$yg@_#T zOAp3xU#%^d^(Tk)mQ%3bb#FernN-=GX0X(%wy#GLb3dl&P{*99y_{^HIiYAh;A(nb z9qi+}v|yfMlSOTyKDp}=ztbF!#GWQ=7&VQ@n3y16Am?z=knx&$7(y(;PoDlT&9|VC zv`ez7LN}4HxpMYpqf)DP(@HDKEhUeiY|4qqZRKpd4q=f53I=$5D50V}4P0{S#>g|h zsEM{515IvX=S0B-Hfb;RohF49oucs)K-PDj#ILioeO`TW(e(cFcfg$?q2RI3DcP2v#Ob5~`sbr{apJ3$he* zCjzMAvuAte7RrvB6BqniL!ATlE7FidLdJFsWYkwdl%sT8t4rbkXx zTBFvwKcKUhxF1edW9UQN6n>NR*vkY$pAd&WMx|DceQZ`$4X4TU*t6 z{HkVOPGY6amJJsa!ZW!_t zf?^0EO6OW1lP?+GZ``s)8TgEumUD1F82l11s||FWMol({$!l3tS2w!Qr1ZmwtNA2&8vY0fDnTT0i76tcFqE-;^; zY@!@df_pkMP7!jym6gb=qMhz?#gk!cy_9Me&0t=t?Skau542ns9xf#* zuW?C= zwA7gGi;;S#QTst4X1=)C%w7T&E*z0pnC@~MLvayspb!E{;g zvETrc6?inVW;O?>D|~!Js?O{WbNz;4i87UGo1{GO^K1A9!=Z%N`OvcfaPKkH9>s9y`ENpYoJ+57j3NZ2 z`_i3L^H)7MKmXFt)NbRbGFlZVcK`iGI!z$W_+g7Em{=29WXWEg|DImq^$qV6zwG2u zi%N>ze7qDw2$7fa7yV(n^06$z6@`1ROFFHK?wCP1zY)m2=^{hD;<0?pUhXUT*g!|h!s}ErNo!N$)2dOTsW>BY1c~UkwrvmR zb@DszhTj210JJL((yvX!oCCdqOAE+4w%^71)67_yS5fBv=s>;;W=vt3gSXz|f^@mH zWsbE@qy)8HsvVlbnK**xo3%&v{a8fU1ja!d+LZ;)Zo|FT3+}loM-NVUWN&Awl68|M z1)G~BPrsIj&01;ChqxKtlU!DUTI*^v9;>tBk{ef^AgTLsFmVYyC=}M(*CaiC;xW$6 z37JGHlf@1$=H?jXuSvYb{eC*MUW|-5YO(Ss;lwvz*0(lcups3ARUTo*(xNms03GShvw6u%@cfD#qxJrbFNUQ)1|r@Nb6T#`qy zFnLa=TsEX-9K(g-%FKWS^I7$M`Fw1i;8AZ;g2&+d8@gL1eH{gok)KZ{5;QfqlQbf= z)ZWbHzPYE)Qr zVt2|U84;9p>dNQhMdy}ppL#hp$BuTF`P>FD-0oE)Zdtj7)X*a%SwFuO)25$tF=($U zhj30U%EVaRH38vzpCMPNtcB_0E_t!rAv;1=8%H_Q;-1|O*QZgPhW?LUKhhfQi~)jN zTQP-{loSzN(Z{|8%~Z(zDna&Z$NJVIlSyPcryt+ki_RA#RNtl#51EYA zzaT^6|Fv@3ez(SQw^|SpL9|vX=;;E(kV^2nx4Gnpj#n*N`cvn&UvPjMf{}AUvr}NQ z%L|`-{i2){re6hbdJt6;-zZEELoT|TsI;0(zI&bv6GDz;C`U98@3l3zy!vuJTzTwG zN?0fDZip?X3sqNs)W?OK6q#vt%O06<7`-63AS`iLh=7=fS$>Gd7tCu<4v!_TlfGFo z`d~l)%|03tRpks*Qq4u9H7AY8tvt!|m(ga@;*i3wX1kY7V!CsEQk9C~-e6CXbffFj zr|h3hZHltjZK^{t@4#^YrRazE$u!Hshsigmv@1`~5qG-Q>aP-3im_7M?Pe@<3gUz= zbm%{dWbhgqbb&0wUG`1&=!Wp4&fK^3xvA%Ny}}naiCkd3gS-{!MOLf#1vsBz=_^n9 zf;xp+lHA`nCXXlzF%hn*ad@B|tQSx`~ZO%zgj*0Aw4@SlW0~)GKA2PBmr_;~nBJk`^^Y@itm)~o-VGL0%H~|r8>|t(| zvKxVzMD@;-Mmhq?DoQwMvii&ZsnZ)KGOr}xF$dpUNdZi`HK{d@__%O}Xh(}Y7Pk#C zeyZNMES9|egbmBI$^$X|vnqIq@B5a?rzpRPVW8{LS&eLRZf%7)5PyMLpm|%q@EPY8T0Lo3&8OdF(~lPdEU)TOxaW2O6BJp zwYs9K`d)?KIF5jO3v-6x;93=<2^GlT62`{giMmBxkCpOOuKz}|+v{@KGeU7#r`6ds zlz%k?(!M+(R!DX3#kIaO8Ih%Q;>&G0gFza$+RJHH!{U+EKr4$u`iiaFmt&r?OL-Oh zbW2&LcT~&KT9+qxn(uX=ce|94*@9EdUv@D&q)?r(lzo75`p6_j#W6gb+t*Wui zdN5{!LKT8~Upu9a+j;3>7su)F$7o3L=Q3DfU}?|9Ww&a%n8^`qpZx~!B#`eWXI;`w z7mg9ApR30sh=pEB+7!Kmou}pwY33UgC^ZpKM}=P?T2&ZueP+=y3`_3xQI`oC$l&G$ zbW>3AQnNKvYqcZ0W@+nlaZ0Q0LiVbV_}DP3MOMGs5t)*rd$NjhNGF^e22ME6yS7Xo zJ&}5=>6$DpGDYIB`C8G-9N#TN!Rd>caJc8n+^3X))A#AGj8rRTW+oJ^i7i|AsFum@ z7Z+l0^sLmu_M3c7)LYw8pxeuD&R55C^%1#N)4c6^K<60D&a(x#{1-JvZBw`9Db%i? zN}Oe$(A}g3J+xjzwtJNktoLR!;^eG7CgcTOuDC3XSe}Tjm_5ICw{5E3%~!JrUq88E zV(uN$1s8IKOy5~`jS320eX0uCF&RU_aV0J~cA%5Z=n(cWu|C{Tf|xuNWp#yeC3Dga z$Q_EB3`=j@W(o#%aL1t6@g#7sKsXzpob_OJZJXRiuatk|CYaEA9SycSzlRS}e4?@A zS91QoUsECUgmHxAl$BqbQFgzH9?kODUAnCr&A+fiH$Nj%+j>zd5kBtkk#^AI#hPbI z^|^u0j_(wfk9+H5IsqBoi|+GWq$E|6m8a!l3D)RQ=L1o#zv(9lm}0ag792NYasySt z_b11z>Bxv#ZNVf|Z?#S-%8w#E;Wui%0~~fKCWG+U3AN?ngoY3U*PDekJhF_P*Wc4H z|5Xvt&zB#7_4gKvMD(5Hbcj^SzJo&ZenkltspR(sw038aT;@#*=&L7*_p!a85b{2m zoS>nswSfj|M4&Z+zy207v@Jaq3$;xiv1N&FYAzxIKmZbUcFsyCFl&`Y zcS>oS5i7f%Ui_wCBc|xVU7Qe>+qVQ}KIXN$^i8H#NnHd~#am9RtVGci+{2GVix}D2 z%jGYLv5j~+_;&LxoXR`x`6ip$M}ETo6#0&2DU~_(hB_=s1brqV$O42z%|RXEBCtu>z*1VZ9;@vXT}I)&Qrmrsp)~NcOQ#yn=cvSdZrLOOl^v-M*OI z&@T7#B(LnSE^KTRR?eb0t=smSq>E#xlwH`XqcUu836NjLLtxp&M{uokU65CpEL~lc za`|G*=9PUvfRG;hArieLaIRM8@@(Mci$$00?tG;;CCOfgt#267i+DR3G^jJT( zzs4m8E)>H(B0jKGkt}oe>4u@Jf#?-&R-5hcm5NmOsD@`TMQX^44x!7k$T~C)l6HHK%o_Jch;?j}?sEV)gWd zxfT(Y3}E-Y-9<%x=(NPRoSULm!9HzY^yPwrfyb=C!g@=2#lfy@k=#bT?>}8qw14t3 z+4Y|AY5}v#F81(o2FES+TwLD{DM(}W)yhWCN?SZm^4G=swBd_=PbP&aTiiRXWX&JM za<+SACCCj!n2e`>NpFrQKEzV?$OF?(brM=;augU-j3JqsgKKlW6Zy7 z>PWwrVB-9=}>RB=-^Qk6>anD}j z^K>q7%CZX59>S#`3UZANU_Scqb=`j9$qN-9Xoz7>>5Fe>cKddyA@(z<^`@EbC$}CI z#?o1Yk?QzdUku#YE|^ktL`vrhIDwS8{uQO_fOdnbbumcE3=vKH5Jd0WkYSC|4cx0q zFYF>#o&r3zzsNZ!Zss0x=u{LY_hBzK`@_BK zBDFSl)Z-Gjokp%#x&(5#F?w0x-LhW}wnSk;pP7P6WX3Tg?Z*2KCOCRAjx5g|AJ|yF zFVQlD-___YRf))D-a|iOvAN=sWIxWueggB^2NDomda}L1M6LK3hn*HBrT7?3iA+rb5l`4aWICAG{GPN_}HW@ z4l5%@M5!{0dXr|P3b6)trU@63*Z{r8H=Ew*?&l(pk;X^Hm>1y{H=2AqeZ8US2xbLD zpR8{%rg)}q+^=F8zgeZJh{_2MyXy#h`m-EjjXqqrDoacT(_bXu4-vo}T}eA|u)45z zk{(6y)8{);PYG(6o11*ODlGlnSa+CX1Zp#PiH6-Dq7_`8IX1f#Bi~#T(k=g9;Bo0p zjnv*V)Z*+t3vX>X9lySR<=?6+-OiZ8QfI11MXSnrIT@cwRR5t^hk7gY>$FUZ54B3a z?~7AaLACzT8eNrSXN&Dzu)h9O5HsK+&2p>pkMwz7x+4>=BT@@$YKrcho1v$}k>5Hi z6Hol{ALc=(e&fc~$XB8q(E7bpqK~3ElUn3%1TL$tvnGtkL&5#2FlcDs=P$EF1^<{4 zuEZS}Fg&pQK5J-^>Q`q0YuM1(#AvR5qk>5_Y2PdtZ;?^5hC4Igz4%E|699dO3Mn9j zh1bRTr5{>1E^eLDepzAj05_$?`j`qmn1yG0VdDKuf;~%4$e&Qy86z@b3SV$Z65vkQ z&zx2BTjhc-nVQzf>b>^9?ESC~uOiM6wD#%yOil`V{hq{R{%f#QjpFpAf|8e8vrJT+ z0-ro=nr^Jq;|s>Vs!@&Xz_I-m_sMOIOQg|C1UHEWMPSUCg+o zo;vBmn;r6Q#v;P#ddpRL-lv`Bm$2kwcV?6TMJiG>u^f4N6r#SK26*8d3!mLu4((|> zLIMeSoyNI$^nW}+uG;QfY1X?nMJxEN4ar*To4-49yJ#jX?O)kXj2Nl$n5(^|?2Ul< z--B0)^W&}wv$cr@IE;JRrd&E(*f2&{M=dNIi*mxnc1Jyyq=A#9#y~mx=PCEWc*_uv z=*GGpQ=o?HbiAWnQ){FFRh@D&xYu4J)5E38Go=oHR?P+k~ea|q1>L}4s z+V`6C`7j1)ylMRA+$hHkRf{YqNBgnIC`6=%7P2ufXNMdNcCT#mjCc73iZ9)wyj*qP z0YxUWYTCt#_%T-39b1+cOYDmwm^6Ai>s`E(9KWtS+Q7A@*l>?WxOV}sHP5xH>s zO}-aDDrqZVv5Kp3M|^OcJ5MP^5hKz2((H+EK<9IGpj~8Dy6Y-O{7$@9Dymy86Q=ph z0XTE}oyzl^#l%messPC~AI_HD`NIbZ|EavGV4jG9EW!Sr4T03&m2$a)A6Pd6{1Kpf z+eR-ly%l9JY>`oFQO*YRYMmU?2i)Jz7XB*s5RWr?{7P2d^ZOW61N0p4iDNSF*O!eS zUZ}XZ-b``1hutCa1OpcBB-z{55d)*3Uy!J^N3&DOO+mjk@IrV`+bt$JQ-hIHcE9_-4Cc ze+$=bF1-DY8jFa5*=94GIK7qXfHU2C3V+zLFQ0&oI$=DT#b=c;-f4E27i<(KT^ZH_ z*mA;>#)3T0-Saj-2d0DmJWwrwPpy>H(7i>3a{o2|v*E|2+kx{HjzZcgFC&Nf*rjuD# zP1ku^I92tNFjv0maTp@Ysclu25i2Vz@@e#2?E(Ce)RdvWODzuz+S}G?*y^rOCky3vXjxV;FK=dP16f`&RAJR5ORU;`opBo9Ty$DC<^jH3dALg3Ru^h{MPH__(tY z`FD`iKR)!z=-+nZJmD zwPl=e`X`?|0U{%_!ZpvxlcfNL8YS{veKyJ@M(&<*J$3~kAMN2@5n>!i0WPb^%vTY# zZfDEjAUw)H=2w$48I@OApl~-!x&OitvS{AW&ZM9E{#^r~(?@Cr(=Yo(xs80C+oJ10 z>^tb}7ScECi8D6jo1l}f$kH923)a5dOG_iPPZd;Wp7oPoxozFfaotU@>v9R@S)}tQ z)Ai^A2`EbdR|7*9D6cI+&%UIA8VnjsO09`OLKNJmREa7R571>8f!s$;9KB?}&-G1T zViy*{_mrFiFnFa4SYy)PwKRdyv#>#l8;B}wK#6-HRBLc#O{cwM0_eir;pHku8aY^i zU$6>F-F4m8-s=a_cxVxR!i=1Uj`4*=bIa-62H62i)2Dhr zF%%r>p|MH1s;sd~HicV1T3OoXjH}jWXI7D`LKtEAh-53Dpii5fR2!M7Qyl|2w?9!+QE0ls_=C(rk>`1ol^ezYZv_7@eJ@82 zhOZbhP8YAD1AnCbgffpv+qB+ky8LFxv%|LB`W?uob9?^&rFu6MmUq$j;qrp7941rV z6HU7SM{9SHuTfY{*al^?fr+>|?zTluqQphGt0VI+Rw$N(the1&ifWJhTl-gAs%tyG zJ|CAL z4cBYe`c?mB_;aTFCG?Wh&72C@M&Pke^~E|Ow|x{{77JmuE!s+d=!jPO4pkg4Hx za87m(ZIqW0Ze`mS*pRzYcgXAAgG{(|4a|hHWA;V$d(N_kP))4KmiC8fHLTf1hl@h8 zk!$s|wgrM84;xu6(XDk7)zQrqbR*CryMe!j9iIZdWn2xA@iG zxpkMDFr630YYZwxL8miv&%AJV1Oxb5O07};alVCy- z0+25qG&$eCx;laC$=3GHIlm#6Am`jsRw&IP@sivF+d;(dY}rx7#B1oWa}JU`Cb&;< za5CB$E;&p9!eeMoRPXtJ1IfX3-l-wWX*H=u;AZ9assCV<76mdXH%T4N>B`&(9(r_{t0Hn8Sc8<3O&uFp!=;? zdM>IXo{SEg9OG-RjQ&qZ);E%FF%0AO%9Wp&#3S>t=7qWia?=me092}dLu{Rjio|I3$2V86kLORSvR;}* zKfaO+A7G+~0ol}-MXujjFup07*zi)GX%XnG6cYX^`jAi{1_pPgtXT?JgN2EnC4~ml zaAZK>E%XVaqtRNZ9X1;pO-@_1`_ihLeXd4ibjtr@Vq%k<0l}XVCm^%uY}9MCIj=Pm zLT;`1>Rv~|%%;f6&y^l4IFbp}dLl75Ap;8-G;qW)HB5vs8-Y)nfN=~gHyMoPY+@M7 zTqh8nc8q0{0b`$I1om@|qtBae_GXsfxDQ+F$S7j`Gma1!W(U6n*EQpUF_cdruNYZb zC;Y2u5IxLK3K(8Ox##HRp9l2XCq7>7ZXm)_=*^ow=n_n9pT84@0y&EdQI&{J_{M3B zR*=LAlN_+ueq0rL^@$0wzrRBUmT8?7|L-gLVs>yAD!_KoxGSSrIe36yegZ}~@%C1l zrAI9m#sCJ3!RX)*h#-XZ7Jw0T1VSe?3U4}nkRzV#pQ#Xow&=CxPv0a7#Creuo8(Ey z&~OI}M+^Qzq%q_BNMcZ@gz+D+5JPhlXJ>cm|ANkHyX_^Shw%xdKzmHk-mwa6!QsVx z2001AVFYqP8+EgD!62|Fzj}6v$>D4U`V{}X^LLO?l^L3(3J#`iE50o<$94r0Vh*#a zaCV9T#q-;|7B&DAuCnJ6V8Q$;o%}6aqa{DD&#>qB=|{>;ex|MuHKH(e1`a(=E1j1saNcC4biI~iHy|9A;%*4#5ME_c$L|>>QZrKTRW>`2` zVW?TS7<=E_;SNO>FXB$&|5=-VFVcyhw_50d40k^g%(`sHvI_~tG4TNC8mGMjo#iFAfeC$>IxbTdeGVf zD8x#X{9lFrKVZUteeUq{<~^;H5f%kRvWo$_w4>3g{}2f0Q$gu1g=oCL(7zuAGPm_* zpS9S*J%E0Wh9fE0n8r)m2az?$mn<`&p3mG4^o3prA1^BKKjb%2O(g45HtF)-ISum^z+MqyPFSAPQL=)6(X` z`gC9_zPMLX`t3mr8*%4Dj9Z8fCuHF3?ZOoH2+scdy81cr+s{d5Kv86&vbDbZWOJbf z8o)H9i`wku?ETfjS$;Dq}$&qZxqyHH?i$BwV|G$k4OkGmwa>CLeismJ-LZfiM-p&Llu8tB$Yz)gn zb$!uyMYwR!!i9EW5hBZs85eyP8grshCOef+*{FdI4GNqPNk5zoaG3`}rYjnV6sAGX zSJ9+%$^b2}L8bcy9$(LZ*&iDGCqwpM1rGdB1eB=sgV%HsMYyZl$>ANqp7NG}`{pow*3U%&15At(ddV)aO4}gT z1thveYv}wPnQ4sgJ8b-a5jn63LTJFiy8t9r-~*!n%4SILx4=#}*Sb{J$6wv(!XEl= zShqjDy>;fcKEr?GgzJ@II%^Xr`_Y3wqhmet2Iyn+{602hXa|eTrdp{yaLs`1tq|ev zUAJeL34pIah=8*X3bOhZ)k%(KTM)R8%+b=Zh73RT#|r&>x&Hm(Jq46cu9uDzRU1u@{THTdRKaR^3(imSO7#L%)@K_nw1t62 z7^Dfq#$ddMI0p^$o6;cPJl=)2lNH#FnCOb-l;}4xok3%3Tp*B7U^4?}OQ%0>pbz3d zd*>hf@bB3eVT=U>!F}L&J@m0NKT|JvkYAc+;`>6uwl)!P1=U*665kJKAfIqaSbaC5 zsh#L5i;ugqh(5CcGPiP$(5(R!0{|n73LX2C3VmoU6|Y5HHMc@vhXRRGKwmDPMTJS^ z0O|J!aiKB>ASA-q!y;IKn<`%k@)X`&+vH_4;lWF7({@gdLDvpY${;`&`kn~j+G82fHX=qFO>?&XDE+Ufkvk;t2M7aqgl#yu-~fO$z=-TKdDM0(%FW9jozi(*$IPO)H+ zLXrJwM4u=z1vZ;dA!diAbm2A00V)+Vx0j6<<}V^<_2q{2;L<7yoS;0tYV?`x1u#bZ}Qj)*?o)03=^vHNr|{OsRB=QKefb^+-016;hIYUQE2q}y<0F<$ z^Sm!#b3$Kg`5x!m=7_+fo%nmFe$5wHe#JR<0@KEEhvfCr=HQ}reEWd*4L zn!y@XxjZjXmr@NeeWif!9To8n^QbJ`R&Cf_@06@#XM6`H^CcbMrmd)kT^K^(b1g}z z0~O9jW&@#+hIIo`s2;0P1ZsAw|In?50PdGG)T)&6;hQ;Ze>hpMrZ-lZfQqjd3dQ^v zxj?~@`FN{E5+EKrSQ+KkuO=Z}=>l~NNv@!)+QYAwwfC>}Ukeo;r_+Udd!s-HUOHro zYN+}a%>Z^1og;Bv=ReKtcrod}ZJ#I`^rXxz^0N%cT^}+}Nis2Z4-fNz5=2pLZCq1R zGYtcK*xA`xp}lZXa`*Om|2X;7t=jtB zFH8yNyjGHBQ~GGkmnOiUbT+wZf6iWWO}FQOYDShYESZOegj%ehAT+b^6 z`T(;MY!4L1ix2Q*TcbUzt!G2PkKUlYu4%zYQK9AAPW7kK0`Un zaZxP2M`sNF>$0E3LW$<3M+@_yy%vNvjqe?O#r;>C9z+0Tdt47ze&2x%J(=;+r@Tx|5Fkf+T4olzpUTJuF;wW))5ZzHt6nD$qWaN)G-SF?q*IqDr1l9Frl(v@CRKTS1s^Gfh} zrug~Yg=6}=I-hkO>lfvz*VjZ%l_S4+V{3m6uxbW#DJ*NMAb15&qX-O)rwf6hTZx!2 zF9rF=q^{ew6rS!Ig>gm-%&VI%?v-~Ic^96UC6e8D3nU&cr{C=Fjy~UF5%2TRW`$7) zEZrM24BXhEu&%V(dJ^fnXyu=ip7p3DbfNu$V3EoSVK4aGVDho@D=+M!zoKAG^>%c3 zA=lzu%7ntDIV84j20TC;>Z~RkQWDg9c?G}q3AP$oI8_*-SOP_YL{t;(|GGBxr*GSP*Nl6=CtO?IrUSl954by}C1xO-z);O?C1i zD^55B5VQ-8Zq$}5RY_{CmBDIyjT3&7`ufCq`MDF^CK;PwWy2)pi57oWCZlAKFylZ^ z-+P4i{I=w!>b!b$ND)3AZ+n8;UXXvePy5t`RCqEm8ktupdD^ww*C#Te1Fgp0~e~n##an360CyR_4Oj>_NBUVgT|@O>5Li8|!q`NG(lN)z^9$ zV@gz_G=4yqDq`=>_Y~sDTSTE@(`|Pjk-;sWME}rc@)>>jW5g9LB8zHg`py%?ioEs0 z7N4@WXAH>HzcJ1R%@S))ioOfR)Fj9d0iXr_UBXsH=j+pTJa#IZyL3ChLp68y7Z-rL zsh#8XhYe3FyV_SRv!AMNJU+Tall3!=Dj0MMj6Z78K`wz@{p$Z9{K%)a zN)er>4gXq@E})%8R-v%bHiooB=?`zc&!@U5Be;GVlY%25*vgY(tRR{Dsje})brXPy z!RJB5mX7vE2OTS~Bg&`g$ROvwqi>R4W_YHHR@OHq5IL8IQ*%#^Qyfw647>uWREAK0 z>fI!wh^Br$qzk^7$%KfOe57!wm^WQ!Eijg-axdpUX~jo%i!bn}U-7Io`dc{tw0Sm0 zC!9VY6>~8SI|#q4;$Lde-yp?%03?)aU4`Pq{jVbv%^fB`1K+5@#~=6ggS_tx5;Qm% ze1W-+Z#|?V61m;PJcu5S{ zpwand0_6#AWetv}$=t(3CQFO|5)|EjC$U}fuGSU=Z3mIR@bim}%#dhqd-4#g5QN+d zRuH3JiBp$jj8zyTD=;=N&*i69Jg)S@7klk9NcTHjih6eaB8}}>6o`_dRN@n#M*C^# z;qWa85BFdcVbvn@J&wc^cmX3>(~!5mJ6{u%{=z)`ej+3M?aH!XpD;LE7Gh`FVtIo< zo0R-o?s}EkNBKqtS$QWy9cO~Folo+~vplG+d*euhQ}43*hsZ_3EPgB^JZsRJs4xUq z(CWj){-k!OmjC$!tXK3~tdl!=2Sc`dALQHCcBa1x5uFXE5 ze7@=HYs*dsi}yu@<^ebjVLC6TM50YZV*RZkl=1N#rXxDMJ4q_7K#)FFpy|)(y-Ih5 zXo*#~mS7@}f++c0>7pxU7xNMk(z(A83=lMxDlWvr!w=AS+1jcfIg2j77v8uwtF<8W z383&X#$u5g%tHgHK z@9-_yc5W0d*JS%MyzmX?$t69Cm#``6Uy}s|TB{=mFjp@?p=jR5h$7H`9K#NJz*>EZ zPxmGyF+hRw*T;OtG)9nW@B#!EDI@|LLN!mR{Bn1HPs^Qca9iDTA04{DE>vT}#oZwz&ZSQRuSac~ZR#z1*)1W_bwbkL;| z9<(yO78kFLW@hhN2HH0@P=lOY0J@;|$bZlUNrfT5N1)9%+CzR9@B#=Wp2-+P$?kJv zVsLixZ_nh!60dNJp4+ftlvJ>@`sZn7Yc>-qQJIkWpnxggqmxBjfo z^%Ii@qm!9uESX?*Arry<(+hyIFJjaW(zzfY*3sr}3^x6kTzbBf_f{D4on1}thh=rZ zerQM-UcICj>h*YYGf%8A{QQBF<6NEY+p(aNx{*U{px&k~Iu?8}z41A^Gn-Z_SRJxZ z2OV%~=dI3)HiLV@HHH*YKt=1}P*^s*T~S}xgyjqR<9xh_(K@vOB_Gdh*;pnl!bjM4 zyrRFbI8p897oQZqiW~$&3{zev3ZOguY+XTy*qyt&MRR@q@)Vs@=E98cUR{k^d@*=O zf$m-44*t1lx;_7ukxF70vu-uX45w~F2gxd;si){^D|76>oogr@95hv=Ko*>^5>j4A5O3i zenf@b?qpaqi8POQe=*m03!`#>Jdf@E648D_P;0d;J+sN)qA&d-K~I`{D8am%X61Z; z)pL=^WP6&9LY40f^q~MUOT>ha$gRn?eZ@<#F_kuBsa^ED2e+s>`x`uO^V|&3;NxsS zwd(Bc?=9DGEpxNov5ZGiz*Q3WOVAPS)AtP05`0YLxjroL{l+)QcW9q%Gd+#fGmF4( zPslGV@$~5AkO0rK5NoLkoq68z-mRsH<#2?TmT{S?yVPYH+iayFDjzcXqFL?8HB z67GlgoK($^GnGSU&fB$)G&1&rSb}kH{kEl=2ENV_A@1=>b#Px?AS+9E-F#rXH+OZR z{AQfjAj^0ix<`8f##!VB>ja#)aXLsp)i|I|Sm+^k>T;!7qP>5F+W%hj{%nwoW@tPk z5Sw8hpgs7lBvb4 zL-oVDn$eiLB)!5_US?VT?{z7AG-^^@%d6itY0lsx!`_Q;U$N>ihw>_L?xu^sQe zp_7Gl002=YYn;PzL?X>k57P@E-aa6te#B#^!ToPx@t;7MEDDN>SJbdv!ZD@1`F9fw zv}zbAz|PK&aH6OS;){+tURqkJ>d}&nmx2di=fhrVkmz;@o5G*xPJhG2MEeIwt0as&-o zT-Yh&;wr~tUySpS3O!P-o-w>_IbiMKxSgF{5Y`Ovg!6B6tk3!9&fDw-!h z>Ms{LZ+$Fw2b%Q3rL#J`?ZLtYIt~~`@QWjts86QeALZQ8FZ$xMj|!O-7@CunzqPq3 z_sU!NP!2F`X*t;ac&?6A9-B~!^J6@LP$PuQYIcF=7bXG4g&n?sD%F|f!^xVrJ55#q zH5#ZH{NxsoH`}gYo0K&5Fdi`Vb2hXKo37BG`Xz-z@(*Sn=T+;!U^q|JZaO|k_v_}V zA;Wu7EB%GgH%m^IQ^55|(k__RH>`0w4slv(kZQXpfjqsWPZc}VPbIQP6Cq>24nW$iTQb-QsdFK<=l(V0kJVv|8}|B`xxu zo^9vrhyfF1fQJZTlAtB|xa1ds>PQeIFcqXL|>V~$+SajLxaY6?$Evpk>YNP3*~*$#m~HO=>}QQb&H z3W>(@e4Hlv^pjpSr%Mu|Kl)5^0;gJOw`R`K)@x%Ha%!(5WB+?Qh-RracCF9(tto0- z-e!GAOkJbb*VkSi{yP;_ua^h2?LD#BTMmS7&=8~@EDLL2TfPXmOoS?P1 zK*Pb|Z`JbX8oWcSxz)F{OrYN{IQM%e!qxJNnN@yihDE`vtGWuCPWMqd5$Wgc{~r%N zbYWulYn$DE{o)w4`So85qezq{JjxVD2z9Mm#+| zfH+U~)mTAz0yeAOxy{h?TpuVzIUhXsx}UDs^Z_Qg)Z>)R!MMcU9A?DiMe}if=q=KeX?+Ia{gu-8 zyHQ2(#U9%x^|j(d|I61K{!QR{6PK=z)!XBb7{^zxS&wP;w3ag#S{HMhgSl{0z(c0yM|igf4SdLfpVxXj(FZE- zgZrMR9RFJLA|G`uuFHV}T7W-R{CMtVf05Nrr*~Y<264L?^->ePQ)%m>VqdBsMP-fAX5Pl6cbU05Y%e<;=2PX=LKF^aWHokIh5lQ>61!f`qBwg(nUm!F7e@`fhy zlfSImmXK}8ht6slS33-sp)7Q-T$S@N!~o%z-$~t6&QrMwx+iS?;qP|hoc+;}e9B3c zFM-f4&CM}HZuL>mBy)fo$e#T1(-6;wUwesDV%y~jde6^hjwomF)A*n;&*$j29d~w1 zU2Vb3O1sgzGSY=k!zZuOFRE|{L-Jp-E4A%d_$)$~KnoQ4d9Hm$-3_A9m&m}2G3hDE`OHo%iY02omA|>)_ zcg^xo^F)~(d}n{xEhDgE^Zrjgni&b&#HU*G;A{$|dfuADjc@z4)!xM&sVZAj@nM$X zv2$;DjpYwVfUG!LqO3$5a`Cyh979}Sdihl7^}EtLUp8a1V^ln=@)+7KDWW$Uus8T= zpr5nn^tZar*Ib$+Q!_JV-9edrl$1$08BKx4vVsGYgk*fwB-E#LC2Hf9Mjxc}W4As9 zZxZKkDRkwRYMTzlE5s6;mA4<^Nz2wi=x4^qrQGJtMQm+JeeYhoo(3C2%Wg7BnqZ1vli}fct@i zBcHO77_%Q*+@%eeb~Z@Nm+$vYcgl2QlcK~za2O|IL*;N3;2sr118W7VRug@WmU|!I8l!5*T~*Ku#uoh0BBW zHULfC+NYq5dVisLz7cZ3WTTO!Xn?yX6ZC_aMzb+GnNvE=TIH6rt;l)Esf_+DM|l3~ zC2X)15jI{yRsG$@Xld^E_V$Pcr^6bg%d~UX>WrTy$c5nJsrhQ)&V{S0?O;j$L75DG zb=o?+Cun8AJF;Hf<9ooT{7o{E;ESX8|LA%Ppt!beYnTw+C0K9>E=>pof)gNEa19<@ zf(6$`gFC?+cL)Uc27BMcJHWsU-OogO0~MOnaPfK`AkMXH>lv(_&2NVVBcKgM`EA~Ef7{l_ z%2@rh6+~vwyBL|SgL{8{mYfC?_X*8=BWdBV+5ce?mZCJb(clg}!RX`tA0xBM zz549~i4r^IabtIg^cnL#^o#TE8Zd5DIxtxmpNdn@8$E*JjaNKML)o>W%YruxHW?K0 z!yYwG%nN#!t@0^_z0%SfS{9EH_1QG;+@Nt&)lL1DQFtd%sE(TP%8ZQ^XsCI<{h@qv zY=~%kB77Zzc`&?Sf7{#LP#6ElRv%icTUMkul9AW9#4e>nH@Hi^MV=c^1K2v~X0NvLmq)rpn+Ck=js ztBBZcTG^+fJ!slAcX$?W^eS)SAg4lnqurDik}@Y`dlNpzu7Y;umd)^KPFujw459SU zkv3uK79x$AZgRmqWe<6*xCL=f_PyCM+Ay>j?+k%4)5YGsn~OKEu=8Y?;^7*H!TO3y zN>Zo6O_BTiFU{v--{^P;T=x4=8Cx1*Lu#&^Le1Q7VpN5DU9Uzwuf6WDm7Sb0KjE=C zJ~r$$vW}UpZ82{l>wTh7BRC0*FpTMxlyKv@)9w#Gq(Z>`cO!u&9ZvPb8b884l$Z!S zIQqK<*oN1pfbY8%F%Nqm2A$7>xtM+SPaGPm5{1?wy;^JvJ}DTcyxLFD->gKhk^3kb z%F`twp{lC-QFcUg|J08!nfz_vU7;j}SCY{DC2YUGw3+4N@y%M++usVI{}e`~g3-$3 zj0F=hiB}d1X~d$m7cyQM(X1W?!vi|4W zF(+@N1Xj;2r_f-KxIE+kN-K8W83I|)-uOe(93SJ=3(-YobypHos2Rf5x%GUQnwi)c z%wq&oT&Zf5e9{qmqcFA?w`(rL%C6oF#n$@K_;94G2uIs5Bgv4DP&}^*37{Csju0__ zJNfqLNA38?leSpUfxE@oq%nk0|6>Sh8Fp+`>w@@t^5ZcJ8WWwp=lnC=h9?U(LF?I- zqTp_`1g%*I{;}au3iq@w$d&c;%c~0qCWa{`cU3)utT{F>$C=Rg%x1WaFF7@@g&U|e zl+*gici1QAf#}u zIUwZ>{C*%AclDBe5bt3zHDV~@a=&c!5PxyWgq)JHkQ*JN1Mt(8GgEv zZ%gp&`!bKHCDaDD$>EY(XkBd#Old?6zSU|Py+XiO;un>|x7W-tl8Z%QT~zI|W1LOQ z!{MOZdq5qF)2(A7*O|>cNzT0G(bqowT@)+1AIe*2PePJcw#|FB?p7c+kRE)U*RS*| zIt++os(fMj3>L8G;b1%DvFw-LBV5=trFVhSnG7W*zC@jVih>6Fu(4>gV2GEPK(#Qq zOybP^Y44_NCrvPG_ygun%W;(Ci>zz>x&#$z=QP2o{)snxiq-(HgBYXg&-x4=-5G}* zs3Hg(=R52=%~bv{y{l^Qj4mFXcUKV!Ru3uv*FCM;y`4kBM_*D&hGMDg3?O)x`p3m^ z*ToxiWCaf1UrsOSCZT!5$IG8@AGZSIiBD$j(FfvoEz_G%N4Vvx_w0zgEF()?JT0_k zXQ&=-Z(h3FDim;9tnFwJjs5DYy%=vesyqq%;l4%v2QV-wBSP?$G9_fzG-z5rcWA#I z=(U2%3#~{mT!d-~07MT_YcbQc4?fAXyp1S!7i8%;De6r1ev00RC|qH|^ha~8;gm6O zeoVM3lxbj|$)5*lKpojTz>8Dr1tlzY7 zqAqEiqax3Yog2b+-5v~d%umcU_5tk7lWeN&s&sT^*dRQBvup-+c%n#vu0Je)-yp}7 z!u}6>0_{(}Kt=on^SGsdd0d<}2X_PB9734)^}%Vgb`;^riKW6PHk|oIGr9scLM|Up z6HV0fWRhdFe}V08WT;gvmoziIjFbiDfs5&}f>&xTZVXs^rZ>GL$NM-QHrX{i-`{GF z-gR2MiuVnjkINfs)fbxBY=%k@5DQu%ua&CEiB5X(_}%Pi9z)(}bhupV zCz(poDep+i7g<m24gyv;3v>rF);~iC&G)j11)Iw<^j4Y)Ka0 zfKwzNSbKxj_KPg+n+bz=fUm2l#9HOn8=e;569vQ9Wiz`I>#VVOL>o@0D^b+%R7w5RT7|no)zS+T6R1~r zk`$WvW7l?os*H>(d<^eVmE@zvmN3{9&$&0=cx-|Xm#<;eD2kgjWuaswB&4E%#1jmO z7;rUpikWb4=kpQ7lXHVSw_o4id!qbO*spuF>!E9}QLRaRlihRudQf+{H?mHUSQ5h@ zhMDQSWO<49w>_;=!hcPTx?_0yiRoN4UfwO(jo8FpND1?3@u;gF^zk0pwJ?N7JvHnc z=P|$`e~X|8yl}#^y?rB}BAUUsqw<2N0Kh)^)^!7!^gBV3hEA;?NN>-h|LEXErBV~` z3yrz8_ZNR3VN^}DFT)+~uo_YVsB$mx-yGBq)MohlfPZsPh1omCWNRH7MGnJSU|LRG zTeY^x*^QZ#xWeNMbFzubYk7%CUEl0Vxd3blEA5g>v|;^AfgcDJWqU^i&RqPOV9I&? z?%#G3fMhwL-9m&TJ4|{rpo#hg;OP)jtZ>WEJv$z@yD_1yXxE)5GW1qDRjyfZkZDwK z_jjoRU=_nG!WIE$PWqXIfcJth%U*R+pW{W~ExvB4S4Sw7Fx!}t`BUo%S%Dzydwq`) z$2xiDDrG}y`uB(LZ1Pm->6i$Atju&Bl@yQ;4`(@;9_ZJ(&-%9nOup*j`z{4|bkjB~ z3#ask%%Ih!mDF|4eIa|9ERrP%uAA>?AyHKn;7_^lNR*WpIL%;$X)%TLciI2WMPLb* z+NKquhrF>Q)#1_MVfOPNtg)CJ0#&t7ay?d-g%w4~T3T8~RV8um?xm%BWOg_f8ND`S z*b4Ap74S$&2j=zA=@{r#)Ya*?jLnpks1>Hu6hFq%CyY(@HM@`ZhH5?LuCm%d&2)Vk zwf~r7kml8@GvwXG>qp)1XLK?Qw*`|GK|y?LZilKH!pzT2q3JFC*kJ{%njALm57HC) z4XX37;>jHrS*EI9u><{+-Q4V=lq3stVSaw3vg^Ax6WIhtA~^0G&)0`$+Em~aKK3637^A7DS` z|C#YApL0Md3R`JW{^qr2^L`WhTaPFu2ZuKc3u_fEa%p<|Uu+L@m%&0ZJCu8zu5SH( zarB(p50vpsa|Y?x25B{-HeLvC-}QDX{R4&+;l)wxTC7h*3tD#k;(u8*-x?|T^ADud zm)hqfq0R0C8!W;QrG~5UR{WVW4u>-f=~I`;6^5xp5bkB{*hie>HOEMd$_>fEpa>BW z5&it782BhDf;Pl>-w>ZoUAQx}4#=f*_2tR^L*?~llsoE?n4}z7kB}!sU_#RwdM*8m z;nEMCKJLN78zhU4Unj{;kz`py-pFJbpd&*G((>4`o)ht^xe#5h)>N#nXx?>+ z)&mY`h&=Hsw1Z8%E;?5>dH+^kp8-8PNd%*$6n)%i4+VWrf}_k`YUbCwUYf6{Mlccf ze5moA#>h;xYwuHEKMmiL@yK%DPJY)|;KijA+PcKkkE5gbpbm`wDJ0mn~0PhGnp-u@=BE)3mG9m zPM(USSP#ch;bC3^yY^P{Ju9c#d-$zdZ(hSGH|5O^{!ERpNU7b?0PakIr)9gGjs?nXZx6!hrb)|cELnV zEjncQ6fba6>XnFiOAg_ki}p%pQrFSxWI;&F3V!OMNPcAi)5Kwc6eWuvvYSZ13g2=NhT*PVVS}ZHewmDD`}LZ=g+DJd*$5(KN?u_D z)!ZN2Cu?YF$taO#@8(1a=Z>T1vCAh$k_rAg31lwvRBjlkuvZJ{q*_JvO*0uNTF;33 z!<(MAC{Rk9D8~LnojxS{v3W65AD`~kjaTe(A-4s1@CP24!=AWfs|HZ{JRE%aSv=PgWE>>$UYL+x@AK+&TzCanV^ah@ zDKX)EId)FMWLbUQ;AzVI8xHe$=1e>DsjyThQ_ilwEK&VrH}n3Im%0BX!G7XS56hw6 z;^O-Z?bxiJGuv@OZq7zwu^)61MLZT$t@ZcsCl^)S{Tjf%8^&Elku2ekT0z&E_#qk( zaSU_ntcph-AqyG{^9pskX*(5C`scTXC0cd2B*7Q5KhQIN=Yue;lG;6=`pY-u7eOuS zj;=%V(A_1c1B;6UYg0@1FQ{VhoHt^RdaiqFc}@kaNs?yl+V9OWYSIKx`IoUt$2_mn zP>I?f3t!Ho@FB&w4|h13g%`hcRPb&)I-<LR+C#N93ogNRE%`4TjDyR7c*r22? zP)L;tVYQhF-7hIFxxSWUU5uhV+twGd&wfCbuCRj1;ueJ>9@3}_!(=_lI@elSTKW-u z%8uC~=jk$4rm(iq{ik@G3=wi&fxDoBx9m3G z=Ru4Bo+#@yL)&zetEr#XJq$7_To8I;;IaL1-vJ17=1+aqf=;|od5QtlQ zXdB|teQ6O|2b4Zt%a@z%(K{dleMS59fu7dt2{jhh*jVsVlju>-xQR-wW%M&H*6o63P&k0tE zJEO%vjxKl9Fst_rc!ro{vo`}6AqXoYXV#MwJmN0i`69U5QEHmc(R=Bl5YFsQ*bCDS z=#F4OzGL=eyr-Irub5|>fb{E?xv{d~8|a0&Z`Y`S}?^vG-hHBD*1o`EXIiih2^5?g`wFdC9EH%G)->hS#D6KP!>$@w5uH!yg zmuU#B0@fay!+G~j&)g9`lJ$qqvfCT(LJh}nSzajJktc3VKr;&S0rzVt zUzG*v^G&?<_P#J=v!0!ie&ePrZs_@9iX(#uR*tJZ7QKbg-LT_hrMNjgM?G-E>$K4m zY}18}L&~Pqd(9`>L8J{jKL!fUSo*Wo_i$AFSt!9-T~iBhV6ryBKIAjd+!gVCOP`PDphXI z7R60{s#a>ocrk)jPHupG?O(koMahPUz$U($$0e9-6jC{Lt({^kw28O&WLp$z2>f*5=B8KBoj8{ z@EtplDNnI;msGoj-==W_!TyPlhu2^FhX?7Cseal#Afbi@PL zYheS#7B*D1w^RhSDFwAe_xAQ2A?I76E&KLNk^+}zW+qi;Puz~d8gPuJ*r>`-O=@m# z&_R{pX4e_E45#laVd1D)ytuSVOcs2KPB3wqEU9Yu@EIm%#7mFFhWPi zQ0Ab{6f#{0+j)`~pDW))0C<#PDSiOyv#S&wo1^z0zw7%{QV5%b=!w%*?UFU$@S_Qm zp+_q`rVTWMGiX{EWX|tZ`JdTy@&HPz+nX6qd_|L-b+40 zsK|k9ZcV7K3DF6v%pl{WHkpjxL3{t!4-od)c}At?^zc;G0@d>|*;CF7DV!A*XEpy4 zQqlRUwUDX%9^WX0DIsZ=CVtG zbpLd@X=~9z7}_$IymTT6wJ)Bp4q?7IiHH^FNO$f|4mB5eHLsjhqB^>kp}4$cxGo4) zoZ~Mk^n|IoZy~~4hHm!mPrvt4_ZW>AehNg>_l%LzD9`@3)HJmp8Z2~zESwu)p)%y= zo)O-1m8g0Pd3y0-sd-m2^@EN>1p9lh3a0n>Mc9HLC0(D1_4N~M+Za=PZM`5jQTh-) zwURva9m#e5EDhslYx@`W?0q6z5;>r@w)~0Lgp@XR3c?Z|olpkt{z*hD zo|2y4Fl+_^y%N@(P{#25EK6L)qK6tx1xA9r< z`gA^$1d~$@<zb9uOPVv%{!`3l7+tdz`v~M=XW~caO-;Ob1MU(tUdV}ht=rs`J?(Fs?ytVqaW&*BKdiZ`O(sHYhBWMnT})kMOQ~ZXBpWts zxqm(=m@d%uaAvYSrTwru9x`!@cs0+Lo}TEy75#&ZN#FF+a~Z-B4}50?az0*`kVHr0 z4SjH}f?H{f)ZyXb8AHC8rNFHQ=$X&IuSm;TwS7334Gj){6;f?G0=6uvuMW_FeoB<%jV8i4d?mT@w7U`YT^CM18Ca?E3~b5phBj_{IQ@t7$$5Qb9nImcd4aApFrT+8o3?Sv8uPp|m3X%cy8KLUXgdy1di-VC3(Jl$^lF9*%pd5Mg+(od~W-OQjZubP3bayiv$$u4w?R?Cxi2R+Fgg#q(y)S{DJ{=X`~a z@})sJ2mNjmZVjC1?{aQkq$pOaF=Q@kYu^^z7Vdz)(|#u}dwvr&;t!7j!eI72-X^qU zW6I{h$|j6S$iMemB1d-T=PwGRoeDz{2nF`A8+vunKZ*fKTY-+;+_B|IZXt|qlB*a-ip2Eu7TLSy2qk3Fr}AlsEhn~ zVm?@@B4S}p#Qi#BanlYjrm;!-mbL6?bqVb~BdwC3Nn=m#kGO@iO~W zd)9)sckv?}bb|#oV%HeM4;w$qnNv&38qzth1ve{#C{?TMep6X}MQJl(g_&xsmR%`Z zN{P&;{nnLSyk!DZR0Mcmk+*>O$K$EQ1NPa(ijr0U6T3ierj(g=$)>cTm370{&zZn* zsI_L0uqXOg+`S+>W3L0at9R1WGM{+D_M2R-N=AQDS#DZa=6b8c2esAh>z}{W^0?{3 zyzT$R`w?uI!M}gBMThEj(~q_svo_gJc`NoxStxN%cFjwlB3`-V@o)<2q6hypE>XK+ zWnnWlLO@YB3&RmRFlLu;9O385)7VNdDm{Sca5r5X9qkYv)FlS>l(q7!$%So7#qNp) zLtI+{w{SIfmtI$*>I0jM*cI2GZH1Z|uhC5$sw%0dSh*I9GGbzsLP4fwC(^OKOyjL$ zUPhF%PVK>SwII*9RyKN|+h_kbWsrM01vy&WQ%YgILH#x{S4ltI7o-QSbait?VrjEL z3e2^X@-*UaVh{qE**_9{f6hW*Y6%f=(0Wz&jtcW&069#?pzV~}2im{(W`>vvMv7cP zSRpnM5Pme`r1gCM z%U8|z4ub-Y61l8?5HhXtT1Q1?z?Z{iH1)~5&qTQJkI!_+AJvAlb$oj3)fkxWv1YQ| zew4Xf_KO1LI^Kts`R1TwU=O5rGLAW;D~2u)D%S>{3mGVElxQOhaT@bxflFF}4a`LH z?W~qqMnhgGhsbIDKx)`ul~oocI!l05@?`XwAeW zZk7y}_nyamFNcF*L#@2%y@po>gLL&uv7Ace>nFM3u!5hX9E6nz43mjL5??+@EIiRL zV5`c?mMELuL2MV{VWpFl37_hKQs-E;bgwsH%CQx$?uphbuLNi)rbA<8cK* z`Pb$1xt-~*w=>FhEiL};yv+WMp*{JrY9AP(EJrX#X3OMB#@5DS#>$C{m{DB!$`8ok zr_JR1Bd)vDm>Btup2)4j+rUsweT2K17~J^S*pDO@B=PC#mSfAjL|CgNJ)&NMB&Hox zL=>g}!5joFWzZOp=KLtP*>ppT7^b)nFe0A-1ZT#>7g7`?u+qx^|_yUSwY%Dyp!L-VQw{ zyUl?+qeH?s)G*r9?s}boi!c3bohoGCuO04#A8)o`IUgqGab6i%I1@SKv?(Vs@+Yx& zzw-L6#Chd=wew9A(4=QkPQK=H@!@6#?&Z}ORh@YYiiS$YioOxkJBQq{7Pe+mVrO4Zh|RiKLs|Q$ug_55^alsgh2jH zzI;JFFRjEJc09unQj-fw$CvtL(f2HW$ELr7)IhiwO3O`XL?EH^1{MwF-fek!{jP~ zuO-cu??cwp)8dV77{->n%7VL(==!3fqH^-PO=V=|a(YolYU#p4Lk*v~z2UB_{TaMm zW8VDT1zoXo*O~rRl2;7p*&JWj#V@!#a-#54k!u_4p1GQzig!OXMiTO_E#}w7<}FBi zs(kcnxPSQvB2GV`O`L6Xe}!nqE}>gm9Tcu=X3@;AJRb3I*$$JT?Q~&3D%3h`12a~i z{o&I5MbLu%gjKvbypGVWKO4ZomcA@7QUs_U-)@i_Jq|BJteX757dmAIN zr_96HTdUuva)`pj(rWmLU&zatQI~_(Z#x1rFFe2?K@vL7)5BlXn6;1(t~Rsq&d^`X z5Z|k-e79<4o76OBdOvIbf`lXsr6NpLcG3KE@iT1KJo(YMo=a8dQeM{R_E^6n9}6( zvM3D%Dxus35oK+xOFXQK*J+qxB_d9`kC>d&uSjl3f44oDB2i&KHaW2*1_K{MbR^Qt zQAIwkTK)R@uin2{luuz+bTh5b$jY+47z+*u=QDws59#FBNU)vp5oL8_k0aR}3{B=mv}qCQPVXi(m6+~) zRcWGsQBoz#G$+^I93i5t zERaWEkP>F{I&gOUg9i^01hi?oqpaylOwPiroL#G(STaKsE$n*D5jL_g#k%~ADvpNc z*C&o;DZH^2rP!d0(J`@5%JnGmkvjP?rLoZRaRmj1D5uvEWbfWH2|I57luLe_lV7VI z!e=}3tv3Ctfdg-aj82kuOQ^QTbu&1|>yg6VSh=q}hVkb9Tj7<)FuB)mv>DyI*Af*! zKuS5C2Pdy2%$b5ZtnmMw8Etm7aNLu2srKP8Dn=W{Gtcr`Nkq3lhXxV+wd+37 z;qHt7!qLExXp8wUL@9sUpU9R06cq;F>{NS<=m9a%z5IOiQFXcde5eLV@9Ot+vrgQ%v_7@Upz1 z%Po_$v$=%HQL%MqD|*Gn#o50$dIoQ@va-0`#$Ta*4@5)^bVfX{j5gRgUbe6`TlHwsjA`1TD zK?tMuP_h>TIXU^{sAjocctk`MJH@7zWHr(prsF@NKYyYyDvoN@)smjkbp7x@FrwcZ z3=;h`UUQ&u|`LQhAVqoTUaO&5(n!ud`uHJA=sh^9*R#AWi=ntQ#p4=HQu^+MNP)P zkWr9j!0nV34vL~sBE;`yhp*(NX6B4F9((T~`v&lKS8d;TqZSX zmpC12xAk01MK-6hkOn42frr0wx3D@0MMx9=06w7<{9k9-U#Fi46@D9ZUnE`d8a5(| zBLMaK5kMhEOz{ooc>kX@e-@ngci1<-wb#swuP_2f9F7XpdnuNSAG>}Gygr6QDMQQAFPPk>`zu0Ruq$IYdKCHnB<3QY!Mnd7;HJ zgadVovadgm%9Qova%-W1e4?Q;x$e+ritP| zGh!0jFVYQ%FGfQ6Pw*bk1{qqgs@84;sKfu#)cT+GZWBT2HT$|y{`9;exb~lA^``OB zuem{O_P2RWiPc6$`d_^CH>zi9idOMiH~o~sml2#DryYz4#$%xZwlL6L)`$+?-Q$Y` zWGAk8$iut2Fnu>Z3mQB}TRdcn0`{98zN;VRc0HD2R)8bsW5Y9nG3lGn(+RBQFowb< z(%4yw4Rgs6y@c&ZjrjZY?=P~0kAL{Z;vfJf8|0U!ed5SIsgBkmwMnxb(6|I^)m5|*D!CI$Hbfaz)H+>y zF3d0Q^ggGJxu@&%gHyQOH~j3yA9lI593G6~(je6qleq3Le(5q@7ca}@g*z8yKk2Q3 zjz@Ntrw<01$rvqa1J&|5Kg_AMXV{uPbd2q!AJ>_kR(*b}<3IB4@i-X>-nE@4CIq$e zU{3bt)h0vG99j9$z=N+UhFm>%6nu zcFmyR71M-!2E=K*%MdQ)-^0gWN5Be2@)Z$T^ljuXY7$*Cl{x$90(ImmTyX7*u4s9a z@4tW2`6@F$O(Q;$#Ub{MW$D*W;eXcipNnq#Oz-kHv5DaGJ(zQj6UUK+)yRL+*+I!$ zv%12D?PdM7bX=ugN2kYRO(y!R#x9PPH>ya!&fgIJhQB|sQp2y7*X*20fpS$dq?5jI z^TW(T{|T3n#+{#FuD+Qm>>8XHc(=C38t*cfb;2BAzXNG;oG#d5OZz02tb~d|)YZ$; zlmRQSMcg{xOadrTQoZ)ed%C^umbvUaarQj~@`hjjE~u5>L9i5Z zjL^U!S>QL~D-30T>8)I;2mFz8{Wt4{_yzpFOQY!C;E=rM)7hp9uA@3o_g`4LnKX=s!WP z4PF~*QEH~*5Hf-t^agGpPR>vs2?b~9Kb-D=1-SzBtLQP{Sph9YDPTSHS=58*a~xtD zgw1zMi~{)>3q&J1{S%3`Q$p2}2}z`Yz~I{!fFF2{UteO9$7OZBbDk1;>fvf&1IHxB z=Xt@Q>D_=z(=e5TB1&%>ZRbX2CPldXDGD}{$>m?8t^RiU>9}n(>?5vOZ&9w};J_Mp zabOVmHTB&X_A zVaYTWOy&y7?$@MC>d#N#T1aJqd5H&G z$rFiU9pKX);8l0TgT(d}n~=ZFyXq|Z!)}n>Jd^l;xzOJ?xDfH@rUKy775tZwlW_dy zdVe|~yJWsDAiFRebo15tXVd=YB9q9s9j~WxqkI``e)L1P)mOc_s+*ig5gDeoCMJ?j z>gGN9YUDd)PWj@B_qM-mnx_Nps!KW!MR#RNX1*Qy*3C|_JSdFh^x#M&!{Onc5)JAX z{+Thn!~YYxX~&fhMlllWv&G40{7!cNk(K0r<~eCUgu*Ri@Dp{lf$YmV`)x-+JzRhx zC0=wBwo4}VvktERoihLZ74w()SS54fa}t!LNPFNTBUgA=DqoD zoc`!d{t)GEL-}E`H;GmuKpqJhQHjxmDceh^D~tpM9UouFp5IM*#yY2vcoYHtCLP6i zrKR4&xW3~{ub$#>$M8>&4+a^9Au@fRqRm6yoPfZWe56| znmL}Jka!5yiq&|@xjNFTc1Tdy0GBE5ZqTW0{KHd?B8TM6jElE{RfX!N5!)-%8wLojp-G zfI9J`v^F|bq4Siu1rLyxELWe6veBw(1Rdlck4lMMMF5yZRy2duuu%>81Q5RM|Ht%T zn;!=b;q)EQCl0~qIYRLE??2&iAe=^0a;P9m{?{if(#8f4#%pbyYEYwV@v1O8X&}<8 z-6u$d{p&Jb^o~V4Y>Z*bopLGVi`*02qUZ93wqm3t>Ij!DqNU-a7s~v`?}9W}k}eR+ z7ilwFGM21-wWx4b5l*|wSMgDx|M^4%9F*0taVn7yM8EIJ00rK)ho_UP4fTK7#y@s4 z8sQ^I-DJ}($dy|MfE>2ed?kQUXnMs)6v+{q8SLhp2h8Vl5#wXthFTsBSd93NSZr+1 z6t?6{dE_8jGL6IuXbiAxS#Eq6@OKZ}&%qGB_26Upnt8pY5W=0W=NoK= zl_?Jw*GP(-zvRUJ`FOZzEb!N{#)t^Np8^$!G3qKguveZ9>F=QWnOLUH-CIimJCQS< ztH}vQW(EcW&!C*&Z~p6LAPx@^KYYAYu?3RNd0eg7-Z~`hdL-f2yU&5REEWYW3ghsr zb|)KP6M~vaE(c3mvm&W!rW1Gi(-rlRj(0zCiJhH`AMV$nz`geZFtoc4eVfbRTqG%* z^wnH(tz#Cbq+1<+__BcZwFmT?Yg6w=;uD+LEupBeTOU;p0U-JopJ- z5Gv~Gl5^K_sd(xLY9mz(@^Ig~@Mm+Z&IU2>^D(_)3hy@l zFuM5qHS14%?2)^bw~DUjI3Vx$X&#ujme&09@3$6rl2z6jIaz0a)FR6+nD4yaR#_5# zjoZ!@dz1E-Y1-s2c3ysd_(8g*9mh3-v~|AnS}T)veVE_b zI(nc5%dF6GlMAqCm%aj@(09&W)l}332`$a+jw=*JcN>8~l-6}+3|^L)QcoG==E~d3 z!zSzu#*$<4F~d8`UoZlq7#xaj7idRjvP_u^cQZM`$oNKL7OIxSAimcLG-QhxccBaM zJ4!X5PZ&oQ=2SM02&l1PD2X=IYZ=}HHo}$%dt-%c@5F@fZU^-9zA&j+(~s{4-shHE zrzH!e3?~5*Tk6gbt)1J_2OPE-i@_K&3Q8@6v3kzblQYVgvkp7@De%skkz`QgdSxO* zFUeOiwg~X)iz6RSiG==dGU_t|Griam+??mX_cRB}v*ry_V;YQgq+?|Nj|hvWNo~&v zUjysU#4If;2wrV}6+earv#_GOc6-6((`pX(?rN6*Td(e}?y>B^utiuh#q|LRMH83N z%L7pjSQ{vR-y=+r^?0VCp9Kp>8QqrqumW#ES67bLwoxim`Eu&h!8ES8{j=J(Chd=3 zQaO#U6MV!Ugl{KR;(-@Kp^B~haSDaI5j^JOf~`F9iml+h)W^okaG^yL79YaT(4zs) zz1)h|jlb~5?pmH$Xy0iS?71m9?o@t}K(N*|^Fh*x!sH@%pz ztE_(^n&7|8yVV~x0`44uPf-rG{JEUX%+%wiSS|ELVIKt9@7@E(pEk3ThXy)B`^otx9Dh&Nh08?_q>}z=2=NCW;_?XAC&0tma z{X(~AVOQaat){PT*mY|shIO*;aAx67@>-y>F>U!VJ5pS=Oztx)($jHK-(`-&MD?7i z`pjBF#`x|F!aHsBtCl?#Cxa=CtIN$>wAeGP0*8XGiE{SA+Ai&XCAZWq zd-r6BNvw2)i?|nGtis{<43l%d_e$1s1CvQiC4OxYzcQ3fz5I!u1x_#*Nnh~pL+kxq ze^AZS@%?SWO2^_6=G9-}CsH8Xav?I}8@|6px&GyhVfOSK_jFsM1?ekg*`M6HA?8P*lt>%h~80Vuo34PnUl<6{k*+hNk2F%yE&@d_BemoPG*E|Lt zTC4arKtNq8!{#Pn8b*Jd0X`vxhC7n0&2;l}{tnL~yeY?B0D zFG4>uzuNU~Z1yP0F@-MsY6aZi6vyQ}@x=B~MI2&rmc{z(IQNQwe{V{`YOic2Y_B2p zyjNn?wcue_?K%p|Y<@L!Rc+@kpz9`6`KzFzB~@t0911jBgMgmc^EH4%DayQt4R1q! zJ~c!YTPVxFKp$55z64Jr=3f*|+beu0O3-p)BAC||IEFneKlL`Jaogs0s6^t`{FQd1 zDP!2HPG>~PmM1$i+OX4-J*;g8FD=Pw{q}6=PJ_ay!_y9jadWP)8xKtoI0JD3sIM(O zFrzvu9tj87nxC9s&e74UqDrQZs@8SPoF1yik6D44Z}*unVPII29>UEH$stRVeP(Gy zx?vgMOKCm^;dgy52Bo8A&lk9lm2T48R!1S?jZY7$bn~ni4Rv1qSQtP(rGEaG;-g22 z#<8pk!C2T?*(uKMM{!!QAaa^te!Gz-pSHo1__jB${E48Y7RMPYI@Rtbj{DV8RXztx zvcBf2GkE_Wo+Cni&i(E1VYAWb(na zqc?!gDE={fxeS{uT1oVKZq-YE4Af22WN<6*OLv_woFFa-RO_YMZl&)&{fRrW=~ajY z!!EmZ6xr?`-N=?a)nwY%vm2oT|2^)3!73Qw=C(6wC4>GGOu)hG;m@Am5E4FvjK+4! z!ZaH#8R_T(<%N$N`MmFW2?&Uo0Jvu*Ma|i1ukfCd?q53|&!JC!k%$+z-sjqK?+7A= zi9Ue1%phbA@8m_=Na5SP;2%~Cg?zmcB+Id|@>e|5`@Hw=s> z5%&-FX9tHn&Oa=yF#A2AwzhQWQ0y{PY%oMOho=oX%+>YM@N(+d^YAWm(liM7P{AKV zTP-rw zIZa`TcMM_UMLA)+5p3L-%RE<(%i#z?x>Amp>gSO-?Js#g>0b|juzri@&$z{FDB?ipKp;jbmj4xUIDoV57l;E$4x3Zj(ljkkS1GuTdtyOS`?L7_X7qt9&{963BPBv9DVen{%IUrZA(I%f zSLkPfsfV0d^q&IGdRTH^;5LirJT3dZc$sYJKAaa>=ZVCbXyvNZceanU<=yNXcxxFN ziIOiXFQeM8w?j_1ye>h`la`!K$Rep$2!u?!Ht`E;s&*s(PWi5VeBLOv@GLb{);TYE zEGJ2j!rGl83gvrm5^0~)Z3P8|OX-v62$&5A+$!5|?lp@=93G2Nr1pX2*WxQ?OA~)ho?8-wwk9jU&@VO%>JS{e4U8x3D${ z<4l}F(wCTWz3^euA8G0{nzbqe_6W}uP-ewHo7vk)iMO6k%&R{K;KamN7>78;du@SAe0EXsjMnbpKcTv2d3ow7?91*ue(AWtZ_O7+0M=x*g$)W zzs@U-8kVQXEoW6?(N#Y9;ol-&%*&vgC7ok`ueGQu$}b8lzH!>`q=) zo6uiOITp|LpTRAl8LfeHgaAnd<&z7##_zt-=y53yj9rhcq3mnHwyaL}ff-%k*jT7D z_kib@gH<)`G(%pQW`@3nyMjR4>j5k@{7<`O1bZc3vbip2P&+q%^twr%Y$c1e%XK!l z%ZG_OBG=1AJZ^ig2Zk9n#z7OwXV&MnBNWT?tBP)JL$BE*2XiFN$jaOhTLI)!FCrWYtRAjQ}G zEB_x|UjY?m*R?H(Qql@YDuQ$f($d`x($XN^9TL(Y-QC?F3=D`g(j__4J=D-K|BXKJ ze&6^0YmKvJ-8$ns=j^ld+Sl&QvLf3v$Za=}|M0z+nVYKGdlOlH@L`Q&CYw9Z^q?_P zUUn8W(AGelIy67|@?W^h1C*b*G_-GSzx`-L`X5or6|SGLihgGG@7Sq_%Foqnbr|Cv zkVrjD7nGDl0YVU7E1H;7DrYCB_md^I=8Bc8D|_hdMn*@ZjMcin$~{2PSGVw_6#oZq~}s z8VsnGULMPoLckeX*FKwMoCfbAZ|)lKo!4`1dR^!)A@Jgc;*b_?Em}Ix;8=P76bB|v zaiN=5%_5O#eqq4Be0x+0qNSPSm}{71b~mG%vbps?_BnhQ)<43TM&ofJR|?-CK56j4 zjpGbE2B_Ii$2WeeYe@%Zx%tO#4&{}jGiArB9Vn7US6RRj!un*3^4+N?Lg*{&cdH0@ z0S+#s5dno$-gdQNyh8bcddK0Hnh$E=U{BgWS0=*iaBb_WgoqEb7(!9rjvu3{4~+Q} z9(%*fwdxYp%XKPr7B2!Ux7Xq}K88DUGn?2q<^K@9KEdfCe@x|nF&2g?#=#wFao-R3pWCz+Z| zEX5n8g|;}=GG`>LisJ1n#5yz_J#CscqOvLneqCLylU6z_fs+tD;?nBrzxU#BecAM* zOtDdU(8yz8mm(@)nyDex=c(X&Go_0 z=Cn86J>jB3$SOQ_md>@K!lJA07B~YsWw!%}f%ckF5G;5Hpl)(c_Njus;mezTC4!s{PbF3;)lhi zvP%zPxJQqubXV26gdgomVJ46_ z{8@Z_#|M;}R(#oK&~40&e!=T5Bt5>st$KZ_PUmyYh=z$(^aU(=n8P66B;Tv&5fjyR z92QH;M;E;!- z#c1b?k;VFoZV?XqG~J7rE+R@Y+Iw$ApYIbIBHc>D~!NZDgL2c4ui z|HLy=`)m0gC_f0Y5tRsvoy_87nqEf4HS^8|IAR_krQ_I1s2-HJIj4Zm02pU?3vH!P zhc%+ihQ8GC`0Hk$y-3hj$C2)wRoY3#{PgIj@A_l){bq{F!jGRh+#U}I)6sHzbJkgW zNU$HbfE2~ydqL=u%y$ccKh(^#Ys4=_GC5rXuXav$ONy5WjGS()y9wI90n;@8PD1~$ z56P(JCZrp(>3<$SQ9^W^A^+92gQ@5mpocZemFdQZ^cD$$7_q>lpg!PLR1v_{9!O5pJb+ z3N(6)7j$a%Oet`dH^HW1S2Qt4uD4e+s?7!ugNh2r%QyA2i}$Q*QA{efHIbmbdfo}0 zaVq9JB3L!;&C(XO8U*{7iw92)T0>UjHr|W-Dd^XSM71CBsDa^Rvv@l*wd54wk!Bcc z8p`=)(}M7^a$LwIC$o!wtKQM_I4xF$LS74dIylFpV7>8+*FRXfp2D9>|?GTUH=#T*7X3 z7iGB5jr%tbd#VzF`FXBRcW)U^skP&LFwN1&6fF%bU$r#DG9U+~6)(B;(ln+zK0JAm zN6N|9R+%E2D(3MWneMRRK4w&<9%Mm;SM$eRr-Yi*#u^uob?z;x2Fc~sRU*-x{0x>tA7>A+ZOv0NEtNo>DQSRZD^y}g4D)|umn|7wuRpm0XYTo9P4L1~XA zAXvEh@umg(<0+4cFbQ+#RzdXn+p$4%jj`P4s7~Ge&;!+zcOyXzHec6U-%8l(uE}K? zw3<^=)5>aoeGvn#yVOYwyry%OuYcqPWz72YqaXntKgpQ^tPd_sr}*w~K@0JmE~&^1 zHlz^VvIN`u+>YCujD2n#j*n4-717rv=yKFwav|RX-UVMN_VT{-ZnKuiZpQG%5bns7 z)OVH}z^r}`Q7f%rE{bky6;gSfDGoYI!QW{4n3p(@w=I*hM$BFderF5NBCMGw2|HWu zjHRJmeAJeZP_Py*J_w;a{x?PbA2mbZPI`$7-o}+h|M<@EKkmszOh;y$=T<=U`)m?2 z@o>$j`;vB$ff$fRgTR5*I z^*)A?a?10aUMl78D0r_ap+WKTd3UNe>W0F?cuqPCOmSK!F;=bx_RHBy&dQiemgh4# zguQWKy;&@wrA;FBUfL`<)$C# z$On^o2NJm))Z*+URcRMpB>PS+umw!e*7cm(Nxd#!7Trls-ofgIS!Yl;g9PU+ z9X|!cSyqB$nOc8&6})Bd_Mvn_mTMbcs%=k!dQ>EDM1%+bT6J+?{vh4+nBUmuKn^JgMNu1c7Lc4}km38GZ$~q3LuKPI$ zV-*j3%F?2`g0FW`#Ev^bKwMAvm%SH?TJu5&HnxggdldC9@uDPmMexMx>ehtg@y-Mv zG&YR<=CA@ zcBx=J6_*>`Pv_2dnyJsD8IYRcJ0vFQKx(AguT_{`WTwsz9=!P;YGcGy@8}SpckEja ziour+E0AiQ9*n&rcAMWkcc=EhzSEFy_gdy!tf$GiW;w#Egx}?VcK<{V8oqZgLxju8PB2dxPrCzLI2p7-)8CpDYE`)J_R_*1?z38R)SZ*LRyFA~H zu5vqHL!hKE^2Y@;{lNCJrCfL&$!U<+y~|>k6fYEpbmdo$~( z19A0N5V(z}qo?R{5WCb-_|&bwrcnjrhX3O@-9I6uK|p~aOJncfU#Ay}sK2N?9+=6y z`n3>~{CY4(g7o<@FxC-&u0yF2i-=tqIB*C6j zWDvj8WucD=I>`W7fMuRxECP*f;wA>)6-E?XpPP8;+Y>Ji8Xmk_-w(UEQ_$E@R1Mru zmMHvO_k|~p%(Mpfs%(HUB*gFTfHNxJnO9cnlo9QkNpDeA4xO9mHmh>r&B!a{)S?;w zik$YUvh4OshCFItu7O+&A5%)X<)8;m`sreq45J!xd!j6_+2n8{+P~JME?u@nRq}M( z$9pP3$#HxIY8w3;Nz8LkenRlX#cQ#n%{2_@+d9!7((Qn@deJ9n*oPZrrM=={0d*>B zGy7z1`;Ms0dR)rW^0r>;GEMDT#s=3P_1@cKGXHdo8`PmvxCmji-58$>mIrHO!K=gc z3=45upLdX7f_W{&)+uNkhU%4+Cc8NYGX`sEnM!@%ge)M}7O(We8S+Qmz{Z>*sI!d+ z;iaS`_kz(ujJKT022tu(4+Mp+uAZYH5*M#e+hPy`D`e2f$_242fc+Z7cOd<{c zYo%V>oOMkr=!|qqW__^@+79uET0NKNBI$ z3p~YYz%l%5N>>!>uOdGq4x5Cndl$$CLCN04Z|hKht7 zJ3Bd_v~_{W_x1Te|% z`^28aCT3`8j3IQMmB_`jfVRa|G}Zex;KaK;x(Ta!aJL!JZ(o0ebtcvdCYl~e%8zSB ze5w16bF6cywCC;B(yGMv54Vka?cANfS&9g>HJk;XSbMO5_Y=q^v|>69kojIP%u zAo^cqj~(I@f5=ked?&D5^DygQye^8*YtjF{Ao}2LXXKccGw9ix_x5pI+!jmtitp9J zo4MNd(7cQ2ocEFDIu%7^^E{qh03q;dSTYB2ygNt{Gf{SRXHO=ln|NJ8tQN_~788XjVpl7Zu~af!B}JJOnk@WJ z<3x{Vpmt4Gv#d=)S0XXNr^#XH?Jr-2A648==^gO8z4zQcYo=cDXo_r6s)5JV5+^7< z`X5M^{}izW>R)SBT~J~nx&NU^Sr|T%Vb0Ja-U2-Z`CWmcS}n%3k$nx!m8!@%BvxT` zX=!O?rkW(LxaV9Plv&jr>IHmnab`PT>Hr-_LI$r=lIEeO9< ziV7;1Pxwx>+m?}`dNZx9+Vb&PgGMri5AsQFLI}*sf$9v)#K4PA0#tr+DDsh!F1HxG zS?cipF&Y|r9^mqh!}1{(*xVQ3`N5o?{rn}Ujf#z3NQSbCx?;#GYjETf^=$FsgB{{Z zzH?D?CfavhFg^3CC~Ef{2K9rLzU`=3*-)qFWIG>*N!VdRKJMPs?NxXtwS@C}vE~P6 z3Xyqg`co=0o>*cM?^#Q&p@ooEWl>O6!+83eH?ZAswhXj_2JetBdKAs`GOYU3UV&x# zcqek<3VRJ{tQ28jgPgmXQu%ST)BUNb4U^ZO>1?qI7!+q-+a6@WZAz$ce!}-|7=S$C zM^9N(q}z*yw;pz4&nxCO-i5(|8gX%eZL!$I>ePlyvsEoo#Epd6*#B+}pt^Gr{W0-N>7qt2FwzttNbem>C93 zOHJMG8}t8WCzr&})Vzj^&KnvU>I4|$@vGBa#^c~lG3+YC)~(!dhR>|NcR-S-FZ$f9ma9@w^fj2?gp>4Wn(L}*u3MiyEpydagFnY%tPpRjmJ?035qh7;TjvKH+|IGdUX8?zUk8o+U`=J#v9If?FPvdBoAADW$D%wJk@plmSu+xCS_VL@N zZ^?R)fMzs#oNa|vuF(7J2b0*9KONJwv(q*UKH(s_m&wZqK-l*BQ{NAU0?^qGUGSp1 z&mn@EPkqd*j(Id$QVs`YJM&8;)x*7Z8k-fQ`$Wat^V1oNyV9w*yUm-l@WQn8`nS&t zn6>iLRa@bi4)I&3&JZ6F+7tQ0QMZ|qv_VX#;%p|at@4rvOSxRQE4#M%a+CJhuM}Ji z9c49PRr-kD}lELpy6+pv|`KG>B7NfzIlM_ZG&4fqGSmGzx1EeQlA z6w-94h>Kf*YPgcb9>t=$OCXp@w@&qgq$K%^8@EFP-iOPT;!_brH4Tff(H=387So5w z&w(lw8P1`q&OwYlK>`-p8B=K!dL2J)RCsuv<1lw`Ph*1{q)^z;^hXA7Qf*xwV{4Mw z34xwlj#y?pGnw})6K)N-ZA~Ty4AbbsIVBA}N~l$cpr0gwN8^(v1!zc(oMX6JEl)&g zOazMmXTj^=&)76bYgmx!D#0UCpFf~zBvu6Pe2q`CAN;_(_xA81$&1tgpeFtEXvk%* z$(LL%jVA%0Sxc6p(v_NuGMR!%LqmhNTu((?25|eHvLaDf@sd!YJ&}6BI!`%i%i}g$ z=}SRl%jXk8!N!(B@3!CAIJCEHeuaynPqD1b+q1N!eyyn>|`{cFC%~_|WYA z#tARHlgh(I-r=jw>fkazNb}NXQYZ^qMh+~==Ub#yvK)reUOY$1(6p&wQ6ZI|fn&RU zkfllE4ZvM|Ts86Ui@I%vE+-Dko$)~kV(e!G3M5Qyj3|8@kFe(AGmKMTN$31#j}$gqX6BJ89BJCIOY3_N%8TQWq z#l-$2RRQ9HqHc3D+0GGBf7wRCm)Unu5iyxjFOaec+0|JyC3;pK+D0e{ijrhm-$oc3 z8g4~AGV@royW8?Y!@|mA2H*J4y@y$47$XR>NlcTme~fp=0g`5$NXiP@f-jX~RAE<^ zle42ACLs5SmC8a>X?^oBLtB+^-y@cy;qphGM&8ePTZmM3s3_sANvPrUs zHc#q(i-EPz3MCx0SB2chnU2^`jq8wgg&R_^u@-|CYy9SPW(VVp^#VtMI)lkBq^^2& zaa{Tl+@ptLgn)nkK|h@5d*|SPhwtUezN6=^y5nm-UHD z<7wd2x8%#+kIDC}@*@IS>dbX_NEod1qFp%0{qYR>$a*7M%}s8A;)1y5X!gDe#kRn? zQUfkKBsH4Bit8n3?DT=TBGL@tLonf7br;p7;KUP|;SR`v%WG12Ia1H?o9L9Ls1(xX z+~qSbv!zR#J}8$rhP1Z%PMTlBH?HOJ79dvIE~;+(6GZDCbA6JI;L}jM%3q5w3fb5+ zEM9nLa`hO)PZg{Q_SB9H1K>V-Wh@y9w#_1bO98(n=s+8buXaK2*&1Nwo;V^dh3xLXJOQRf(DLY6 zjikRkVFF(m*6CNBV5*aQ!(uMAv`vSf{EAy!GuEp9@QD>MrN|T796T^Mn6L|jIq{rM zs$g*P;OvBdfENZcsYfA`h|Zn|t%kkNdUPEPagCxFC8+Uvkw4BlfhoWAuAPIs{=xbIP|p|6=zdcE;rD{g0$}~9#~&1F{uT7f4MlDzFo^`j7>H)4 z1$9?cSl>6o?LzbqoYvxA%TwTNmeKO?q{^qVMf1R@W3avSp1TD85-N2{{I-iZPz^2l=Y>fVULOTYGn@mXFInkj+Va07n}?;bWD)_@ zx`)1(=u`j&7&_8U@m-nqq_R_bA+v8f7<|Xm=o^U1cZDKmY&sTFR>|6=p)iimly3z0 zNx)>*m#^sVj`zG==jilpsLV6k*)CEUOS2tc61d6iT)7Tfv)D|RL2Y&H5uE6=tSb0u z>abNKQS39X@s!Qxo%7U`(t2Sut>-N3#{<07C-vkK`@1_kC5J!l3*O^DyriHK4ITwD zOL-DYv_)k}>*~LN!;H8K)CG~#9tR-c{ORm;3Jeo6c&VWr`Nl!&M zSnci=KsT6LHY0JvZ}j!!rQXEcqDw)2%i`ynD}jrVMv*P>V>Rl@Zq<24T%1LiIHAu@ z*Zb}n3|?Z%+|aDfne9DG8Evd*>Mqri?VnoStNLsfaEE=>Yp43mVms(Awf;CNE+u>Y{ff8@d^AV=|VP zZnjN{lWI;Bb^<)&6I063;2-i{JROGDY_EHjhz=x2MOwcbl_`Rer;}P$=PnJ#yuO_*Fsu(Z>By}qr@jBV5n<6+%X#fP-8B8@4Ll;!Limq zt3QQZvYq6L6?QktBr@bsXL*g2m_RhmQd;Y#r!@5CR)OZi^mG!FBX0c}>>yg%^z}nQAaC&`$hT`m81HQW)LwQURhe>+VPvK%_6FlhGaI`GXs8aVM>F&?xv=IcA zl*8##akd_Q#>;||vgNpp`g^@{=^r$T$rCavLbi8Zp{gw>uUCABO&FkNLJHgxtp~-G ztRT|CaBCPap*@;JYJ$u?f`IZSg-+n^y?YS#Yo(3L%{UfjpH(@>tWRDJvr4 zGx1}@+E?9eO3Ok{-8aT!edH7`q0X|t#x)1|3tArTDh(7q>T=Y*pJPMzm<IAgBrB?AtcX_*W%V=b#igFuYdfmm|lE)AYkByaW2Swic7v?8pw?vAa z4!RBR6+CxWg6%1YkLjx?j-^)ZhR$Hq&?aYO#F5Jh@Cjrbvr$;34gl~uxYgU+{Y5mf zWM*{iNlL^kfVe@7;D@wg9YfU8fc7JtWH3e;~6nvDBq1JkomaI) zj`|m!e**}=ttPLrWD+H4aesvTR5ZB~n2kIW7ji1rp{J@U+T7e6-;vcm!n4bu)nt>Q zH3U^cy5d}PiW_pB0;XOT+?|8Z`Lt>bAKl&__!jl_h=VxxOoo4Tw?y-u5%%Z0NY$Em zXvcs<8X95qIVvKkx-h1ZsSIGDV^B5%Wc4<|MQK=Tnv2{j?}dBDhHTeb=9S zZ;2o6ePf%TADoNzqMtbf^NwWGsi9$nVa(#Ut<&l4S$!OYdI1Li}q@+ z0Z^wM7g8h7-tR2g_g#M;@40Cg|b>1dGxw(3V~Ekxae~N1P>@xo;q| z+bszJ<>CEX$2p6lF%c}ju7mZ$EVbOCSzxdlFxGwi;%JqYw#0WCQqi;|oyKX)kv99) zK2I~ycYwC&OKVe^#cSqKZ`c@cayyg%BTywC{}wchmXE>5RUD05I-5K9}8cdX)U`5ZQC;%ccb4 zwgoM0V-T(imD2QkDFszHB|Gh6x1IZ0chHAPu`{0+^xvVNP!2aVkd7GetosB26ngw?c7I2W@#MkK?-{uW4=dieDXk)K~QYG9YB%HG!_erUHb zf3j;#NdF*lJosi&%1xQIe~{-9M$IF%H!c8Z(UaIg}m1boHc&74pHN!JwLm{sa$=WQU(BUp-9~Q0fW8s%}!>+ zBvYYJPM~)wv(D}C?oi<>vHg7iA%48VapX1kRVOlwWa#ptdgq$h%hPD>vwkydWwo4nutRStHQoe8Qz66gUyv}&-P|v zgZg)|rDbJ6UK>B5oXK=3RV@15afoI<^JZ21U5gsy2vY+HxexJ?T0XNnWeb>Yvi-0V zeLKZ0GbfX5UN`pLE>6R(Saw0fkj>1oPT6_sBAN?pn}tzt#P{MWD6>+%*|U2o{4cLx z90+}N3*tdxfBuf2+Am9*Um^mN1m{bd!Z|UJh=^)Er-S@la%ZP}`!}hjE^56-yo!b; zdbdJGX_+qJefjE>Aa(U|#+1{#D-(M-*F*1jhvZ0~i9UToTfFW6P7JA-ujj!=yLQx> z_O=Y#rBIzI1PTu5N^OmmjhP{t)N-l$#?G#;6KS^K5=Qmm_NyKGtEF?Wge%0mNiL=B z3C>wr3@m6@|L!;mAsj|k3g0fuvVjhJw5D-b=K@p%1@9tV(c^RxzaS8! zf}bImbex#f2CNab{5SADHlZ}qixDE}y3m??y?0NOr%)i6_3go#{(0Jc2k&=waBvIO z^T&USD$}QdNaF27yy$txU4s}Y1vBb`4EMxE2jlw;PKO=U7XhAVu;=Ns@6H#5oG65; ze(izP;yX=cWrL%R_r*dYPMh=L0=x1D z(0HSYag-jL!x>I%eK_cN88_~p`*RJHpofyNL8#=uH#K6UI!KtGnDpMRF!X!xN*Q}A z?DFo+XOfCex{9J-{ujY`fXIX6_fCfT3(Ldba+CcK;YM{FfkM_zLh$$YEJY3q(H{-} zB;&Conf>bre!W6m?w5+^vTj+_7&b{7+au5eI6No3CV79{?~&jK+^_r7SxTnj;vaah zs)RnE;9s7k>)@CJ+j!jFiU*t*mj=uiMEvI#dA7j8V8>5f)A zl0BPQzBa?{yOp5$t@9Z@PsT{XH=XGR!=dW=%$;`tMX3fs3>c-B`96?EpB{rvAzI(H zx}VU{)5|b++N0ne!e&qF!Js~DC5Wza@qdj$e?0=OM62KDdn!fX#ZPg6B@of;Dp7xJ zINo=o{?S|?LhvL%#DH7B{9A{3@dap5>e~qm{kK&IW#g-1Y846cTxeL^hT>$VPGv3 zYHDh;^;4$rE`9|(B_pdezCDWet)EY71cNr~Oov#RiOg+m3NeT|ep+iODhfipPB8kp z`~w1>*~3*7_)MBAt60q&I-eexlwz`sK^Foq<)KHE$8(A#!2wXq?>t#Zd*ED)932M9P+QjK=%; zCwu2fLUFCcJ4pkKjR{p<(>)>78TurO39x+vv{9# zmn#-dLq|98juGqKq2J}gmFTl!88FIEu|Quyw!=S8O-;e_$Ztc21>jy{lL8KFl8()y zQ|&8Z^zpS4GbuhM=^sAo58Boey%CogYgO!7TpK>wt7LTD zwYUycgy??!|6DNygi8!efC2LN8ZWXQ_)uK>Vt#Hw{_O(*t?>c>y)~YT`h}rN#ji@3`Vi+=L~~((-cE++}z>{2Xq6w9;MgbL-)FN?+AF z?q%ccaC2ebvR#-~+}Nm2i(7NI-vr@*Q3GZmLP1BbgAVLl9vM`}h8#sEC#Kg%u)d;rLxxRS*1E!x@iYBRFfuV+&qJj|SQo~nuuZc#yX{=cIA_miLJ#SDLQ z0sOuJFGf)W$4SiD9{WDbc#zpFm?d=aADmxa*~ zQs+W0cBd=yt`FKFCI=KwzPlAoG%sI%qGY|}-b~LE9nm2E92ltR>e}RCVQ*z_o-IM< z-bErMz{xq2yKt48o$UvZ@0ogBZ5Pq<^JjMHhpyapJj8Nqpjlf9zs?(l0}~<&0i!$9 zB9pdzwAwq-es{`D2rWDk>_D)6X*EUhnbNd*YR}T?41+W3@ovOF%Pj$|w2x zNb5dIE)Q6?MEgBMFM>m^9%sDx`siP;BNH1X_O>u0{RuQPX6zg1eWeyf7SU}L>xX;5 z@92f49_3fj*l6mA9|?v{r(Ze;7skKe{%2!eyg+F13`Tma(7P;kyI0Qe{Y_X@RACT0 zLF%o?^?p-HMa9s1SxwED@UO~e*Wopw18^D?;JXHBYS`wdGb5g}^?1=Lo#++-8Tv6s z0KF(DCnv3jGY_%vB_)%X&SJO32iVD!YsSXMb44#*%~~MR)~0w8eQ$+6pY69{6oQoJx8dUNyj_qde2<3OU8g@p;d}p6dc8>Q7=15S5i}`~ zd&g$oJT@#AGCl}@&Q_!U8aZ-1Q=yf0N9V%0n&qFdYQOj8^UDV@V1q(KH(q~Yd$$n* zae)w|Nl1I&*w^;w#G)^@(EgA8>97O{SY$UJt18(6Y|NX_ZWT)-1KS#E{af2O>jB@7(;v#-zpGu6(;F<^y|ee0;ndJF=n45bPqt? z(z3Dw4Cu_;ch?6+nVDoD>&YL1fk-?jKiH;Z#?cOjQsm{QE3_p9fXhZpLE*2gtZe?x z{}F6Cn4HJr&0#J9|69h-U(bGoGe(38Le%QL!yog1{d%g;Jnn3kB{Y-i+@k6J^!d2B ztygR29mpaN%Y!7je}QC>lyR;33EKF1Qmw~qprY>w$H?h_BnJ)Q99;eY|8K$b`-ZZ0 z4MHPJhd#!5`~><(4HITO@WFlV{rPjK?^m4Qeo>?3f4=_j2NoDgF`#v#t+IXG=D7}WW@af}UEO-qA)@G8+!_$wWD?Dl!n-3RHC5G7z}JzpZ9RIt zX!jlCUSmtk>_(e1Wk_ZKK3%4`xpL>0O>PSB6KBI z*<^2aHnEIF_rZ}ujVV#YbKW1FLb`+&3_FGjzOR0BZQu5y-xnwlBm`X%QlO6?V$zcQ zp<6g)M!2CoX7+_uzWg1s9Ki z_i5?r(w*28`! zV!JV=4+tU;X+QPj^9l;mY$j(1HR_+^d@-sZc$d4* z70N~4{}sufCgl8G2jz3u&%d7ED}jqpKj_MvMT{%dCoO+Y1Vt6`Lh5NT8)w%|Pb62@ z>!;uUYs`#dj0i=uJtZ|gVOeFpu9+u!YEQN1SL^i zzX~BebzgZXw079>P)zA*CcmxNqbx8SPc%jb8{rc+6nhvOxAM!EYkt?de$#_JXuA)) zinpu6x$KDS$eK3G_D(58Eo&!bfBVw;bi7)&6BET8sZcIeG^>4!qIu*LMDCLetn`- zH2?1Nf7oQDmtXotudBU=_-#y84_`*Tqv!~|Y;Rx3Utw(js`E1TjDY{pukpa_YkIzb z9Oc%D%p4b-OWE27miOB6raWbBvu#)6b>C0rnqbk}7x^y%7NFlh9`iaoc28wC6*;5} zV0Zaj%$fU$DC4`XKUs%AoBPF2uvV&i zz^e3WKz`KPTbC4|57kj*?+fswMra5F$9=I+@GkP1atV6R2PrF7J8Lt}o$NiR`+Vi` zJT~hbM4loWQN@KP|Lfu39>9wXq)vr#1+)6YB)o|9*=Tm0LLo4S-eNPHSy`!_t~6^qLo`pjPsiF;8>_9kG=T#c zWa>@Y_O>=B9+Oy8J{Xf;K^r@b2xPI{!lBh(7Z=v$>OU4RV1D&gnn*``WpI-RXICO^ z&SGFonn-U`fm$<*alZ|A)q8EOVnkr?E$SWmK}9G|f@-7ANtf5VzB!}u09v>cMp43R zW{9B{@9v8;S6vpqqzz%($d5zo_H-2WrX3>8O2%RyZ!mYJuUJ~5_2xjyM8=}c%j?xR zTHexZ3?WP^w~kxg+uDh%k$=TmVC(9waQ_;h0n_PQ6z4!0NS5(y2Cz9>)6$R!kUZ5{e!C3 zv0g+_mLavq!fqdLP^0?J<>cKf3?DgDU1-FFf{e_Q8-8XfR>;iBGRh}wT? z;XWzEGg&k6=x4;g0~5OkxRQqfT6PpU#81c&-`>mgi(r&rDs0{Th#gN6fD`}yNE?Y? z@A6IC;W+x_^t36uLD%83)5f-$lCyI|3BXO2Ss)*ym|h$o|MZoT01hRLnzH&-AD-JY zqhDmY7eoUHgi<0-CWp`~X0K7Mug8MoFBy6{ZeL3zl zgAUqSN+K=+_1+k1xJ$j%b=G?5ZK|FTP}saZlyJS}ssPPC(0`{&x#J0W9~(A8y|g3( zKly<<_sYh!I#H!)a+Gs~m;(0@y+U`A!EMO_ZmPwA3#l*>oWi{7xfI#T|Ng_5^L-TF zK*|V2&nDJ6kLje@!{(v)6_**m*Q-unxFdQSy$xn{Vu=ymR-yuiV=Ioouj9?h3Gen& zklf^=btc}h5zl6^)>TilNO9mnarM&;$KHwgbqumZrc}Nf^4r6eWz^^_>mglOUT~AN zKq&5MTx5c+paFU4z|1glgy^m4m(kxo0WI!f8g^E0T73z*faU8*V&2aHXG#(WIm;77 zaYUI!MmFf&jt}l(Qu)sh6X72pwzpq+n=*J|Zn3p56(=6?;GVKYkzoGiF}z?v+(0*! z9K{N!-}_6e3S#0`!|@YWUI=q08@^Ng-DI_e-9c>}=7{hgx+5NCZ>cRUGxhxGy=%N( zlp+7>bM%)}pq=CD!z^$UxVPgo$+Vp2FtSR)JB=QX2C*TJjv{nVQp9!>RN3V5 zW-SRd@zp1Y>uF1`c7HtYIj(9--DYOy7=Ie`9v-BEJpTSD|C8QBaxk}n|N9|0%9t%f z8^t$xA~MGW(VHTT%yGdY5T!O z3$F|9LL;1*3KRED0s+Cm>aUTJ-l%|2Q&i)XN-4P|%8zb{6&iEE@E+^sPQ^xuFDnQzEWL0VvaWFcz`B?z---(OZ=FdyZGlz{TYrw@M_+!tv`38k4<+M`PIOwm#0@lbT(_2 z$ruNl>e%U)UZp1SMYLY{8pC0|M5&+NWy?@N!R`8E>rKz=ieb(N^-WE9)F*jU7qLF%4*QWBK z=j~R!N*$@VFx)FZ-c4YtMDLC(gHF+f5n~ z`N}a2RcI&A=h_4L&p{1NBQlXNOPsixcl0(yztTwWPP#m}afiPSM($epPzsoL#Cz9^T*l^N2U8q-zdeVUk>+K4K#z z;ZEs~eAJ3`B=2Qrprp4wj@-R*94Wjeb4vzhU2a%mSG>UX>qxQ%MOLnMYcn!Jy zpiS=3xv(p8EAt|ILorXISTN2Mx5U)AZRSt;L5_yt*y8q@lJHb*&#g`)1>kUQ>za(C8}wIj3-coxgj^~t{>SMAq(vL4aA=Am+myn zQB6lx{%nXCa5!%t%p4v={p~DaKSvab+xd>N(7#!bq!Xxi`rQwmIM(mYOW&P*DW@dK z(M=%g5u@6z8=e%A7(lw!(UQtqy^9{v`9a*fLT$^GA$1WYq)BvY%bbY0=P$^CV&@N* zuGF~W?)QNeD}9^+z!*`?Vkq}oPjC%28BhNv-AdF)66LUisw0$lL*%N%@AK?u@3q!m z8^Ds=Lg6hk2xrU(F{porO7}7|GG&DdUu6Lk-8|>!EXMCHM>DX5GcN{Hi*oaW=%pg_ z4G8tbx#DT(HX<=43~5eLItKXzX*N4g*Xnf6yY@pN6mNLHXMhpw^S8ykldHcj_!H8@@II+6bq|U?Rf$fPAyyxPI{%DFwb?k~L*4>U#+qH)mE6j=Kq6ncW zbwPMKN)wH_UK8#goG@zQv}bPIk|AB;>^}dAj06p^L?UZ60DeOg2gkxe*aq5dt%%=E zy*k$X@;*o6wnV(@9(+tr&sJJpAwJjCLkY-=k{?{YKPpK*}ePuEJ z`Aq`SAh=?!o8WIAFZ`UBW?CTfS4Em?lKLI^w$G#5ag*MP@IsW54yD`pF8Aeg8lx(3 z6?avhTW{O?ZnM)+f1;NFc5yn@aB8B!G_1$kC2VcXpUL|z(GAxD$Ax42VNpy=p z=l^dp$^~P5>fQZcH|+zAW07GgLPonMUmTMX(|5$n$6s1yu4=zzU^f9EaEhgo>kGSA z2_*~gu}ak2b#rGl24GO)&!5thg@_fH-HDqV=-tTQJfzsg5ipFrz}X>ktbT+4(_A9Z z{BN8;N%LvE=$fB_R6aJ_o7**GX_4c1KCQDjrJWVFUlIAn`^}u+9se##4;+f5V|N2) zoxFFct3tup?-?twL$6IH)G6aWby@IFhs$(<{ghpgT;u7=N^)9{Z1=1!v&TH|y5n0j zY!ScnQ_Y8O;L1p&ASxwrnzSoC4@6OsxoF3d-K|bA(y1-s*NpHpNzQPA+`hB9pUzRy zQKgAH1$@39c{|YnLbFNbiLM=nDk_8TNQ!Y4i&zuMam4mhxVmZgEbQO#Y5D^2|2a!C(?6)UK(XRYuGV(4)2%%3m5Sk9AvYOepIa?|JyBm=vNFJeAI=o{AY zz!)=0r?6dxZT#e}5rdrPdhpkAkUkmUCgS2Nc^#APG;M=Zd#lnGD$c`gp4X0rLq}(W z)VVsnW0NBFISaO;2(O{@)8oO%k}X+lk^vBJj;$YAjR8~egUn#P@WBG5A>&U6xwuwd zX3?DLG)Gc9IMK#e?p6XVENVB)4N?n*lo>&+x`KCKW*%*)l9oDrq4=|9P6Bm*tQ0O-;4iQ(v<$Fx9K}K zn7weqm#_;*rJ;+w_d1=X)VtL-7hiAnm^*hk8+9V*Ef{xgpOiS`1%a@8nULFOlB$Wl z?v;;s1ovD|W^;Yg+Oi>6`|H76$cY#RtC^%6{n%N@pfc8rFXlZ88IJAW|L&eKF_F8w z)iQSnM<&42%kzs~PtP>Ok4BeyZY{*oXG?70uXmk$>+C;Kiz%4BpjsC-A+H+w9k?nIPX5lD`y4nVn)~*gyco(QE9l|V zFhB5HRw6r8Fgj|M%xREot^1KeF858P6@LwN&bqOboia?cOX1w;!Yy=i(yMcC$A!uR zmRm2iJR)+Kzv?Fwf-wMu$YZMW1F#1ElsftbjWNK+*Z)^36Ki)H;<6`%+%_ z?zCB`hC6u12iFrKhGsLnNV6|FAeaasI82adBitftbz8+ojJ})S!GLHeCP8%oxKj)k z!O|}vmVM-&lFj9OAWC^0n{Ef9>*_GoZ3_JbIoavj@e_G66@c0WRIn;d2;%tU81HHG zi}_i`48Nb~(znJw>WMXD%2eO(F$yqW^YF2XIhE?wl6$v=3N4L^ZV&D#ZsNkq1!M&$ zS5D&hb}s;KBaP|0oR=Y%#e@u(EPCTIZY?9y{s_YH$ZgEpYX*AiHDl0r_PpDXo85U> z&AWSN|FO7_jn}?|etkmmS?r_W!Cg$}Xh-latRyJN@>G8aY z2DbqkDkn;F+sp-FG3HgF#rf*wlDp0T;#iCl~r3^7|fDCCKi5_eY-WxJT`rzuqZaT3E{* z2a#u{teZz^NhIO^c%n)C2y0`uXXX!LLWzs|q7$9uVWe0ltJnJw=jH>I5{!2RtF~W~ zXg)fTC1+dTJ3~fdZHKr3Dk@>Pc_1FBJ`S-Or7C`nj*yb$ql)E4i2mg9?Z^gbHy32Hm>R;1yG3kkGi?hSHlweLh3IsWG zMauF(#DW@!MYawQ=5kIy2dhX3yHR!cf&7{=`tt1jS9&dwv1qUy{xdaN-z$Zlsj`Xc z9j0P|Eh6POA-5zf;*Uni>7CT zdq1!{VD_@Ah=34(M74lZ`jxP|J;sMC%N$w`8*7?7wTK@v6uvQ;o%fvrPI8&_O?RDh zQ+=U&ptDp!?RXmSZU+D*`vW}Z9Nn#jKDL_Qfo#Dump?S5(_)rnc1R}NIA9R}#X%Uc zS-~tXJ3vGityh7=@r>nUPOq72nU+VUQ!)(erRWUeb6!lLfVnO+nFxn5l11{6{`W^kD z0I@J{aYz)A!T-&YP}9a-^~`i~k1@m!?R#0C#eR6IAnRknmU1SVnGKx#>0AEX2MvMa zbNmlCV2o}*MDd{01ZzqS3tv>*kk`Mmv9Vzng(OJ7FE1;~J01Q2-P_*>@!i_b20L=y z#VhbCbw)w$L8AVj=AQS$>Cs!iYczQwCno=JAe^M|V#H6J#S09#DlW2I5S?i3Pow_j zU-(8KF-#n{yVhg)6C}1;&+Tl~SZ5U6UjdN^QCTJ8-QRuHu%3Fp$fa53Ju?!3OvJN5 zr>5Uz^*C%&a@yuPun39YNqinsq73LB&5;cHLX(VsuR+g5P$$*}!?-HgACLAIy-?TK z7+D=R{>X+l4hCg#wIohi!*hf6mgScl?Be?-%}l39>4K+6gvFuCnv8KU$iu`dOI$^| z`cI`}L!md#jd$}UTD$o$yX*l4^UUF2Zzw&i5XVSUTA6o)=~}XNy6kB(;_QNiVBAN5 z!3Tq-SBTB^`JJH>Nh`~#7l4sdnM)o1rW^B)a%SRzs1J+nb}bsj%U-Huo2ddjJ!{Vb zYYY#hD0C$1K%Ts+UuR*IwaDRH`ua;W*WVYa9aK3pvqKW?YznrQ?XvbCntfY6r@o}H zE-ZV^@xKzj0UMENXv?8tF%%3B78S(Ps;A0fRg};iJs|YC$MgvgvY{X~*lr(n2-)8i zn2R0|iw&(lef_#+O$~&3?sB%dU!DcMy;Y}k_oIJKT90~l*8zWLw0b!WZq51p)tP4R z2bLaDyW%lJc!?m`{3ERjO0%aBVC4qbzK!bj`p>8K>Y{8hcwZ;_z`0mzH@rDsu&AE> z->Yte>oJ6|wkq`Jc1_)Xp>qOx3$W+ai_854`m!7_+xOZLFE7WU(t zx)GV!n1|7_y3a};#ODGVpNcc=-%rX3r6Cld3KFW1m&OxkIHhdy-|A~^!}C+3Z00wL z;o9WafJ1lF*6=Q&y&2|>lfnhiVsdp}IK35~%zNzd?_p2Ruk$$2 zMm43T#>Tj8s>?iJIv>D$NG=MAmGJ@>ikg4l>orQ0vO*5t-t7!ANGYi{WDq?-sg&*; z+%Ct;uKmR~QrLPCX;9)DHAThumD;CgX+Hmb{Vl;CJ}VK*jC&pf%q z_RpG!x{RsA9o*2v4vT!E68h~=Ou8;7A|6g1lMo##7|fBAj7?H7>uo14wVLa|F|ko~ zkmK1Ey=5UCj^fvyYFC4QQeqKGH1tAh&x(<|UiV#+8>Hj4F=C|yYc~|IO`NKPBn+fQ zR*-dLF2`2J+WW3)@A}uFRw7ez?;V7cV3T?pH$!II2AaX?Pf~o;se~%L;giEFyg=dD z2>qXZb4mpVl^j@|AWiR*o?a-oKj!hhE51kDd3UvKHLI+|rbiVlaL_}I=L zcH-Zw*9v8H=xET`v2~o2fj{;`;6DLxFF?JP&aNC~=QncgEqRapC8c9rP@2bxA7+Zx zvf+Eq3Ndn0nJq0XXYI1X<2O`%4G)A4wLdi zwk9SaV^V8e&x}%}C*Q1P`cQ9o9-m z!E)7LIBh`MejA#uH4atOdT7B!o;^F~z}Ied7dM>K#Zqrquj>VhOFFf=OM22IPmjL9 zRi}ka_O+xMR)MIjfFC=Un@j2`g(B4;czaepHHgM>4~Oe)FAT)_(9%+ED2ql$ujaYk z4m`8A+nb?pfS(O-;NY_>K|0E9nUrAa)Pr{TJUA*}3CwNO7LCNI5QV;ZXWjjvs8B?c zw%3Nt!ylNC7)^CFavSSytHIB*=6eSuF**e#3>OC%pt`rdU2B4p$|T*IVlLJp(V;!B ziqFIAiT-X*=H^&$N<=4r@H>mJf$A&8(yU_E2hlV7cmB@o=@mc`#k+<%bR=0!?$w-) zp5S}*pgckGb;eGnZdC-ITIoA*El$od-%M~(!b+B#-ux0lLlRq$u0>qi`YxLNT5C#| z>)Ymx=geC8e&AK)KOhx=6S>>9r*$`Qr-Q}=j-)xis1WbNKIZy9L$=0d(|(Bb8A^6kl(l+PRF>FtT$D=V22uA?v}<=Dy{S@<8g zi@c$h_<8H^{F!#F@arKeXn!Q4`qwgjX`JSqqO4E9`PDnM#2?}emy0N0j)vb#{v!=Q zLux_&KxSUr-IBs~_kvo-$1hUscToAyH(xs>90Y`Z={2b94$vP;zl*Q$?AWHGD zwmkt~@h>tAaQkeB4e9Gm?C#MNwj#j%aJgVCC$4AqNuCWq%=kptt4Y^rkw(pCo84UG z_pl%!M{M2ojrIbFyBqYX2oo?!gAYwwZcw29={Cy2BT#`@u4mznYD)~bI2UL#uP0&v zlr$v(bLfq;@A)hJnq(#@7KFJ?EB1*tX(~yGJYNdSU7W>9hv>_X_o$BARS@lN#qD*y zxRsr*3s2?fl(!2?Wzm}R+8uxpG~hKg?hLGp_u~P#(>YBHP*6V1H)7xP5Dz zF@xvTApPTnPe(P`O$Qv*^#V^z5A5~1@rL+b6;OK?B&$-jYFD-9M2Vrm;!X{BzFt+F zO>lp6|H@p8%+(C=SOG~y<$-~R?`wa%<_+3?#pLkQ>53_FxZxu|@vsJWWBtt< zk&!dOXZ~rq%HdX=&=BBra@k0Hy%d|5r}WNXdw?!+s(yRoTzR}0>bksNl`yy@R5m*Q=yEK&B7GZo zsBU|hxp?DA8h_*=;lbSTEZJx?;6|6}2FU1a=M^md^my2IblAimqU)w{D;eZ6zj$qp z-FK!V$+P3s4!rahYk$U;WJuq4sEMlW>Na3}N5wWRX)5gH%ut5U^YV6O&A@r?>l4FxNvQ7D(3O+#AELPMjk+y=YC>U~H)Bx~w@ZX_MZv*7wBqV>;E8 zynH$*SlXkVNQH6cAE8q@-gEaC31{|;adZA}UgB0TQFN~{8pws-Q)(U*Eh4kqu|b|i zX`aQ~CzD?}<^$x$cyVu|5+v(!xb9lu-m;9%hhTpTFYOXu!2Uahv2Bu;c)C*P&dkZX z9PgW0iR{+wK$|Zp^hN3Mzof!3f*l$5y4!7ROZFJ}nEDpB=@Bw4znB2K0_7U;)qwS_ zBrVKkv5C`XkG9rTUsJFUA1OPE+LB8fbuPA!5;zPWkFxDRDYmfOPoYPMqk7I4$ z?LOE1@eL!s=&2RW;hX`!+-a*UDf6JkD_XHFF>;;WEq2t$wtrzJDv_V(hRV!o>*78X zACX73wD==Hap?1`|0NQGs8`Kuw=Bwj5`G3i3p$rjB+5NS5L>99z`cDdc7QCK6jT!u zoZF89FNFK<$;^M>N*>GK|#V2`md6JHj{3fTHVTL zD{OkrrO*l47+iEL9q&2eJtKNWp(*+RHpBXGF=dPB9Q77V#Q@X^w-~b|gian~k+(Ah zbUX7YLB9!}9_b+_9G;jjtgy#ZEpz@njvzd2=5HM{%324gj6bR18qJ}~$B3@HxxHNb zP+iuLsvw*_m0KsXK-9*)Eq4HjJGI*t#z!|?2jA)&Um)V7vO zVQEOiww_v+-SU+S|KZnoW3q=o2e60&E^9hPo&&1E^|3`T%!`H*UA$S&eRjLm$dnYg zd_Bdp0}y^tZD*y#e)q*>58*}Vv-#8)Io>8&IP?|StDxr1ti ziz(A!PfhsdKsOhoc1QK&1W(0m3QGzqje16aPEmvmvb@5LKl76_vvP9$$vroeJOJJ3 zJ^R3M2;y|Hy3T}U(Ot|jdP{bNd-sS2-YNxW)RiF&k=mV{#Qbei(9)6)zMfwm4G?>k z6)x=I%R&bGn6|;J-bKi;El?Ixf!m`>)iBCjK``8?;3?VQJZ*BztZ-%eqyqe{RCw<* z;bG@sn4)1{CoXCDI3`{w*IT57Ifno7>1^Y4pT}Nndu7ai-?izQACOrD%WUt<|K&S~ zi`$!kp^T39rxn(hl=6!X-QYvuFD#nWSAHpu0e2s$!i%@RF+wv+>PwSWV*S(+-+fjggzVmkWSwT?@M26S!i}fuL%RZc$w_L zIY|tC`K2lbF@(S*k%)7u&;hc$SPc=}uU~nl0C2k>SnU8zdXtjz61X5$&Br#D2l*bd zm!G}VkxOCeODw0IVmr6i0$m(}hs$LkpIlFJDaU)WRP?OtVNqoIZu!|aA|Y4Siud{= z3_NaQrxZtdFIFG4g2nf4^lh@E10(47*BJ(c5vCk1l~k_rk1ol$TH}TYLf5@J#Lr+YRNi*GxgA}Y7zqwSrxNTSD>IhG+rGElLen9+_jT%Zqb$%F1(w$3kK^L) z5M3CRC7vKpSUr@`rg`iZi-ny2;M=Soq?;1auS>GqFI-LtJfGw={X~2Sf2+l!)(lbG zIbLpq>#%n63TnbmHlArw;vPXx;fH7aRUqf9LiRlt+hlVB#V1#v7H)q}?WtX>`0Njx zv+kbAKhbd?vICiy6b&~zO%`FE?7mnS;=$K((t2{Y`YqkL@6c-JYu_Yib8A3<7)B9r z#@oq+1oXX9cOm4H0#dDF#(o|ooeVJrGG2!XT-1g?4m%l2;Z}Z$$tBS#r~>3xo7zq# z+zK~Bv-!Qe&aMP2KuWTH5+EBH8XlV~+C@tzFG+_>#33+{ z?4*9fk(R?K{e^jhN*vp6_dl&lbbwEh5&RiEt9Kc6x=reR|^M6z}qj8gONpAYiwo(=iH2duX>n*|FXU zQs7loNi$AcbBt52RVB65w@J4pw~sS{+@72mL<0LxEN{UW`@iEcRFoJeTjv~aOz0MP zGY`HX3uEj6pX>H)gy{Q_K)F6iKE7o+w#Tt@qOV@7_$4DLpT7|T`D#JygArx%?Byx) zUg$YdMbJ7%0@fGozk>Vcv5%lwr&yJ@0{WUB#4cfhjTeVD`HwOE#m)@5CIN8=^A<>D zaVc5;ov8n_CfdCU-8#wMi_z~_^eeOy2Rsi{CLLTsa2E`|G@Uyec~X5I+Ea9V zK5gW=wv2L|VVmrP64|=uNM9~<`}L(lFVud3srvjF(Aj@K9FlkLl~)#rc!sQbE4+kl zpqJHK{tUYEk+rq#vEg6jC(JZ$Q*Tf8!;BvU0-!zhz{KqS7jM9$5}bQZ55T8}at%84 zG8j8Y`#mFMr?ulh;58$uB^Q0G_9(x2V=2KMv;G!yGcpun8}O(1tt6!Er84!A7k|0# z?Z_Y&LeDwZDQ_yl0ri?|59o{fFN73BRj(&OSbh}!cH+Zc_4CucaJTV!D`z#DuBU!LOkEcl|9XR;aYEF`m!m0UWG8vZ0R+NaCBm2hkS%k%u2hFa z`+W;W%EtK92!1Yn3Fod*7w6+&{PU47Nje8#47b91-ZSr~y1C)NREPz>%Te!@e5jOv ztHzfErI5I6ZdUF_=-r}YTc^(+Ctc%^@+OT@o_Pt@3jy&yNBTGvxE5~ zxV92|4)C+ta7N3S{IP`h-q(&@1dERRQ;qj>$wn-ImHKHkmWT{e_+ z!oO||DL~GCKxLNGoXg{;BVCNXEFAF|==0!&C~BL z6+zE$BYGl>lm%^#xVqcHe$sUV_df`#tbBk{8-{EaUaJg2qz1iP?G!AG$Qs4?tH=%vBhZ#Lhxe5+(n~AE znbN8I4+Zv_#wUJO1^puhsxwk`X@~Klaff80fHpvDrvvjXZG7l+v|i!wCp6tNwb6~8 z^j3pSZUevf(J*sPUU*gIT3G*K1)ryj=)3XM*eo$tJRsR9Bwe(b95JQJ_;9t#}~Z z!rq3>VXYZDRs&UEfhV3c`+;Jp9rftI+e@~^ge7}CDoHUSX;Wjfi?Z{V2T6(sL^|43 z>Tt!9j@J>VX$O|O1m2$JG0D--+TKfh+zm=NUnl727C^56NJTbn2)*$?eBo!*(!Rmn z7tAk(MXjmh^4>39Rg1~Y;9=z$4F|@LgkJiZ;A8!& zCFUo&Kst%f%tznrZ>xq8wQW4Ozu!q$spczw@Vhc$LXtWY)Xe-R@o4Ny?k;W#)^_JT zC5_$je1ZkIz)D5j!MrQr)N-cb??dVEi^rImPx3Ex-Xzf2_mY4E5uP(I=c;%IP zS{%=_e>|?GIUakP<`J|0x}o~g^l?=dIc_e1z%KpS-1obTQn0RwQ z=7oidSWzWil}kpvFBi>8f?Nzs^KV=-;eB4}UBDBpe|!;QP#@Q!UQx@LNSGWI0hHuz zFz+_ZV7Z9|ccDC*=v$9mEk8s>OcTEP!e~L^>Ea^Xc%4tOJChTAvRRVnk@U3$dl?oM zZn!-xs9u@$13hD2Ws5@sHXIas-58py zn%UX}XHgw5D#7c|Y`Q#oAbr&WU7dY!Qm>Kr+GgD2NJhVzi>h6hAL7^)F-UQhbdb+= z&*J-y3^M`bQBFO?`Ql65H@)yz(Sr`&1P$+xwk#Kvj6;+E7V09DG$?Dqt@iiK7-IjY zI}C`u0?S&xHwQ0Kr(VBCA zcI>A*{~@EKA*i07o;%BmgE`Rq%d)E}2TJlsL>$jIh<)XBKL95cDepqI%1H&*r4fr2 z5Cvf*NVl7_$#8NY-9NZWgm9gz-{(YsiZD&Sb*uZ0G1I4u5CA z+}un!Nl`2xlpmtqti zMYZ|ewCoSpgy!q{^3H)8lTa2?tpQ;Que3KLsXI>4maqLXvb&Sh%b8e-AaO!nd!fnc z$L>x~4_wB7CyVQgEGK&(cJszYs6$4Cas;<+mK<(ab}p75d^6k~ zGql~!hfyA{3s&Cf$i5mzsS02o{%|9Q=*HBSd0&94rIk`7uQR^-SyNXc@I-2QM(4Np zZ_>^7<_#ney~U)x)0IRx(z}YxPg*hpS|Jdumb)Q=PPgJlnmxB_H|cNSHJs=4O3O(Z z8V>7=m&-|b$oJFm#%-4&&Fif{-ea0zdcm zhpga;B=&B|lKVar;`9R~=f0*!MOm3itz=o6LA@fMhpe^!5 zL1f?2)P|eFNL@KAWVTS&#IIRLbUEfboO+*FC6V7FLa$`mjE=D$x%Ho?`&O zMe1FC0v;#y?<r^#4Y}71uh2LYr@1CwejHuz7Xf^`wKFG-9C?DbG!~T z1oGbeSU}eNV1~{49ADk|z&7Nq;pV;Y!o3yo0Mo;{QLM%?GN2qsSI;!lr};drbVQG2 zcZJ)8B4n4n^l5ibA9tXiO^JiZ8KQ4yj7;kruV$ld<3SL}im2yqLZI{hrCq-06EyyQ zySe6XwbqL=%l8OOPCe=er&SVsa>xnL)ARm^^Kc8KfWrH-NkvCzqYysP+qY{AypXxK zyId|P-biq-u&!jqUFI_W!xb4vh;rQVJsC*GL-nIT0jNwWK&f^=o+VO<_$< z!j;2r3#i4=1hidXy!{g!hwAx%QTTs1A{n^JUVA{~+-;mQh})vraLez{8By$zpukQL z#K~ih4lp{Yt}BYv3*5gBcwLc;6eER8%nl$W+&T`e7dd*Zn5LSnW1$G`I-4BGhhsaE z?2{_?HyZki$lO9jTia+qT1zZ}_tPsvhD{a_{Db9OOX}XU9m0nto$3%vE6bhV9kip` zb}R(I8!{EWA;OnNCZlU^g}J!_Q7PQ=TzS=tlQYshp!I!D+XJG(SAb2($?d86`~_L{ z#-iJ9hsnTB2wkw%9hiZ>58T!s*jchxvc?0{?<=vPRVzpm(o-crx1sgkU;2d97=%3Y z{nEEcJfzF>w!Z)sL~`DVNlRd{+_xoO0J69L+nS4fT~VMsr}l(XgWQI9{_7dTb-hAY0mRynNq~NdQdJDGDk9X}JVz)p*M9IJAB7d``4IUmqjl*(|ZV*S3z8 z{m^{yIfd&qS)}aO{>gR*u9tU*P^DuJ+JI0ta@Mcd zpX!64_5K-?UX==Ia!>!;1Ec}hq}B9@(s%(Lg}uSoxBh6Uac7a-W?`x~NIcjsMw(Vh ze>R1~i@R*OUbH-97A$hF(b*0MZrx&ch+9iXY7p_wg z#`h~rbn^8>ug?OJ1G~-m?oIox)9Qb(y|_ssDbi*v{~1Uq%|p9O;u3MLvOX99&c!>w zHq>;e9yUcV1^2gNdIpQpwJxpf`+38f zTcooJ|HTe5r(@^yYx7{9B~Mw|iEZ$`KpXJhAi)Qfz`$+E=T04r;KTHeZN^(sVgJ9hS>6*IfK@?sD*Zkpr+#{naqPJT2l;ksL6hoQ^DyfkI)u; z;p|US1HJ)q@={6Q6muCR#GwAEuU(BkjxhJe1WBUE{+USYq#{Ijbpuc_iT&- z!(zK!w-f!;j!{dzBj{z8(mN@c>7HN7qKY3lpzbtxkMC~Av)z`m-mndI&?>xSs?N@) zQrGSZtQ0z5U7=4lMgzc7anG1s>mTe$j@~Kk@RT>(;b4H0@D3)6ANsGBkKCffy5A#8 z1C1oJTN7R&n=)X}bAR7a(qY%a)Q=!@-t#=)o?D2Rrgndl`_LVgyARZUX;BJ9%W&z+ z?F%IJP+5EKp^>rms*}wNMHKKS_KU}eFk19Dx*3c)7}DJ3j*8;^FFsL;JX&6*Vnru@ zE}H&e@)KXjI9=o*Smmx|5FmrJK&l;Y2F-34qUs9OeUkp}Jnq}Fq zeD~evJQB74HTa&;DMc0BqYhg1ECB;q?&g|2>Lk z^xqASnNi$1KC(RDAb-4%wQ|B!x1_g+2fRs0P*u_TER#-_K7lM|$ZX0^R6l+9@296P ztS(KHk?9xLgM?n)RZ8DWr+J}bv;F^1dm$X&qnVsg{iZjm=2;pWh#H=y+&p+IR8j2L zeq~_*h&=Z^MS>aAdv1b`oeeT{{G$;3(`QD57do(tHZD|Y{!!5m>u`Bl{-#NwsN{!# zBR{{KVj9wo5?@jD^|XPEY-q(8d+J9pfA-89eT4{}1^!UeGA1*;bFVIm>gdFZn3W(b z656_Et=pfznAIlxYL+%OImN{?Bs0?%y>MK)E^=`dmYTTjr|r^<_mxvFv{mWzlv;ZVbR&!RLuR z#2>j%QSx!wKp&zxthL6TG&Js%;|}$aRm996Ra&6WrM~~mE&p(+?|P+s@P^lSS`NBb z;y?0Kd0&o4!Rx(|nmD`6FSzJEMnG_NC~3es0zb)lczd2)I-_j#@a&V~Bpv(#glkGx5Uz>Yb zkv%+Z=U$1*Z0YNiP{=~^?iOpfU|wg-I2-Kd#`EFo_q%F`Q&WE9TlY6JBblpEev=o2 zUKf0g@V4Ncuwh+VS`Kat#_y(w{75*(G_W6~N>aP|Rs#%|KZIc=_a(f!OV%LkVlt%Vg>NBV$dIDm9J-72 z+i$<>(~ob`$OjW!*2X`|$tm+#<`Jcis$@6jJc!Fofeol%3#c_2zy(luM_$)XPaNc7 ze|b?{)b-NlPk;+SdF=f>pA~~%0`L^C^bLor(U>n&aP?K^Y@}TAh|w9YlJd6(=)P8@yo(aPX?p7(wjhLa?63qhR<) z{l{+f(=|`&B8}13&pLRk62ESyr$U~N?_1c5eZZvP{wf(sDv6)1i0_r=9kDm9`!#K@ zAJuy`c>H&`xDd~_GvV<#MxZ|P6e_5;La$2yVB0ekS)c83S?yj39C5N8;Q|pzkGZVc z3)f=2Xu0~6li_biA9=TbacqR0+cD`e;$0WW2}K~&B9ps2Ea6;P=EjhFNBHuGR~YdE zJ?Y3YFhLJ=hnd3jpm{tK<7V-Xnkf`87k8BYl@I6P7y$iB;Ypb0RxWSctt2%j_Ta5@ zG5q2DwKhz>V}dStyq?X-e6x7cd3}&)JOVlG0Wnd;xr!WdF)=n~CfDgEW2*n%KFjR0 zH@8|5^d0UIpPIrHPdEJ8dlI(BF26tWF&OHCg5DwGTkpH+R_rUR0rJ8u36A)WzZ)@4 zG^~^`(d)P)U#|f-er*i^+md2FJL9=pse9tgo-`COsc4HO`bEl+ej^3<8oip;p#}aV zM3!@Jo^RZrhj5A<8;u=D=TS)LcK=-ZG595 zEI|%2RhkJ8UqlpSIsqMV{N$^;%lch*_DA%ZI-Xj6%D9X0Fj;Aut%Bnd(?kH?(cgmm ze}%}OI$lA926Nu4-3BC6M0_>>i7KZDzB_6$G1?dw8lX_TS5=ma-w^UdC>HUvG8Z$es_{(d^+E~ zA~Jc_M!GX%32WJY{N-l%l8ilIOD;t^?W?|;n(5y59kRn-vJnZDSR9Y#o&9ne9+0Ap zz(JqUuU~tCEIIAs6io{tHcX%!68(Z3a?g+}Q@`tB7-jr>48in0eV??@$kV0oGtbq?&J2X1Q`5SEGz7F=W({WC%9zm)g?N#e14 z-B8}RqTl%~tLiyhA#_k{d~(bS^#Yl0JYbWbJ6z%{Cfy;bhX@;yua>0gIhqQk9+ z9$vadQi2&qH&JA3N-t|v=+q_^r3@&L4vlN0ukd$Sq1E#DF_unv)XjdMF z(+51P-V@ct+dr(u?Om$2Q-avUp z5Oa(MQLVED#rgdI9FsRNAD_3pKYSv?JxuMBv0Ou|tYapxd?VIqgm*o?e3cS%I zpHkgXn!8E~g6qnXlbMZb+wHW|y=co4P~Ap#l9|^@+MyygT4n4G<*RJwS>d<0eEaPAEDFiZsYjiF=^yN+ItWLN|NG?qreC zlw4gaf)@TEsfeaOvsWv*CspiclA5pEY#MeC^w$?U>?%bj2pK z*Q-gA2uRk?1H`$VHO+tul8Rqr%ICj#3{PIU8bPF|8(rji;DmZTsQJ!rMC^Y{Gz zE&J1(?fv8dYi$th19&$0t=TsitDNazkOSkcU|0mWicMovINj)1cl`?9pW5&0l!*jt zv**MmZ2IR%&PM*o+toya(dcrVVcue9SF1A?J8ifx(ik%_|3wx5g%`7BePC-Q+0^?0 z%@(N*0(}G;c+ufDe&|+kpHA3H)(|%{C2`m1rDd^>xkzY_x(rd@B;;!GpjR8cvXTXw~ zIAV1~wx7wLhb$fW2vTdZ=Ohn`$|rDmU4!5D|CIHO@o~0K+i@DJaT=RVW81cq#&#Mz zjcwbuH&$b_@y52(zT3P1_rd+_huz=x?b>sW;W=~6j5tn*P|2{kNaW{;`MB=1xi3UQ z18PE0iwKmlWaKzZlK(}l^0!XDhZpenyo9mYD#|2-2EC$JPS9{*tUPiH3Y@wjfAA^EX& z{HtslM~wXPzPjx+wNXVTx%U&xIGsv~`l7{8Zs}D#TO@X#^=*Z*yc3;1DaGdU>OQ+E z)k1VH)!iR^gP+2Tr^vS;r?F$ot`62+n2C8C>po&a-0aG`U*ZrjrDtf0aRb`NRrijs zjra0aaQJXvqtBJ94wb8v_Co($4Hrld>*ZRX-16%^6pAEBl!@a@tIl%ZjD2<<4&(kV zl5NscI31zV(Ljp#}J*awIOX6eYdMhSe!q1EU4?w0BjPHdxU7X zp;!&DIkmd)=BER{H5=iC)muI3+bbm-e@0xJ11-mB8tM-E?r7<~&t7Aa?AmPFw3Bz5 zvtoOfN9R;&Snq|IY*=}xDIq=1pL~GHd#Kmi7n0CQHgI(xyK1~{dDZLl98rOaeqYGV z685)3PYeffvPWKD!96QUf2<%ZGxtaoI9XSMN6e`wkvLS6^+mJqKE*p%0kvzi!O>sQT7J&L}iDe<4 z-aaInx!8=#Xj`_G1pz5GoC$hx((O37%ms4W%Idc_lAJ?#z(3Y;OBeE*0D=lwdDAht`rN4k!=Y{s1D_^$ZzZKl#;ta$5yQDo!oYy^7%#&gAPF|UMaShdY$sR#` zE@Z;R-O2mA>L7#L1baF3XldkufbY1XV%X_H2F5PLSeu@xbEmfecdOY-r%02>?8j3r z^L5V8Pd4f2)c6HzYDk{C-z*Pm+?CKfSXN10C%cmX7R%h4%0J_8OCOJKHrY0MI_mvn zgSK4(T{vEoN|8DK$ZA>QneD0)1-^`vSVkak1Jb-Jkj9hpiq0)0TP1X3wV$rm@;T^9 z+*^WTua-q}^rzXqmB4l8=9M!mqhZ3#i0VFSTW%@2^&Q*sqRToANgl=t{4LLJ=ud$N zjWo25|)FvTgAzkc8y4w4TkSM4v8mvxu*kb{Mbg<(ke&CNq6pW(@b#mJqL7-c1$=(=K3 z)xBxY@V#9t7?f+Q$b$7|$#A{Mqy^9qdt?%`qX1(S`9w#BS}^(2n>qO6Svmf)BWlWt z@ba0=Xl3;(9Ff9}6wI}qy`E`MtBpje`iN-<`orYrN*7`l@VpU<8T)&>i{fep$lJs1Q9Q85H z_9E`3Oz#wy;zztEUG0!dwr*J%ykySL2eRn?wF@5z!Y(rw!YE27v+l=HMpymSA3j(( zn|ItKce!t`qJXnmKPBCY(Dj%)AnrZBi95TTU{GhwQp7|6M|h~1sU-KX0%oR1K!vYX zO6n>Lk=)ceh@ig{$p0h900ZX%wR!|dgR;*q;s#fATzf}^<$S%O;1P|~N8I8dq;i_I z==S5Wj7-kQ%-0DoW*_U!{jsVOb)EeMOFC6Kqg{@^m5P_8Eq6I(M~X;;N`{?jQW9-M z*Ql@b9aEm`c+08y^+edJ>eZh0MeZ`SE6rs*@!_vuG)+KbXIpJYnwiC=X+{9L?C0B- zmAT^y?gjb_5K(F5)ehc2R*U!+s(+$Yoq|ev5n+|1RB)KFCJ{a4S#QvC; zb0=|TmD+ldY~PHvy%@QnrLS|2XWwj0*p`tKaO@ELhCt#1!r=yKeuFDra|@46x~R@7f}3tbv|fWQ z$Y*NF$CX8;lDEC_*%T(A;%y+qhbv}VpPmv?iaQReBeW7$K$aTJa8@=q)IT(H{~dif zd_}vGWQM~OZ7|phI(klCyz$c&KU%!pACQ}_-r(CBnv7KGRLLCgRRxjds$`}Du6JWd z()mk_IEHuMFmi9N%|4rHU@pgtHgvx!Ko{8~WfaU7(7Q39ALv<1+J8CnB0q0b&Iev5 z3mZH~;j3YNBbqaPBa&gN9D&Z>*P5&$(+LjjlwZ%b9B@U%OVLZTh~QzL_eSNskvXH5 zY90&`0kJjv{tz_$>nVscpt2Os5@OYOEDst({lzMvK2TFm%fE5W7x8*qe96#KiDW0O z2DP-oXGGN-p{sl<5eKEmGc7HfgGd=QIzwjtv}uZhagQX%Y}Q*SLtz_L8ZubAp25JC zR0L*jn4Dnox-p2mv$jE1^VrUvIT6=De~m4uruGDlEAL97&y`SD$0=%W4#*H5vVyOf zaU;e}$k8KF3TkwiXNTP2{3RlO0-;u@mmP{R^-Z!a)bV{E{%tM%{l$qzwgM8r{q=AE z*a}^jbr3al(@)uv+E@z@`8D1VTDx<74dVT2=P%R)L)ewZr`?ma7N{pvMxK>@L92m` zMphc(=Ox2wps{B$r3*ZOrqP@iqNg~OFtIDp|3Yb5$yQk7Ioyrb+Er_b`EI!KY))%w zTSWaEEUoNe=7*#l$MGpdefm!EQPoq>Y4h$&FZrMcfowAROy1v0BB*+}F0ZbF8{nES zW{w0NL3zPKO;bzf;W;;`IX2KuY0hrfP(3QCQ!&0!f!C}u0EWabmi=xyRnc2Ok% zxd8GOZ7G1)mB^hqAqeUz4f&ph!6gWhZQ+BnLyGVRE{0olVcpOFb!+@z)lp(NlamaU zn|4GY(mT3ShEl2$SUyR>IZX3`gnl)9?Pvw+g8FHghHB@1LMV<)ZVHRBnlcxU^y=nx zs-otW)sl;?SebKAD88+jM<%Sq>$*i^lDuvPus=j!D_X*q8QXq8jE!nS2dhgeQY%$s zS6FftJA0jJgs_&5#%H|0KZqAhuA(EX8f!j&^132_h|<)Y^^+C-4ES9#1G;A{V3EMs`j*`7!0>I2V;U;-&`xyhe z#43gbO@`7N=jx@F_CpmKy<}mDpI_Vr6@)h;6pz)7>8?XD=vwS*5*I$e6%m(;RS7n#L!0e+&xHU zMl)108_nO%Aa9eg<;7F@vt_xOhm4aspxX9naCKMYR&3J*L8zY?%pfxb zMTJE2m)Sxz(ciUT!W{08bX)_i>M8c`{ph>u^(HAVJy#a@c+b*Ji~7Z?=2WhBpyagCV;}5i_POr;{}d|u8*p@Yj_I@l_6%-{;xJq6S-FqQRMFhXt`r| zkU#uT(sti+jiWw)gSbgZc!Rx6i?e`dK{K%gbfmoq8umr|?`B1d2tK<;GJHB0&t1iF z&SUm~wIGltZbY4uf$-*aCt~*CvO%PshPz_^bYiY|hjj29W#s;Uh0`uZtfG;ba7$Jj z3axZca+>Z^LpePZW6oQ{O<1|udBj-?!}T+sl7O*hQ1<61i)TfvDl0l0&P~p*M;wRr zL)pW6PrG9+nsP77A;vJfORC1+))s7tViZLqXE@wNDM5TPH{FiQ+d>v2wxe=Y5|pNq z6*mRrI@(EAx`Ly}9!IVotE5oLRs8N3;jIxB33Ln5#{~^$DXF?H2v}OB8)@BUVwIeu z+^rPS`Wo8o^C>1iJ+4Vz)OPV@L_=CavVZ>&4Tb~1klbdKtMZsR>_2KlOjG;Y__k;j zm;=SmriJZw;A=Uvr*O*gEnS<hdQPUH#3VCTc;x7O> z8;5>)1c#i6IBaQ#7XrLu2tiAp6~7~66_50Eh1<3mW%R3b%RzY^LaF@tz#`{=STqfq zX)P%nHT6T|?;s=4W}J5KU%`BoePdScMu$l@1CJrY0LppdOo7vS$0PF{Gm9{*L2xoE zQ+#+YL)$ji_PGc~*SSLq`7)991^p#!Z{g_wHba0`8d2v8X(zIvTADu=C_S7-&-fiF{k@{XL~eK`tU>PwkGvS%AVZx8 ziMnE$PLyT({@!|BR-%+0hpS{zN1g|--8nPGuhzIOO`9X_@@1QnXTi@%y%%Ict$KYk zyX?L}l4WWj7NZD^;s4aG;{CY|=jF4!krNb1O_+1UD%i)>Q}>Z=r^$<(DeFqdxqg0m z{At?ctCCu-Hf(A&>)I5Nr1aaOT3hTMr}aVJOGbCIdB8$pak3voDhC9}xn5*fo0hZv z@NYyjS^$p2U~uGq-4};B2cZHM9=v-kaJv7a*-v*iMrf8}<^8MAJ;w$36L#DOLZ5t( z>pt1IxE@mvlNT=JmuK*~H~IU^gAo;SBP`s6g87MtzTo2c1U<8O;K2PKKM!hj{jtC{ zulfcxBbR1TV>T8m$AR1G>S!vWV5AXaq*J>idJHRIgZ#4|=XZ90y%hsJw)N^M}a@f=cP`3zgMNGqlN`lO?>pw!1D(26oR=cT<7_ znRK&UW~rq)>kPKSs--eZ>kw7h4ro2`m`FEZiwo{#UK!55aiGmSBRHn=kA(9L1k_9%`amL@AI5{H z`M1G~`w8_W#hAFedljSgy&eItkjdlSsH%rpIcZnaX!*KRZ_nAntrJbCC9-my5|de+ zsRzr_=X?0USiXTw3H(V`f6Xs!bX?=ZhwxuHQZlCknLWx$E5-LK zXzB&b=8pn&jKrFU$s(eK*l0<{mk34HQ)G6#G66$2}v&Y!c}iEs*JHjB=`_8HKsk*B!1` zI=)@HuN0J}&hMU0Y0v3xI7r_|AI)Hh?E1Lduqs_lLhI-rO@eK77eV9$Iz0~=e}Noy zUE?2{D=1~tQ$MDJ9}c!s4+*x1NeC538fwEMa}*n#i;(+F?i+y_>`>zM%eLIZOF)wIzM;#v((~%kXc7+WQh9s~;#kmulYc27iXJAKdm3S(|T1 zBV5BxD!Jj!MMwsj<++#m@}CKZYhgdmo4vR?#%V zApd23`Wo)K4dxOz;taDRSXuG;TMAp5rP@+#wDL*VMxgNTwTyJAad>hSm z@1#ls8!RyYY2>jaN974uL|&KoRP&pucAc|u1y0Kbel3!ktWjrPUDDRGIexDyIk#kQ z!txrTKVQ6@F~2PtrC#<7(vN&x#hc)c*@%gjo(3!)Ost=E9gcJp;YOyCtI}iDAwXb3 zaF)>v-WX%gXAs?{B`baR+#pjmCIN;y*^r>Hu{v}0(!&ZP+H&9Y#bq${_%$VYGsfr* zUAR?Q5)^uUK!g7h4GjHvE+s)cx46igxp1M^RB;NRlrf4=>RAfBJ1X_XS% zhbj8D`Oe#pJDMBk{eA3yZA`T7&$Km<2sy}nOj6dcsFpK+^Y)B?Om51I)b~Y*v7|0jE3Mv+%u9qsu z!>HqNOb)jkTG6&0>>AD6CETsAyv7`cSORcs7t{z%^-YgPdgHuPVzIN#U6KzOeD)*oeL3Ck&hKoh&Su|Kw|vO4iyC=5u|ih# zZCtidPg~Ebb|E2Ev|9JO3lY7OpJUil0|X~eHvnAHF9HITJC+u~j#gv#t~#Hdi(D&$ z!3%;@gF)wkee{O_J$NewBZZcMmczks`%<7K=oPJuLYp>nQ zNTLVm$Ati`RU8>GyY89Sy=IWPCC*W?5w+=@u7>(JA7wtOltNM!rsQWA8$zZnez_{< z%?1X~#2k;5qFVU`<pu=Ba`@DbZnQ*wat3BSeGR2Ul)+C$R|GMIruN5OS=R98rL;G`_+eq-+Cl4@6L?Tk=vA**BX0w{q ze~0G&vyzF3U=f{vdHpzqOvnGGY?kfFL)y*v6$HpmNl*m>wSGt`c{eqRsB+BZC=4HM1HyTSxdVmZn4AI(4 z`#qf;!`p{v3F?s+`D{5jd?>f6mdzg#qj~9&Bqm=H%Dz_S9(-)K(RX9KsgKE!m87ga zCxX_DPYk1LPthi*wWGtvyN|VwlKhL4rw9noLgLX(uja;6OO@g?7#*4r$6pQGnb&Qx z{Wik{>^jKW&75vnKm2+lv=&So$1yjLN z%{Ev%0PPsTyK$|&QL66T{o#-$r(;{#^&Ng%pZTeU#-GJFQ(i-4w%gX1-LZMsUIT?D zIydRMC3>p=)Pk)7S%+(LG`C*=@a`2?sejX@;@Q}k1SlN>*ih?f-Eua927*JJ4%s&ndq1^DZ18a3)A;ebW+A` zC62OYpE&vsMWcw`8YuT?2NQ4oyDjH4konATVHOYke!=%Z)p7auprBqS2U=C7*t$j| zFt><8R62sbRgDbkr+!c1avPH>GIZ~0<0UAHqam%v~AJrNrE(_bI~RKQ=t9!2bH z)}5v-rmKt8nv@ZNZ>CB|QRa(>{vmFb?2((dqkMVO-g`6sG>HK;d#9?_y~wAEyOQ;L zgq*OH(=#yyCxuwEliX>t#PFhCD#>uAgQv>cWqo z6f`+DMNAVszlHa8K3l72UTEUFGX7 zt#Mkn=G6m(8hNvve-&|kdAYS<-;+$qc^+K#Wnmb(aX1}ksJ|m+r){Sv1lDy)3SQ0p zhVku;-q-jH`LEvU_QbBC9yFOBlO`0=@G)hxAq5<0giEE9p~25X49+l>Z|%nApxXIVzJ z_UL?(=_poHIp@{qxiE^ViSuha*ge7vF9jkN5Lz?g)ot=YfU|a7U$}Q z#mynU^UZ^<-G1wqHQ!Ww22L;#Z?Ij@rBi8CJlKl)t)5B?pHe5EY-2X<*ZYadDX5zJ zq@oWjUk%Rs{2ME5Ys0%dhL&QQ za~OD{B!15HDn=cCmKk6NIuHe~L;-cUA6Ltu-R~AQ4=md`8J3w_BDb2X%U5U|v8usu z2=yO#guk+!-IOsgSL$qerPV~9btxE|5srA<7g;~)LuYVlD5AZ|Kc3^~;~OIJQ7V2d z0h=mM=e~;mnCEQv)@JyY}H>T;jo(iwE{7R5yYiEk7U=dG#hbe^SA0>!^ zn1qJbNTRdlbp=Xy259H?4q!fwK_BZ$0b#cW9x=y5|A{94+Z${z!Fv~v!uObiKg9$bQtEdo@MASoom-BiS2RaLypGwbb=W~8^x7&&ufCeogwMc#+<>Jhej zG9u}U!C=O#I*eEZ!UvGHF%M?hQb;W|-GhqpD8e$YvE^AA1!t2Eg>+l*4IK+91V)lxN>dwVgX`7Pl@znIg&5&m`7ZOss#1A}hNI_e2qTF$H+ ztRJvr@x&VuIltuoj85ay>3r4hob>iEO9+t5F1UeJz=5a7>7StqWJcWBiUDvojPDro zE9Z6*IWv60F(9DkxJ;HO-G%{XrtonS+2y%v?2hi{$}VHRKGE#?ywNylf^oau84ejH z)I#g$-_R{wjUsV6b_GYQI)K0K!H{BuG$9m|^ZI3Z;i@ijTWZ{A*^X7`c6YC+xLXst zKfm`7(|x_&FBDGZmPQzv^3+*<}p2F7O>K zYkimdd^gE7PSXvIkH3=2Ci2mI*pg2!-Zdh&m$T&HLe_#ZYTIo61h99s%r5>>`n)OU z=rmlWS+oi^wwR`8v0{K(-{IYVYV^jpJE!UpDfNKen8KBe#; zP7GUvn*X?cl`<&&fd~bR3a^ zBn1@tS}+9Z)6d%SBPeIpiD1fd=B?%6INEi6^N5+@{->4h6#~6ko))YzOZaAnN4i+- zIA_RVm9|f+utsN^kc^K|Gwx5qM`;e0i){3Kxh-e9^gcS8a9WOjo&iDL%e4-QcR<;d z;t|_t9W2>HrPnwhgQahr%fQgDQgxpT&tqKD8bg6^fnS+HP6ki}RujfF>bCRs>@1k$ zu%=k=t*HMoqBBRc-i~{;E>Q_BD*rzz#6R&ANc-ASA#5S<%&i61w(2bL z<+6g*3p&8}y$*V%qGt==cef;wu0)5s&p2eW%#^p=q8t)X8_&&u5E5}P$5g46kZAcnb4UEVGwz4P7?zdNe@oxZtC zjr|;5U_D0VcS#5B;OyRvpg}?6jVm2}r*Jp)lN`=bF43b*q;QZ4d5yHNkau5`eU0Z~ zYp>_ZT7T|1HliACk@4)OzOk%cAT;vY@_}++U1K$%=@7(_uSZ_7v(?Mez@Er*la_>UcLhn?amhRU- z-2;>|GUq=%JjP01Z71Qa4r2KxYpQ*Cv}-H7 zQ}-EPQm^nESCIp4q1xa*C($Y$r9-#@qOe4o^!nBE5#G;X%si(x#e3EPzh4=Yzm<`P zRNXu(VLTu4Xun78A3~iM z5bg$L?_ZPEijN~72=L0MO7@_g#8~#O@VBQJxB#eaN+ga4B}&NDIbIhnOyv${UquId zgS9wUze_Dtce?p~1(yW>qvcQF&>fM-C{%YRmP9dJf8v8}8Tc77Jhw{& zbRx_DEf|m=6ANH^z`1hH8+dl(rKbyjDY*(ZiPF;C=$#ywno3?Fmu^$pJc~uUF&Sdf zGoQ!UqieKpOg8}2;!9Fp8`lH64)GT5zKC=VkIEkg1h0NIzV$5!>@X$vZ=_L6d`1ME zVIxIo$doZxAdNs9*d2;3hCB-^8#j&ST3XL)^Q?-ZL&zY;;?R4WEaOp6>1GKU4a@EK zOMPjTdmB8JSVwOivlx^)P4$GoCU*Z=2uP2mwSDC6XMPkR}0craYpvVYex7Ye*;3p zF1DdeC&Ogr$6sPqC3;R!7SPZ#IJA&mR0kilBxu5Y!S~$QTvfkuKgJmI8+KXgg)VI} zlw=YX0MurHSl*QzLiLKhAA4gfq#S?s=F(?Rzq1cZ&0=V%BL{C2j4uRy`h%O#D#V~Q zuWuDEc_<;7mkVcm-%&tihFo?38vRxC83iVS$iJ0`|8_>(!|>j(TobczYn%02FAU*J zl2pFFE~$H{2D^LECf$SjAG&C|Rs4OjCrgS~eXla9Dq@kX+T=ZC)*U{vrO~Ms#Dq=` z6uXG;R~)cU)vvA8Z1w37R2O}XoF!{Z=EajX{@s82YZt>l+*xy#suyZUL6L9o-m#{jX;4Jw1NA@XR)-)`oA(SM5wOMKx(0p4i5l z{ze-Ff~T{2Am>;Vxc#&5Q$aVoXyLErA_=4aB=so}p09(C98@2LI3W9n3PY5nDsM!IM}eMH#HZkqkiAwyz;?X!EfmVC@I< z{B7yh)Lo}-;43B + ```yaml + channel: + path: /chat + auth: false + query-parameters: + model_id: + type: optional + docs: The unique identifier of the model. + model_version: + type: optional + docs: The version number of the model. + messages: + publish: + origin: client + body: PublishEvent + subscribe: + origin: server + body: SubscribeEvent + examples: + - query-parameters: + model_id: "123" + messages: + - type: publish + body: + text: "Hello, world." + - type: subscribe + body: + id: "23823049" + message: "Hello there, how are you?" + types: + PublishEvent: + docs: The input from the user to send through the WebSocket. + properties: + text: + type: string + docs: The user text to send into the conversation. + SubscribeEvent: + docs: The response from the server sent through the WebSocket. + properties: + id: + type: string + docs: The id of the message. + message: + type: string + docs: The message sent through the socket. + ``` + + +## WebSocket API Reference + +### WebSocket Reference + +Fern renders a unique reference page for WebSockets. The **Handshake** section outlines the protocol for connecting with the server, while the **Send** and **Receive** sections outline the message schemas that can be sent between the client and server. + + +The WebSocket Reference + + +### WebSocket Playground + + + +Users can connect to and use WebSockets from right within the API Reference (check one of Hume's WebSockets [here](https://dev.hume.ai/reference/empathic-voice-interface-evi/chat/chat)). + + +WebSocket Playground + \ No newline at end of file diff --git a/fern/products/api-def/ferndef-pages/wss-reference.png b/fern/products/api-def/ferndef-pages/wss-reference.png new file mode 100644 index 0000000000000000000000000000000000000000..cfef31111b480b5f53f2c7c960a1144c260f0bdf GIT binary patch literal 456280 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