From 2d98c44216d5e04f629cdfa107f1fa979ccb3769 Mon Sep 17 00:00:00 2001 From: Jonathan Summers-Muir Date: Tue, 15 Nov 2022 15:11:14 +0800 Subject: [PATCH] overhauled the sidemenu --- .../NavigationMenu.constants.ts | 435 +++ .../NavigationMenu/NavigationMenu.tsx | 382 +++ .../NavigationMenuGuideList.tsx | 117 + apps/docs/components/NavigationMenu/index.tsx | 216 -- apps/docs/layouts/SiteLayout.tsx | 8 +- .../pages/new/reference/dart/[...slug].tsx | 381 +++ .../pages/new/{ref => reference}/index.mdx | 0 .../js => reference/javascript}/[...slug].tsx | 0 .../new/reference/javascript/v1/[...slug].tsx | 442 +++ apps/docs/public/img/gradient-bg.png | Bin 0 -> 435868 bytes .../{edge-functions.svg => functions.svg} | 0 ...getting-started.svg => gettingstarted.svg} | 0 .../img/icons/menu/{api.svg => reference.svg} | 0 spec/supabase_dart_v1_temp_new_shape.yml | 2438 +++++++++++++++ spec/supabase_js_v1_temp_new_shape.yml | 2733 +++++++++++++++++ spec/supabase_js_v2_temp_new_shape.yml | 2 + 16 files changed, 6937 insertions(+), 217 deletions(-) create mode 100644 apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts create mode 100644 apps/docs/components/Navigation/NavigationMenu/NavigationMenu.tsx create mode 100644 apps/docs/components/Navigation/NavigationMenu/NavigationMenuGuideList.tsx delete mode 100644 apps/docs/components/NavigationMenu/index.tsx create mode 100644 apps/docs/pages/new/reference/dart/[...slug].tsx rename apps/docs/pages/new/{ref => reference}/index.mdx (100%) rename apps/docs/pages/new/{ref/js => reference/javascript}/[...slug].tsx (100%) create mode 100644 apps/docs/pages/new/reference/javascript/v1/[...slug].tsx create mode 100644 apps/docs/public/img/gradient-bg.png rename apps/docs/public/img/icons/menu/{edge-functions.svg => functions.svg} (100%) rename apps/docs/public/img/icons/menu/{getting-started.svg => gettingstarted.svg} (100%) rename apps/docs/public/img/icons/menu/{api.svg => reference.svg} (100%) create mode 100644 spec/supabase_dart_v1_temp_new_shape.yml create mode 100644 spec/supabase_js_v1_temp_new_shape.yml diff --git a/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts b/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts new file mode 100644 index 00000000000..38ef02e1244 --- /dev/null +++ b/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts @@ -0,0 +1,435 @@ +// import SupabaseJsV1Nav from 'data/nav/supabase-js/v1' +// import SupabaseJsV2Nav from 'data/nav/supabase-js/v2' +// import SupabaseDartV0Nav from 'data/nav/supabase-dart/v0' +// import SupabaseDartV1Nav from 'data/nav/supabase-dart/v1' +// import SupabaseCLINav from 'data/nav/supabase-cli' +// import SupabaseAPINav from 'data/nav/supabase-api' +// import AuthServerNav from 'data/nav/auth-server' +// import StorageServerNav from 'data/nav/storage-server' + +import { NavMenu, References } from '../Navigation.types' + +export const REFERENCES: References = { + javascript: { + name: 'supabase-js', + library: 'supabase-js', + versions: ['v2', 'v1'], + icon: '/docs/img/libraries/javascript-icon.svg', + }, + dart: { + name: 'Flutter', + library: 'supabase-dart', + versions: ['v1', 'v0'], + icon: '/docs/img/libraries/flutter-icon.svg', + }, + cli: { + name: 'CLI', + library: undefined, + versions: [], + icon: '/docs/img/icons/cli-icon.svg', + }, + api: { + name: 'API', + library: undefined, + versions: [], + icon: '/docs/img/icons/api-icon.svg', + }, +} + +export const gettingstarted = { + label: 'Overview', + items: [ + { name: 'Introduction', url: '/', items: [] }, + { name: 'Features', url: '/features', items: [] }, + { name: 'Architecture', url: '/architecture', items: [] }, + ], +} + +export const tutorials = { + label: 'Quickstarts', + items: [ + { name: 'Angular', url: '/guides/with-angular', items: [] }, + { name: 'Expo', url: '/guides/with-expo', items: [] }, + { name: 'Flutter', url: '/guides/with-flutter', items: [] }, + { name: 'Ionic Angular', url: '/guides/with-ionic-angular', items: [] }, + { name: 'Ionic React', url: '/guides/with-ionic-react', items: [] }, + { name: 'Ionic Vue', url: '/guides/with-ionic-vue', items: [] }, + { name: 'Next.js', url: '/guides/with-nextjs', items: [] }, + { name: 'Nuxt 3', url: '/guides/with-nuxt-3', items: [] }, + { name: 'React', url: '/guides/with-react', items: [] }, + { name: 'RedwoodJS', url: '/guides/with-redwoodjs', items: [] }, + { name: 'SolidJS', url: '/guides/with-solidjs', items: [] }, + { name: 'Svelte', url: '/guides/with-svelte', items: [] }, + { name: 'SvelteKit', url: '/guides/with-sveltekit', items: [] }, + { name: 'Vue 3', url: '/guides/with-vue-3', items: [] }, + ], +} +export const cli = { + label: 'CLI', + items: [ + { name: 'Overview', url: '/guides/cli', items: [] }, + { name: 'Local Development', url: '/guides/cli/local-development', items: [] }, + { name: 'Managing Environments', url: '/guides/cli/managing-environments', items: [] }, + ], +} + +export const auth = { + label: 'Auth', + extras: [ + { name: 'API Reference', level: 'integrations', items: [] }, + { name: 'Integrations', level: 'reference', items: [] }, + ], + items: [ + { + name: 'Authentication', + url: undefined, + items: [ + { name: 'Login with Email', url: '/guides/auth/auth-email', items: [] }, + { name: 'Login with Magic Link', url: '/guides/auth/auth-magic-link', items: [] }, + { name: 'Login with Apple', url: '/guides/auth/auth-apple', items: [] }, + { name: 'Login with Azure', url: '/guides/auth/auth-azure', items: [] }, + { name: 'Login with Bitbucket', url: '/guides/auth/auth-bitbucket', items: [] }, + { name: 'Login with Discord', url: '/guides/auth/auth-discord', items: [] }, + { name: 'Login with Facebook', url: '/guides/auth/auth-facebook', items: [] }, + { name: 'Login with Github', url: '/guides/auth/auth-github', items: [] }, + { name: 'Login with Gitlab', url: '/guides/auth/auth-gitlab', items: [] }, + { name: 'Login with Google', url: '/guides/auth/auth-google', items: [] }, + { name: 'Login with Keycloak', url: '/guides/auth/auth-keycloak', items: [] }, + { name: 'Login with LinkedIn', url: '/guides/auth/auth-linkedin', items: [] }, + { name: 'Login with Notion', url: '/guides/auth/auth-notion', items: [] }, + { name: 'Login with Slack', url: '/guides/auth/auth-slack', items: [] }, + { name: 'Login with Spotify', url: '/guides/auth/auth-spotify', items: [] }, + { name: 'Login with Twitch', url: '/guides/auth/auth-twitch', items: [] }, + { name: 'Login with Twitter', url: '/guides/auth/auth-twitter', items: [] }, + { name: 'Login with WorkOS', url: '/guides/auth/auth-workos', items: [] }, + { name: 'Phone Auth with Twilio', url: '/guides/auth/auth-twilio', items: [] }, + { name: 'Phone Auth with Vonage', url: '/guides/auth/auth-vonage', items: [] }, + { + name: 'Phone Auth with MessageBird', + url: '/guides/auth/auth-messagebird', + items: [], + }, + ], + }, + { + name: 'Authorization', + url: undefined, + items: [ + { name: 'Row Level Security', url: '/guides/auth/row-level-security', items: [] }, + { name: 'Managing User Data', url: '/guides/auth/managing-user-data', items: [] }, + { name: 'Enable Captcha Protection', url: '/guides/auth/auth-captcha', items: [] }, + { name: 'Server-side Rendering', url: '/guides/auth/server-side-rendering', items: [] }, + { name: 'Multi-Factor Authentication', url: '/guides/auth/auth-mfa', items: [] }, + ], + }, + { + name: 'Auth Helpers', + url: undefined, + items: [ + { name: 'Overview', url: '/guides/auth/auth-helpers', items: [] }, + { name: 'Auth UI', url: '/guides/auth/auth-helpers/auth-ui', items: [] }, + { name: 'Next.js', url: '/guides/auth/auth-helpers/nextjs', items: [] }, + { name: 'SvelteKit', url: '/guides/auth/auth-helpers/sveltekit', items: [] }, + { name: 'Remix', url: '/guides/auth/auth-helpers/remix', items: [] }, + ], + }, + { + name: 'Deep Dive', + url: undefined, + items: [ + { + name: 'Part One: JWTs', + url: '/learn/auth-deep-dive/auth-deep-dive-jwts', + items: [], + }, + { + name: 'Part Two: Row Level Security', + url: '/learn/auth-deep-dive/auth-row-level-security', + items: [], + }, + { name: 'Part Three: Policies', url: '/learn/auth-deep-dive/auth-policies', items: [] }, + { name: 'Part Four: GoTrue', url: '/learn/auth-deep-dive/auth-gotrue', items: [] }, + { + name: 'Part Five: Google OAuth', + url: '/learn/auth-deep-dive/auth-google-oauth', + items: [], + }, + ], + }, + ], +} + +export const database = { + label: 'Database', + items: [ + { name: 'Overview', url: '/guides/database', items: [] }, + { name: 'Database Connections', url: '/guides/database/connecting-to-postgres', items: [] }, + { name: 'Tables and Data', url: '/guides/database/tables', items: [] }, + { name: 'Database Functions', url: '/guides/database/functions', items: [] }, + { name: 'Database Webhooks', url: '/guides/database/database-webhooks', items: [] }, + { name: 'Full Text Search', url: '/guides/database/full-text-search', items: [] }, + { name: 'Database Testing', url: '/guides/database/testing', items: [] }, + { + name: 'Serverless APIs', + url: undefined, + items: [ + { name: 'Overview', url: '/guides/api', items: [] }, + { name: 'Generating Types', url: '/guides/api/generating-types', items: [] }, + ], + }, + { + name: 'Extensions', + url: undefined, + items: [ + { name: 'Overview', url: '/guides/database/extensions', items: [] }, + { + name: 'plv8: Javascript Language', + url: '/guides/database/extensions/plv8', + items: [], + }, + { name: 'http: RESTful Client', url: '/guides/database/extensions/http', items: [] }, + { + name: 'pg_cron: Job Scheduling', + url: '/guides/database/extensions/pgcron', + items: [], + }, + { + name: 'pg_net: Async Networking', + url: '/guides/database/extensions/pgnet', + items: [], + }, + { name: 'pgTAP: Unit Testing', url: '/guides/database/extensions/pgtap', items: [] }, + { + name: 'uuid-ossp: Unique Identifiers', + url: '/guides/database/extensions/uuid-ossp', + items: [], + }, + ], + }, + { + name: 'Configuration', + url: undefined, + items: [ + { name: 'Timeouts', url: '/guides/database/timeouts', items: [] }, + { name: 'Replication', url: '/guides/database/replication', items: [] }, + { name: 'Passwords', url: '/guides/database/managing-passwords', items: [] }, + { name: 'Timezones', url: '/guides/database/managing-timezones', items: [] }, + ], + }, + ], +} + +export const functions = { + label: 'Edge Functions', + items: [ + { name: 'Overview', url: '/guides/functions', items: [] }, + { name: 'Auth', url: '/guides/functions/auth', items: [] }, + { name: 'Examples', url: '/guides/functions/examples', items: [] }, + { name: 'CI/CD Workflow', url: '/guides/functions/cicd-workflow', items: [] }, + ], +} + +export const realtime = { + label: 'Realtime', + items: [ + { name: 'Overview', url: '/guides/realtime', items: [] }, + { name: 'Quickstart', url: '/guides/realtime/quickstart', items: [] }, + { name: 'Postgres CDC', url: '/guides/realtime/postgres-cdc', items: [] }, + { name: 'Rate Limits', url: '/guides/realtime/rate-limits', items: [] }, + ], +} + +export const storage = { + label: 'Storage', + items: [ + { name: 'Overview', url: '/guides/storage', items: [] }, + { name: 'CDN', url: '/guides/storage-cdn', items: [] }, + ], +} + +export const platform = { + label: 'Platform', + items: [ + { name: 'Overview', url: '/guides/hosting/platform', items: [] }, + { name: 'Custom Domains', url: '/guides/platform/custom-domains', items: [] }, + { name: 'Database Usage', url: '/guides/platform/database-usage', items: [] }, + { name: 'Logging', url: '/guides/platform/logs', items: [] }, + { name: 'Metrics', url: '/guides/platform/metrics', items: [] }, + { + name: 'Migrating and upgrading', + url: '/guides/platform/migrating-and-upgrading-projects', + items: [], + }, + { name: 'Performance Tuning', url: '/guides/platform/performance', items: [] }, + { name: 'Permissions', url: '/guides/platform/permissions', items: [] }, + { name: 'Production Readiness', url: '/guides/platform/going-into-prod', items: [] }, + ], +} + +export const selfHosting = { + label: 'Self Hosting', + items: [ + { name: 'Overview', url: '/guides/hosting/overview', items: [] }, + { name: 'Docker', url: '/guides/hosting/docker', items: [] }, + ], +} + +export const migrate = { + label: 'Migrate to Supabase', + items: [ + { name: 'Firebase Auth', url: '/guides/migrations/firebase-auth', items: [] }, + { name: 'Firestore Data', url: '/guides/migrations/firestore-data', items: [] }, + { name: 'Firebase Storage', url: '/guides/migrations/firebase-storage', items: [] }, + { name: 'Heroku', url: '/guides/migrations/heroku', items: [] }, + ], +} + +export const integrations = { + label: 'Integrations', + items: [ + { name: 'Supabase Marketplace', url: '/guides/integrations/integrations', items: [] }, + { + name: 'Auth', + url: undefined, + items: [ + { name: 'Auth0', url: '/guides/integrations/auth0', items: [] }, + { name: 'Authsignal', url: '/guides/integrations/authsignal', items: [] }, + { name: 'Clerk', url: '/guides/integrations/clerk', items: [] }, + { name: 'keyri', url: '/guides/integrations/keyri', items: [] }, + { name: 'Stytch', url: '/guides/integrations/stytch', items: [] }, + { name: 'SuperTokens', url: '/guides/integrations/supertokens', items: [] }, + ], + }, + { + name: 'Caching / Offline-first', + url: undefined, + items: [{ name: 'Polyscale', url: '/guides/integrations/polyscale', items: [] }], + }, + { + name: 'Developer Tools', + url: undefined, + items: [ + { name: 'pgMustard', url: '/guides/integrations/pgmustard', items: [] }, + { name: 'Prisma', url: '/guides/integrations/prisma', items: [] }, + { name: 'Sequin', url: '/guides/integrations/sequin', items: [] }, + { name: 'Snaplet', url: '/guides/integrations/snaplet', items: [] }, + { name: 'Vercel', url: '/guides/integrations/vercel', items: [] }, + ], + }, + { + name: 'Low-code', + url: undefined, + items: [ + { name: 'Appsmith', url: '/guides/integrations/appsmith', items: [] }, + { name: 'Dashibase', url: '/guides/integrations/dashibase', items: [] }, + { name: 'DhiWise', url: '/guides/integrations/dhiwise', items: [] }, + { name: 'Directus', url: '/guides/integrations/directus', items: [] }, + { name: 'Draftbit', url: '/guides/integrations/draftbit', items: [] }, + { name: 'Plasmic', url: '/guides/integrations/plasmic', items: [] }, + ], + }, + ], +} + +export const reference = { + items: [ + { + name: 'Client libraries', + items: [ + { + name: 'supabase-js', + href: '/reference/javascript/start', + level: 'reference_javascript', + items: [], + icon: '/img/icons/javascript.svg', + }, + { + name: 'supabase-dart', + href: '/reference/dart/start', + level: 'reference_dart', + items: [], + icon: '/img/icons/javascript.svg', + }, + { + name: 'supbase-python', + href: '/reference/python/start', + level: 'reference_python', + items: [], + icon: '/img/icons/javascript.svg', + }, + ], + }, + { + name: 'Other tools', + items: [ + { + name: 'Supabase CLI', + href: '/reference/cli', + items: [], + icon: '/img/icons/javascript.svg', + }, + { + name: 'Management API', + href: '/reference/javascript', + items: [], + icon: '/img/icons/javascript.svg', + }, + ], + }, + ], +} + +export const reference_javascript = { + icon: '/img/icons/javascript-icon.svg', + title: 'javascript-js', + parent: '/reference', + items: [ + { + name: 'Getting Started', + items: [ + { + name: 'fake link', + href: '/reference/javascript/start', + level: 'reference_javascript', + items: [], + icon: '/img/icons/javascript.svg', + }, + ], + }, + ], +} + +// export const reference: [ +// { +// label: 'Official' +// items: [ +// { name: 'Reference Documentation'; url: '/reference'; items: [] }, +// { name: 'Supabase JavaScript Library'; url: '/reference/javascript'; items: [] }, +// { name: 'Supabase Flutter Library'; url: '/reference/dart'; items: [] }, +// { name: 'Supabase CLI'; url: '/reference/cli'; items: [] }, +// { name: 'Management API'; url: '/reference/api'; items: [] } +// ] +// }, +// { +// label: 'Self-hosting' +// items: [ +// { name: 'Auth Server'; url: '/reference/auth'; items: [] }, +// { name: 'Storage Server'; url: '/reference/storage'; items: [] } +// ] +// } +// { +// label: 'Clients', +// items: [ +// { name: 'Auth Server', url: '/reference/auth', items: [] }, +// { name: 'Storage Server', url: '/reference/storage', items: [] }, +// ], +// }, +// 'reference/javascript': SupabaseJsV2Nav, +// 'reference/javascript/v1': SupabaseJsV1Nav, +// 'reference/dart': SupabaseDartV1Nav, +// 'reference/dart/v0': SupabaseDartV0Nav, +// 'reference/cli': SupabaseCLINav, +// 'reference/api': SupabaseAPINav, +// 'reference/auth': AuthServerNav, +// 'reference/storage': StorageServerNav, +// ] diff --git a/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.tsx b/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.tsx new file mode 100644 index 00000000000..3914684bdeb --- /dev/null +++ b/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.tsx @@ -0,0 +1,382 @@ +import { useRouter } from 'next/router' +import { useState, useEffect } from 'react' +import { IconChevronLeft } from '~/../../packages/ui' +import * as NavItems from './NavigationMenu.constants' +import NavigationMenuGuideList from './NavigationMenuGuideList' + +const SideNav = () => { + console.log('sidebar rerendered') + const router = useRouter() + + const [level, setLevel] = useState('home') + + const tempBasePath = '/new' + + useEffect(() => { + function handleRouteChange(url: string) { + console.log('path changed') + console.log(url) + switch (url) { + case `/docs${tempBasePath}`: + setLevel('home') + break + case `/docs${tempBasePath}/database`: + setLevel('database') + break + case `/docs${tempBasePath}/auth`: + setLevel('auth') + break + case `/docs${tempBasePath}/storage`: + setLevel('storage') + break + case `/docs${tempBasePath}/realtime`: + setLevel('realtime') + break + case `/docs${tempBasePath}/edge-functions`: + setLevel('functions') + break + case `/docs${tempBasePath}/reference`: + setLevel('reference') + break + case `/docs${tempBasePath}/integrations`: + setLevel('integrations') + break + case `/docs${tempBasePath}/platform`: + setLevel('platform') + break + case url.includes(`/docs${tempBasePath}/reference/javascript/`) && url: + setLevel('reference_javascript') + break + + default: + break + } + } + + // Listen for page changes after a navigation or when the query changes + router.events.on('routeChangeComplete', handleRouteChange) + return () => { + router.events.off('routeChangeComplete', handleRouteChange) + } + }, [router.events]) + + const home = [ + [ + { + label: 'Home', + icon: 'home.svg', + href: '', + level: 'home', + }, + { + label: 'Getting started', + icon: 'gettingstarted.svg', + href: '/getting-started', + level: 'gettingstarted', + }, + { + label: 'Tutorials', + icon: 'tutorials.svg', + href: '/tutorials', + level: 'tutorials', + }, + ], + [ + { + label: 'Database', + icon: 'database.svg', + href: '/database', + level: 'database', + }, + { + label: 'Auth', + icon: 'auth.svg', + href: '/auth', + level: 'auth', + }, + { + label: 'Storage', + icon: 'storage.svg', + href: '/storage', + level: 'storage', + }, + { + label: 'Realtime', + icon: 'realtime.svg', + href: '/realtime', + level: 'realtime', + }, + { + label: 'Edge Functions', + icon: 'functions.svg', + href: '/edge-functions', + level: 'functions', + }, + ], + [ + { + label: 'API Reference', + icon: 'reference.svg', + href: '/reference', + level: 'reference', + }, + { + label: 'Integrations', + icon: 'integrations.svg', + href: '/integrations', + level: 'integrations', + }, + { + label: 'Platform', + icon: 'platform.svg', + href: '/platform', + level: 'platform', + }, + ], + ] + + const auth = [ + { + label: 'back', + icon: 'home.svg', + href: '', + level: 'home', + }, + ] + + const ref = [ + { + label: 'back', + icon: 'home.svg', + href: '', + level: 'home', + }, + { + label: 'supabase-js v2', + icon: 'home.svg', + href: '/reference/javascript/start', + level: 'ref_js', + }, + { + label: 'supabase-js v1', + icon: 'home.svg', + href: '/reference/javascript/v1/start', + level: 'ref_js', + }, + { + label: 'supabase-dart v1', + icon: 'home.svg', + href: '/reference/dart/start', + level: 'ref_dart', + }, + ] + + const ref_js = [ + { + label: 'back to ref', + icon: 'home.svg', + href: '/reference', + level: 'ref', + }, + ] + + return ( +
+ {/* // main menu */} +
+ +
+ + + + + + + + + + + + + {/* reference level */} + + + {/* // ref menu */} + {/*
+
    + {ref.map((link) => { + return ( +
  • { + setLevel(link.level) + router.push(tempBasePath + link.href) + }} + className={[ + 'flex items-center gap-3', + 'text-base transition-all duration-200 text-scale-1200 hover:text-brand-900 hover:cursor-pointer ', + ].join(' ')} + > + + {link.label} +
  • + ) + })} +
+
*/} + + {/* // JS menu */} + {/*
+
    + {ref_js.map((link) => { + return ( +
  • { + setLevel(link.level) + router.push(tempBasePath + link.href) + }} + className={[ + 'flex items-center gap-3', + 'text-base transition-all duration-200 text-scale-1200 hover:text-brand-900 hover:cursor-pointer ', + ].join(' ')} + > + + {link.label} +
  • + ) + })} +
+
*/} + + {/* // Dart menu */} + {/*
+
    + {ref_js.map((link) => { + return ( +
  • { + setLevel(link.level) + router.push(tempBasePath + link.href) + }} + className={[ + 'flex items-center gap-3', + 'text-base transition-all duration-200 text-scale-1200 hover:text-brand-900 hover:cursor-pointer ', + ].join(' ')} + > + + {link.label} +
  • + ) + })} +
+
*/} +
+ ) +} + +export default SideNav diff --git a/apps/docs/components/Navigation/NavigationMenu/NavigationMenuGuideList.tsx b/apps/docs/components/Navigation/NavigationMenu/NavigationMenuGuideList.tsx new file mode 100644 index 00000000000..553b3a71999 --- /dev/null +++ b/apps/docs/components/Navigation/NavigationMenu/NavigationMenuGuideList.tsx @@ -0,0 +1,117 @@ +import { useRouter } from 'next/router' +import rehypeFilter from 'react-markdown/lib/rehype-filter' +import { IconChevronLeft } from '~/../../packages/ui' +import * as NavItems from './NavigationMenu.constants' + +const NavigationMenuGuideList = ({ currentLevel, setLevel, tempBasePath, id }) => { + const router = useRouter() + + const menu = NavItems[id] + + return ( +
+ +
+ ) +} + +export default NavigationMenuGuideList diff --git a/apps/docs/components/NavigationMenu/index.tsx b/apps/docs/components/NavigationMenu/index.tsx deleted file mode 100644 index 6dfc16fd784..00000000000 --- a/apps/docs/components/NavigationMenu/index.tsx +++ /dev/null @@ -1,216 +0,0 @@ -import { useRouter } from 'next/router' -import { useState } from 'react' - -const SideNav = () => { - console.log('sidebar rerendered') - const router = useRouter() - - const [level, setLevel] = useState('home') - - const tempBasePath = '/new' - - const home = [ - { - label: 'Home', - icon: 'home.svg', - href: '', - level: 'home', - }, - { - label: 'Getting started', - icon: 'getting-started.svg', - level: 'getting-started', - }, - { - label: 'Tutorials', - icon: 'tutorials.svg', - level: 'tutorials', - }, - { - label: 'Database', - icon: 'database.svg', - level: 'database', - }, - { - label: 'Auth', - icon: 'auth.svg', - href: '/auth', - level: 'auth', - }, - { - label: 'Storage', - icon: 'storage.svg', - level: 'storage', - }, - { - label: 'API Reference', - icon: 'api.svg', - href: '/ref', - level: 'ref', - }, - { - label: 'Integrations', - icon: 'integrations.svg', - level: 'integrations', - }, - { - label: 'Platform', - icon: 'platform.svg', - level: 'platform', - }, - ] - - const auth = [ - { - label: 'back', - icon: 'home.svg', - href: '', - level: 'home', - }, - ] - - const ref = [ - { - label: 'back', - icon: 'home.svg', - href: '', - level: 'home', - }, - { - label: 'supabsae-js', - icon: 'home.svg', - href: '/ref/js/start', - level: 'ref_js', - }, - ] - - const ref_js = [ - { - label: 'back to ref', - icon: 'home.svg', - href: '/ref', - level: 'ref', - }, - ] - - return ( -
- {/* // main menu */} -
- -
- - {/* // auth menu */} -
-
    - {auth.map((link) => { - return ( -
  • { - setLevel(link.level) - router.push(tempBasePath + link.href) - }} - className={[ - 'flex items-center gap-3', - 'text-base transition-all duration-200 text-scale-1200 hover:text-brand-900 hover:cursor-pointer ', - ].join(' ')} - > - - {link.label} -
  • - ) - })} -
-
- - {/* // ref menu */} -
-
    - {ref.map((link) => { - return ( -
  • { - setLevel(link.level) - router.push(tempBasePath + link.href) - }} - className={[ - 'flex items-center gap-3', - 'text-base transition-all duration-200 text-scale-1200 hover:text-brand-900 hover:cursor-pointer ', - ].join(' ')} - > - - {link.label} -
  • - ) - })} -
-
- - {/* // JS menu */} -
-
    - {ref_js.map((link) => { - return ( -
  • { - setLevel(link.level) - router.push(tempBasePath + link.href) - }} - className={[ - 'flex items-center gap-3', - 'text-base transition-all duration-200 text-scale-1200 hover:text-brand-900 hover:cursor-pointer ', - ].join(' ')} - > - - {link.label} -
  • - ) - })} -
-
-
- ) -} - -export default SideNav diff --git a/apps/docs/layouts/SiteLayout.tsx b/apps/docs/layouts/SiteLayout.tsx index f47a65e37c0..aaff2611a13 100644 --- a/apps/docs/layouts/SiteLayout.tsx +++ b/apps/docs/layouts/SiteLayout.tsx @@ -1,11 +1,17 @@ +import { useRouter } from 'next/router' import Footer from '~/components/Footer' import NavBar from '~/components/Navigation/NavBar' -import NavigationMenu from '~/components/NavigationMenu' +import NavigationMenu from '~/components/Navigation/NavigationMenu/NavigationMenu' const Layout = ({ children }) => { + const router = useRouter() return ( <>
+
diff --git a/apps/docs/pages/new/reference/dart/[...slug].tsx b/apps/docs/pages/new/reference/dart/[...slug].tsx new file mode 100644 index 00000000000..23c4092bc51 --- /dev/null +++ b/apps/docs/pages/new/reference/dart/[...slug].tsx @@ -0,0 +1,381 @@ +import { + useEffect, + // useRef, + useState, +} from 'react' +// pages/index.js + +import fs from 'fs' + +import matter from 'gray-matter' +import { MDXRemote } from 'next-mdx-remote' +import { serialize } from 'next-mdx-remote/serialize' +import remarkGfm from 'remark-gfm' +import components from '~/components/index' +import { getAllDocs } from '~/lib/docs' + +import ReactMarkdown from 'react-markdown' + +// @ts-ignore +import jsTypeSpec from '~/../../spec/enrichments/tsdoc_v2/combined.json' +// @ts-ignore +import examples from '~/../../spec/examples/examples.yml' assert { type: 'yml' } +// @ts-expect-error +import jsSpec from '~/../../spec/supabase_dart_v1_temp_new_shape.yml' assert { type: 'yml' } + +import { IconDatabase, Tabs } from 'ui' +import CodeBlock from '~/components/CodeBlock/CodeBlock' + +import { useRouter } from 'next/router' +import { extractTsDocNode, generateParameters } from '~/lib/refGenerator/helpers' + +const marginTop = 256 +export default function Ref(props) { + // const myRef = useRef(null) + + console.log('props', props) + + const [offsetY, setOffsetY] = useState(0) + const [sections, setSections] = useState([]) + + // useEffect(() => { + // window.scrollTo(0, 0) + // setOffsetY(0) + // }, []) + + useEffect(() => { + const els: HTMLElement[] = Array.from(document.querySelectorAll('div.ref-container')) + + const allSections = els.map((el: HTMLElement, index: number) => { + const { top: boundingTop } = el.getBoundingClientRect() + + return { + topic: el.getAttribute('id')!, + boundingTop, + isActive: index === 0, + } + }) + + // console.log('allSections', allSections) + setSections(allSections) + }, []) + + // useEffect(() => { + // if (sections.length <= 1) return + + // const onScroll = () => { + // console.log('SCROLL EVENT') + // setOffsetY(window.pageYOffset) + // } + // window.addEventListener('scroll', debounce(onScroll, 500)) + + // return () => window.removeEventListener('scroll', onScroll) + // }, [sections]) + + // useEffect(() => { + // if (sections.length === 0) return + + // if (sections.length === 1) { + // sections[0].isActive = true + // return + // } + + // sections.forEach((section, index) => { + // if (index === 0) { + // section.isActive = sections[index + 1].boundingTop > offsetY + marginTop + // } else { + // if (sections[index + 1]) { + // section.isActive = + // sections[index + 1].boundingTop > offsetY + marginTop && + // sections[index].boundingTop <= offsetY + marginTop + // } else { + // section.isActive = sections[index].boundingTop <= offsetY + marginTop + // } + // } + // }) + // }, [sections, offsetY]) + + // useEffect(() => { + // const observer = new IntersectionObserver((entries) => { + // // console.log('entries', entries) + // const entry = entries[0] + // // console.log('entry', entry) + // }) + // // console.log('myRef', myRef.current) + // observer.observe(myRef.current) + // }, []) + + const router = useRouter() + + function updateUrl(key) { + // router.replace( + // { + // pathname: `/ref/js/${key}`, + // // query: { sortBy: 'price' }, + // } + // // undefined, + // // { shallow: true } + // ) + router.replace( + { + pathname: `/ref/js/${key}`, + // query: { sortBy: 'price' }, + }, + undefined, + { scroll: false } + ) + } + + return ( +
+
+
+ {sections.map((x, i) => { + return ( + { + window.scrollTo(0, x.boundingTop - marginTop) + setOffsetY(x.boundingTop - marginTop) + }} + > + {x.topic} + + ) + })} +
+ +
+
+ {jsSpec.functions.map((item, itemIndex) => { + // if (item.id !== 'select()') return
hidden section
+ // const sectionRef = useRef(null) + + // console.log('x', x) + const hasTsRef = item['$ref'] || null + // console.log('hasTsRef', hasTsRef) + // console.log('jsTypeSpec', jsTypeSpec) + const tsDefinition = hasTsRef && extractTsDocNode(hasTsRef, jsTypeSpec) + // console.log('tsDefinition', tsDefinition) + // console.log(`tsDefinition for ${item.title ?? item.id}`, tsDefinition) + + // useEffect(() => { + // const observer = new IntersectionObserver((entries) => { + // // console.log('entries', entries) + // const entry = entries[0] + + // // console.log( + // // x.id, + // // 'intersectiong', + // // entry.isIntersecting, + // // 'visible', + // // entry.isVisible + // // ) + // }) + // // console.log('myRef', myRef.current) + // observer.observe(sectionRef.current) + // }, []) + + const parameters = hasTsRef ? generateParameters(tsDefinition) : '' + + // @ts-ignore + // const [serialFunctionMarkdownContent, setSerialFunctionMarkdownContent] = + // useState(null) + + const functionMarkdownContent = props?.docs[itemIndex]?.content + + // useEffect(() => { + // async function makeContent() { + // setSerialFunctionMarkdownContent( + // await serialize(functionMarkdownContent, { + // mdxOptions: { + // remarkPlugins: [remarkGfm], + // format: 'mdx', + // }, + // }) + // ) + // } + // makeContent() + // }, []) + + // console.log('serialFunctionMarkdownContent', serialFunctionMarkdownContent) + + return ( + <> +
+

updateUrl(item.id)}> + {examples.functions[itemIndex].title ?? + examples.functions[itemIndex].id ?? + item.name ?? + item.id} +

+
+
+
+

+ {examples.functions[itemIndex].description} +

+ +
+ {functionMarkdownContent && ( + + )} + + {item.notes && ( +
+ {item.notes} +
+ )} + + {/* // parameters */} + {parameters &&
} +
+
+
+ {item.examples && ( + + {item.examples && + item.examples.map((example, exampleIndex) => { + const exampleString = ` +import { createClient } from '@supabase/supabase-js' + +// Create a single supabase client for interacting with your database +const supabase = createClient('https://xyzcompany.supabase.co', 'public-anon-key') +` + const currentExampleId = example.id + // const staticExample = + // examples.functions[itemIndex].examples[exampleIndex] + + // const response = staticExample.response + // const sql = staticExample?.data?.sql + // const tables = staticExample?.data?.tables + + return ( + + + {exampleString + + (example.code && + example.code + .replace('```', '') + .replace('js', '') + .replace('```', ''))} + + + ) + })} + + )} +
+
+
+ + ) + })} +
+
+
+
+ ) +} + +export async function getStaticProps({ params }: { params: { slug: string[] } }) { + /** + * This is our collection of human readable titles and IDs + */ + let markdownDocs = [ + { + title: 'Inserting data', + id: 'select()', + }, + { title: 'Deleting data', id: 'delete()' }, + ] + + const pages = jsSpec.functions.map((x) => x.id) + console.log('pages', pages) + + /** + * Read all the markdown files that might have + * - custom text + * - call outs + * - important notes regarding implementation + */ + const allMarkdownDocs = await Promise.all( + pages.map(async (x, i) => { + // const doc = getDocsBySlug(`docs/ref/database/${x}`) + + // if (i >= 5) return null + + const pathName = `docs/ref/js/${x}.mdx` + + function checkFileExists(x) { + // console.log('checking this ', x) + if (fs.existsSync(x)) { + return true + } else { + return false + } + } + + const markdownExists = checkFileExists(pathName) + + console.log(x, 'markdownExists', markdownExists) + + const fileContents = markdownExists ? fs.readFileSync(pathName, 'utf8') : '' + const { data, content } = matter(fileContents) + // console.log('docBySlug', content) + // console.log() + + if (content) console.log(content) + return { + id: x, + title: x, + // ...content, + meta: data, + content: content ? await serialize(content || '') : null, + } + }) + ) + + // console.log('allMarkdownDocs', allMarkdownDocs) + + return { + props: { + docs: allMarkdownDocs, + }, + } +} + +export function getStaticPaths() { + let docs = getAllDocs() + + return { + paths: docs.map(() => { + return { + params: { + slug: docs.map((d) => d.slug), + }, + } + }), + fallback: 'blocking', + } +} diff --git a/apps/docs/pages/new/ref/index.mdx b/apps/docs/pages/new/reference/index.mdx similarity index 100% rename from apps/docs/pages/new/ref/index.mdx rename to apps/docs/pages/new/reference/index.mdx diff --git a/apps/docs/pages/new/ref/js/[...slug].tsx b/apps/docs/pages/new/reference/javascript/[...slug].tsx similarity index 100% rename from apps/docs/pages/new/ref/js/[...slug].tsx rename to apps/docs/pages/new/reference/javascript/[...slug].tsx diff --git a/apps/docs/pages/new/reference/javascript/v1/[...slug].tsx b/apps/docs/pages/new/reference/javascript/v1/[...slug].tsx new file mode 100644 index 00000000000..e07b7a69cfb --- /dev/null +++ b/apps/docs/pages/new/reference/javascript/v1/[...slug].tsx @@ -0,0 +1,442 @@ +import { + useEffect, + // useRef, + useState, +} from 'react' +// pages/index.js + +import fs from 'fs' + +import matter from 'gray-matter' +import { MDXRemote } from 'next-mdx-remote' +import { serialize } from 'next-mdx-remote/serialize' +import remarkGfm from 'remark-gfm' +import components from '~/components/index' +import { getAllDocs } from '~/lib/docs' + +import ReactMarkdown from 'react-markdown' + +// @ts-ignore +import jsTypeSpec from '~/../../spec/enrichments/tsdoc_v1/combined.json' +// @ts-ignore +import examples from '~/../../spec/examples/examples.yml' assert { type: 'yml' } +// @ts-expect-error +import jsSpec from '~/../../spec/supabase_js_v1_temp_new_shape.yml' assert { type: 'yml' } + +import { IconDatabase, Tabs } from 'ui' +import CodeBlock from '~/components/CodeBlock/CodeBlock' + +import { useRouter } from 'next/router' +import { extractTsDocNode, generateParameters } from '~/lib/refGenerator/helpers' + +const marginTop = 256 +export default function Ref(props) { + // const myRef = useRef(null) + + console.log('props', props) + + const [offsetY, setOffsetY] = useState(0) + const [sections, setSections] = useState([]) + + // useEffect(() => { + // window.scrollTo(0, 0) + // setOffsetY(0) + // }, []) + + useEffect(() => { + const els: HTMLElement[] = Array.from(document.querySelectorAll('div.ref-container')) + + const allSections = els.map((el: HTMLElement, index: number) => { + const { top: boundingTop } = el.getBoundingClientRect() + + return { + topic: el.getAttribute('id')!, + boundingTop, + isActive: index === 0, + } + }) + + // console.log('allSections', allSections) + setSections(allSections) + }, []) + + // useEffect(() => { + // if (sections.length <= 1) return + + // const onScroll = () => { + // console.log('SCROLL EVENT') + // setOffsetY(window.pageYOffset) + // } + // window.addEventListener('scroll', debounce(onScroll, 500)) + + // return () => window.removeEventListener('scroll', onScroll) + // }, [sections]) + + // useEffect(() => { + // if (sections.length === 0) return + + // if (sections.length === 1) { + // sections[0].isActive = true + // return + // } + + // sections.forEach((section, index) => { + // if (index === 0) { + // section.isActive = sections[index + 1].boundingTop > offsetY + marginTop + // } else { + // if (sections[index + 1]) { + // section.isActive = + // sections[index + 1].boundingTop > offsetY + marginTop && + // sections[index].boundingTop <= offsetY + marginTop + // } else { + // section.isActive = sections[index].boundingTop <= offsetY + marginTop + // } + // } + // }) + // }, [sections, offsetY]) + + // useEffect(() => { + // const observer = new IntersectionObserver((entries) => { + // // console.log('entries', entries) + // const entry = entries[0] + // // console.log('entry', entry) + // }) + // // console.log('myRef', myRef.current) + // observer.observe(myRef.current) + // }, []) + + const router = useRouter() + + function updateUrl(key) { + // router.replace( + // { + // pathname: `/ref/js/${key}`, + // // query: { sortBy: 'price' }, + // } + // // undefined, + // // { shallow: true } + // ) + router.replace( + { + pathname: `/ref/js/${key}`, + // query: { sortBy: 'price' }, + }, + undefined, + { scroll: false } + ) + } + + return ( +
+
+
+ {sections.map((x, i) => { + return ( + { + window.scrollTo(0, x.boundingTop - marginTop) + setOffsetY(x.boundingTop - marginTop) + }} + > + {x.topic} + + ) + })} +
+ +
+
+ {jsSpec.functions.map((item, itemIndex) => { + // if (item.id !== 'select()') return
hidden section
+ // const sectionRef = useRef(null) + + // console.log('x', x) + const hasTsRef = item['$ref'] || null + // console.log('hasTsRef', hasTsRef) + // console.log('jsTypeSpec', jsTypeSpec) + const tsDefinition = hasTsRef && extractTsDocNode(hasTsRef, jsTypeSpec) + // console.log('tsDefinition', tsDefinition) + // console.log(`tsDefinition for ${item.title ?? item.id}`, tsDefinition) + + // useEffect(() => { + // const observer = new IntersectionObserver((entries) => { + // // console.log('entries', entries) + // const entry = entries[0] + + // // console.log( + // // x.id, + // // 'intersectiong', + // // entry.isIntersecting, + // // 'visible', + // // entry.isVisible + // // ) + // }) + // // console.log('myRef', myRef.current) + // observer.observe(sectionRef.current) + // }, []) + + const parameters = hasTsRef ? generateParameters(tsDefinition) : '' + + // @ts-ignore + // const [serialFunctionMarkdownContent, setSerialFunctionMarkdownContent] = + // useState(null) + + const functionMarkdownContent = props?.docs[itemIndex]?.content + + // useEffect(() => { + // async function makeContent() { + // setSerialFunctionMarkdownContent( + // await serialize(functionMarkdownContent, { + // mdxOptions: { + // remarkPlugins: [remarkGfm], + // format: 'mdx', + // }, + // }) + // ) + // } + // makeContent() + // }, []) + + // console.log('serialFunctionMarkdownContent', serialFunctionMarkdownContent) + + return ( + <> +
+

updateUrl(item.id)}> + {examples.functions[itemIndex].title ?? + examples.functions[itemIndex].id ?? + item.name ?? + item.id} +

+
+
+
+

+ {examples.functions[itemIndex].description} +

+ +
+ {functionMarkdownContent && ( + + )} + + {item.notes && ( +
+ {item.notes} +
+ )} + + {/* // parameters */} + {parameters &&
} +
+
+
+ {item.examples && ( + + {item.examples && + item.examples.map((example, exampleIndex) => { + const exampleString = ` +import { createClient } from '@supabase/supabase-js' + +// Create a single supabase client for interacting with your database +const supabase = createClient('https://xyzcompany.supabase.co', 'public-anon-key') +` + const currentExampleId = example.id + + const staticExample = + examples?.functions[itemIndex]?.examples && + examples?.functions[itemIndex]?.examples[exampleIndex] + + const response = staticExample?.response + const sql = staticExample?.data?.sql + const tables = staticExample?.data?.tables + + return ( + + {tables && + tables.length > 0 && + tables.map((table) => { + console.log(table) + + // @ts-ignore + // const [content, setContent] = useState(null) + + // // @ts-ignore + // useEffect(() => { + // async function makeContent() { + // setContent( + // await serialize(table.content, { + // mdxOptions: { + // remarkPlugins: [remarkGfm], + // format: 'mdx', + // }, + // }) + // ) + // } + // makeContent() + // }, []) + + return ( +
+
+
+
+ +
+
+ {table.name} +
+
+
+ + {/* {table.content} */} + {/* {content && } */} +
+ ) + })} + {sql && ( + + {sql} + + )} + + {exampleString + + (example.code && + example.code + .replace('```', '') + .replace('js', '') + .replace('```', ''))} + + {response && ( + + {response} + + )} +
+ ) + })} +
+ )} +
+
+
+ + ) + })} +
+
+
+
+ ) +} + +export async function getStaticProps({ params }: { params: { slug: string[] } }) { + /** + * This is our collection of human readable titles and IDs + */ + let markdownDocs = [ + { + title: 'Inserting data', + id: 'select()', + }, + { title: 'Deleting data', id: 'delete()' }, + ] + + const pages = jsSpec.functions.map((x) => x.id) + console.log('pages', pages) + + /** + * Read all the markdown files that might have + * - custom text + * - call outs + * - important notes regarding implementation + */ + const allMarkdownDocs = await Promise.all( + pages.map(async (x, i) => { + // const doc = getDocsBySlug(`docs/ref/database/${x}`) + + // if (i >= 5) return null + + const pathName = `docs/ref/js/${x}.mdx` + + function checkFileExists(x) { + // console.log('checking this ', x) + if (fs.existsSync(x)) { + return true + } else { + return false + } + } + + const markdownExists = checkFileExists(pathName) + + console.log(x, 'markdownExists', markdownExists) + + const fileContents = markdownExists ? fs.readFileSync(pathName, 'utf8') : '' + const { data, content } = matter(fileContents) + // console.log('docBySlug', content) + // console.log() + + if (content) console.log(content) + return { + id: x, + title: x, + // ...content, + meta: data, + content: content ? await serialize(content || '') : null, + } + }) + ) + + // console.log('allMarkdownDocs', allMarkdownDocs) + + return { + props: { + docs: allMarkdownDocs, + }, + } +} + +export function getStaticPaths() { + let docs = getAllDocs() + + return { + paths: docs.map(() => { + return { + params: { + slug: docs.map((d) => d.slug), + }, + } + }), + fallback: 'blocking', + } +} diff --git a/apps/docs/public/img/gradient-bg.png b/apps/docs/public/img/gradient-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..ff11607e14399cbf489dcbe4e5c0f2ccfa848a42 GIT binary patch literal 435868 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%0Ak+ zhT;2VkkwzFliiy3&3nPkl1`wNa-aQ@32BpgLi`u<62<_g`>E ztM0{6gRjVn3HxOXn8bGd=|w-$Aho#WTVKy8?3W(H-?eM+FT4GOyb>7rLMPayuJ^@! z)xzM|i?H${<I7R!6pfdyV;}R{c7ls$ zTk*YFO}v`FdSa7>zLDeou=HWHH+m(02q^bkLf~i3Np^&|Fs^>S^cCm>gyHSAQ7RJ z;yup1?|XpR@1hCtrP5Ix@G~360(_^qWDaKSj8sKBK#NIueSYuW%_Rk?IR#DhwD4^kuzgMIjLxuwGSUw;v=OA7{Zh^%&?M66Z$? zip60-Y?%ljb68O{>nSxxtMgQtuxv#Eu+{MZt86Ir8~JJ6#{d4<{)2j6jj32qApI!d zY(GWt^{}2h_yYT7Li>l+X#iOazW5dZUEg*pA$0d*EZ?C1bjV9r4sVcHD4IfY+FYHTw*%`3yRW)=n6UCv$VE^`hP_h zYzP5gHZ!;-`>%8BA-16C`a@Q8e(w;l)q*ejK4MSEO2llS>*D)&g#iQj8gVX{0Q&{) z7h6l{rOg%g=HKh@sOKMd=2HV*(Ggz&*I3$-M+s=5#=uHk8x!P@t@qEZ1?_blcbxL4 z0fUumdaa4#_b^)k_6jT0x1r!mdqQrft{JPx>yZVqpGc!&w3ukY*nk!6R|CGDzsSH#Q;nQ% z>^R`ttnUA)aXnSwD}{*Q3rv_U{AMZ0EV>`!nuzd4`*lD!*(p=0eB{y|gGS1zA9t1%oSQ#OB^!D1t8z7U0K!{4C;U%L(oW>2n2OqZN-27Nj5fhvPpR z7Sw?a+x7iB4#Z@?q!;g%0Vzg`n<}cm*E}@Xt;mMe>BrVy;%?V+;%+Oh|E?Z?im6AB zXtMgRm&SHk`q4H%emgkdOCSX)EEv`fFahxT-<|Sz_|F4xJw&4WWKc_WUj)KhBi1LW z8?=17UH}%v_sV!d@71xMP#EUxBEDzP6@x1uC7=O=4s6TWHDSO6aIpv2)`%qqQjk*p zs0-eqWaDjlLz20rAd3V3YkIjC@2|?HD2Bgp2;i!Z+vokle2v>sg8Z@d_Q@js7{3|BwD$MHwGiRM$BZf=OM4-&8a!WHP^^;|o1W*6_5fPF_Cpbv zPYFchnRlfY&dr_g9boS`-4f7@UoH zfW^qic6XB)u;voT-OkCoWo-Sw?(2V5+L4Y}5E5|#KI0YvVtYCRxca_+h+!XoU(A4w zx!G5#LAer?`pQ-%{G+8acmml`M z#_>MKz0N%!+R*d#0{Fr|{wAdzaa{U5-gTGzyCW$_i-PN4QFHCe;|u$pV4*$luM`5t z2#5*Wwc~SP!*TxW9E_ zZ4yQI5&&Y*fHCl@qa(iO)TigyYpfFqqiNBs>jv~tZu}O^kdHf zU*5nj!f;iB(vN5{ltzNnknP)L=X?^;&pK^(H2uZvQ+bSX4L}?O{Q7v6h<|Y^^3Q28 zG!`tbxBY}~Vqr=$b=a@t(wfK{e`kZ#a4Qzy13YmGQevzH5vM25xZ}Nmq70hJ&0kok zS2He+E5#YQ3m!}_J ztZ!&LBGH0zHDnaw3jn(?-I_!9_1ka%wrcg%<|!HwhBz=5%z#)bK+HjyXutkS)s9>Z zIpzm8CcI}S{9bHwx^XP_ecVlr`@J^eUYLTExSyIXJmd|=?)UdsPDPgJv0t&}Q1Vn{ z6zn7AsE-c=*Wi%Psm4hvsY*WnRTkfmfUnUMq|cw-DQ@?7g4G0?XG=8T>t1M}ooe8W zW9sMiq@*38?-Jm3*RR#JCk2S1<`E!_quw_WzOId>8Y38^$Sl`SMeo(Ko&fV@J3c!2 z659!Ly+82(k}_Tb!VdC9JJsK#{J{zkTch+NH{Hfr7mlsr_A20uQ;Ps!!g%TW)2Cgl z35o5IK9ASZxDhL-9x=C6;W z6!HCrV}cF0UYJ!LSOt9Hnos9WC!fyMX01p^a@8aNmRePW6yzTPUyIU^0AJjcn^TNY zM^)`J!-b~YdTIH7)&r=L$Q6(-zK4B8Ja19|N3d5a+IK)C%-4xqQk=LAMI+&IV6~oG zJsqb8e3b{OQ2JXkS8a`0Ys8jC`}nm!EIlA4HvM1}-Rtjq1Z^2_`5#kT%RhKl5_RAx(UZbM>z<419d;wm8>DuvQ2ibz6ga9vO z8Z|NnmMSAw2=Cc~Vkz@Aq#xH#Mp_KT)MH0<5AQFjfZVH(@QQ3$FUB-unfY>dikYz5g5tROzTh`j zHR0wP&kT573@-TD-M(|ds7pTm{^Fi*hu^#GdN0naTb6d5UO1hw3%-G{R!FJr*YJ8E z`-@!gmHm#M^Dz84C>%!F06wlC6H|3?8~+z0aa z;kECZPA2lj0Kf!)f&IeBV*Dt?w<^egSLw&xjC;q!Zplvaj*-%?k}o>jM>*7_+p^N?S>eXb>p55yD4Sh z1y8TI_Bd+2c>jrMzsBnui;Pf2_EPDHGa^ z@9{i2-Mryzv|lPbuw z190eC<9unG~w=+g{9hV)qq$uU@Z~-z7U=FTdjOl_9ygn zJ2c+9C;drLz}r|QB%Wh9ejE?Eqdq-1v?GcwhxBLc z4Y*^~BVv)*KDHsM(vckc5847v{5!J%|IF$6d5T7G9&g_dVClU7t@v?k%3WU|psM}t z3%|UFHK2>`_i}v8{}iMbq*zdtHbk}kjp)8a^Ce?1<;Wr644z*S2EOq5s!c(*jkhgC z_r-vV8*yhtR&v1~O+h9bUbqbfSC99UU}(ghNcY7Rkh(uGU<$s#gdL<>gzv0Zm4Xbx z`meYi*J4#<&;Lt8fS2y4;sKUMVmCPfw%ZUx&x;7O z6iDsu&6%~zV9ECZyx`$gHRX1HuXxTR)lIosgrDF8cE9rk@w4a^gvN9uMz*5Z@7#0u zUfDDrQo+PMDwOcFB7?8C>d}5VOn84c3+y+W^NP+ZJKWRt5@5pqcDZK6zN5+PO3P}E zgD;8O^^|r`o+9m-s;1k*cA55T$3U2bgD(MHJE^vv(B6-}bIV0wmX7>Q(~a0<$wpDz z_l5Xe<=C_wlHe5N0LlbpDd-X~7SfQGepV+vAqUu~DWejxo=g=_TDa2xg$+J0z8 z;Hy&wd4{SVky+}A?qUG zTL)H{GkfBVbpy8@s@N_%WopMF3uhq9Ol4VszplL=-5<;&HrI|86TM)-C9KoB{w~Cy z4@CPVX8t{u7DNNkUGwXTk$sh)77(T>QvpmfKC#?cKo$JIO1jY|N0fq8@YTz!`==4q znq>d4H_n1>n-7>VUE3Y7YDHV^H1AKuEga21FV3qhbq#qHxNx;{BUxdGJ zDMxHLr)ov?fF=;+=hUPjk<4~^rKD)T9#IRTy|g%btXB5)a@z?6K$fN=LxrROsqe{< zm8%`~Tynx^8wvn49Qi7L-+|iVK9~%=WZX}s$}xpwMf>$o*A;AGO9adwrffTr(~%hO z6~J|~XE&koqn`tNRpY*nNT474KMKnQ)=NeAUe#CuGp>Ln#w%*OU^Nki_`P$L?Q+IT z8g5I!N7;~mv`R>GyH^2zs#Ra8cswQtd<9$pUTl3Y?3c1#w>0G_%ffzH`te5UMHbyh z;1!+ji48-aM`6Nx_k{inpbOR$5(>O11?cIV71Lec~dSd7<|59HPM1HWx)6l+OoWRH+ietuYt`PfS2gM zWZ&Kg;ewwCgjt0oo37%N5yB$}H{O;gZG?^s^L0$AF%U$@ZbKp9D}anB){o$Vjac`44k6 z;bt2Nn;z4@bLl53`maw}50=UWzJaX*xH9ql`T5Z(e2>N^7N~?o`>eO`F3c_cNWbJg zP$q#-I3AjEOeF=$pL}2nb40#h(sP?d`kC<>);CX2CenmkQjl^C>=$%kxJU6F^qHn0 zuXfXpi1(p$#y7+3AEzQEW3l=mHP}>!ouXPo)p!&w&No%@d#Pr#g1)-KGbm2Iblw z(9!@#40w48QZ!*$yKj#8e3!j69=-NLV^$Qsb8sSR(_$f?Zi*CkBEZ%u+K~vS3mN4o_ECePaSxH`9l9kJ^0U*s~-=j_EEss zP6{y~tKTp}twENV9EWyxxz9?-9>v{=(TWNkPJL z;sqU(c}zcUtpoU&ssnm2uwa{CTYPowdbSE)(Lz?A$~8kB~YiKwt}wX z+J0hVTC-rnfQc4NJ;BZ!7*i0y0Hq^oTIBt;Z2$9vS+D5=Em`M@X3$2**!K%S(!reB zJe0YnA4i@)gHmq5EfMV~AmI0%VwFMvs58%(&geO#1(8}%oPL;B9$>_N{r`u5e@+u3 zb-3C57S+{{n`2<=(0)@d`tM?|0lnU5NIzC>i15iqv|hvO09QQrv|pRS_lv=o9v=YL zEB~X1{!8XaJ&O02SWm!yqS#P47e+0L#z5Fh_W=7nbzTQufRBu1oq9AV2EA7tEsXi9 z8gO&$(70ne0=}{yjKueBMDee{c*Ryk2${ov0y?mqY8-%=Zs94((QmyEWQ=_ucT=2{ z6BKm$iG2ZnL>!cI^byt**$3>W;(ouEmNQ_Bf_=Y!2o;XRTA2lfJL6-2&c`Wjsq7bR z6SN{qsrZ2P;wJ)FoN|PrDpHSFzjMtrU)VTUaKDQ+`EswU3((q4rLUuEy9j)Z%@IF; zd*r`(KjzMlC5#EX{OWJ>hVhDk>pS{{;DY>Usv5Ol-MC%juj@~rW>B_%-8{d*gxMJf zCGD6z9ZA<82j4G=%Hr#{BF$G|<~lH8zgE?M0esmLzTU82F|LIX0oF^jUIMzH^O7}g zIV7R;RI^|ftmGiW)lm7=$v)_s058#f3G*djjBQt6`+xY{{ZXqRYb{G#s0HTBMEK($ z_uZ;uIGn8~wo+Xg=A$xS8uFHQL}N-|zSsi{oW;rc_6@7Yf-zeqfQoG-qJB%6F#=>c zj!l#=+Zj%622g`^BLfu)-j8h9pREPM6E1#V23*Sb;`{v6Bl{J+%szdnn`~pA(}w}u zMMkXGZix4z?rWBMY1A0@9BX~uht}p}L;l}PqW@xHeQ7mRS1_`zL_DSuaF&6v!|H#U#4e5dX+(^_A1>G*OFeoZ^U_hMzK2~i zB{Nof%-%0WZpz&QcO@N}TMG#oD@DCI-a7aP19sN;nF$j>c0Bz3OC{v-8UZkQq_xwz zXugC6`{-j@5)k0G>ymo36y&1on^r`ge&jLxfsF*G9wlNW;YXh|N3a$-&V|NEYFz8k|)&6#nhzSX9xt$Zn#tnE(Kj zmO|`m|Ih^V>fc4n%dI8iuSBeT>;o}QPrjl`$7P_ar~P6Omhsl@+TlJ20WuNaE92#B z(15Z11Y1vBBh6O^V2i>*7qA#JU$GJrx-ZPJetiI0Px%ubH`*RRmuSB*#xx{XI`V!5 zVi9;r3UcdsvGJ;Dz~0XxzOPb_WVR}ieZP1;BP*ECMF5OJ8O|krL-i?H&Mo47$pwKnuWW>{c;gOTo{X{JuVg`z^De=mRen z>(}g8-4C+9E?1hy>c=*#SX)teFUZ=4g6({*7i9DMitzQf()*Eq^U-u(M%Yeh1*9-w z%qF|t#46y6Qvd!%c~zbc2moQNki^u*=oWgBUM~pbOmzIMu z0a}8AmTAB^#y}REtwuYGc=LIxt0HYWF%Tvx$^SC|Fb9{T;0tSyMnKoD1E@#OhV!qv zP+tI824AVNosfwBUL3M6=k2F4KvsjSTKly)g!K{@EbG2T8f$Zmd3`nP7e_E$l@J!} zz~=y70?4jY!);-^rk-k)bEVSp+3^VY%Kj6^gh|Q~x-aaf6@v9&m|u6`_0;{o0J>yt znf^-xpo;+)STO7h<0Yxb4-3IpV7}Ptz9YV8aK@mFSulVv5#dAsRXU{9?AK>8U-0_s z*-j7$GvZ}JsyCUeHbih$iHOi z2)81VwP$WiQ90osqzt}Jj)wH(=9jTwQ45B~+cFCH>Un?V3P@qchWQxdwd>=M7M$N1 zK$gwTVnXKEXwGphoYUUfk;(nGUv<`k5hJ!N*l0BZv1r1|(F0j?I=0uj2Ea@0DR4g7 zPaqchfH4SrM5)HzR1j`VK^pt@(AchrWUz|kDS)$1SSz7k^jd@d*c@L3$f~p>0^sYX z+HPWLx^W~j8|F+GryozAK5ee6)m|1c1u63}7EG!hMR@=2OTE5Qhxziry83>}3!Q_p zXPtYA=IfkSJHqRW*{(4#)&j7ScGUik9dOn3g}ZDiM-|@>!0S@z^;n|3yaRY;dCHrr zSSyDxU}v=T&|)Aa0PL&_?;9VmRHqyp@Wqe!{@qIdjuC`uug7F=_p-*Vhe`^vMj5jn z81Y~b7QtA#zGlK0h>fvZe=Z=aL|po{X2jYkt$zG@tNH4*jQQ4eS~B{Z@i_Kaz0_fh z9)K2LR<9qoVC&SGxHV$JQW~X33*ch9Y@>6YX~EF@5u;Q-%DSWO?~{~oK3HOeB}TvrXtUdq#v8KqeNuELW}`0=)S(WP99*%K-jtU0=QZL zM)#R+&Bcb|`7m0Z!oZi=Pi#$MU&zK4|GJ>FD(XS;`hat6Jx+ErX>NS7=WcTZn|m* z32;Gx4-J_3fGr~bz<50hAWQbadR1)Ly)xPL5vj;sKeA8fecP#U{FcC1?fu1Ii-A~e zHIV}N0@I}y6qoycUu-=Q+X>ZPU%wlx5Wp8&4fUFBONibJ+Apl_d{SCWn9F5T@8IdAin2)o@4)9*Z0fC z_h7l0@#?W&$y1NsdgyiYa$X0wA3^|pjN%MWjPyVtiAS|aKL&{Mq zAhBEKrvEApxxFd(@CIj_r9ov*?gARI5>j+u0Agso9n*yB-F3{BkikZR(3pTOR8cbc zs#u)>zIbiJ%}rB?KbH-&$^mAL`YFw6-fEHlarObr!PSs-s0X^ZCnUyRBkr+g+;-dm zm$nG<_D1X4)VqEH^0>H80GE1yZ8+;yXA!GF6=bgo_Ys?g`5Xd#R6=6Bc;Vdy+ON9a zm%!IMxZZp4oWPf`V9Nyf0AFH30q`Xwn6R@8v|sY-@o`|lK2}Y*3-hHG6!Q0vaU|da zR`g!wby2|Ahm)d7RVV!5!YZjp0bio~5(ey6xWC#@yfQ0_swL4uav}bKo~OWT$3*zq ziee=G`b}ZKz=TB+etOggU)*{K>B#7OFZ;WTopR;E;8NBr z*?8NHR|RlguPi6Ls@T6G7<|bwO+y}g#pA8od=+u))~)7w2>3!8lC39h-Wa!@s2Xik z+VQFH%Lukh#%nZQ3->$Ruyn%KY)zT4(ppzJMKMf5W}AaNeSdJ_PrFRP)zPb>yEL z2D%LF70s6&o91&G+X)X%A@-O+dhRDaGI&H~WNuI7j~RhhPdwi|zMY`K+OLi3dnotF z#;Xy9Q~RM*ZeWj7xz^jso8h;}`b4%(wvXVhN*^kU8(s;~eQ5=xIvc0P0}Q$@i10s> zJ~Z0Ha4_!$7VP6`0asT#*PLB{JD2pM!Y*dLoCOn8R-_=uK-kM8(SAMkl;hLH445!p z0>Z9t6%h9LaqEOH%ol7YeoOW1IMR*R#EN2v4(z1Hf&zz%7VPf{3NW^x_}A~hHz~-C z--8v!ozieS+fF#+g}|Cb)PFr5Gh$5zSlM`AffvA6lXfgv%|fai9hAgM$GFe2mjVbI zSgy2Ua34rs&%Gj(3+6l5&i#5Bvt@;7yI@7(bA+;Iqy@_<$N^mrX~ypqT!<+XlZC2CQ9N^R;frJfGVR;kA$3+)+vRRVnZ zRPd;}S1;|DJ}0OG(uDTLf}!QmP6NImz%Q^Yo33)NM=S*07mh4TL$dH5`}rVOJLaY9 z>EF(H0c`ce_YwlSUZm#< z{U1ltjB!0*8wC1M^EIXk`)>r8wkox#(HD1BX~^SJNtmCbrzCrAmBvz!J*`%+`Z2aF zTBIRs|E>EX{;d7#{Bpo}RqZI=LwMhRBs+JkAy!F4j*A>A1sMuouy%H>Ujd1fBy?Y! zWWK7POPH^aiWC+MAK5sf?o0bW`rHgyPfF{d1ySrL5N3ftRs{+1J&(qG{U!a@seY6| zy73y!SPxQN2`Ma?12F?%0=j-lW5G5Q)d9TC-Kp8Hs@G#^zAbB-cD!+8^7E4?`F^{p z@3qQnoPxa8(S&td5b2yMAF-AerylphxGXpgIi~xHdM^alnq%yIA6@XB0hxE7BH=EQWN1bj= z1iX-X>^j@?yaHwNTUqDDCD>#&tq`}V-H@glZ=3dOCl&M6QsG$sE6~fBE_S=GjlOQx zowid_y9r^ta@w)OigEPZ?sK}4tR}Jmf7m4T$V}IE0A!f24eXbsAdC1uWiVDTU_L^8 zKW;s7C7nC9PvScEz*oZlr98KmLzkTWl88zZbG_%v$2V_EDlKJWxO>-Ply3s}f zX;?$k?MnC6i$iZcR8>+Qbx#!*Oq|i-`NjTUvjq=vLhKhaVa9q*gBbrf8?GYF2nz~s zL6n)X5Ir$IgA)N?t5{ORG-WSs*^k0#37Be9iyG5!bA@S(A7&l3iy)rBi!-xOSiWnig7JE;Y)Z6A~fJG%-1;hs^U@D zzhj%4u)eyf-@kw`5#R%SfdR{Hh=w&uKMMFdBGzla^KfyE^vV;XWVtuDluO~6;LEfMx(+A*HT7vwn%SCg?|mG;ZWIlz}yLe9T>A`jy%ZDckkbDjsFyevcer!mhoVPL8KVXrE6gf3?Nu ziz33USOpoQ*Y7c>8&k?a43&=(T>UtD-+}#l=JR4Z@w_X<&pp`)cohv;dHK|H-0faR zX23$6y=ZS_#rLaJKwiq$tEm;`Z)@>#!7SpvG`&4xjjvS6`a zH;n?m&M3HZotNsshLockves{T!gz7|ah7UUOhV>k4YSXX4;V+?l-nA1>%AO=WDpkc zR^{$Ktr?u0iep{W5^*{oYkDxQY)b)MS2Qo}Fqnjx(ipP!w4 z2A5ea@mV8w$KaLWpm3j>nF)xE+xgu^KKjz*ShVBEZ+lfwUx| zUXTc7y$&q>IGiI@khT7+q#$ER%5nD1i|*gicd53akP*xmgD{?R@5k5&ayPZc_p%=~ zUt|0C(eu%azy|W`KJ|ZmkXsK)fCYAC{ z>B7Kp*$Ls-6E+lRMFjQ~orgbF{~yQib&c$my@@g}g+f+lM!u9i?zJjALdL}<$zB<^ z6lG@KOZK=fSs7W`vt;kMF0RY({QdzR57)Wp^Lf8tujkXS$4No%^J5AN!u42cl$qC* zYPsK_GL&sry#fV2B1rhJHjvktNqD`zu_p$qs)02yNDNLcj7+8JeNq>H5bD@5?XLi- zX68f5Ih-WS1T;VU62>%l6~9u;7fswhjkwQ2IjDWo`w}Uw1c4iU*MT5mvw^obtNpnB z-s7V&aCqatd9dYUh*AYDX0|wE<(sU*RvOgwpeWkXez)(-&UCH(!cVwS_0)jNL`w0M z89nFS1qM2l8@8WE(QfZCz{zczHqoDzn|t&k-i3$0mT|$~+@aC`iHnO80CwZ zR?ER8gIYK@T>He8z57*x*Tbu^GzCHDR~NhtjZU*B<3;~I7Q)2jUeWZ#W~MjYe|2pg z|M8_o^*wfLqzTSMkwiGi%Tt9-g(=*Xl$v^IlEO)Gnmn&-Y)P^-#$`Xp4dy?<_P&p- z0@XB1GnWY%vi-FPXqI)LY({{?_}yT0jBYBz&flFxZxQud01J+UFDr#2HB;-=E=ScVM^Ggb&-a zhvW0d;$3^T!<~9Vz0_~aLfy3rm-?@<#!MTA{WtmY`_xfU#0n@QBr{c=X=L_gNhsLV zQ(cZ)kXBIYtm);`t`NoROp_uMadjReZx#yTdqTYx(pDUbAfXp8y)epR#jq-HOG`~J z$3@$}OHdDawClKeybmQ3AF3}WyYdK&6Hi=IVHxX`U#Dd7EA4llMQ{ck_*k^mV^%a$S# z=s%%3bE6TVG-D6S1Sk-z_w-8}@`&pEQVm}=qGYm^h;|^(^P7g+fH36KzGF{w&aH*U zb{O}Il37+dK!e)KO|rZje@aVPQ6%(AJzr^iy$5x7disnFXW#{}E^D7_3dwp32hn?k zhF%dWMr?`xcaXBkn)G;iUC%4WQvboJAHPFgFR~sdk$3eBT1q>ai>x6Mt8c&##L`=JEc+_j3z`}P1lRsFfD;$Cj$damT|uiq zKj+ob${b8P*^uxV~wDlT&F9nPV_^~VIFQ8006)Jx4uddHumG;PE zV$`EK0?^1}x}9?(J?9wgOY2~_RbLsD_72F9{1kW03OF5ew*yYOfATGocaiwT^3)x9j)!mXz{6^2PChIUKX*6;Lpho60PlpWVc-pT)~X8U+2cmw_S9Wdflp}c540QUx3zZbI)?+r3;Qh$gw;v!= zm=5r^RnZlYWy3Wx?9*Q{v0T6bmiFKQt?)z5nmxk@W&FVad|$&;y-u|rf6@`8Py@T~ zj=8+loNmvH2TOu$&C7%W_%EFX-7f8kF5a6O=l z4jsxDBD=BdLqd}#l3g_h`n=HfU}nvyt?~SWowWe0)c70Qb>rQ2>fLOz+7<2*UxjsH z3-sYb6`9PGVm^<^d?b2iP?yr_#3yf z;BPRtpVonTq7mLID06y1U2e;q7nI|#PeztcLM@CrXu@>{@CP(!k){=WA23F9241?*Q5=;~txJEo|sZT3=?0x2B^_0YhjSQ6md^X}GUN-!wJMSlTfoB~ANC z$03w3- z^EgT0w0=23T69mWstx(y2xuxre5<)}hzW&O>6qJo#WLf3X-tJ!t^Mm&=I75Ob|X6q zn)2GEGZgEdv5__o!5Qt{6lxwVklAn9Q08Ol?Zg(+DMq^L&X zc+$tf>z@OXCYQruMLcmNZU_uuOp03Hau8oOe4Hv${o6c+3@dvVS>=CJgdGco9$Oj@H|gYH+eU&P-w>19ZmXBV2OJ`#JBNLO7_gY(Wy!qTBO>k( ze*;vxzm?=tU=7ENI)~K)hZOljOS9Ymt;pXHF219LTCnMIsC1X>Sg#}G$lQzgU~^Jl z$X6L0=s0wncFj?vJ-) z)zYEw13=v)@6IXN(HjiD@;DHry#{$2ApmbBM|e@pa)jo|q{XsVJF1*-9P@PIO~BeK1ilC_>9#&QB5aLkyQN17%&J zg`98%;Gq1oJyEOudU3Cxm_Lw#z~0jnUFWIj*ivWQezdihHE5aWVMFlR`@NO1s6(eE zDA>9BJk9wo8&D0N^j_zMIKKkyl0<+BM%=sHsPG5$cH%t&Y3HXbr zv>UB{SQh!7e>LmDF(+4$afO)QpO+2;gO<1T5NyBqOWwLk8Tnsfa$ER!=KkA_RTu=e z!4?!{S91VU4Bj4;zAe0nAc%+e7CJoJ!xuWT*rlz(?2BmrZ zmyO>q2gBMIO;Y0%J4*ZRkhN0E-oPbZsnwTtX8cFpw5BSQeeX9xxnB3?#eA&F*)|T- z{*|$iycRCj4&Cf?{Yi+;0>29?1JRkMs-74EM^-D+DbEn|Fr}{1O{%07ZMG(s+dzb# zw*K=-y_Ve>CqPf*R?`--AfF5|ZhSS~$b(IMs^jQ>ZaOKMuI3bRhuyYz{bo)+XDoaA;JR+PHv8O?BsVZm z5%`vITFp({CqafdIWxnoB56B`DoYD)9hOXs1GkK_s$sgmUw$Y$)jJ9rTg$>&nJ8bI zb1{wuz3|aHV+>@SU8>IV&qQ8ILgWj&ZlC(GOPwHH4n!XS-RFa|KkmKvJ6$qAc)cDC zVOLbc#>hLDMSgI{k$Y0$@WO0tx=V*xS(qgpXW)W5j{N(LxJ;X8<^fjI16&}or!^Zv zx=)NaE$Z1}EHWGbHTlim{h_pRlb;dKt(amD@kzm;|4$>ovuoiP$WM89qKDUeuDc$y z*|M8Lx*vo-(W()-j1b`*nKpQ6>i2H%9ieL9;IRo+Lvh)8D{D2(MP}d+Nykk$_YMR= zSZQ)-pO#V367I}V$0vPYo_nt2d~$IOZt$7qUth#GndW=2a1K!laa%VEpKZ!UZKM4? z0>?BdJYma-;qf@?(ijM1$iduvuk^Hm^h!oPwFmU)Q}AWNf5b+c#A1=A9z4&zD;$S?%T$)e5Fc2USH1CA;4Qu__9fZc9#y@Khb%*4=(OE zQNOy6Ws2 z5c*}x+5OW&HTAfTk=1Cl66+dcYJelG!^OOl&LRQhkPm)Fk&fK@YaD>%ZTP+`Db(TX65?m%{1~lnch5PnofG!nbMTP59=hDVy`S`&XCQMpWTFw>Mght#VJFp!_D(X|I*9X+LHO-e#KuCf&*lcp@iM- zFCb_z_1VTA!4luDEKj-yzKmspAvr=L9$HD}mzdMA3<5j|XUY8apW(k()$Z6k`)VBV z&2bzA_#OKRYYePeekWWQo^L12?q0&$IRs?AT0bek?yjkyoi^l{h>e8D{Y{X*!{!?)*PrnZQAwqJ5BucDn?TYoF27L=6(;7s&er+#q;<|- z=T@V8M)Y<2Ora;SuPB%C!v+Ybh?TSi}C^&s?cwt&dJC6DNgm4tQRqE=g~7x&;* z+-6xJpY@gb8B&Q80ugi514*y7$`tWaS(FLPMAzNKs$(%~c@nk?fAT*>>9w0ulDY;CtIe)C8**6iJSFzY)BwQIW^^fX=i4ETP6UvciDf%N}$jD&1t!gWZ!-W z(#`1ce99w&DPz5waP8Df4r>#p5gpi|oR^)EiVO|=AD??D7N+`JMe%TTS@}ho-gE)U zm&}WhXg3KnPoRLCsYUT*W#T3m5;)HDXL6uGnE$A`T9SVsSxrWsWfwHmF)E`rd;>mvA|@A42EQ>ip^KrfFN%7gx}`{tee}aD}ZF&siP8 zhoNH;mG1S;*%tfsT%Y#k^2kS9tBSDGSZc>sUjNNQvootnM=jHwipekmkKWKZj*+^Y z!TdjBuhGjy*N<5w5pLTa5N#rdt;sJEZ$Yo+-Q$Mx0@;g4(^U~!CRJ=luKIwwRV(&S zVD$&kis(z`xq-li9Ctn3gme21TzK_xHksVi^qte&m;l3Gxn+gPZPPI9yj9(3nD4Cb zv<%ZS%L`Fpl0l0Dd@D-QT%MvKAy6=krWx_c8a*aO?kftB;o^$jESHjV{Pq|EyS)#V zP8KiXp$MWL8DrNbZ#@=`m_xMvlsJ7r6bhSMAS&jCpc42)HV9FC{%RTn9E~8+hoet4vd9uB-*;0i5A>4oU*8#pkxb;{Tp2X}yg?RW^ zJ*@gOXT3;6_h`{Y5rcDkEHT7^B@M_$v;|1ga4fz2AXnqytSk$0WFJJ7a;m>S*;X=t z;P;vAUj|Wa?*@gv5=E2q>ta5>7jEai-|$ytr!0bEz_wB-BI;y2Iqu+_%{ntDCMSfx zK`3q2`v2jdU61yn54WG?`o>`=$#8Ob1l#6l$O)am02EsB_;s?Icy`jfPEZ zkB(aVSiuM?V=+`-k!eT#F~esfx3`e)R%h+h>wC*B?qqCo9&%kIO0tTO~jPz68G z^nd2d_V>YD9EGEJ->aiHQqxJlO)lfYcASQQ^_MsH1K8?$O_Htbh7Ehk=&nQOu2@x| z-9B*2ZFK_$O-M~sq0K6A9B+_S-+m&#{4?#C{$Oo-OjZHhQXXpdt4&wk{c_uZ+uMV& zZxDI5k}F{LZhzqBPXC!28JdDPV7K2Z{0&wrr-UX0RXpRWuE=B}6aTRof{v9=h_@pZ#r zQ?#^-+ZPtc)|lt-efZ&Nr1);3XNzCB?^=+*W9v>084MFtT0G^rdaWW!=s&KrHMs}L z8nRT)XSDL{|D;Ry=yW}X`TxSf-#gm7w|XjW0j#xaZaRg8Ie?t5=$R~`kAXeaI?P@R zuBHvYD;hjfL6?|aBt(14-H?Z*1VV~n=cULzwG8r7SL&O+zJf*IDI;L$k&JK4s9`W#3oT7npN+Z(7Nb)Y3SOjr+AdaF zm)}?UR-1Lr?coOYpAsAwIJ0``@F}FrPGi#fwq+(h4~!){5*@7{TeGTcSScUKzS-2f z@+yEfzq4HTz_nDj++AvLI6!^TZ_pJOtV&sONu!ttmL=o&Uw_jE zTPr~7h~ctoo#My8BnyS)7`J(L^M^Rk)Di^>R&amlzFo*0N8r%vby1&@ZOQ1jgJ z-L1TH%MtUhi0w7Ar}PO$LTR5H;eLH+tl;WkXbtMca+mN0VljR>A@5rv88&1I@(niK zd-_mPaB8h5yiNlk+)TS4b5)aJ;l<~1U8jc)M}sX+jpv)4E!2Q}RK%_OaQdedinB># zMF$H*e*!ojWf$#1yruv51AN;fiCSEz!#X^_<4pxKC9)xKpk@dDiG8;ABacm7H1)Fb zrx_1+4V1asrD#}Nn7;Z|#P$h~xkhd}U-zT@6vD*MgS(a7vRpb>Y#o+EG1QQ!Ua@BQ z`ddV6{@v|-$N-I}Q|rCmTj1U7itkZQQz^SCi7ZW@euG+#qOYDOPsUhpQv^zWb7JV^ zpH}(OCE_1KB4Bpag+!)i8r`+MuT6| zs#$9LZKZL^g6&ZIZ*PLWkQRDu$g1bvg+G*&AyVh3ito`$>>iz>h z=WmV)PG2s|r;ZL?UgnOcabK9Zt+A4QS6s?P?+=hM4Qpu-6mmo8R0S5oAE4<=dv_hz zhYkb=o~Tvf%&0{srDUEr+c)q@T#&WT9DaP9OxKxzS)Lv4B0HIrB4>Se7HDMKF3*lP zH-a&hyY+kHS}dD|%EC`hPcB3Nv2%>>UVL8O5(ujn#(C)# z#bH%j+$UBcgPrpA3d-d(7)Z1lex^r6(d~yB{U=+mdXeA0NeI7wVt7fH{2u(hgug6A zZroh;D^c}mB4shw_Tj`06O{<}Xt{L|^`+4}X;! zlej-F3hz;Vsxz9f@C)qBNb`;Daf-Riix~dYKae#eD|m~AWBbYRz#?LzUR$-Cni^SE zMEr@+=?w+i22^l@8EXaAoCzgHm??Cgd5JJflX=~xWi~-(j*Xn)RDT|8a}AGZQ?x=x zv{2Y_OW~;Q@toAnj(*xpdz3N#@Qw6Sra+Ad9Tk6~vo}Wi&{npQ5l(lgM0P4&(o@`k=b~xWnc+XZo4JCu=tMq@Ub`Tfh zd*A*lz^%@WinO!Ul&7HsXm^7iwo7WF8z0<+wo}hi8u(o2@9Y=DMN_=5A`ax9yY<2M9hPf$qSeROtW)h*)W zRlq*P-=FZ@B+SX(>BXtpsIo+lDv}vky##cTSz4vNN!*R#MtV!pU5jzIT7v7^u?C zO*6ww!ks6cvtz$D&hD=uTUI(*?hs2)%o&Y?cUB>g!Zm%n0~mLrpuYOEfc$5>dIp5O6hW){lt(OObL^^;1K$?veKrVaE_^hc%oEkP zT++Y2y;OIg7A%?nsRk{KnE5vgU4tlss{OL$U=d-yuANz|6~w3mhjh&dkpoeoZL+>v znz8S-FmbsPGnM!!WAF4t7*2^;or5>aYx6XHHG2bk6i&@rmJ24Y>{5LeVKV)MT9F>A zujzIy9r5|WLvSC=G}Mgj9Ub=L1UJxCvm5fw-Nrt-(s=|B?n~(@z?eSIBsqusQ0B*p z1Aw;6oDYR^FVAkIczM$*7msi z#;&}d_`@u9cH49;MTo5k2(H~Nv-_>@IgPp&!A!(IQ(4{)d$1)(b8w~4{SWAPViq}v zt2dhdKs!`uhpoGiNfbPDTG3GA%^RIp_Yd35A9%-PX|>4*y;LvcSCz?sc#`u6p)P?l ziK~U3aF03T0KtgWSjokl3+= z-owW>=pw83?Si0gdXDV|Y=uQ4uXoBzqkp{|`=^%L@~|V#z0IGYo^}-D04Sc!GCoAn z*`T2l;g#H~mKSo8@%MZ9Q``!5Oq<+*(hq6rDpawOse;t0wpLA6vjH@GY-!Ak%bmSq z{(Qtu-Tl%l@^kuhEn?kM=ZofsR1}nJYT>y;F+10bZaimi#ThrPfl5^s(O~n(yPAlt z2gHxwg&^{kfcg)OS-N9M-)W0v?P|ie=@m&&*#RQDml8kJSNjM{bM(LE$8*f|!2K=6GJP>#nNR zK1*Pio+mw0>b7HV+x5Q(uX-~RcaQ>YKu|`U&Dvb!JZLiV{}6Zy{nqBs)OR&FG^|!3 ziY%2>R-@sWH2TDYSa}zFuy~sw<4v(1Dqv|ahP2k-I-GSSgR@Yr21`L4$Qpr|ekHM= zEhQy>Z@bggQ1f41J_Oj#R>bfcYE_ky9=!OzyWm2{HR)~`pHC=@3Q?mOs9Qg3s|_jt z;yUWlU)d(mMsI4DT@7~r>TmRAGq8-ucU=j|vH2bAZbNShaye|gl2tIBGnp4|;sj zCkXXG0kFMdX-9S#q$f~yHO%NS7`Fe=g^_Y6$x_Y2clSe-bOr4+i)^3)(xY6YD@C^) zj{9#FWlP@?=mb7Zzn3#d-zFihAMbE=FOIHt@jV1v$i{`B-Y&WdehddYjHj|E8o!|k zay<-_?_H{CsJMpR3eMYQ5j0(NNq%xgF%|kqE3lbfVIpNZMT2(lw5@kNLlkM1QW;kr zPp}+T-!^;?rL+q>2;e<=?5=6erz4_M`3B*&V1L-eeD`PE)%66NrJJh!cwTu(ZMVP3 z?lZ7j6~TX{ISQ=+ft48IEM3|q4qRWckBH`gWKNMuKuNBh90A;!rJ5DHzc0;Z0LI{Edbls+VrZ!Z=PVkGc+Z&^X*C9q{^ihXP28z8fIi$yovVXHB>GB6L_Uo%NOsa*X8EY_#nP|-QTBz zBbwk`$uq z-9W{^aY2CIBZu#I+fYYHom=maVLkLy`ALFbTAP9XBlUkuZud!zxA>Z}zv}&^F;8`#NZ|$9l=H5Tbf&`CxGKLM zHFKS->b^KRdRGuki(!XU^&IAoC#!dVOZe7?lmJPh$}Y>UIy~__VcyeIXPBd*7>L3Y zqT~0aa@R@IilV1ge}s5lX7VsEf{%{pHJZ1*X-+ldehfCHCul)GPo!SmK0-BePf~e7 z9WP%Lpr$?9lw(!beJzEbYHY9?GH)o`?o9RSm9TC z>?&>oh|Oezd31pM%3hJ+=u>@d0v(pAJ3K!Y8EOFt7Jjzua}YucWe;4FPvj`#vb0ur zD_Sf0R_}fviasuA1xE-ILMx_xMgnGOKD(2CS;;)D&Ci>%qA|$cmm8VjPhr5i%=0Sgb)W6WpYorul40xX zx78_u3Dzh1zk27g+3S$gbjJVSt;f@{J`QC0t6dY4?@1wUZS@M|FTPx@%=CxkV_=z# z(=?+VT}eQf6%4zr%W46J9e^c=8tJ3OPgzFl#`hV;mx1{fy75R=!}3$qeB-$vgP_??F%{3GqH3y>rd}dP5JkQ@<0#*I-MR&RF~y zHHhmIN6w2Bg;no0zJqRD!c=ecDepVkljQZ{d6`zr9=f3>>sSE=_)67@oK2QT^@(8_ zAJhbRDn}7XU3XmyZ9rL*> z)*gsTntAjBbz%rYokz$K*&M=VNV!Vr=Sm&mlk%I5=(R4S>u*){dcZ{xE=;q>_z6B; zwmML*v^Z7IN>-n7nEu9k7*fH$vK=6~(UxUx`gh$(L&_u5!haa}Yxf?}YnalWftM?-Dzn9Gm~#3=aR%w=>1n@L6_uN>}1# zyPjXA6=E+Esjv?{Q%it^8-%STSXbXE>~^A!*XbmdO+@Q?suzm){tnpP=$hn86tW_U zl3jf3M`TWAW3?Nf< zB1YHG6dBwn%Nv)W43uz|!RQG(D|nk(j6?9%dXCB3NAE5bWe;57)8t zM9MfeFr*jpI4YUSIfCp&mJ=egp5t!txruZq-KIEASK1Lvx4gfWO+f~mBd-Nv7T->4 zHLD@32BTC%i*ehjuv>4aiLKKu~HQc_SnX$f)h{?OH$fL$ehO8pluL7%L5^rvn!9{ewS6= z`tvDNA>mEzhhhi)bJNGE$p)GDe1AUzw^RG%0>p@HxqNVYy*dq5$J1l1=I+>2exi!S z|8jQ0Wt=HXRlaq}C!o-Oro#g=qI2ksY`rWX-zE%y3P<`VLyUh_RLTGe&zAP*Af z$?BM1a@(fzXhnfn2oB#qGf@s&RbRvYH4JROsjTyp(;3GEP<+f^d|)Q}O21z-1ZTaj zR&h~cevclG8&yl?)0N8OthIZmt>Fn2{F3QypwBwj7^+>g ze`d!hRhOy%$z6{~f4)YDkXXKL8Cve{;yK~m5+XHiy0MGO@$~2x>3m9c#fw5;NtaWV zV(f-x1csX$3T`_&2eKL$6@1;Gx7G|=a&7yYA=o&)!@>UbJWV~X<2OGN=+(EC>D9eo z?(ZE$C~cfK7XxwES(~>*T?0=f_`P7<-acn)xa@jvzyD&2=iIeMeOuAew|YWVh5v3) z)#oxH>%6G@c0vRyZXPe@R@sg9RPTr96|{!M?RixH-U@P|pT%;m?JWDtOIM;5BE#|JMnA>U|p- z>K4>9&R74{1+U!)Wqe{A{{ip(@6bv@aC_TMX);1soD-95Y7;JJWYsGV_hF0XbJy~A zEM|CkRTLqx7oT!0Vs=?}#-dTzW?y-Dbl>JPseh7HxVasngobXBo=>uhnv4I##E@*p zuBrjFQDaPNKzlZqKkPook$E{%8>)W-z9TXz&rbDl$%QjoN3r6O7W-Yq^Y$LIw2{~L zjdW9?3C&NcWS#%1$w;BVGC3tW)$QsS#TMmEwCZDvI0-&+xj*r+YS`ugy%k3{C)2y- z@KhVF_wJ0CdHuPm(>Pg=7`4=+7lS^9*QYI~QxsWwR{(d??7s*QY~%OW64|eRPD{VV zjCk;y8y1t!OFmRRh+aa?LP4+`@4JAYMZ>dVv>u6W-Z~U4;p92M_jho7vl|JcI5Lmj zgYrV%lzxF>9yhc5+v&~K$q<^`Y#khB{2kG%1@!B@W~ zftNxpo#%x46Pm$;{w*@wfM$WQq(6B4sCuRYO$;k@{O?=DaMuM66%$V%K>qxHef*#G zU>BacbGeo!pLDCl^==n)C-af+{UoVY%Y%T$lU2^>nWVjEoWR1F=9;)H80Pofbk$kj zUMFBtz)Q0>&HX@O^2&E6JUkbS=sse1>$91QTXBE#&gyw_G2U5F`UgpHWkKY$^ZD|| zJxlenYfCvVhA%4k-xcd!fF$@U2`jVr1LiP3wI*F62?vq~3I)Dv=BcaerOOG?sUs0z z2n8TH)d~O@k`@MbQY95`wbu0Vzek&44kc<~XtQ#N^DuCWxJSBW>Ur}&()1O^zs|o* z`Y`@+wny0q>{wT($G#P)3 znW*zca8OcM;DUNNq0ZrubL@?(soLCs$kk3`UVm$f!cX@jFC`ayhEYbB5m&=kFCRV4 z`yN!+F_?XC7B-1ZGG^=*0*zR--Kh`_FA5lDtz z-Z;2rsUhRs>Yiyuz0uxCX2#e>uyIn3hM3;5pn{RLqA0YKJtwd!sDV>GO{^9SXrPL1b7sqtnZ!Jet(!_?%#W{fp#?k3>3sD-auIw`v2%9c1# zXd@5$buVuhCIAv43@Ltz-cc3iK1~G5#Z5G}b-d_L7Id6?kHIsCmret5)ylk8;Tfch zt=r3G-y6hm*~iX~*qES8VGqmfvxp=@Sgol%(C`=9)N{iQdBx^aS+%}8qx1GeH7}JE z!s(7U-%|iObyT1yQKNRfr>7=yJz;J-%itX@ACD+rg;HlhPxGhz6u8u+?6)C^=$)JQ~R;h zj6hy$H@V|xvsd`>6jc!mu=%q%>Tl*wZCwS=y%b_3?!atSPoK;g6oM1O9@Wir3bL+A zCL9c>@KmqKufz;ff$9fioJ_webUusS6BPz=dHmPb$CVdp+1l%_kr>u)VD+Ioc9%m{ zU1e=u(YT3Ne|^9#6_bZ*>VEUYIhPLpjMP@5SlaLm+DLHrRs|L)W#g%(J=@nDgd$|U^5z|IoRhEHF2E7HRMrq&ibx$nnaLuvm8tmU#Ckm@&^_BffcwaP!2 z^#bP(>H)}jJIIu;#+HVh`x9IB95au0N}7Kw4l~aLWzt)TvdhADs7{swTT?o4hEZPP zWwlN=3r5(2>TdcYiOq_6TY7FCe0s^0Wbg0v;=M#!hx zzc(~2=^KT&-{hvc-2k=Xkeg1I7y+au`*K9n3GL`PlDa^ld~x9=o4tY3LZ95rtr(r( zs$x4S&5ML6P3qwsz)4|jUcYxT@LF?nYn|^MF)Zw2P~YGk#oovpJjkkSGDiM}8Nykx z-0hC}$#z+<-?}na6B(pusRMIz@@vo{bXBlT;i0Mn?^vo2xRd3cEXPU-Ga;1GTk{tL z=03Jn+E>s3xy2$*792j)yp5&A)dl~n_iaaaSeCIQJ@2X<4g%TdF=CzUEWv6gR**^e zcBXFXc6Z!@BepB#&)=iX;n`oyVIK$PFP&@Q!Z>YK`I#{f*c6?cCqS?zx8w4cZ=vdQPRh|J|wn0VMTF?m(D>I2bFpkw5vM+X|oT zJ&64BrCw0x(<>YRG%~)M90iSoz!o+U3mu|m6fL@NLnJV*qC+eQj|3Q6qgz+EbU#-# z7U>@0XSrlq7fX76tIbwM9nLc7mRGZ++g>X@SbPr!RdU$v0&$MXrG&>x)gnB+`}Bxa zSBu&6#^1m|rcmw&I(Ut3kE=1{NFa(&2IKcNS70p zaPgasCXk#-ul`RqC)tgWzU;!y>DspfCwYFa($FMukR{sN+ z;>Ms>C0qTz2d=}bU7z-aTA$TfU#J4$4Dlx~%5*+`uNNteLa3kBT9ok@Nz_z-z9)4F zi_=x{N8O_rzZ2NDzMQebd4x~%yeXsQX|imn;JD~-%PC6%1o&Agjh^P8r5_i#x97G$ zpKo^|-`I+TQja5jmzY{R9ZcG7e>B~JnV4U(p{IK0_RhMOwoj-I@l-`-B3eBX)O$BOmZNCBIH<4M8b4vZu>bdsbSObcElgZY3#nUD$Sm&{dh9u z8ssPw08Wf{uzlPscfN*3c6lFzz9XQO?4crotSp^DKRV(U{LRCv|se7 zfy;5Hi*srK56qimErA+SAhFQ+&V9|W=XF=FXvU#|!gob;=yyoz_tf>B^W5H$7XWM2 zaVDhGIT1Y9-)kb~!xqFRIvyrO6Meg2V#pJS;944LTSPW}!>2m^Qqn7NzK_(j$sROV+M zF=X;h8j4@aDxeba-iQpWSgk+_>t-~13y3m!(3dFpBSp_#GhPq}sxmP*f=1+OC6lq8XGjl+0TgIR9|XBO-MlvQ154cO{jXa@!B@ z%mxSGk%8p~>T14XJLWGxAuF0oPe9lz;;r8i>o3mCmRHSF><({j_7HNzT@t8s2W}w^ z6~T7449zZiU`ujfk^D6z`lQ^ct?D$^Bfl{hRTV>uKO&!_j+>%s5o|>Zp>{Q07~8Vt z9Og19mYJB)i6i6hgEn}K2+t%zpyTzbAfuX>4}H@70?J`OlD#_D8k z8#Rar$T@WPtZxO`9Xm`@smJIFhF*~+IGDVTqWFk70NVE%X4Db9d4~`rU8(Da52@p z+9ruG!ZbFA3nKubrPL5pmVKxb{)p9^i?BKX%EdrG8%1&^?5x~Rqm<&TqdAy8vac^W zO&^hW0k)NU_x>}BNu1weiw&4R?m%U-uD{oLtUD;lho`09e@{Q422UvG_n0DnG)Sy2 zn^vocT>bO7hx~;1UW{A==PaW6uYg-g3(#biwd7-)fAs*wvCjI2R5oQx&w1>?wDgQA z<^@=-gk$L%-+umu)hZ|6p;h2Ll>9Z+@p~2J?$j3mU|!~s@@4ig{-do~GEI;E90f@1 zM~r3CkkjFX#2z65@F#EuMWjSTq$Ed=R2u0X69G|Dltz%29*yKcN(AZdmd;UQ@IBve zezACV-`91X$5C@9e93VtyJVwu8BXSEqKl!;hoXNh|DtbTH{<0YC+5?-e9u09-HC}qhiu?Sm9;a_ z(pWRUOEs~qf@W#>S4zpLAJ{da7uT%z2dRqmRX$nSmD&#il23fRra%mLbMcYnY=~)} zfC@P)j@J7b&-UqU<#PIq%)M#NO*Uu@)M z$?2V$At07!O?xNqj&kz`*-Agbv^4TKzwb=j>3liKeQf+KTtv-R4{<6&Bze3WURLV7WlSW-_`~7ez~RphZ;;rZb@s0 zqS)?Re?AB~F)3!{?0w^>nZJF4{(>ir3$yMh_}t)Xa=C9SW9;w_doVA3l|(th8%y7N z(dl1v?M#Lck%7gDeh9Kb3H|jDI3Am@>p`ILuXLTfes@m${%G|=uN$Dxx*86^ua4Sq zlV-(Ucj!B#VRnP`=P&^K7kqLd5e5z+aiDyz$ub!9c~$5=7>ynH?~0&ZM(B9+_lsf_ zNk1TVXfdOo+S4xo(6=s1xuSYsD39BO)7;=}r8xt1mD-v0jqr{?t(2wwn;yl3g z)JScV*L-_5H2i!Z{{qfKrRdV}nwyP;tS)G-N(nC{l!R<9Jw8grO#4{}5?q~&z$u&?BPhP5xnhs!c22p!?~?j2ZD12@Fevy;FfX_kmRg+}57g-NEp)Fyp< zWe&JKNT1~uI&1>=r1=+4`;z_*4H*M&M+RTyCCOxRTu^js;@0?k4z?5^Q>u{P zOr*yyz=3kc53cx@JN$B*>zLQ`=^6$`{iKt!d- z^z}(W+ebWbr>SnJQZZZAv>SwH#&7NR_4WI|D|>U&F5(+*Q9KQgGh)4&GtblnUnumY zSB(E47n$MQ7ckIKcqxF9#*qm8^%{bYq-7K%uxUFlKvV&D#=SNfeNU|qdc}Jk zCWzr&4uq7of&#<)3dg}4bz8=jPbJT@tMbhE3We80T@?!`)ZP08pDHfT(Oe%{HKnMS zK3tn#*?;sNLUe35XIT4N5>e^p8hYT<>Saz0tlM}#oj3!r;+qq)pUd9;J9z*sW@hiRuFCHRR}wWu_q0aJB*(aC=+%t_ zo+5U%oE(OBJb_(iil5!$j8}PIbs{W~XnwMY!_)yIWx1FkJxJfkHs;cU+4J0a0yTl? z<)_{K`FpF0eemB{7bOxsPwL(q2eDB+hpENFirF39|6ay~lkUR}&nCJ3JJk1!=G<}3 zV?#4kF}@Ys(d3q(>iz-KCVV${iAfCEf(cm^g$&ecE8w;CEC6Wvv7pQFa3Xqv*k? zk6VB%SjV72u>aeGA^Kv5Ycc{G&GGog{n|L(3RSzNi6a1Iw<#->LMAd(_$%qP#k@od zv4-mFG+M)p9}y3(k}N^ca*!&l@6B*_vS@N0_aU#hO^ZEN?ca$2rYp$iSCD8I{|H(l zY;@&QUsm{6qA8kMv6=AwrHISfh-6eMLd;bSQ}2e-^xx17TwT_wC-31R(8{w#{bw)~ zLGEFs=L2?n5qNf3$PR#3S(u+C*yjSNaC`1yP>849MmBAvl`az`9gJ(=6)sxpXJJfS zG8z9jB=qs6;xJsLIguJE{pM)9c10JB1W2UmH79 zipR9ZvSKXl~e)pM)6N~WseJYE*~K(G7GOi_Q0~RLdgl$} zOJI%trZ;UdXr+zAmwYnGy7x(t){NEehux0HW|bj>J%At0s3xKG_b&U}r>@Z5V%{P5 zr{f974>BFuU*Nx~kzzap3Exv1>8eLGFLY%5I%#JXJ`c^pwvS?MHb~S7jYeN{6=q;d z%}H1bg4$^g;Ug?|ZPVNT093Fu=c-omgSSujK`UM9j(yuP! z-PzbzW(ua;yq`5gS|O)OgRF!fuT{;-O6+!(Mk`kS(P;X#`E-uHx9m}6f-oYwT0gU~ zZj-zW&>4?dKGaE zXmMMgZznjS>?fd%)XQg@gQm_3K26Gme4g$f@5-j&8eerg@<22=QP-vRDgl}8&qsy^gbLyrzZ1z^;Aaj@Wy@CeFEME$?4+g5lLh8Pv-&g|l+)6j}2<-X*LzZOS}ASDx>bIR@X@v#6*cMiS9 zu_vgJW6Wjh(~>Y$fek>mEl>Z*IzBK}=ja8k8@acN>dCKUa=^~5-vFo+5R82@h<3Hu zFqGj`*W}IgP2TNBTw^Dkc#rl={Qe_`Ob^*yx9C`mzF>D)wy$msN>hlH_aOR0Rc=xs zc6#W>3}o%7aE?A%eZUb*x;hlpB_c3p!cs6m-hor;*zC+LzpPFe^51wU_J;@nlc9jX z6RLczm4cbM=+=&Qr-SkS1*Os9Llw5L{|;!m&2%aM&3)O#*Z$cdh0|U-k)K&%d=MQ@ zRVG$AfdjVm{;Z$^UTxpc;z0RJXsP2{OK(V6kbQSBrnz@ip(m8Ie9-?Ix~mxfLN2d^ zn_jjz)M|a|X-&Md`k+I(-@SM3<%h5X|ywDD0 zPQ4#cRaDmAJ8fvK6){~bN*SZTLEn>imw>w=MSc~@p#>m7$!GGi6RS@>%c+wXD`~Vj zbBnU?K!Mtz|I8=}&I+wjC6*)n5wnDcpQjUR@5ZA?eo@>dGI0R{# zhj9jWx{Ov7c$8&jZ1V{%1pQC(c~CR!8P~Ryul2HyVi<*cRK^;)XI?ElZhjfc{&Tk) z2qu(co}SN9*>sddoO{E0wn)Eg&H$|hi6xd^?D3-(!KM`hz|HO}fm1>ft#N+a@tn)} z>Fy5R@m#+5g}#RDX-G28)hA`LPSS-GM=8F|F5EE^f!e!-N7Br#eJTV+_5bH`R9>{_osJOZVB>PUm7a9tcZtg>$!=Js~txomZ z2XLKpQ>r-T;kB=UCe*VCC39O@&#zK@Gu)R& zfbj}e;IlA0Ad9rYfo(449)g?z$O(;K;;FfjtBUQb%;DV z2uN*3L6*rxqbXaQo*c~7e*1x-`|w_jYH9gWNIjmcsUQDd&${#KR%sww!@=GwCB}^( zPJ}AAsn_pI>SC14N=UOmo>UyFg4i4zt+^LFyqekm)Ti@yGT&MVWRK$z*G9k7T+A%K3@6%?}Cgh1l9*WHQhi5C2g2M0LU61KBg6aS+oC?5^O=SWe3A`5V6iX3j~ z6$j~|Pa2rO5l9={2ArnTkYD=Ic_8zN`x9@j@QP~VXE5rV$2%k9c1AX3y;(>3=899j zf3>+s&j?&fS@1O{pI?VUqR#AE_<=s=_w(NQT!eJY5fw?X37%i&o&OJBJIVH!!fZ<4 zva7unjY zZaByoT9)LmsDYLje1q=UZxp?x6>e+uT-E)|2>nVb6Ai?y^eo4xW zZ+?bTN$u1-;@2NPcpagE1G~zFqwVS!N_=9qYw7FhnLsvpkHjHl}O`D(_-t)}5>w!<()Paw?Q(ti@mO2_e z5gdPgZ}c{`CIeKf>&NJ)(JT(JnjTB-+nW3NJ6X8XoofqZ-Ts)IYw}M+^)@iLpDmd7 zBVvMpEZ^)j?f>$6%7FArHrLvqE_b_c{+3X-*Y-ZYmLB))a}Trvna4$&_GWm0e8i1huGYBJ$X7xOg0UAM^ynoM}1F;J~E00#wV2-WgO9|5%+ zpVqzrH1?O`AZB|i+ZtK;isSi8>1bTs%Ip`4P5&2TF_P>D!6!1$@cQ3zz~=vZSI4#g zfRtn(AU)HpY=7~3c>enDWwySB{S)=e#O=!+?Df_%!Qgbyt7IYyq@;VRbAoUcG}Ht9 zy75%5>HzQaF%%{bH<{Pb z{y804sz~`O^RGCY;*td@UnlzLKjRh zwb#>o5;7#aFm7?=VK|tIv`Py4Di?7%qfR6M+&oKkrjA={jmP4BCEW?En4ujd@Trj? zjdizj4OMrlwLiC&XTlOsgTkaB7XBr;UbS}3H}}+++pS(!8jT#S1}y&#_iKoxM3ho{ za!wL{MGRk^<5@N5jPeZ;%sE%Z-Qho}V{UpLJl(9E3C1=AVpB>a3cB!(c%uu~0$#`W z!)?{e+ot1LF~6UDT{?WldwEQjZvXAePp_U&w7`{@(s-JrxoOt#KLV?yr*(>nCbHW| z&a%cIBQEAEYL{%%n{4>zx^L0>9-2JgqYV-sjYw@;O?l2DAceg(sP?;x3W|*yt<<smgMfI#F0s^gqq2IKpft;5I}M3zw$`i}t{i z>j0ShgT&lZs{H4|UDLCZWX+GqjZ%#Vo%$vY>s{0GN>Y1+zA+tB7wt_T((YU3y_l2y z&ewuXNd;7g+w_#_dpSf)11ubDh5CLH@+3TA|NpBJa|n*Dlv8j^DL+UWWlpxu8QyL) z8619Gb6|)?HPFO!lbbR?KGM7tomX0oA5u+gsc?l-&G3(hTDs3xKapz)p1Jp(4KOmP z#PRUhx+}oTA<0uUPaQ1 z({(p@9=b8`LPK^ybDJFN6@ z-8zLZyyHh&Y?1d)(UfI)Rnd@NFerw>- zah=oDl(d<2ONZ-M8FO6ZM3A3pr4qs>TwA2Z{HBpBY>$y))Ob-+8>u>%03I;I8M=!7 z=H&6^*_Ho(Ive4c{O=E!S3z05AP#~rM#M8(&x{h6ma}IoVU87^Esqw=SMBJ%9`5wE zuZ=FfYFZQbSRVMU$#(sdAJX6-PXhdRU0&e^36G19z87JsQM~IXUxBARFV}5qQ9JY> zdQ9OLny)87??Fuj%ByFc=<`o&1(Ud4Y>ypYDUl=b8UB6MV7SHzG}NXw0*kwj<^%?a zQu(pwh1B}>urByJ&^)=m%8!t**C(ECs$at?hv)&&oVbb3O6PXv>8+VB%SpBNPwq3L zbakV+H-Bqm$W8KP)bxz(Q*}gd#C~3M|81$W_MYl5dKxU$fGBSjgAd^t@sl*Ak$=IV znTi+>Ds*i%8*fETaNmQ)z5%#AMC#lt3-?S9%oM3Qn#~+41`Iy*30%QyoE)x4rSYGy z;KPG)(pYVNB795U)B*TAjhJutU9W-qg;iIS!v*OL_;In3(s>dlBfK>|LyU!mpckI= z6+hT!e_9C`v!<4xt+6F4nNQkzqGYFoZCcK~*VrAbq^-y6rzz-|!Bt}T(bDX?(eej3 z#f#gA($Lj5l0%rty-q0mC|;65f(hQ+of)&2aa&y>4s`qO+Db1McrhQiSM+^B zhXogV&+)C&ily_e!U{8j_JvrTC{oIzT?krbfSj)COchz@$m!?|xFP2lRaT$Vlzh)m zmP)_!9{-Q>KDVm?(}gB#I)=Ug6f9nCl`6gX$n8L@q|fa5$MZ5;_)eyf5ZfrFz6k_J zR7bkYF*%|Bc^OOl=?TIZYQCxvc1VeGW`K}@EI-({4hX7G1s2w2pOhlRA$C6^T$$X> zAu9vhR{Ge~av4?^Wc;kqhfAEZ;F`OH(umt*_nTmg((j)3o8PyMgNbjkTpVn#|DN86lOD4dr+|XX zx1XNjpR`q)&lATvtB*1vZ!RR=kc14u?>4128r{&`CP>TL+*erWUdVm);n3dS5F@T1 z5g`J9FP$i@dkdbP-gmxU0GN_4?gQjWWvw{oZ`Jc{!PWn&=k;yo!w(}qW}hkDr{4c@ z6)3NNwQ;fuz(&p0FQ`p|k+i1TS5r^Px+2i0-<|(Db2)!Mc$aFTyFh|sXruvB{PyCj z`+PIbxB$>G;jgRFSbRavedJ>p^6CyPa#hozT1rrkTO(5>+nRuHZrz?3f6k$WpiAir z0EX|YU!SAz*DS|;M!l`bgg6xb0h$zQ{-jS&#(U@4d^i{Xx$zf})Zp3Cab7uN`MeDw zQ}4kzwH2Di#DNdri+=mEoSI(gHT9brS%Y_%HM?s8nPIBS~=)eD}Q>_nos`?D=^#P;>~Y-9rrt{Qc7V0_rDq0ykR?4WD%)@HWH)cB$& z6ZN~C#?RMT8I?f?Pd@=1{K@}Jl^yI}hv5D@6+|Sk2b)AA7Dw_9Y_$q>~a>ouWngyKn zuSa)>uOrHMc)BrVA`FRCSNhu1O7tBaAo-6Sw17OKWw&`}HLVmK;ZYfP2 zSRLSW1spE1DEcGW6;i%3y4)p~$Z2{^hzsHEkjEf-YkPM`fF_$5gzS5;MGCmRr> zZgs~7-ez#0-UtC6BF#d=4f4{EhaiGB3yX01(%-J{=P}seJPPD)bHBnVerQ@$jymqSu>mM8e#48ix?zt+l^J=(+F^yOLG{ zS5^@AM{a|z+EZbI@0-4Ml&gEvu5O(=Wp4YfmmiwmH6p;*{*Us*K9IFHfZFR|ZyxmH zv`ct9A^t!W*YsrGaN)wJTgaN@>rko`bt`2F7v@opH8|}T(TiOc@CzLvSISc`d{d<} zzbS7pv-h8r^$V3QL~>^e{R)idnD^v%)_W6`t-wF3fP(%B7r(lBLsG}y0L3T?tvE|r zH=In3#V_F1Kx~w-+zLYtG(uhA6;jV)9oeC9F8mYK{s_V2xm+Ln2kozjOTuqGRF5M! zc<{u)U18@x2x0zi4?njdkm`a&;F>qb$@(yIV!~UpO0!O^DhReLNHew9`3dO6ir?x5q#JjH<3T1vo8{fZwD|&AhuPwar79t+XtYD zzkBanKMJ>W%XAOk4hFu0cCtM{P(2+@J;ECVact+|I{H(NKkufJ1{Vv(>Ij+9eoxL9RO z5f<1v!XKGzH7=%daT9O&Ridb_4{A5kaBmKyC$7$aHR8K~Fsq2=Q9kHB4U@cIw)FZS zziL!^9h4~z`?gI#y*yXvNR}{HxBdbF-cc{$FefO#8*|;hq{6n%Tdjg*+>xQlOm96R z2+H%YPj628wM;sL#2HA}$1?{IrhBqd5+~T42 z74YkI4`1{-NLq=)mczm+W|WGCcJWd!4-1SlZXW?oq1;IdIeb$El++B~U@gpB?;ZW1 zNr&ef6h<>t2{>wv#V_X(%l72lmuvq#8e6J!9ZQf<@3CWhS3%$w_3~23a+UW4NE`^dz)^~iTrF7sXjw9OHhN`r>+ zL%m+X!j_py&c4qquRJ9kdC-92GKnqB{^a#EQUhbnj#C2isA%aMPq51(F->Kwe3 zT8RiXg(2(m%f&k=r5Cf|Y4HhWeZhz-fVXaYtQx&_I1tMkwf%OJJA6FRZQ#V2L>egY z+gCmw4>6arZjltbI>k^lVj8xe`*wIRzttVtOJ~qrCKKk;e8nW;*9pbp!?NSME@m-6 z>Np32KV}{8lnPgpB;}8WYCO^LTp0CxHuotSqYO{Z^tj)-KEn?VtEb;1l(IO^H{=Np z^Q`;E@ssy+xVWOf4Egoq*Qi^wbmXD6hG0<&){OB|YBTy}|FQ{Qia~5t(hR-pvgs?4 zaB+6?2joo#U!%H{Lv%vt0R@}}liK$K`Sz1xHQFWN!P1qoJYlJsJBj+ZI=xMS*pw&8 z6y^H-@GAMu#~O0RP>j5j;c9@@N~E>w5hu3Bq}~o4?&C{tc3mSu zFNQlpTWYLvn{m1xh6oM>nVGqBPq-%kzY8ROlcp{ApBaV2mS&eSBWg;1K5RPr=zz)V zXDT;t>4N|O1GP0r%p{!Zv(AhUJ0b_3{3e}FjMaA83Es;L!9y?JvN5W5o zp1?-k+Q8*>wdTLSZC~&;;~n6ZOYnZMFC?_{CG*$zL`1t3w^9^#gDq z9-Q~{A3Z4v0t_V%6n|eO9+SfSmgefz=|wq@{OAjPi9R#uoXRzGr@s!5s-n7 zdrr#nV3Wi!{diMESf31AaiS#73U!f7ZArKx3SHdgH~El95-8GM;bjCXH9RkuW(WwK z?@wrVi}wyV=KW6U4T1%B&Ai--!@0MyJbRySqT^UfJ(*B{zmA=du(})%d}>mKA*)M_ z+K5`{1%?FN7XZ3YKk3(-u|J(Yrra-LHLnowK$vIx2@p#)CJ8MSK9ErdEN@q@g122O zEo>(#0e7&b3JRF!lo?DQ0YUE$l6+~`RWA#t7q7W~1}qHb=q&47i&uwY?HL2%6(n_x zLh%=o+iI@J?DZYMqp9 zCYspJCX}cNcS|!(%t~_Hw~cW=83`k)v1-^+s|+d#&Enptw>WAX78B*@o(3Rp{I(j>dA^Xm=DPZm7 z)Be3E!*8KMPATM(j7YMkcQg*HS6gQ~yUxj+&1NvjLP$s-dwI3e(I0BVnhSBe=CUnxl`Wp<6CTyH<|_D>AA`nQzQ=nRtiblw%)OLbV#K zJQdY0$Gs>JemiU_pSO?qdS%bouC-L>iZR48b+-?Ne;=>-a&vu%K1SO~Nh+>lpbU+R z3D!|E<~GjiDW`W8m?6~Kg4o2Vt{RVqD(I7vXsB}02Ff-Gy{}aFC8sNQg*4c%^yplv z1W8C*5lnG(E$hAzRzxx{HJ+#hej<2wFfE5e-%DsOw<-<8v6^+~`Zm@j&%?_@}r^ zzdODG6Q`9oc)p6aWNn?Muf}%AOYK7+G-v(Z?P)wpJ>usmz_MQ(lozo#)?Am)z3NZF z5tj?XdV@Zl?6@NrPM<)2fp*@Q~ z4N_h9CYfhZd#rf0s|g44@|h+?Y_$_Xl86>{Ve!>p!;Nzn#CAx~AfY zQS`f~!V~;mw>`66z785Q7I_Vvn28`$87>2! zS@?Pf(fDftg`m!e%}4u_Vjn8eiQQ@p-(`mCZMZ8Dn!Thceh(<;Yp7h5O&4H)Zo$`7lX;zQLp||W#$2)RcK5NUcj9<9)VlYRR$NTT7leFyw?HbcCGAiXLGJ@Ijqwnfng3FD z_(l%|FpqR$&S<+zL>6i$^Zk3=hJgU};;sk{e4bwRa`XsAB{nglh&zl(?aB%xJr>I8 zEX;*xUWDyBSv<;l2I8B=mMmN7N)!|I6hab{Smz&+0DhHr`!d3bqy$ zrYg#pws>QH4g4*I2}{3tq=~_ErB_Z3mk59_YPg)cI*RZq8sqWd#Ksw(h1kp6cwbL?|RUF)a%Av*ep70gyaZ=O7|x9o>& z!3ox(fIS)ii>`$4ua2f4><0B^)lAj;!kmPy&BMPeu|;7rlndJo=V4kr-Sk_Uh?y;> zwO|idrjJL}N)k57KfVhS2wew0aOGSiq*OQhaEzBJY5pxnjsj`aw;g$TV>Y>xe5b=- zV#*DapvqH&f;WYe4jX&Rv{|O_V?Yg&*Gw%->x17m?w4KlKU4kVqJTKGpMQY$T$(_S zBbO4=>~a)PKJc_e_%n3AiJnEhRT&Fz^F)B}gc;DEqA%Wq1|o9tM@hZA5`;Lw?lqyY zpN_|iB|6d{p^20r-J5px-}}8A^3#^ShK04jL+Osua)JkK7s4;C2C+WS36XkN-6GCSa6xK&>)Jqa z5*k0bhH-5+6XF<(K+B(DZX!xdx{S4d!@rx$kra1tenA5FC_hwIR4ftVuj6`bc$vG zzW5tj2h2L!UqkJ9nqcaeM*8u5$i8L}Oln%gMFo^^L`-zjiTDjTrP8WkKYAh`L|mR@ zDsgX#L$06C>mDe@nKJ@sTh_l)Hl}u6_m9 zvl}DyZ4zSCS=)e3suI}EK0WGbhYd#TEWfX}=KarL{%xk>dsIl^ak6f`&jy>~XpuDF z0C!c*wJzsm^_%BgAjf;ITz2kbzt|R+`9hld>ZRCUnch%tg%QS&yOJxoF?^zk2d-2! z# zO>;9J8Dl;I?JVB}hVlVfXoCkT%ge>aOMGNo6M!cut(wI>L>;9>MhL8j$b@hN{G@2K+#JdO+PQk)U_Q387BLm) zXn@SMm(}C4eJ4G*2mRXoWhilMx`K$0lk}dBCCw-@x~pn1wN3q2%n0-G-EnpsYUvv*Sj_EE1V6fMzN~qA zAK}5dRW=-r4QdEY+%DW{h_h9xRuN$s)+FVUgbl5;rq@e^bT50aA8g00yQ=4|#IPPy zb@_QJy#Tsy(z7NRUa8-1-ngmRpY&&VExW;n^VQJ-alxU|_MXvf2fI}yZ^rRob~-KqZ3{kLpSd{ zp9<}?M?VhfAhZ8CkENlWmn{X`wVEtPUOesc>0DK$MX0q!>ch|i#gVT3%GQkn|7;0k~*uOFVzEr z+q`>AlhMw;uz|Oxm?SDdzPk{|LZsTmtv(vY+N@ipkUBp*FN$!9(f|A-BDVXg3-Cbq zovWBAl2zoL;L0xXmEjgJi*MTnE~nKQ3I3)Urw&BW5n?`*_gnyv5q`X(hewjpwddUG z8~24>n49~!H~q%f2+wu5V5$<@c}dFk`lvS@_LiBSYcJeBOl3tZXvoJij@vcApKz}X z^0{viY5D-T!l6SA<$%VlZJ*2pZzS@^WV|9F#Sj#`8K86}r>_dUzM%o*&Nx+n4V9kW zC%>B!PR+}j0jD8v_9D>EWG15Du}KJC{HYHUq!Mz#CsV%Et1h&F{hCtJrVC-o#Z2Of z8kTw3Ku3Au1hOqfzf1{wMpE;y{Sn)Izz6*V|5wCZ!Pn>P^uC@8Oi5eu7AQ>h-U`30%G<{ebK6Y;w%~-=2fE!WtJv zyH7$V9fR0#z_o96F0%AFLZmWp<124S*XaU|0cTCh#E3Xr?8+G3pIS74SiR7kM6BMc zS7DP*G`(AoOu^*9J(taD=F53r`Dd>UxxD3;FKacQe!7sc$u&C$2(|p)=P%qHm-sXtjD1THBs3(pOvKc8O^?|Jn)>bm^d^ zTz-!}jjPKKgonOa*c+9dJX9THt9@RkvrVfu3^!$AlUp&e`-7t2Yk#@dwwQwcgu{5F zv~{8CSoiIoV|!Co3A60PG>UptPFXJ4qTj^0}S?b6+$i_?VitG@fgI-F5cL~l>g z%wYdpoFZKDZwPHwU@(AG`*Aobc*_KUGLvdxrC-JyRH-MLB|H7X)4}l;2TkU}LT6h{ zm2JYn`>n7~c;tf%yD?a(_jc^6ef7bz_c+l?6F=Sx)6)zFCIf9d{#%m|y7FGWc+xQ) z4nPxQj#r5Z=82bMnK_SwKNMjHO8VA9a`Yv2OC;@vP%$Qua`C6J2?Dma-L#3N*qah0 zYz(6Zn(6&hrg?wDYh4yD_Fok!CKfs$9Se2PRR)q|<#=U+eI6BO`MVvvz=^zlc~J`3 z`F+g@u{Xfic#zurYw9wF$^B0f8dkG)U3&a9XessNozWxP4FDRwJKdD-F|cT1_vMFR z;|*N&gLbnUG$}P^5TTHRqI+MpY=GzH&iC;5?&QlgN5MXZx8K^X9IkRpRx}0Hqi!3wxhxfQP}eX{-rt45WbmNl>5C~jfr8(U6x z&!fT(^C5P)4I7-(sQa?oEC`<#YP$FDQjJ}EHabiR1Piv89j&KNvd$z{;z!}{5hpZc zv?okhGnc4Ctd6fwwHPp=zln0di;C646>AEc~RI#D0{v|Z$U-XWk5`jc8@Ci&6w+Rh`Ft|F5u zj1iR9o{y{E=EVDdKcp5BG#iOjpK7*rkAreoK+i52GLSbD`Iwd~g&W}w#k3T^hbzF+ z5R5-)WPA2;V$g&z1-2XoATo6&n4<^|m<^47&KoOjd2^pl{)8OYPo9UyqM(}O^dC~n z4)C@mu9A-Dz=%rR_WjGXJVyhVsnA%#14q^Fm4uEF%ejXqZQ+nsB_yYCIlsN=N?Ap4 zNcQsmk}1{SmhmCA^?PYh6}@?%Ce=z6E=&%tCz=Ma?g1$oT?Qk>Jd{qxbxFGJ5`zIZ zF`$O#@WWcK&LYb%gUSb?m<<>y5R98s|LWZqJcNHz!jAH3{A)fMi!2W2q z)m(+Xl%qw8$40CoLW?%UG?P=tg%+ENv~iT5=*7Ne1CY=9aY76>BKe~!# zfbS`m8D7pT$ZlR}H>#zp@%EjQ1U@ACPn>g>*-Qm{ zaU6Izw0pE&)+o8@%NDL{>Wtn(jsB_}phFk?SbizN7bDDK>H|i&c;iBK^#Rn^OLd6# zHT2@b?WHW&J9i5)yLHQ{^xC~| z)~Da4&umcfE+4Z9b=iNM>fy}v)v@Egur4YK{I4|eoUeSnwEtl(%({KQnY81b?riCZ z&~w;m(;{ox>N}I+6;Ozp%MSKm8I4P6W4PsT#OiXv%qyvfJ2%pKzl8b`+It27&&B3+ zaAxPcb}}Ta`Yr*;yup;H7Gf^;x=BLw0Oy|t+OcEblh%H|1-31*@!~sJH;biT(r-DbS-7K8YpezlfY<&HSz0%% z{Bcto)Er-MRhZpZ7l(LfGNCSpg3~x2c4TuFn$Gne`S)W4e2@mJ493hSWLQ#3v z_EXU3aD{WwIOP|ktB~KVQvH5?l$Vyy;ij!7ACvaprOb@BfKELIdIW9)W`&AXwE`azp5>cGe#&+;B|lFdY;ZC#5q5 z1VMlyur~y#zx}qj%H;=pGexW(U+#c%o?|OcdoO|%goS>Kxp1)y!W%S7ux`VBMaNiv z;YZ^Y(S13dnJG0nb+*S0sKdD)Alhnu^2`1Ez4CA>pfb9?-D}^jL)+wm1W*}q+=X@q zXy$jfpIhd!qEGWBfKeUOA{pzmnS@&g2)oX^pWF#;J!}EKBBSBRn3&$3Z2iQ${Kgrb zR)f*IEp?nKhzRR!^m=54*(9mgSFeR7ca{I7*W$-AoG7!hfk|CMQgqhQG^vLiRUwCZ z#fOl`V~1&6g{-LQNHP<&zv{EA+0rf%YvtV605?rrV5|27Q%jUJZ?Okk?JAlGvw3|15-n_&zL(ja1J zc^(Y>g5r>AG0cE1-ansrQfrmVMoj+)0)s4jwu=&MTymo~cPkbCYS(kGM9Th-zP3G> zR&%age5ka!HAnl_GGnI7zZ+ifIwLm&j#oZIvyqu_M4Hk^xak#gGeE8(>kZGyx+IS0 z0$>bfFS5SHUJtONy2CvKj=)o46??=DIu9|#P|z$+4PzU09bj$m+!J>9No^ip&i_~$ z=)Tlp_gj?^;^givHHxtDdyQo~xOc1IldhdyH)Wjx5Z!^HL%s-)n^+l#&I9mAL@rnQ zlOJr>*RGOAJwLfek`3afD;xHqZ|-Ej`4?T#uw4bNB;RNB5NdVsJl{{9lE3+ZDEo(^ zyx)bj$l5qi0#hXBx7^Pn?)SeND-94)^1-g>;fVuL#H7Xz?8VOQLQF_O^4VHg2K;tF zdPz}+{H8iZoYxFjCE}m7Hs^zuZ=1)q@2{tG-q<{S~{TdCOz2owmZpxf0`R z9o-?v*j`?E)$Zad13~`?aI)k3fFgcc zx1~NCg|C`l#@uB*k6`aElpTnUYXz{`)fd9W95A`{Nr3L>UNT;`rDR-D+n9+~nN6kq zMlZw;t%0dzavo3wdVXf#lYl)GX-&{F@#bU-C3>CPR!Ckg7D6vOqr@GeT&c|d{0Y2e!wNzVT$ zIuC!U|38l2YtQTvvPb4MLXwqPMjP3viH5X zF2B$35Ae7T_kQkukJs~gj{C#%oeu$`qEoqEjabctQ-+}OI_T^7CKQZ>n3}e&JM&DMcti5;Z_4G>y5zUp52z0*L+e&a(EM+iJ6>B|pVK|(R_M>SsCq`V223ax~V5=W) zqN$!8RZkpjV_048PTj-o33RbYqhrjOU8_(Q7}=-C-G|{;cvY;rL_MwM_gB!Nej{9a zyR!37Fd2;sFQfxizd(5k<>4wj4u)90BXEpNQ|6QXeO^4QNSg#sM&l}nRVWfcAEO<+ z6<+4~SiGCm!XtE1ymc*d!Pmb-a^;nDh-^mwe3)}>4HY9kva|p20*%TwleL z1ghNQr0NXkS-XCB*dQuvawZw4Gc6hAn_XTV7!9-ZOZ~UO;w1WZN?|?wto~oO(+!h- zSNLnX&h(c*?ms(1EbhL75X*wC)pD0}Mh@;-s7{f?+4q28CMbC#gWE5@h3yJec%9M% zrz~@~L>6!9KqGW8;I{jd6ysrD-;$w^SoP%UN1{P>4i#;aDKR^3&io-Kc*cUPuuh<- z$MTgk{;ci7ZA2qD6+-HiG8;86rZoTZKa~>B$$&z4G?XkeM;cl+ORr8U$v$;)G`Q9I zvyqe$QKSEwU0oEN5ukZ&w+x|cY%|x~_a%+OKjeO}jQswMD&y8$(yXsjcp2J92xO4} zp?`!Y;W@u3FvKyTeA^l&R+BwsFni=pgsu7g}#)BtQVI_lsVOhW7ECvYqO1>#^_vR6g0a^D7V=G7y#rfsbHPePZcSN&p z>%ijgJ^@8*X5N6*DLthnU)-|?62vtJ&%hrma5->f*!=w0N~|f@&WwTd8wXYzfr9f*m<4+nBx+@$|8!5v3)T zI#lP!%KagHP}4Q+yI;|-kjG7H<>Y251P4$y?#T`20#P0M_g-3*Z<~j| z%B{!E9uj3bQzz=PMKJAItl@-w8D~<(cvvzUH+2fH0JSu^J+!4MoOVTtzijLj+4|hS zO~uAUjPL1oXTo768-i^W&z%m9%U85;Z3*?8LyoJsN`hzzJSb?FWm*3y>xZ!s--Pq< zqEk(j^gn#u;Wg}Rgtsi4rlU(5vWj^e2Z{+eouWn;vn(kD*RABjVGem-3Ih|A(xvn1%tpmZ( z(>1q|+(4C%qMyH3o^d%dc$rVoK*lsodoRSDvWfmd*v$N)kJM4UiBzR;wRZ7WN-$CTB@KBOx}P z2+dABWKn==V?tK1p=O3$08 zkT4l-yI*~mJ=*P_k=J7yYc&IPak-4&0dbsP6lFk0T(<)sTOS>xEbNtjVfvXC zbMn@LL(@~LsmyfV)AEcC{r73m2d8#Q zBV`5k-9}Q~Ks8o?lEu3$pOr$MfU1!_+`e--UH|D#H}CFmL`{KSeY_b)KqQn>;RTT1 zZD%pqyI=Y9v-}E%qBzv@>!mm8Va8gFtpJ(CF_`)tT;GV{lF+^E>?AI;84#h0!)u)P zfQW3<2f9e`pFg(-Xb}wylFoVjvStgtx{>I?k8HhEn>Xp0?e~TB@n}1$@yQ5uzOK5v zWHg=0{MX*-G4_t(UZ`XDb3d3k-`NH7FLN=d^zwz35-S4elpBN8oRqv z?AU2}$`~9GM9=!e@c=w^8O{d;iZjnLKr=v;@+%L6CfV?+R|W6x)Z1l4yPX|vCzZ$` zu#I=OV_kt>K#FU(7M@f;L5CB|@aL6~PWj_obbUJ0axciR`h6WRscCmz)a#w3*Sph< zOGwhVc-okMT@R_r#$uQSXMoc{{ZBi6BKQu*>_k}%t%yz3#_rStKeea6WL9_n)t>@H z!KEFKTXFti>=0O*2Oy+tUtnVQjwh4fH9Gpi;>;>tq9)Q~+exAqzeS!TkrtV2YBqc1 z+H}=;6mtg|yeli%nP>$)$6n>uFxfTVIw$Jqh^(ft99SxM9B9LHj1m27TbZZd+h-B#3<95GbcynyzJ(fx;rxe^qF#DDDu}YW^nZl z{g^zP?WK&_#IU85v^}ChURxgVPucSkKBiFsEh6VoX(`UL8?`)Rtc9z?i=Ry1{HC6n ztIy{|Ah|i}#b^#AOF1V4S=18AKVMX!t3GVuG)Qo4D4qKMx-p`9BK4fBLCD>cc!sBW@-8^fO_ z7%MQHn-NQzp6v~M)m&hZI{!%meV;F$xfmHvBF74@JK63e3G5E$CvhalZiM*< za@?~Z>D8G|o{_>{W!Rzp?a|?pXBl*AR=OzAM@r5*I~p{*YxQ~*-Jv{3(Wb9(IS+ph z-k8J3Oid5>P?d0>$hxQEmC@GjGEKDh6gxQ1)8_i*qFMwIt!O`TqvlnqeEq)aq+*v% zn?l}5n9Fr)vbOHB+Xe;AXPaI4C{OSgSbnAGYok-MTX2oXVC zdp16s=h>JGeA}W&Icj?ghPHt1g!5~UVm@%&!}GRY6<#G!2T(CD;SIY?C+4l{<=wN) zd!yg@1@`(DmX(%1Fa8^kVEf86d!1e3g$c?+{zaC*yzMIui&!TnY5euT2O&?90P+HH z+9?VnxjyUKgX}?Hptdeg+d7Vy+360~q-VWd35iYt#1l zH8(H<2Eja)(p`GqL3SfaKm2=`VzS&?wg4#$>{v0dWaxp%|8d{HICmkElj>T-gLTjn z%hQzmd7HxY8@N0saJ}clji#4fg0ur!slPg;?b4y5R8KT-X{LQflA)4}!q?1P~C4AUNH z6>v=-=}o=4hJy{|!UJM++UujgPkL2|VQxgQ!kg7)S{D?klWOfOVFRlS>*)I1=GNIx z*@blD{s-6`v&JWq718k7){g|)#JMjj4CVKHIM4de& zx1aZm{}f4n(s#|sf4t!TKDi3c7Na)r#d(leLT=N&4ajj zuG8L2iP7$d*jR9SldWusa-{e{Yn!8+t`?F|e^OrZweM5TXxEda+DA!+4J&_CnxNyqE{D$P)|GeU$4T z+$w81BYugwKIyjGem85R<@?FEnM|N>GJ6>AJf$xIN#n@08_Ou;!&Sh^3}%X13|kpK z1)qk1BjnxLz`v$)DL{6s{aj<2b;Vq7Sr9SRaRIme?zli|otl}hK1jLgUR9luRSo_hw_|(4R#fSK zzf2Wog^zh{rvP2^sF&-cJREgD*}D`vaQ@h(RwO}oyLO{%yf=`NJ>>OjNF$#E6BT<+ zr*e~+*Laxx-a;u3{n=f)+m|*>S9k8{WQ$3g>u@|E?%i$aP(ecGEaW=yvZ$1gXJ|G4_U6cPsyJ^Vfn*{x;MPQH>csv1wkB7! zpPymN2Qb7)IeQH^9B8JfPvygbbIy?v#s0eJnSb&(WcNUEH%AQ@?pR-;@wuK_{loj$ zgSHg)&hnXKI}^NOGqP)wLP?fGcR6bNPZBG6Iakh#xY;oHZ>X`m`+wC?`yQXg|HBPh zLqrYz#FQSY7_v`FJ z(uI?>aP_vA53JujsjtD$@R^!PfqC}4w~d$VQ@_4W6-XzzzLq3Rlk_jWwy_ROMNZb> ze!cIrkFl~t6`rm=AiBcIZRzp=uv8vYO&^bFKed$v5*hg`1tU1MF%A$7Pti&FJPubn znFkZe#>8Fdw@P8joJV>z z@Ns{5z&ACwO5UJ8QOv?k`ksiOj#=vKti6hY;U`{Umomp$_m4+fcAmC>@`*f!G1?M) zUA*gL+Zu(!2L7ptUuJ8PYkNLzdFoqQDSvji>*n;QvjIDnBrbX1+s)%8t|%_|mB3k?(pPR2MZRMehzEQW);^65mk6Of6KM$3MN9F6DS@ zUzG4t{o$H*@+~Ye! zn#^{_1I;!AaYWaAf{wW9f}vGleR2K<8%(c{#?0BUg6gDue+szhUa_Lh22@l_Y1!Yu-EEWR&eR0)WtU?u$*92;KO?{99>APKQIlLOet>`p1?lJjm@O${~Ud%*7ow|%|-cr{zK;z zvyDonABfDe2~6G(&rysWY~dgk7@o_M_{p5a^l80ch~u|<;=?W(l1$al)hg6C`6+;e zSQt%>Whzo;U1USEt+SMD8^d#=kelW8u)TPqPLk;LQ%Ba>7netGu?ThDGk|{^gCv=Qi!??klOs;2qHvGSVkOhDKdSZjnuoqTRsX7jX6Houw9R_p$it3r zpw?pE5wBIYJjJ=1(D6N@UMCMvIqym=@uI`V^kb0|_brXbs1zg@J94?N-(zv-1T)E5<##bov;B^8KN}R2P_d zJMjCxd?s5BPFZoe>AnM5E8`JFNI$^M#4k=eclUH{1~u6|*4X$M*>(Kj15pi8Th*~C z=<5}AJ(Um(duv8kZ|gj&*c&Y6fcUxeKlH>(`1lfeL;j3Et?{~_ zeHR*TD@flwt%A!cnR|8`AZ>h)CGBEK6RCFHylA@6E_zO@n;-dtPlt(j8~iTpUW*#cjQ%IHqjrq>;NE@hYS?0{U#OfJ z-eKCp*8w5$Nq8OPs)c zV*&)g27tQ#1|5&8r)er5wGO$9Wj(>~`cQ?(>f}fHU`CW+LH5hT_qCSa>i%oa)+W+f z4Yq3}s!h129-SnTS3ZasP_@h20ve&*Fw4qKi&tffF;|}mcOM{gn2P*S7m-RqRyYL1 z3lSgFS4`81?O{h3^+$4y3-1UIsQqkP$Z-%18cu6-FnxCZs6=36W>kGQ0W3q=XKy@M z_x!;UVj}e*TiV9V=Q>7Ti3;x@1TIYk=j*({ z{qX5{rZv1>+GK9c+$YmyslAy+kG`m$yy{hU+*>ZneWjUjBD1t0X6#PcWmNSVfpn!W z#KTNQN2V-L!li83Md$=vG>BqR3?2=Dmoz>+@iub$K()rB{O1N>XI? zn>4{DV&+?8ndm{fzQ9Y1hFy^WPt)uR4+kG2N0TubZEMhOrRSo&UA0L| zMOfBZ!@F&8-vYdpyXkDKmgv~KLNe|?Y0!7eTAoY&|JU&06tEuU6#-CRG$Cq_gr_Sn zcs~B`R5FUh;qS#{ujXXr>{0r~cKCL8&QsA8Y~i6!RVWP`@G@~-TwFUg=0lMWa6S0B zOy!rH@uZb47g`9&WU%Oo(2Bmgh0>a?q2jf}NHfpLau3=9@I{IP>E06f4xKafb{&g7 z;STjVBi4iHg+%=^|E-~Ks^2lc*T_N~CTQ;5@wDK^vbx2JN#lFK88oG3_PtEbqo zIhpn79KK_|qj+U!*S3g|(IWO(KX=~Z@gx5HfATPfbAW;MSfx`gtt6Z2Qb%Yv2N>C_ zQRc^X2)_QJl`6B-go^s%P^SX00S$O}Dsui6T@nsCK4nl9TGA{-J3S)l39(8d!=I!69HMFzB?O1cEHg ze4V9yJKk^zkScood_!N;49B5-v|(=4YLJ zyIB+9IGD3Jg;^>Zwj7L8jIn^_ta&Hz0w z{B?8uo=38laD#h~ZBKaUSKiTxTO=}tPX-fSJ&~*U5a!r?8N)rv`l!4-fEg|XV6qTH zsbw?z3v(f@?7@$RwZ4a2UCNNVbqVsebv2_}Sx;E%pl1bb^Y6B-o$IYNyCO$|!$_+v z_V)ryA0QVE!`4&*f$Hpo`4(@1g)=+qT{dE=;T0c9Ip*zO_xuA#^iFQh+}q_q`I)Wj z4uHFEXhFU^{U8cow#~2^_}y%I$vdU-uBsiYG;mf908aZIqZVX-ugR>-<1+ZBDj6^* zzW38ru<2f$4^~o>EG)GBI^X_;F$}vVZxsF0!Uan1KOl3>(-`8t3OPoYc=XMk1v8WR zX?{cks*TfB-@W%4@+(Fr&yE9H+x10we&E^;g&kVNrb8}++g?}ZL#!cnU(R`9R0H4$ z!8Y7@3GY_epVi(%=e-=)?w=JSDKAk0qeg815vzW2^z98-c{*`o3`S5LQJ+WQQI0@9 zf!BcKJpU_nIOA6e6MK7TtzzIEsl|UImONjl;wGmkTsn)vI18svvHx~++`B@lGBkl! zLe5jQCt4eot{Tj4=>1aG(1A~e=BDl=7W%~dU1WWgkN1RpMs()9@XY|E4%c7h#5SxzQLi4+V@ZHp8h35|T~Sy!#TEk0sK;EpoMs6~`b zF(PnYP!{->H`v;^?WhEGqP?uQ%mNCKO`a#~?HID)3}trfzoA$WlCZqK%W&w-eSj2N?REqS%lcG~+U++fmJF8ZzDK+}R4KmZJ z_A?s@s^&MD>MLVGD#}p8AGC?Tt}7=g=r=j?jzb!&VLCE{Mp#d<{74hi*;_4kdM1V4 zsV~!ke{>s2p&8*1Q^{y(W;~8@4uH_yGoSQTjCrgK>~@m(Yu(B~E-1!RF{b#oA{4o7 z`2y&HK~W81wC<35_xbCdY{pErKt!~f8~#I!cg1eeKB*Rdj-QMTM`;r=Ce0`l+cK5~ z{6%ri9m-TQF|ZGTk`PGGHZiv$w}TEZ+^mP~!|qE}Idr)=-0jd!0@;w+dun!jBfw*PV99%n+1Z-!$!$($mPg0i zm%cMq5y=+w>_u6)>;E|`SqN+oZ7l{UoEN}_$BrihSo+>VUx(7aPY1uG-MvT%fkIlL z2b|ui9Iriq0_Db~I_oB$Q{&8WnMfAHgmbR#Ea0vy*sZ`UfoAhHJB=L{ zkv;U`l~7)am@egtFl6%LNhemtZknXUWIZuDh*=vL=wPiSE%IQM{GK&YOXp-7w54^< zDA=pmP1sMSOdGIK&wo&OO2WCnX$LQ>Rd-bVN&PR~O`#{9!5N0Iy;PerxO zQhn__j6z4d?RM;(vmCiT1rIC0>fN$oL6-(5NxIbF7eUM+l#Gk`GJd@E9%8U9O2(xV zYJH=lb$~a^qd|FucJd#V{4q^$8gGsgX80q1(gY>VB3am<_WJgU#*$$hFf~7yYViI^ zZ2-3<`Bu2{+p!m3P2Dr)CI5RdA7sGW2|;l&m2m5Z-4S5*FdOsNp81Kt?zqWu>`fX0 zBQM~nI5PHH>Zwr973!^iv(=Et@?P@Xc3e+Bvk(md(o9%LhG-M026=qK8{2kDvxXAs!lvh``bydct z%bnt!k<0)v0iIm7Oahl)&4;7D9t4FwD2atrxgKnCgY#fC=Cnl zWR{^nvo+&$M(=MWg{WWap1yPH^8|bty*Ut-~}7>XX#dnA%{T*hIiWX zx*HDx|8nD?3>mD=HWi@R9);0$3Yx!zG$Y_4gfEems{|pB@Uf;hjW0(bTF;?8*sxEk zX?)+vsr#bvcR|hkhcPM?hhYUO&wksrE7e&W(BcB-I2FI9n4})AZBL{=yrlTFj#7|l ztU|O-&$jKQL?L{)HXWUfrkK_d4Y_HKKekkxwASwW4E;yxWLv9S^Qf_+e?uPSZI;H$ z?FtUsfLk}5GSPaCBjbL#}dWMM30F_?-$-C~|f zvf+J=SMLEx{bVSi8%yFxaB@rlu3M=93`VL%+gG4lads36re*&>7Ko?jJ;N1*^;wh2uT|qKXbj+8ye5sMRgFi zqTJI#Mzhto>yuy6ppyTtv8W|?g*)ZT*)|C-P&JrXebC!^JAF0zcG+d7qf9Gi!S;Ql zqhMvkc&#mD;=VP#!V|SAyAAzWDPXqE5T2a-I#Ab~Nun8}97Nr-dYF_0ui3SE&627o zf822z^a-nl_aB`88ZlKb#Ak7p#_6A!X352ci2nrHk@C#4c^h2 zOw+}Z=KM+>j;em5p|GXl$(Z?~wYig|_N zXo;zX+mLEj;)Sgt8quSUFEx&;uMXx*#TXTs>s@#Q6n_}D3jMfWLd~|U0q2piHzrvH zAQ#+yTNv0-wDwk?QW&E5?pd6p=*SCW3D4JA7nN*FzM=dp)DCz?5DfNBnc%tvWjbdh zSkQESd!|^zaQ^5<=Zd34a1rX4< zPK`E6x$i>`*CTTxsvC4#?rkV&`CYw>tdb*k;34kpbuX;@Z-yeYt4#9UjA2suwEf8n zR+G1(<5w7|t;OSL9t%~fmDTsT$kNrQ{59*rC0NO^H(BUFc@D1)5H$pN6f8 z_%L@`b4j|He;uslTTP3>?`|`h_nwLRqs2JVqyE+|rMVrc?cGd^146GGi{5Bb@ViON zzwEi2^;9xw~{0U1yq4#7#H*}W%AX0Z{i4#a*egHJ;8j0yS^al(a>s#-oM|U zu~Qlu#^y>l6k5JGkv9ovBGeBC@MGfqt%Z7FKU}MQmthPZ;5Od{YTwbg$GZsaJ{$Pf zu>^ZwT{biW1Z@vkip~xQ@aI~}pG7`=dus9W8was;b@bn7)Kt>2VfdfT+Qkq#lH|`D ziQktLQc8Dx#rf-jh~Yth1^0(vVUOpI3gs77Y5eSF@g5i%80%A!Lx1XUJGtGQ;yWd? z&BHIqLn%pNC3|BUdtj?kFmdTFP}sh4lCbO#S1~dsMsR79v+9)eHi|eo_W(87mcq0; zX*-ghQY|O2qwLM~iO9&#NN(+c$g=>&>ZFMj*OH40U}f*%9mX~h+u*laC`aJ{^8u$b zY{5DY0c{6KsR}>WZI{&uUkvUqYw!B6vJ=TxH z$(cP%R^4HqLKN`X^4mxaJZT;!5adX1gz@}RpC|u%XK1eQv0?_+ZRqfnav zp(rhz$U3>ey8s6(K0W4nS^(C0&Uun@N=yqa}6M8zjR7|4ab5|j1nlw7k}7tk$_N|Lzi(}>m&u+xxXT=|}4cBvW6 zBkhb{eWLeVEx@f`H&vKw*K2!Yz)Y>Q4rg(T*u`o-E7C%x{IM>F92xBll4UjV5DFT> zl=2ZCS~t{LkSv{MW*>1xN+;zPEDJQi-u_L6{HuW>Mss4Qb~Y(yxIZcm`U0vN=yAqP_b`|N|Q%{M8NfXz0P)>SO+~7CZ*;4-HKUTW7GD#Ke@8D zKW0@K=k+VRJ=P(QfB*7!Qsm3OeLFNO^gkml;%pw%L1XsXxpl8kape}3n4E{17bexy zq_XK+MX#0*j6p2GWcttj=(A5zHZ18oVf}Gnx4K8babP0u&Z=sP)tlES+OU(IzPK!t z_X1C)$!q}NDw$;~^Gn~*81HQ)EnO#jpnq~Rv3c@MkS-cK^En5vm2oXDS4oCQ%ShU9 zkfVR)jKOcM>ULY{$@KU}XC2h&^!Bf2H!qBx|1D_CE!!&~Urq;qC){ z8_Y->u<~U1d}3OrCKhh^6x^sYZ+Nm7QKFNiMnwjDof4xC44Z+|G@yWgiQS=#xDp7< z5M>fZi}U!3J_cmODm5y+n3v|-swSx!3B$aeylA!+q0~>|R|@h~fJLE0_D$&}ay$A) zWviS0&47(LQN5GXp-?)l73ywRT|pqC_n>lCFpW%Sw*|QI>A(?%bV0uvvw5JBL*5~W zQ^6^drrW4Ahh8oW0a_EKmG_@;c=4kYo)24HnSEw^Z11Y_7iQkcmHUw3&#c_>_cx>u z&F~W<{;h9;N}w&shC8tCmcha-I1o4vj+<37&tajQl#cB<}35SsbOt1N88kMwJFzS4Y`>I%C@If z(;DOON$xc9PI=`%{i)k;_9nLh7`Nkp=A!@RD)(Zc)7hF_4D&xEEWP9#smXQ+8GAyE zGzb4x@{$JDtt=%T%>Mb3I->1m<&;V-&IgM>mCc1{b?o_a!W76=q8=A5upcR(cx<(qRmrpd z^8LLRY{PL`8f;(rSp3X>O^*HDDf0qQ>>_T9$S>yNJb7|8&8htnH8*!|?K(k&n5HVH z;4kJ`BVXxj9O6xCuD>k3I9BF?=iJF_$^Z5dFkCd~kA&FYlmw*^h|Wz`oK<*5)54jh z$(YPZ9dGp12*mmBpclY)1528;SRbCI#66AQn9_W^kho<{HyJ8OeQA2u2vFKk2Kw$lYk=KmIRDEZ{o^y44i+G{%mu z;ZKDutRAL5ixTT)J8a5dW#99y^67YaXQuP>kjSw7x|i4U>OFZCN)>jE`((CU!?72H zA2+A4o1HAB@vzy3pn1Cxm1(?0)$%V7E%MTWorXTU$p9Z-(gFUEMlLFG9;+SgSFtOu z5nseG#?KqfNGU@ zIDG!sQNPu*K-9F}n*6kjt5oQmw<~&3#KzMYC4RpHS2 zVu{$6rIaeRlQ|jai3&elu_F3(8oH9L+3S~eCbj4hv#)QO;&Z^e{14J>8ce@|>T0~K zYjBVWEfKETe~COHY**d^uGM(=$|h4M!D^)7Wk}VZPzd-2GQ6p7SsuR~nBxr$Q^X?sUUYfV-na>Id4w^vIRKz5MKf>@Ln#J!ziu^VdNJpoc-HVL2Eox+YHq zJ8tHeK)@wyLZ2U=75Wm~Ur?8Kv7vJcD)duG*8*=3w{{0OclNF9+(A8dDR8!vmyrjKnXLp83cPNMn%Xe4+ zuD%4G>s_YfVJL4JL?pzai`_4N zOmzp{2BJ_NJ|CDjd~>#@aJ#~sJT(6PUcVzdO%It25iE{PiE#gAt0TDJOt~chAhuo7 zkHx$vs@ax`cUd6n5Ie6pGIdv*B#D!+nl=F57EQOl&u+D3p-pNgP)svJ>z|SvHU__+RP0$`^_3uK13ER zhUDfmHIS+;g*}ZxI%0EMi)LW8LEGqpU$kzIhyQHY>t%BO{>8HXC>{)<>lK84{v>J9 z%qkl~34Q^kW{s>ilVG2bq%7uku3||Wt!Nj^9(`_?{}D;~=J8okDYFL*W|(d(B10Tr{(2uXdnS_ z$WG^OI^EX_Qt^VAS#BfBV3&l6ScV1`_a3s%Z2Zj=0^3)v(WJ=_XEH1-6#WSt2`3ld zVo5KL4_5#B+uErSKXh!j>&%VZ9IwMhli2$MVjQ1BFr@fS7>gjgv@I!2SP!2yJ3nNR zEt`|^;XaGih`HPhRk$Ps!PF^jCyUXvW;C0sBscB}|1-{650zXIXI$YK$4kL;LI;Rv z#Cj6r!Au(-z2ScnznZJ>OK`3L-e?&I72+w}g*FwVsBV0JIFWVjZ?}$XSE4Ix(vJrr zW4K#Oq1PSZl>I;|^xi}yVKEx#&;ty2kP@9OYh#fE6nkvPDYE2aPkMv-o*mroL%9z4MT>utD+-$bYZCeh&iYPT!_t{hUV5i4 zHSj(5QTf|efB{o+<{s7+eY85w%e%X{wO)0`pJetExMbhkvuuKjjs@F#Y}kDZ1**-^ zwflNkr6YwQ&AE4X%|#lY0!7D4cxARQ6RSb$mdK*EzV@yDMzYZVCKz_v#*%hJu+-)K zxT$7s1k%5v?Y>UcjD$rqlY|_#!f36nG%tf&4?T}gz^&mprGnqJ*6Gbdqe9ojy;!?) zlKV1_LcYa(x1Bzx-`t*o-0ltp&=gE5jMp%H5;a>|VY4y(CCi^_kA!utv~ZGnGi}@< zXzjy1bDU#iUd!+c1i z2Z{nCtj-*-^E_YOT0E$nOnI)R+O&;%@c;<_#+-+LJc|yDINQP~sPU^)TT6c=4wPYM z+MwQ@=6MuGP^&sN)?nv{}K6I=(=p{@nqzWx-JJPQC-#i zJBQujk$cCTcGs<}UY&13%Il$t&Wj$y7Ho&dKI$H39{gAeycT=Se0#gNs^3kTX$G*l zGkwd&SH;$g)l+$7i>!|M;%Ank?hbu3>OG&5qcc~(*$CtIBV_z!+r>=|1Fj)CcX<-B zT~m2WQoPU$*=C{Xu@IE>g$fU9{M#&be^j4-=NSuXdgwB?moJHp`=G5e1v(S6Xd!u6 zuj#l_a9PTts=%kJ0xkR@bJ)pd^8!67nxgtS0ot;D4=izDRbvg)x46}1j!&R?}g zQ0Fm9Sh|lTRabXrn$FKix&D@cYA>kod5&x}C(*vwex+MFyR3%cY(2r+!c}iuiDb{JW^5xg24oozGnDSxt#cXaE)BUG zRkIC;Q?e7+uBLy4c&YUA8VJ);ySP*h{e>f*?8%KC!>hTdlgxwmZp*%2s6g>X7#Kb* z^`8ne+?}pgF;aT8Q=)D_Ywj<_0hxBFEM{-|krscTP3(fvUIw-zfrl!f(t;x*;ObI5 zX*x4DvqINM4oYb1!4HRr&7HEWiecVn2M^;F+>-M+@Gwx?=tdspf221MWzh#9uzTptt{WC56`Z* zZND?-E|*isz59J9o04ndvy0d$X1dK-Es`?fgJj;;sursK~26H6TE zm#O7U)!Ah%*!bUu(50YblRq6X=&5ALlm2wW9zA@=UIMud@_CSjn+YH)(BJsNvPQUi zD`Uuht-?XCi%W%CPzA>XgsD9~SuZ*`nSlo8f~SlfH6nil4(9ERey<)AY|8qh{x7AR zJENauVHQL8sX)l#*!2qCpyl~~Um4iQ7N$Y5p+J`%QY?U)(nmmEDL1yJVg7M{zMeEm zp*^=YzKByoW}Q{|u(|YhTvrCe%R#Ug^mm3MY8GUu6O@;tqV#zy_W|ne@{QFz!}?Ks zKu1Qmg`tW|NPJI#Mj%qU>N2c+uh)yXLrkkZFBo0&D%L%8^PZiOAPA%*@qwc#(9&+k#U&WZ;2==(lxRU!R7s$7VcJrVKdaA0i zU|!ZXmoIhebB#WD%3cIFr{4siK>#1kCy{X20VJQ4MguS;+9iIJ0+yBA5Usxf`3Dd7 zs*8>u3H`;Gs}tR;_WOZBee~vh{wVuP>OlO#Y+9Bhi@G(SWIQPG^V+;JGt0d8UppY> zZCXPY-6&r+Yj*lfsKI`%jek+DZ-4eSWUuVm2BXFwhgO}d?j^6Z6>c}ZYpWE9%MJ2; zAGOH_Vz*GeY=TQ&-0~kwgPzb>eo=pu%KIk_c;@{C5JPU1Vi956ikxrIyax*no{@FZiIb|z~yY;Ov3N6{=qkm{K#1S0*5fH z+%%bM)!&jhCYgV`cDK;a@i$L~K(O4gojzM)AF%`vROjeAAMnavmBa9qT7J|E#LQ$LT2qiDxvO+(U11}V3`0!N>_#1n1Qr( zo^yMl-Pk%h8Id z()$ME#Z)i^pAp0AKSEnLwr#_TB5U##)eJ}T)e;ZvtEV`Ght+4+*M9BGU-@1(o`*f- zTvlGeaY!$x+$F86)A|02r<#_O>p-aRf^O^JrV3;L2ePumNSpW9iT<#1UGQz7)-fRAu+?Fck_eBk`y*Qumy$ZBq8+=bV*^-7S4z3rYXbWEc7nr zeJ2Uq7NlZaRtKan@ehGoUCL{t-zflvuLr)D`|nFPTi?`KXDI-Y?ZE@x5eC8?A+0y5 zet+9N8wYbCul1`vuF1AZar3rWMSTI@ovC29osPoaj$oLyt^bPt>S@CEclI}vLHO=y z8sXgkQFI>eZ2fH=PDb0rO&b!M5MsY zhgnZF#RZp}&C70b5l8<)UpqazOSzBipq5F<^|nvQ@!?~S<=0ZE{-j%Sy!b#HdLHCd zC8S2%s8G!RJidz!BHRZ;r$mxGCkD7m=Ju6s3w1VqU#0C8gfY4|Bx{;dtnHKtGv=Bf z̧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%0ADQu{=x9?brH~34}b}v zdUsAbuduDh^nlic229wmz2Q3W`{Fnumzk>KF%`=R_Wr^?iR+c~{ZSU)S7LjYH|!73 zm{axw%aSoT-<$A$6TO$j7Cj@?`%8VlY#*u~IqjHI1AIv^085*De^tVJ1!Cy9ohm>E z0LEYp0(>~%V;i;;AOH2^^y5E+3JjHyu%q~A-FB#ifvpr=@P+*X3pN5`-dr>l$bW3cWEKQtBIA0Mw~!FqznIDXbyr}3ONd|bJ2m!3ZjsG{FjcP`mAbvNt7 z{P-(_u*!x)el^+UUNm3;TL)F|uyMs>nhLOAH^+|}c^vI~`Y{47`>qHcto$kI$5%w_ z17iu`vi6TQVN99t^K0%k8L;x0mb9WSn!;!_&piw+MGgySJE(d+#xQ1VhZ_H4UVxV{ zVDmjB4Ub*-#pai=myi(Pbv|LJDra2}2CO~uhf`85O<2!Bm78g|Qe+Ii(0WL= z_vfZU67VA+L-kpl8*@aEfe|xdG>04Qv0$zAJXbl5B$e=T}}rD8?# zuJiM+DjVtg3apTp?DTVtW4pz2jrjM<_ZF)mtGAV}eYwIv_XGNOyJ#S-9{csq(}Mt8 z3ckELF{U6j4(WOg@Fjo?pzFGWu#wKottF~Hk92K04y}e{Ven<6sH!h*ht&VeeZNlQ zvm=AB4=Rg^b>M3O_UlFQ08__%m42`u_f}3f3h+AV8LvvLVZCC&?@QLw|Iuax_(~?e zM;fx_fS=s+OIWX8o%vGmHT;)NR{xp`=yDJym5*)kC2=nm5Oy!m?mjorg|!By8>P>q zg0D{ve95$Gzf~6~)7Jl{kh6SSl$-22IL<4M67D(~yz=xb>Q z)Hp8p9x5~!`*vl?SEHX}j!@m$NZWPWbpV_`-%U zIa>8y!f*|Y#ZGX#XJLH=Rvhz*efpj{o?a3yri%gDxdMp-)<$A|Ws*W~M`pJOAw(e7 zW4}gL6}S$)!Q3CR`2(4c$1N6&<`js96k`E1mWEyWIhA>;S26Nsd!AtpSQu`HMER*^ zxq6^$o;(HYDaO3d?dU5Inw)6nGi)1;|xe4#g1AC11|=w}bg=)PP+f4%F@5Y$$ZXAHAmgx<%~Q zo7Jd1>N$-E=Ib^@_`_QDUtq%~B3n=lKugwtiItBMzZe_FzF!it{Sa6$(|;us*bDQ; z4Yu76Oh8wk^=gMPUH1|k@KyiSsd}8hFwj*A?v?Q>YOj|3UgiXFar#l_KmWWOqvV%P zrtHWnK+MvQe-H2Hi)!o3G#w+Lb7vs!}aGBXk zN)_aTk+;WkANPm)U@2!970{FSgH& z{mSfEeD(4~hEO*Pc3Wvj#%YP`7{?zoi-z2Ir{Uw3E3*RgRVp8CZH!mSpi2RnS1{&O zq^BUY$+m+n^me?Ylq9>{w?43Ya{`|D!#a{fJrK4}ANl}a`_v>_A~(u*6IPzH#?;P~ z;hOvcena~hCkI^fKKpe_$MSWWV*F))KCiji_C(X|vzS7}*g@*9Gh3LCRgQeQYYldh z-_n#Y9|6tQGL1#_{PtLv$IO?6{2K!Ub`aSxy56;&aVjzEx(=Q3qA}Ppnaj2l5)*Pw z{$jM}AS@qt(mqWc?zgSIkO42mtGxXxBdAvu@OtGUd;wjm`SQa~WA8^^d$eqLVnF+K z;4O!A@)ny-6aoGrtR{S{Y}oDkde7l}FP>jmcOv$8wBC;_!iV*}Ut205|6Kcj)x95C zeDCqs#+po5)5dX6|3tb`f!L>11oP8r65}xurU;4?bknk`e>Cw*ON?s zSv--{<6ZlER2J-Oo&K`XWLx5^v_6#e@h?e#%H|35w$zk+uVZboPaR6a0LH=>I z^)QY0QzfKss~F#yFuvHMp*ViEs2yJqm(8yR^=sTQIMbbHUb!{ z9P}wxsDPaE5St1GU}7^N--Q%|G47fOX1uW7J9fX(j2n#Ce(SsdmPCM`L0QNEC=NS1 zq6eJqkbaNu(`v^ZdBvng?fF%lvUkn6v86i+-@F(8KwpHaMh)Fp7u}yL*kVx^TB8i} z{z(Nu#;HiyPN?NXnrHS4pb8cgmV(roBrS&U0ctIVE;H+8=||gcX}Vf$myE$kMc~Ef z^gtNT0Z7!TGWWRJHa1LNK^Z6qGiXDE?ekDcc+FcBMdoXt7Tow$JE4&kg|cr;(x34= zZ~PRN7^ecvD0YLjgueFxxB#3C_>4i+NPyqbc%4nWPrN!;HSW5m3mUJyY=`Ukzg5Lx z2aW2-1{)^FzH3w?Li44Iuw4EnXORM6Yt_lLL|PuGf)qx~QjeB*M0=rlx&o#{OFfF^ z#A(%T2yv9f_FC!aOjb@cRsgGfg%rk1#rCgi(S0lR$lpag|p$3UGS-I8;L#8vD#s zkq?~R5|&HYvE%eUy&oS;Md+m}ySS*-K^ zn#J3pbFv*pV%LizE4y;22w%nbZn!Fwo0_g7CN*FVxYT?#Xu+8I`k-^VHrsYzo!7$y z3}g4dPXJj*qvqNM!Y;^$qEtb4@)4<%USz!H>yZ&_^>zCoGhXM}e`t{zHUWI11zV=# z*4?@nn69z`D+};P4UiY+;dPxH?(Mj%MHJriTAOQM6oA(g+sBATtj*Nqur3X?m&%@T z<>XX#Ba8C65jTYVn^Z=QBjhDzTc_srA!$j%dizNsO~?kSvUj)9R2%o1t3v7C`40Fx z^Yq6=OJKiCK5%%QGXY}k9~`13zTYGOv>2dO;ER8+x}tk7tg#S~BrU}by|tKuv6E*1 zM~LpPZAZ=Lh&C_!Ph!`r?biJ86l=B?N{zZC>G!xxDaS;j`&3t-!vct1?uGPvPUGa; zQ*2i+a>H#lV9oJMrNfshNbIR~UnO$G?N*E9<2Q47tbwd<~N#wwD$| z47vn_eVGh=feGsYv9G@QW`(N8W~C!Sz!uL{LVQxo89oQ8UR?> zh6o?Xh1ac!%vkr>HO;&2klI=z3ha9#{Kozjfv|YYm48mkfa&+5TgHIZ4Y!#Fdy(EN z9CX>AH#O~e;l5uo(`&Nb?)_M_Uq=kSQenDY51>mH1zW)btbj9ql9w^S7ap=%L&D$- z#|rr3l;mM;zA9QTuwFaajk^G@%ux9UPhSMTEDg7l0kLHZQc)xB9cR5Fv&GEUJWYRy zFFWgV0$kkq;sgD=bp(1_se8tcCXU?O1Yo%@9WIJNX#m`572=RtPbeV4s$o^v=7 zwO$oko#$4-oeO8ot_ZSP zsYl+|1YRu3WWW@`(_vY?_H!Y`w|Vq+_2Ul5mJ`B$ndsj1q872qP>K8njZN@dpvxCy zy?S3SYw)Fl`+JT6%z%B$ZucYb^+Lgy051by z0A79bRRLeJhTj*qt?2RdtOXlJ&WIV~B_PatJ$^B|rhu;=yTw2Y$5h}8;7T3uAJg1p z0$zGR%5>P{{73r6nJ)=hGx$osGg{5Ivn7R#?y-*10$Z7K;^P2}NKc0OSxQY`FRY{Q zR}404rQ`jwS$Myi{SF^6OF^peUTh|a$zq;+L)(d)H#;>wnfbESmZvS*|0{~{dA~4U zuR-6BG!=%xve^Epn6GZV;glms)PI@qUV#@?HSXRhjMbXUWb;+TPX1sy@NJl^9^?-_ z?nftJZO#Jx14};|P=Yl;aju7xy|fY%9ggb0hDF5q*5k2uvtK6D>%_TMM0P8N%*TCG zPWa4x@i8rnir9bAei-vAZI{!E;aCP~aewRhrVy+d#(bT58uX0Pp*hu;g>lO|E$Frm zMSO4Ik~L!jx~f-pkQb{X6^w2bZQPX4*Cv6gNO*X0cLx#OgB6o~NH-pYLf?bVn4<^6 zQ1!^wj~d}i&w}-rK~(=*ztD(=%O*tog)x{fuwN~fYoETP31$-A*HLb=ZR_i#=~BxH z24PsU(4JC_m;R;k@_bx4#5yoxxemzV3%W1;vO0{F?YdQ1FN8dmq4`qwYXDx#fDP$J zSz|dN2CT=1f$c)N(fU6Yr+Xdi=AYA>{oR=WukFLy_lub?WxEcGh+f9L-L;-biPDY; z9^Xsm^HrSgh56Dnxyh+fqmTA`wwZx z{bo0&5+mrUff$1?(SixPC22+hVn{avl*zX2mx@Q|z9Qg?2COpkHl`o>o2Nvi{a={? zpW6<#dOwziyoUvRCHXKq8$OIeT9DW;(SbEdfMNg60N9lEI$2cU46nu4#5RCd6*0|| zt0FB0sX%M^AQ$kJ*TaY74yBHS?GnJnV*B2BDthOv^ZDA@&>xJ`bVw1hY)XCSgiyiH&$o^fM7^?C%G+q%nvEgdf@3Av}pEwJt#cO1q z3Qw=fO!Yw0r3H}5zo&I6Mx-I9(vi%1#qo&oLY$C#GBD8`G3|&rq#Py$@&de?V|BW3 zS1Q8qYm|np+6`@1>DaJD^!|<}y2qF^55j&S1!;XCi}#nTIpv6IN0|fo5*F-aO)7Fa z-B`T71c2$woSv=j3j6i*_^h0AR3_}>(rPFX_#)7y&A3D5qopBF=$`KR`l*hy&BUk4 zs~-)hAr&b=ODrcM`-O;2xO;)rBLEl10A3t0VCC)a9DKDx0N6M8pXqgxX2e+548~ea znZ{!_0ZR_XFg1WO0a)&UFJS99S=#Zjk0pLrx-q56>d0dPT-=gK*0~8cbX%Bo$-Zgo!<05&$cFW@V0%fJDc z3<1KT`#l&hbG^5Rm;kV~;0t4qi}PNSY<{|*G(cEKkJYG(>;W-hz668`<8|)69ns@a z_Gb*x0A5ji&-2wsJZt&oH64gWzy%PNHjD_cqH{eTyKX-pCu{Zui$h(Bc z+gQiN`YOK0`i9vBSe194I@^9++?AsP#C-eAs~huNBcj17-+vE){a!%E!A|y9YO3x3 z1{rKI_?iM+8)?3HE~O^;0vO^iQT3^I!nHSU58-j@+f~J4-7z~}YTRUde8{Lz_oi<5 zF>=*oN+Zozz8|W3gy^0%VDGE@lJ!{oW#W5vyx%`jW^DWLY$d?!jSBEjS9d)RDI$C{ z+Q!*C6U>)*fl2a_8*Uf<7l(l^fUF+}koEDvbP3o3<0a!>pKa*9EcJM6R=^k7u9$)> zEx4KKit*%0VZab(whGYoh0cAM+QIs-DPvX!Ukuc8w9=6_QCm{5Ud$cvzi|!NAHsTh z2=jI9m5vO&dfG6FCa4PAI4+(uYs~l3i>WqH?dkxML2bUmIvTO+WuOUrZw(kykhZ*8 zmGt8ne6h`huwM2}&V}{?d`a-usiz(<9DGS|>QMrK49wRJet_}wksowN2D-4MjpEQB z-UWQ|-UIh%m9>7(fB~~pyHc2Q71#^-lItz}^LmlfjagB&NTWWF=>Mo6`&2B+;7h=k z%BAoqB@Mk&l|wD8~AHPXXX6_NprwyGRA zO+D)Q1hN=(VI7;zBiL#}fEE}p?7NB(Uo9qLda?n&7Oi;?`Q1fIkPB!|{6ECI0cj> z+_{rB4NE(g_*eG)vJ|9%ElE3~@wQ+t*;erNQE|H$@Fk!N!0ShEsV(430GEO*2=Rw~ zvAs|YzMeMj^j`WHX+}p|%6g&KBM?{%i8;U$5H1tS4Myno3JC35F$8J`=AGZQcA9Y~zBzrqN@C1nMISZ!Kf%Ovc zJyMOjyfIL@w33Lq#fEc@QA7p)3eI5(!&z)7{Yv+&lz;fjm#l8U0 zL|lJPwg3Xcb_irC2=fn6Zmu2qo@MImz*-;TQ$UQ_FJ4Ejmw9}daQr-YTb&b=#riD< zRf*yguBuT)Pm*li@1NRqgnB+9fSl)PFH^ zHwCC7aE^1EL4{@qq%m~YKZh+O%^Pf=1Z1M7_iu4NB|i#U?dlus78b_I{v|lLzF>Jfn7eH5|2V`Wy zj?>jc*e?cHoPrc~jM*(_#74oIt*{n-7&Blj%5P}Cy1$F$*Gey2fwx&`XSBk3@9P03 zk&Rfvg4Mfg6IL)^V8K`eCLru(Y`6`fgRbi|9p*(r(G5FRQ;#>csuaees&K65q~g)G;qg^IOazSaM|jU-q6d5`R%%g? zOM4+pIl}J?+jety_$7Hfv6?BRHvbc&C6)&x75D9Itxt1`m)E`n5dmX$>!H3sSFCc3 zV5;eIpZe90<9m%ifoQ&AbHX_7N>>8iwJb}Tmn$F@$qx9af^=XeV=!Pb-N-+OkuX2( zZ@q&SppF5yZr4Tj*J-qJWm0avdbc%7u8 z_bP`OazhI8oi8OF`D)Zq8?%UgfA-{br<_ZD9Y?Z=qpPJJVYn&)>tf2%XJEmk(e|aM z9NF*dc{mi6j;MeX?H8D^$cUAS$Fd%2!JG*b?bma%obdkIIoJaX44ANA0>pIkpQiP) zw4;pyy!85A16BcC_Y#A#A60l?122v5`_+%C2TO^JSQ%)6`MRH&5xePTt6;&@;wzPu zBYHi;j1_50bG?V}*B2>ydJzlKjR0ejAwDlsNnp5If#YVP!E)a(Jsv5;hSyiB?86G{h3$1-UJS<4 zn0R}yPz@NsS6hT%K-iSu7upfYc$|v7ssGEvW$VrU>SEh^KQbUo3C*_8W;cch9a50d zc(tedl9*0E);Ww~IbjTyJX}qH@2Lj=)?I16dS;M^Eb6!M_#-^Zx-D|GBkRACvt4h; zPWi%ki4DbduXMcbB78nK#=J4#x|de0(|1LIJ=iX(_G9L(INOtsX_(VS+RM^V`x<+N zQTj3JzIYDfxE=)y=y`4)|F%*Zi}QoltNKfvr`Q;~*Z(qldC7V=i0$z{v3*somx8Rt zas;ZNN0YVulafl>O>|#TT;EDHwsl<{)38>s_N$`<%Ni^a+fQAf7UGXX(uzf{H3nfR zrOJGD^xO&T7eE)M9k1`~5BGdJ$%Ji5wc}3lUQ|Fv6_1>ch%A`IZ5ogCUjx_@xFsxD zFDkH=dppK3AwE0Zr;hkuf?E#B7z`LvkzzG*=TN{_X~fMStk-zk8g0KA{ceq1?;E0f z(R>N4`kU*&Bn4?rxe*M!#$I4z#Hs>&cDrxrzl!NEtfy_aqW@D)QQBZ6T@tQFOM^8SkF@pjAK ztGZ@`!CI#qYiPyZ8-!&57JkiB0bVZ#;I%!AX-C$9Nop}C8Z-F1spMA+wEgB!JqBTk z#&6H97aJR|%Ghisj`D*~ADYAVRJCJ?`r#Z!y8^zL^}@p*01O``l6Jf}KObIiXLWI2 zT+8ucS^!c$nB`g|t%R%rl!3BJ8#a8XUebqfl$x)L=-(AZ_fd$?$Fu^# ztZX+#`2MCwm5_c88>>oGV2geraL<3Y0Xt{sGC1p3L&ERN7%{oF?bGd!FBb!{T!7F3 zR?)aM&PRy&dm;+&F~`RU`?VN=+;mmr&hR^WJ}aG1<#%;>zvrEwMeYdUk#W;-W~d&{ zX2&Nb)wt)sQ}uTt_N~B0n;FYy6{G|}SblAYJ`2iur2x{`$FpG}y0F<@j+1V2K3x z2E<|o?MIV2!U#P=2WLJT16zh3-h^*3rcgorNq7T;DXFbd&1e-NhN}X)7H&HsQTjd#;QAt!abIk&X~)mnm5@yXRu1y_%2kl*aV^THRzobj z$6R$iVZRdR9_3MHK_tkZr8SBzYV4q+);YEtv7jiW^r47C!!0K!>M#Owo^%&28 zFA;uWy%>C9UE5AbL_qb{!IwO0Sd1?Z9zGT<*Xh83F^k0(g$BNECwS-o(f{rTGq)t<;0DMuFcN2Aqw zBkM8`-by(b`K8i+=<>$-Z0QLn{!oVK9*wy#0|UY-s;TrNB5J#03Nof2Ta}XB+fg0r zJ^i?|Wlg5J&!DCl=eFJ zOMn@P@VTirbYROgu5`p*oH@v1@X288_ku6EHvw6icFd{8xdL~9FQgnL7K^dEET$pf zIrzdq;f2p#+X=lZv&pLeV;-@|ixIQTX2-&I?VT5yK+$#`=H%lE3B~Z6j-%9Yb*HX` zOd;iXM6w5fFMu+9A*)V%<(3mzAA$V>=<0(n>_Ylc!>uKJBR`Q*?RbmEoO-++E`37m zSBw$(62Rq*R|a3)Z2OmAXxn_iathMZk3Z4%;PWM{m!ut)`5J&1gD;tb5FaVWA3Zf$ z;$EsEw&R5(7=3QNs?|flT}=C47|QgoOZ0imu(5_CFEADf{frx(vW}u z=(|}F;-do6z}J_0WDUN!AEW>;i187T4VwgC%^+h|@%Ht z9{73~n6Hu8p0!q~cFB)ymae_!5RTWrkL*V8*UZP0c`CN^>$RDy6`vP`_KDr^Q^RuX zeOa(SP4|Ahm0JBCBM5`l1ax3XKjwaEB)H$-KFz7c-%>jig!R01Le&v7Ut9^Upru&jveYiRUCf~Yc?tm|mqyF?!@%>=|SuDP1Ef_~OS7pOh8ThBz{J_$Wxwm6x zy9#=c56tUGPbvsAa9~xCO9fs%mTSJ@oW4J*YK+2qo|kcC!gjVw%2CGq^dfvMX2i~2 z(fX@^mA=M1rmQ%kdqaV?s%VD4(WH@TfW#Bfa~yVdloGyI5_Pn;Ohc@Uy^p* zpaL>hK577T2{;=Tt9rD#Y_{qQm~8))&}{qVjMI-2+5anx?tdJm9R+;FN=S=)sqXz~ zhO5SUJuQck=1Z6_^nPTgd+5Hb>2@9H{D{QkKYn_t_aY6qOLHM#KPf3kS(jdq945YJ z0lox_?>SV6|G?IxRAi8K6BD0(XYEB~w-~7D7=WsE?pW7VfFL!}Cf~1>GhH};726Gks>&uS zwrR}%+wp%MZsPeBqjtb&FEC@j)O7WY(eW8{B}+eka8%NeiPDkz+WO$~9rTQR^~zF? z9DT9@YtenIqg$K$!)MXLSS|%w2gZD% z5qECLolI_{4Q)_lqKuC}P!SuvmzCQN@1 zWRAuWcufWUv(>079S;L#rcBpCX2Kf9zTH5BZMs;x%&ZtQU+Di>|MpklOD6pJW0>ky zt@ld7TddV?2yw*btFan#eylScl8STEkTd zPB#LCjr3p=?tY)GCmK<;AbK?bup={I6}Ag$NHAPTHA3r!6l5EKaXighFRgrZ+llYL zr+$wTvG*hGV-^gc>wZV`B>}Tl4x}M%EJ*Bg)qP17q)n#uT>xY;<=E>1xz=c3JN zdwhBHG+${d0Jt^;UajCtM*x>clw#C$qf|i(2y??!rj~eIg|JMWlw&++sycBhDF% z1bppy?>)KJxu=dGz)vY<&;~<%`md=JR*T`1Xtf;T_1NdDX2g(o#C~SNqEJ8I zXfj~3Z*L|uVk5BP%+|ZDx`k0?Ju#>4h_AR}aoG^zXVHC1%zl~8gdL?oir*6|97zwB zQ;t4|eviCA{lUQou&hnfe_oV+%wIwnh&7@GlE8M!`Nn>g-=}NTgkD1c7r+6h40spUaY{E2NIBoY4G(luZ{6C)(ZlB)_qkKk1hW%2Vv3m z{{ATKSoTOr`cWz$QS~U1nJ?ew{*Mxpj{Gi&@C*3*g0@q&KSoYR0#A8+$C3D6J-+Bf zx1wNeSN8NGpmwZ(KCIcVD}pYtT^Q%Sj{`u#JbrnO8GOkYRgjcc6) za#u0+7@4pZh~hLO11bVmGrInamh}E9NDVh#RR??@`+RISbYssdaAeH7uNZK>$66{M zFNg_iRYC3z4?7(nslY3}c3nm8xZQ}#1I!<;#)?JoW$W_5KA~QZyDI@?2FmOjV8UQE zA=VQMM@T!GVuaah3Ay%lHDcWwr2re;ipCtKswAYjMEbEDrHmMB!RBf1K#YM`<29Dc z)Z%yMVcd(T_lhaUIA*ZLb`zKvFa>Q`7T*Izkw{JUpVE!Oa23}^W+}CSa=H=`b@G3ux^H~(*v+3#|1;TJku^<3USf1xJqp!hyVa)pr zyH(PQBEH|N^j^ix4kG+q8Am@kO%)q0{5->=U_+-{6d z1_tbQ<5&PMR6;g|_NaVx&DUS@4r@Imb7nztwkjz{3#{L|@0UTXkNwZ$|7BrDtZxS3 zwHfnuPg@LGo1qfA4ZRmLUlj8f&USr@@%={n@qT8)N|bF8-t!&-Tc3Ncp}Gap7g-C2 z833!FDnnL)t* z-1S~;q?-M|jAeqmeG6=HMPt%d;mYU>Gm_VtpF+FaY$QvGOYNP6n}5GhD* zGlcc?a8335V)l#JE&*OG8;a=vrNI^y!}$4W>HE0t;7j5zE%|!dY`gS*1lOfo|18_j zPJ|sZ;8noa(*!^kTMkJG116wLn6K}n#YD87fc{Is)~5xC3DC-*EZK|%Sg?N(*i!cE z=YjolZ?8m}FB?A5v?I1ffG@M~{sO=f4VW=v0AF8M?3VG$0M7;GS7Ps6S%ANWeeiHbX0Rb+zLsKM&W1F<>w1YDd}Hk3#!oV2tPD1Ez@X_nV0D zw^wETTSzIs&HW$kDfhNxyt=pD7PiJzFy)$JnN@XqAGL_0l{CsmoqgO)a*P(OgbX*fehlqeJ3huM+%YhX3<6o?7%UA(g zwwfrKFJ{6J5Zdc~JHSH4qg?r#i|`k8+}O)2q$71)A2MzA0Pio?d!3Ydb-3R)jTc`s z0=#my09dCG-_vu58*X3U*;{4tJw2b=xdGFCX~S&+UZkym;r}I1 zMYh0~1Xn%+jL9P4OC9gs`-?#sMsT`s>AzTb|J?n)ZUcO=|5qvu7_?uq76#13_m+6H z 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 nJIypfW8R>w2#PUkP$@s^&sXg9Qstreet + ''') + .eq('address->postcode', 90210); + ``` + - id: return-data-as-csv + name: Return data as CSV + description: | + By default the data is returned in JSON format, however you can also request for it to be returned as Comma Separated Values. + code: | + ```dart + final data = await supabase + .from('users') + .select() + .csv(); + ``` + + - id: insert() + description: | + Performs an INSERT into the table. + title: 'Create data: insert()' + examples: + - id: create-a-record + name: Create a record + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .insert({'name': 'The Shire', 'country_id': 554}); + ``` + - id: bulk-create + name: Bulk create + code: | + ```dart + final res = await supabase.from('cities').insert([ + {'name': 'The Shire', 'country_id': 554}, + {'name': 'Rohan', 'country_id': 555}, + ]); + ``` + + - id: update() + description: | + Performs an UPDATE on the table. + title: 'Modify data: update()' + notes: | + - `update()` should always be combined with [Filters](/docs/reference/dart/using-filters) to target the item(s) you wish to update. + examples: + - id: updating-your-data + name: Updating your data + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Middle Earth' }) + .match({ 'name': 'Auckland' }); + ``` + - id: updating-json-data + name: Updating JSON data + description: | + Postgres offers a + [number of operators](https://www.postgresql.org/docs/current/functions-json.html) + for working with JSON data. Right now it is only possible to update an entire JSON document, + but we are [working on ideas](https://github.com/PostgREST/postgrest/issues/465) for updating individual keys. + code: | + ```dart + final data = await supabase + .from('users') + .update({ + 'address': { + 'street': 'Melrose Place', + 'postcode': 90210 + } + }) + .eq('address->postcode', 90210); + ``` + + - id: upsert() + description: | + Performs an UPSERT into the table. + title: 'Upsert data: upsert()' + notes: | + - Primary keys should be included in the data payload in order for an update to work correctly. + - Primary keys must be natural, not surrogate. There are however, [workarounds](https://github.com/PostgREST/postgrest/issues/1118) for surrogate primary keys. + examples: + - id: upsert-your-data + name: Upsert your data + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('messages') + .upsert({ 'id': 3, 'message': 'foo', 'username': 'supabot' }); + ``` + - id: upserting-into-tables-with-constraints + name: Upserting into tables with constraints + description: | + Running the following will cause supabase to upsert data into the `users` table. + If the username 'supabot' already exists, the `onConflict` argument tells supabase to overwrite that row + based on the column passed into `onConflict`. + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('users') + .upsert({ 'username': 'supabot' }, { 'onConflict': 'username' }); + ``` + - id: return-the-exact-number-of-rows + name: Return the exact number of rows + description: | + Allowed values for count option are `exact`, `planned` and `estimated`. + code: | + ```dart + final res = await supabase.from('users').upsert( + {'id': 3, 'message': 'foo', 'username': 'supabot'}, + options: const FetchOptions(count: CountOption.exact), + ); + + final data = res.data; + final count = res.count; + ``` + + - id: delete() + description: | + Performs a DELETE on the table. + title: 'Delete data: delete()' + notes: | + - `delete()` should always be combined with [Filters](/docs/reference/dart/using-filters) to target the item(s) you wish to delete. + examples: + - id: delete-records + name: Delete records + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .match({ 'id': 666 }); + ``` + + - id: rpc() + title: 'Stored Procedures: rpc()' + description: | + You can call stored procedures as a "Remote Procedure Call". + + That's a fancy way of saying that you can put some logic into your database then call it from anywhere. + It's especially useful when the logic rarely changes - like password resets and updates. + examples: + - id: call-a-stored-procedure + name: Call a stored procedure + isSpotlight: true + description: This is an example invoking a stored procedure. + code: | + ```dart + final data = await supabase + .rpc('hello_world'); + ``` + - id: with-parameters + name: With Parameters + code: | + ```dart + final data = await supabase + .rpc('echo_city', params: { 'name': 'The Shire' }); + ``` + + - id: subscribe() + description: | + Subscribe to realtime changes in your database. + title: 'on().subscribe()' + notes: | + - Realtime is disabled by default for new Projects for better database performance and security. You can turn it on by [managing replication](/docs/guides/api#managing-realtime). + - If you want to receive the "previous" data for updates and deletes, you will need to set `REPLICA IDENTITY` to `FULL`, like this: `ALTER TABLE your_table REPLICA IDENTITY FULL;` + examples: + - id: listen-to-all-database-changes + name: Listen to all database changes + isSpotlight: true + code: | + ```dart + supabase.channel('*').on( + RealtimeListenTypes.postgresChanges, + ChannelFilter(event: '*', schema: '*'), + (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }, + ).subscribe(); + ``` + - id: listening-to-a-specific-table + name: Listening to a specific table + code: | + ```dart + supabase.channel('public:countries').on( + RealtimeListenTypes.postgresChanges, + ChannelFilter(event: '*', schema: 'public', table: 'countries'), + (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }, + ).subscribe(); + ``` + - id: listening-to-inserts + name: Listening to inserts + code: | + ```dart + supabase.channel('public:countries').on( + RealtimeListenTypes.postgresChanges, + ChannelFilter(event: 'INSERT', schema: 'public', table: 'countries'), + (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }, + ).subscribe(); + ``` + - id: listening-to-updates + name: Listening to updates + description: | + By default, Supabase will send only the updated record. If you want to receive the previous values as well you can + enable full replication for the table you are listening too: + + ```sql + alter table "your_table" replica identity full; + ``` + code: | + ```dart + supabase.channel('public:countries').on( + RealtimeListenTypes.postgresChanges, + ChannelFilter(event: 'UPDATE', schema: 'public', table: 'countries'), + (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }, + ).subscribe(); + ``` + - id: listening-to-deletes + name: Listening to deletes + description: | + By default, Supabase does not send deleted records. If you want to receive the deleted record you can + enable full replication for the table you are listening too: + + ```sql + alter table "your_table" replica identity full; + ``` + code: | + ```dart + supabase.channel('public:countries').on( + RealtimeListenTypes.postgresChanges, + ChannelFilter(event: 'DELETE', schema: 'public', table: 'countries'), + (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }, + ).subscribe(); + ``` + - id: listening-to-multiple-events + name: Listening to multiple events + description: You can chain listeners if you want to listen to multiple events for each table. + code: | + ```dart + supabase.channel('public:countries').on(RealtimeListenTypes.postgresChanges, + ChannelFilter(event: 'INSERT', schema: 'public', table: 'countries'), + (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }).on(RealtimeListenTypes.postgresChanges, + ChannelFilter(event: 'DELETE', schema: 'public', table: 'countries'), + (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }).subscribe(); + ``` + - id: listening-to-row-level-changes + name: Listening to row level changes + description: You can listen to individual rows using the format `{table}:{col}=eq.{val}` - where `{col}` is the column name, and `{val}` is the value which you want to match. + code: | + ```dart + supabase.channel('public:countries:id=eq.200').on( + RealtimeListenTypes.postgresChanges, + ChannelFilter( + event: 'UPDATE', + schema: 'public', + table: 'countries', + filter: 'id=eq.200', + ), (payload, [ref]) { + print('Change received: ${payload.toString()}'); + }).subscribe(); + ``` + + - id: removeChannel() + description: | + Unsubscribes and removes Realtime channel from Realtime client. + title: 'removeChannel()' + notes: | + - Removing a channel is a great way to maintain the performance of your project's Realtime service as well as your database if you're listening to Postgres changes. Supabase will automatically handle cleanup 30 seconds after a client is disconnected, but unused channels may cause degradation as more clients are simultaneously subscribed. + examples: + - id: remove-a-channel + name: Remove a channel + isSpotlight: true + code: | + ```dart + final status = await supabase.removeChannel(channel); + ``` + + - id: removeAllChannels() + description: | + Unsubscribes and removes all Realtime channels from Realtime client. + title: 'removeAllChannels()' + notes: | + - Removing channels is a great way to maintain the performance of your project's Realtime service as well as your database if you're listening to Postgres changes. Supabase will automatically handle cleanup 30 seconds after a client is disconnected, but unused channels may cause degradation as more clients are simultaneously subscribed. + examples: + - id: remove-all-channels + name: Remove all channels + isSpotlight: true + code: | + ```dart + final statuses = await supabase.removeAllChannels(); + ``` + + - id: getChannels() + description: | + Returns all Realtime channels. + title: 'getChannels()' + examples: + - id: get-all-channels + name: Get all channels + isSpotlight: true + code: | + ```dart + final channels = supabase.getChannels(); + ``` + + - id: stream() + description: | + Notifies of data at the queried table. + title: 'stream()' + notes: | + - `stream()` will emit the initial data as well as any further change on the database as `Stream` of `List>` by combining Postgrest and Realtime. + - Takes a list of primary key columns as its argument. + examples: + - id: listening-to-a-specific-table + name: Listening to a specific table + isSpotlight: true + code: | + ```dart + supabase.from('countries') + .stream(primaryKey: ['id']) + .listen((List> data) { + // Do something awesome with the data + }); + ``` + - id: listening-to-a-specific-rows-within-a-table + name: Listening to a specific rows within a table + description: | + You can listen to individual rows using the format `{table}:{col}=eq.{val}` - where `{col}` is the column name, and `{val}` is the value which you want to match. + This syntax is the as how you can filter data in Realtime + code: | + ```dart + supabase.from('countries') + .stream(primaryKey: ['id']) + .eq('id', '120') + .listen((List> data) { + // Do something awesome with the data + }); + ``` + - id: with`order()` + name: With `order()` + code: | + ```dart + supabase.from('countries') + .stream(primaryKey: ['id']) + .order('name', ascending: true) + .listen((List> data) { + // Do something awesome with the data + }); + ``` + - id: with`limit()` + name: With `limit()` + code: | + ```dart + supabase.from('countries') + .stream(primaryKey: ['id']) + .order('name', ascending: true) + .limit(10) + .listen((List> data) { + // Do something awesome with the data + }); + ``` + - id: using`stream()`with`streambuilder` + name: Using `stream()` with `StreamBuilder` + description: | + When using `stream()` with a `StreamBuilder` within your Flutter application, make sure to store your stream in a variable to prevent refetching upon rebuilding. + code: | + ```dart + final supabase = Supabase.instance.client; + + class MyWidget extends StatefulWidget { + const MyWidget({Key? key}) : super(key: key); + + @override + State createState() => _MyWidgetState(); + } + + class _MyWidgetState extends State { + // Persist the stream in a local variable to prevent refetching upon rebuilds + final _stream = supabase.from('countries').stream(primaryKey: ['id']); + + @override + Widget build(BuildContext context) { + return StreamBuilder( + stream: _stream, + builder: (context, snapshot) { + // Return your widget with the data from the snapshot + }, + ); + } + } + ``` + + - id: storage.listBuckets() + description: | + Retrieves the details of all Storage buckets within an existing product. + title: 'listBuckets()' + $ref: '@supabase/storage-js.packages/StorageBucketApi.default.listBuckets' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` + - `objects` permissions: none + examples: + - id: list-buckets + name: List buckets + isSpotlight: true + code: | + ```dart + final List buckets = await supabase + .storage + .listBuckets(); + ``` + + - id: storage.getBucket() + description: | + Retrieves the details of an existing Storage bucket. + title: 'getBucket()' + $ref: '@supabase/storage-js.packages/StorageBucketApi.default.getBucket' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` + - `objects` permissions: none + examples: + - id: get-bucket + name: Get bucket + isSpotlight: true + code: | + ```dart + final Bucket bucket = await supabase + .storage + .getBucket('avatars'); + ``` + + - id: storage.createBucket() + description: | + Creates a new Storage bucket + title: 'createBucket()' + notes: | + - Policy permissions required: + - `buckets` permissions: `insert` + - `objects` permissions: none + examples: + - id: create-bucket + name: Create bucket + isSpotlight: true + code: | + ```dart + final String bucketId = await supabase + .storage + .createBucket('avatars'); + ``` + + - id: storage.emptyBucket() + description: | + Removes all objects inside a single bucket. + title: 'emptyBucket()' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` + - `objects` permissions: `select` and `delete` + examples: + - id: empty-bucket + name: Empty bucket + isSpotlight: true + code: | + ```dart + final String result = await supabase + .storage + .emptyBucket('avatars'); + ``` + - id: storage.updateBucket() + description: | + Updates a new Storage bucket + title: 'updateBucket()' + notes: | + - Policy permissions required: + - `buckets` permissions: `update` + - `objects` permissions: none + examples: + - id: update-bucket + name: Update bucket + isSpotlight: true + code: | + ```dart + final res = await supabase + .storage + .updateBucket('avatars', const BucketOptions(public: false)); + ``` + + - id: storage.deleteBucket() + description: | + Deletes an existing bucket. A bucket can't be deleted with existing objects inside it. You must first `empty()` the bucket. + title: 'deleteBucket()' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` and `delete` + - `objects` permissions: none + examples: + - id: delete-bucket + name: Delete bucket + isSpotlight: true + code: | + ```dart + final String result = await supabase + .storage + .deleteBucket('avatars'); + ``` + + - id: storage.from.upload() + description: | + Uploads a file to an existing bucket. + title: 'from.upload()' + $ref: '@supabase/storage-js.packages/StorageFileApi.default.upload' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `insert` + examples: + - id: upload-file + name: Upload file + isSpotlight: true + code: | + ```dart + final avatarFile = File('path/to/file'); + final String path = await supabase.storage.from('avatars').upload( + 'public/avatar1.png', + avatarFile, + fileOptions: const FileOptions(cacheControl: '3600', upsert: false), + ); + ``` + + - id: storage.from.update() + description: | + Replaces an existing file at the specified path with a new one. + title: 'from.update()' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `update` and `select` + examples: + - id: update-file + name: Update file + isSpotlight: true + code: | + ```dart + final avatarFile = File('path/to/local/file'); + final String path = await supabase.storage.from('avatars').update( + 'public/avatar1.png', + avatarFile, + fileOptions: const FileOptions(cacheControl: '3600', upsert: false), + ); + ``` + + - id: storage.from.move() + description: | + Moves an existing file, optionally renaming it at the same time. + title: 'from.move()' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `update` and `select` + examples: + - id: move-file + name: Move file + isSpotlight: true + code: | + ```dart + final String result = await supabase + .storage + .from('avatars') + .move('public/avatar1.png', 'private/avatar2.png'); + ``` + + - id: storage.from.createSignedUrl() + description: | + Create signed url to download file without requiring permissions. This URL can be valid for a set number of seconds. + title: 'from.createSignedUrl()' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `select` + examples: + - id: create-signed-url + name: Create Signed URL + isSpotlight: true + code: | + ```dart + final String signedUrl = await supabase + .storage + .from('avatars') + .createSignedUrl('avatar1.png', 60); + ``` + + - id: storage.from.getPublicUrl() + description: | + Retrieve URLs for assets in public buckets + title: 'from.getPublicUrl()' + notes: | + - The bucket needs to be set to public, either via [updateBucket()](/docs/reference/javascript/storage-updatebucket) or by going to Storage on [app.supabase.com](https://app.supabase.com), clicking the overflow menu on a bucket and choosing "Make public" + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: none + examples: + - id: returns-the-url-for-an-asset-in-a-public-bucket + name: Returns the URL for an asset in a public bucket + isSpotlight: true + code: | + ```dart + final String publicUrl = supabase + .storage + .from('public-bucket') + .getPublicUrl('avatar1.png'); + ``` + + - id: storage.from.download() + description: | + Downloads a file. + title: 'from.download()' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `select` + examples: + - id: download-file + name: Download file + isSpotlight: true + code: | + ```dart + final Uint8List file = await supabase + .storage + .from('avatars') + .download('avatar1.png'); + ``` + + - id: storage.from.remove() + description: | + Deletes files within the same bucket + title: 'from.remove()' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `delete` and `select` + examples: + - id: delete-file + name: Delete file + isSpotlight: true + code: | + ```dart + final List objects = await supabase + .storage + .from('avatars') + .remove(['avatar1.png']); + ``` + + - id: storage.from.list() + description: | + Lists all the files within a bucket. + title: 'from.list()' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `select` + examples: + - id: list-files-in-a-bucket + name: List files in a bucket + isSpotlight: true + code: | + ```dart + final List objects = await supabase + .storage + .from('avatars') + .list(); + ``` + - id: Using Modifiers + title: Using Modifiers + description: | + Filters work on the row level—they allow you to return rows that + only match certain conditions without changing the shape of the rows. + Modifiers are everything that don't fit that definition—allowing you to + change the format of the response (e.g., returning a CSV string). + + Modifiers must be specified after filters. Some modifiers only apply for + queries that return rows (e.g., `select()` or `rpc()` on a function that + returns a table response). + + - id: limit() + description: | + Limits the result with the specified count. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .limit(1); + ``` + - id: with-embedded-resources + name: With embedded resources + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, cities(name)') + .eq('name', 'United States') + .limit(1, foreignTable: 'cities' ); + ``` + + - id: order() + description: | + Orders the result with the specified column. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .order('id', ascending: false ); + ``` + - id: with-embedded-resources + name: With embedded resources + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, cities(name)') + .eq('name', 'United States') + .order('name', foreignTable: 'cities'); + ``` + + - id: range() + description: | + Limits the result to rows within the specified range, inclusive. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .range(0,3); + ``` + + - id: single() + description: | + Retrieves only one row from the result. Result must be one row (e.g. using limit), otherwise this will result in an error. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .single(); + ``` + + - id: Using Filters + title: Using Filters + description: | + Filters allow you to only return rows that match certain conditions. + + Filters can be used on `select()`, `update()`, and `delete()` queries. + + If a Database function returns a table response, you can also apply filters. + + ### Applying Filters + + Filters must be applied after any of `select()`, `update()`, `upsert()`, + `delete()`, and `rpc()` and before + [modifiers](/docs/reference/dart/using-modifiers). + + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .eq('name', 'The Shire'); // Correct + + final data = await supabase + .from('cities') + .eq('name', 'The Shire') // Incorrect + .select('name, country_id'); + ``` + + ### Chaining + + Filters can be chained together to produce advanced queries. For example, + to query cities with population between 1,000 and 10,000: + + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .gte('population', 1000) + .lt('population', 10000); + ``` + + ### Conditional Chaining + + Filters can be built up one step at a time and then executed. For example: + + ```dart + final filterByName = null; + final filterPopLow = 1000; + final filterPopHigh = 10000; + + var query = supabase + .from('cities') + .select('name, country_id'); + + if (filterByName != null) { query = query.eq('name', filterByName); } + if (filterPopLow != null) { query = query.gte('population', filterPopLow); } + if (filterPopHigh != null) { query = query.lt('population', filterPopHigh); } + + final data = await query; + ``` + + ### Filter by values within a JSON column + + + + + ```sql + create table + users ( + id int8 primary key, + name text, + address jsonb + ); + + insert into + users (id, name, address) + values + (1, 'Michael', '{ "postcode": 90210 }'), + (2, 'Jane', null); + ``` + + + + + ```dart + final data = await supabase + .from('users') + .select() + .eq('address->postcode', 90210); + ``` + + + + + ```json + { + "data": [ + { + "id": 1, + "name": "Michael", + "address": { + "postcode": 90210 + } + } + ], + "status": 200, + "statusText": "OK" + } + ``` + + + + + ### Filter Foreign Tables + + You can filter on foreign tables in your `select()` query using dot + notation: + + + + + ```sql + create table + countries (id int8 primary key, name text); + create table + cities ( + id int8 primary key, + country_id int8 not null references countries, + name text + ); + + insert into + countries (id, name) + values + (1, 'Germany'), + (2, 'Indonesia'); + insert into + cities (id, country_id, name) + values + (1, 2, 'Bali'), + (2, 1, 'Munich'); + ``` + + + + + ```dart + final data = await supabase + .from('countries') + .select(''' + name, + cities!inner ( + name + ) + ''') + .eq('cities.name', 'Bali'); + ``` + + + + + ```json + { + "data": [ + { + "name": "Indonesia", + "cities": [ + { + "name": "Bali" + } + ] + } + ], + "status": 200, + "statusText": "OK" + } + ``` + + + + + - id: .or() + description: | + Finds all rows satisfying at least one of the filters. + notes: | + - `.or()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values. + + ```dart + .or('id.in.(6,7),arraycol.cs.{"a","b"}') // Use Postgres list () and 'in' for in_ filter. Array {} and 'cs' for contains. + .or('id.in.(${mylist.join(',')}),arraycol.cs.{${mylistArray.join(',')}}') // You can insert a Dart list for list or array column. + .or('id.in.(${mylist.join(',')}),rangecol.cs.(${mylistRange.join(',')}]') // You can insert a Dart list for list or range column. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .or('id.eq.20,id.eq.30'); + ``` + - id: use`or`with`and` + name: Use `or` with `and` + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .or('id.gt.20,and(name.eq.New Zealand,name.eq.France)'); + ``` + + - id: .not() + description: | + Finds all rows which doesn't satisfy the filter. + notes: | + - `.not()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values. + + ```dart + .not('name','eq','Paris') + .not('arraycol','cs','{"a","b"}') // Use Postgres array {} for array column and 'cs' for contains. + .not('rangecol','cs','(1,2]') // Use Postgres range syntax for range column. + .not('id','in','(6,7)') // Use Postgres list () and 'in' for in_ filter. + .not('id','in','(${mylist.join(',')})') // You can insert a Dart list array. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .not('name', 'eq', 'Paris'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .not('name', 'eq', 'Paris'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .not('name', 'eq', 'Paris'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities) + .not('name', 'eq', 'Paris'); + ``` + + - id: .match() + description: | + Finds all rows whose columns match the specified `query` object. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .match({'name': 'Beijing', 'country_id': 156}); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .match({'name': 'Beijing', 'country_id': 156}); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .match({'name': 'Beijing', 'country_id': 156}); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .match({'name': 'Beijing', 'country_id': 156}); + ``` + + - id: .eq() + description: | + Finds all rows whose value on the stated `column` exactly matches the specified `value`. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .eq('name', 'The shire'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .eq('name', 'San Francisco'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .eq('name', 'Mordor'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .eq('name', 'San Francisco'); + ``` + + - id: .neq() + description: | + Finds all rows whose value on the stated `column` doesn't match the specified `value`. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .neq('name', 'The shire'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .neq('name', 'San Francisco'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .neq('name', 'Mordor'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .neq('name', 'Lagos'); + ``` + + - id: .gt() + description: | + Finds all rows whose value on the stated `column` is greater than the specified `value`. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .gt('country_id', 250); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .gt('country_id', 250); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .gt('country_id', 250); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .gt('country_id', 250); + ``` + + - id: .gte() + description: | + Finds all rows whose value on the stated `column` is greater than or equal to the specified `value`. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .gte('country_id', 250); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .gte('country_id', 250); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .gte('country_id', 250); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .gte('country_id', 250); + ``` + + - id: .lt() + description: | + Finds all rows whose value on the stated `column` is less than the specified `value`. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .lt('country_id', 250); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .lt('country_id', 250); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .lt('country_id', 250); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .lt('country_id', 250); + ``` + + - id: .lte() + description: | + Finds all rows whose value on the stated `column` is less than or equal to the specified `value`. + $ref: '@supabase/postgrest-js.PostgrestFilterBuilder.lte' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .lte('country_id', 250); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .lte('country_id', 250); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .lte('country_id', 250); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .lte('country_id', 250); + ``` + + - id: .like() + description: | + Finds all rows whose value in the stated `column` matches the supplied `pattern` (case sensitive). + $ref: '@supabase/postgrest-js.PostgrestFilterBuilder.lte' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .like('name', '%la%'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .like('name', '%la%'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .like('name', '%la%'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .like('name', '%la%'); + ``` + + - id: .ilike() + description: | + Finds all rows whose value in the stated `column` matches the supplied `pattern` (case insensitive). + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .ilike('name', '%la%'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .ilike('name', '%la%'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .ilike('name', '%la%'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .ilike('name', '%la%'); + ``` + + - id: .is_() + description: | + A check for exact equality (null, true, false), finds all rows whose value on the stated `column` exactly match the specified `value`. + + `is_` and `in_` filter methods are suffixed with `_` to avoid collisions with reserved keywords. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .is_('name', null); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .is_('name', null); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .is_('name', null); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .is_('name', null); + ``` + + - id: .in_() + description: | + Finds all rows whose value on the stated `column` is found on the specified `values`. + + `is_` and `in_` filter methods are suffixed with `_` to avoid collisions with reserved keywords. + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .in_('name', ['Rio de Janeiro', 'San Francisco']); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .in_('name', ['Rio de Janeiro', 'San Francisco']); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .in_('name', ['Rio de Janeiro', 'San Francisco']); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .in_('name', ['Rio de Janeiro', 'San Francisco']); + ``` + + - id: .contains() + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, main_exports') + .contains('main_exports', ['oil']); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .contains('main_exports', ['oil']); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .contains('main_exports', ['oil']); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .contains('main_exports', ['oil']); + ``` + + - id: .containedBy() + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, main_exports') + .containedBy('main_exports', ['cars', 'food', 'machine']); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .containedBy('main_exports', ['orks', 'surveillance', 'evil']); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .containedBy('main_exports', ['cars', 'food', 'machine']); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .containedBy('main_exports', ['cars', 'food', 'machine']); + ``` + + - id: .rangeLt() + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeLt('population_range_millions', '[150, 250]'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .rangeLt('population_range_millions', '[150, 250]'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .rangeLt('population_range_millions', '[150, 250]'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .rangeLt('population_range_millions', '[150, 250]'); + ``` + + - id: .rangeGt() + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeGt('population_range_millions', '[150, 250]'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .rangeGt('population_range_millions', '[150, 250]'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .rangeGt('population_range_millions', '[150, 250]'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .rangeGt('population_range_millions', '[150, 250]'); + ``` + + - id: .rangeGte() + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeGte('population_range_millions', '[150, 250]'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .rangeGte('population_range_millions', '[150, 250]'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .rangeGte('population_range_millions', '[150, 250]'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .rangeGte('population_range_millions', '[150, 250]'); + ``` + + - id: .rangeLte() + $ref: '@supabase/postgrest-js.PostgrestFilterBuilder.rangeLte' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeLte('population_range_millions', '[150, 250]'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .rangeLte('population_range_millions', '[150, 250]'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .rangeLte('population_range_millions', '[150, 250]'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .rangeLte('population_range_millions', [150, 250]); + ``` + + - id: .rangeAdjacent() + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeAdjacent('population_range_millions', '[70, 185]'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .rangeAdjacent('population_range_millions', '[70, 185]'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .rangeAdjacent('population_range_millions', '[70, 185]'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .rangeAdjacent('population_range_millions', '[70, 185]'); + ``` + + - id: .overlaps() + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('countries') + .select('name, id, main_exports') + .overlaps('main_exports', ['computers', 'minerals']); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('countries') + .update({ 'name': 'Mordor' }) + .overlaps('main_exports', ['computers', 'minerals']); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('countries') + .delete() + .overlaps('main_exports', ['computers', 'minerals']); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_countries') + .overlaps('main_exports', ['computers', 'minerals']); + ``` + + - id: .textSearch() + description: | + Finds all rows whose tsvector value on the stated `column` matches to_tsquery(query). + examples: + - id: text-search + name: Text search + code: | + ```dart + final data = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', "'fat' & 'cat'", + config: 'english' + ); + ``` + - id: basic-normalization + name: Basic normalization + description: Uses PostgreSQL's `plainto_tsquery` function. + code: | + ```dart + final data = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', "'fat' & 'cat'", + type: TextSearchType.plain, + config: 'english' + ); + ``` + - id: full-normalization + name: Full normalization + description: Uses PostgreSQL's `phraseto_tsquery` function. + code: | + ```dart + final data = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', "'fat' & 'cat'", + type: TextSearchType.phrase, + config: 'english' + ); + ``` + - id: full-normalization + name: Full normalization + description: | + Uses PostgreSQL's `websearch_to_tsquery` function. + This function will never raise syntax errors, which makes it possible to use raw user-supplied input for search, and can be used + with advanced operators. + + - `unquoted text`: text not inside quote marks will be converted to terms separated by & operators, as if processed by plainto_tsquery. + - `"quoted text"`: text inside quote marks will be converted to terms separated by <-> operators, as if processed by phraseto_tsquery. + - `OR`: the word “or” will be converted to the | operator. + - `-`: a dash will be converted to the ! operator. + + code: | + ```dart + final data = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', "'fat or cat'", + type: TextSearchType.websearch, + config: 'english' + ); + ``` + + - id: .filter() + description: | + Finds all rows whose `column` satisfies the filter. + notes: | + - `.filter()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values, so it should only be used as an escape hatch in case other filters don't work. + ```dart + .filter('arraycol','cs','{"a","b"}') // Use Postgres array {} and 'cs' for contains. + .filter('rangecol','cs','(1,2]') // Use Postgres range syntax for range column. + .filter('id','in','(6,7)') // Use Postgres list () and 'in' for in_ filter. + .filter('id','cs','{${mylist.join(',')}}') // You can insert a Dart array list. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, country_id') + .filter('name', 'in', '("Paris","Tokyo")'); + ``` + - id: with`update()` + name: With `update()` + code: | + ```dart + final data = await supabase + .from('cities') + .update({ 'name': 'Mordor' }) + .filter('name', 'in', '("Paris","Tokyo")'); + ``` + - id: with`delete()` + name: With `delete()` + code: | + ```dart + final data = await supabase + .from('cities') + .delete() + .filter('name', 'in', '("Paris","Tokyo")'); + ``` + - id: with`rpc()` + name: With `rpc()` + code: | + ```dart + // Only valid if the Stored Procedure returns a table type. + final data = await supabase + .rpc('echo_all_cities') + .filter('name', 'in', '("Paris","Tokyo")'); + ``` + - id: filter-embedded-resources + name: Filter embedded resources + code: | + ```dart + final data = await supabase + .from('cities') + .select('name, countries ( name )') + .filter('countries.name', 'in', '("France","Japan")'); + ``` diff --git a/spec/supabase_js_v1_temp_new_shape.yml b/spec/supabase_js_v1_temp_new_shape.yml new file mode 100644 index 00000000000..7b64c42d6be --- /dev/null +++ b/spec/supabase_js_v1_temp_new_shape.yml @@ -0,0 +1,2733 @@ +openref: 0.1 + +info: + id: reference/supabase-js + title: Supabase Client + description: | + + Supabase JavaScript. + + definition: ../../spec/enrichments/tsdoc_v1/combined.json + specUrl: https://github.com/supabase/supabase/edit/master/spec/supabase_js_v1.yml + slugPrefix: '/' + libraries: + - name: 'JavaScript' + id: 'js' + version: '0.0.1' + +functions: + - id: auth.signUp() + title: 'signUp()' + $ref: '@supabase/gotrue-js.GoTrueClient.signUp' + notes: | + - By default, the user will need to verify their email address before logging in. If you would like to change this, you can disable "Email Confirmations" by going to Authentication -> Settings on [app.supabase.com](https://app.supabase.com) + - If "Email Confirmations" is turned on, a `user` is returned but `session` will be null + - If "Email Confirmations" is turned off, both a `user` and a `session` will be returned + - When the user confirms their email address, they will be redirected to localhost:3000 by default. To change this, you can go to Authentication -> Settings on [app.supabase.com](https://app.supabase.com) + - If signUp() is called for an existing confirmed user: + - If "Enable email confirmations" is enabled on the "Authentication" -> "Settings" page, an obfuscated / fake user object will be returned. + - If "Enable email confirmations" is disabled, an error with a message "User already registered" will be returned. + - To check if a user already exists, refer to getUser(). + examples: + - id: sign-up. + name: Sign up. + isSpotlight: true + js: | + ```js + const { user, session, error } = await supabase.auth.signUp({ + email: 'example@email.com', + password: 'example-password', + }) + ``` + - id: sign-up-with-additional-user-meta-data. + name: Sign up with additional user meta data. + isSpotlight: true + js: | + ```js + const { user, session, error } = await supabase.auth.signUp( + { + email: 'example@email.com', + password: 'example-password', + }, + { + data: { + first_name: 'John', + age: 27, + } + } + ) + ``` + - id: sign-up-with-third-party-providers. + name: Sign up with third-party providers. + hideCodeBlock: true + description: | + You can sign up with OAuth providers using the [`signIn()`](/docs/reference/javascript/v1/auth-signin#sign-in-using-third-party-providers) method. + - id: sign-up-with-phone. + name: Sign up with Phone. + description: | + Supabase supports Phone Auth. After a user has verified their number, they can use the [`signIn()`](/docs/reference/javascript/v1/auth-signin#sign-in-using-phone) method. + js: | + ```js + const { user, session, error } = await supabase.auth.signUp({ + phone: '+13334445555', + password: 'some-password', + }) + + // After receiving an SMS with One Time Password. + let { session, error } = await supabase.auth.verifyOTP({ + phone: '+13334445555', + token: '123456', + }) + ``` + - id: auth.signIn() + title: 'signIn()' + $ref: '@supabase/gotrue-js.GoTrueClient.signIn' + notes: | + - A user can sign up either via email or OAuth. + - If you provide `email` without a `password`, the user will be sent a magic link. + - The magic link's destination URL is determined by the SITE_URL config variable. To change this, you can go to Authentication -> Settings on [app.supabase.com](https://app.supabase.com) + - Specifying a `provider` will open the browser to the relevant login page. + examples: + - id: sign-in-with-email. + name: Sign in with email. + isSpotlight: true + js: | + ```js + const { user, session, error } = await supabase.auth.signIn({ + email: 'example@email.com', + password: 'example-password', + }) + ``` + - id: sign-in-with-magic-link. + name: Sign in with magic link. + description: If no password is provided, the user will be sent a "magic link" to their email address, which they can click to open your application with a valid session. By default, a given user can only request a Magic Link once every 60 seconds. + js: | + ```js + const { user, session, error } = await supabase.auth.signIn({ + email: 'example@email.com' + }) + ``` + - id: sign-in-using-third-party-providers. + name: Sign in using third-party providers. + description: Supabase supports many different [third-party providers](https://supabase.com/docs/guides/auth#providers). + js: | + ```js + const { user, session, error } = await supabase.auth.signIn({ + // provider can be 'github', 'google', 'gitlab', and more + provider: 'github' + }) + ``` + - id: sign-in-with-phone. + name: Sign in with Phone. + description: Supabase supports Phone Auth. + js: | + ```js + const { user, session, error } = await supabase.auth.signIn({ + phone: '+13334445555', + password: 'some-password', + }) + ``` + - id: sign-in-with-redirect. + name: Sign in with redirect. + description: | + Note that the `redirectTo` param is only relevant for OAuth logins, where the login flow is managed by + the Auth server. If you are using email/phone logins you should set up your own redirects (within the email/sms template). + + Sometimes you want to control where the user is redirected to after they are logged in. Supabase supports this for + any URL path on your website (the URL must either be on the same domain as your Site URL [see Auth>Settings in dashboard], or must match one of the Additional Redirect URLs [also in Auth>Settings]). + js: | + ```js + const { user, session, error } = await supabase.auth.signIn({ + provider: 'github' + }, { + redirectTo: 'https://example.com/welcome' + }) + ``` + - id: sign-in-with-scopes. + name: Sign in with scopes. + description: | + If you need additional data from an OAuth provider, you can include a space-separated list of scopes in your request to get back an OAuth provider token. + You may also need to specify the scopes in the provider's OAuth app settings, depending on the provider. + js: | + ```js + const { user, session, error } = await supabase.auth.signIn({ + provider: 'github' + }, { + scopes: 'repo gist notifications' + }) + const oAuthToken = session.provider_token // use to access provider API + ``` + - id: sign-in-using-a-refresh-token(e.g.in-react-native). + name: Sign in using a refresh token (e.g. in React Native). + description: | + If you are completing a sign up or login in a React Native app you can pass the refresh token obtained from the provider to obtain a session. + js: | + ```js + // An example using Expo's `AuthSession` + const redirectUri = AuthSession.makeRedirectUri({ useProxy: false }); + const provider = 'google'; + + AuthSession.startAsync({ + authUrl: `https://MYSUPABASEAPP.supabase.co/auth/v1/authorize?provider=${provider}&redirect_to=${redirectUri}`, + returnUrl: redirectUri, + }).then(async (response: any) => { + if (!response) return; + const { user, session, error } = await supabase.auth.signIn({ + refreshToken: response.params?.refresh_token, + }); + }); + ``` + + - id: auth.signOut() + title: 'signOut()' + $ref: '@supabase/gotrue-js.GoTrueClient.signOut' + examples: + - id: sign-out + name: Sign out + isSpotlight: true + js: | + ```js + const { error } = await supabase.auth.signOut() + ``` + + - id: auth.session() + title: 'session()' + $ref: '@supabase/gotrue-js.GoTrueClient.session' + examples: + - id: get-the-session-data + name: Get the session data + isSpotlight: true + js: | + ```js + const session = supabase.auth.session() + ``` + + - id: auth.user() + title: 'user()' + $ref: '@supabase/gotrue-js.GoTrueClient.user' + notes: | + This method gets the user object from memory. + examples: + - id: get-the-logged-in-user + name: Get the logged in user + isSpotlight: true + js: | + ```js + const user = supabase.auth.user() + ``` + + - id: auth.update() + title: 'update()' + $ref: '@supabase/gotrue-js.GoTrueClient.update' + notes: | + User email: By Default, email updates sends a confirmation link to both the user's current and new email. + To only send a confirmation link to the user's new email, disable **Secure email change** in your project's [email auth provider settings](https://app.supabase.com/project/_/auth/settings). + + User metadata: It's generally better to store user data in a table within your public schema (i.e., `public.users`). + Use the `update()` method if you have data which rarely changes or is specific only to the logged in user. + examples: + - id: update-the-email-for-an-authenticated-user + name: Update the email for an authenticated user + description: Sends a "Confirm Email Change" email to the new email address. + isSpotlight: true + js: | + ```js + const { user, error } = await supabase.auth.update({email: 'new@email.com'}) + ``` + - id: update-the-password-for-an-authenticated-user + name: Update the password for an authenticated user + isSpotlight: true + js: | + ```js + const { user, error } = await supabase.auth.update({password: 'new password'}) + ``` + - id: update-the-user's-metadata + name: Update the user's metadata + isSpotlight: true + js: | + ```js + const { user, error } = await supabase.auth.update({ + data: { hello: 'world' } + }) + ``` + + - id: auth.setAuth() + title: 'setAuth()' + $ref: '@supabase/gotrue-js.GoTrueClient.setAuth' + examples: + - id: basic-example. + name: Basic example. + description: This is most useful on server-side functions where you cannot log the user in, but have access to the user's access token. + isSpotlight: true + js: | + ```js + function apiFunction(req, res) { + // Assuming the access token was sent as a header "X-Supabase-Auth" + const { access_token } = req.get('X-Supabase-Auth') + + // You can now use it within a Supabase Client + const supabase = createClient("https://xyzcompany.supabase.co", "public-anon-key") + const { user, error } = supabase.auth.setAuth(access_token) + + // This client will now send requests as this user + const { data } = await supabase.from('your_table').select() + } + ``` + - id: with-express. + name: With Express. + isSpotlight: true + js: | + ```js + + /** + * Make a request from the client to your server function + */ + async function makeApiRequest() { + const token = newClient.session()?.access_token + + await fetch('https://example.com/withAuth', { + method: 'GET', + withCredentials: true, + credentials: 'include', + headers: { + 'Content-Type': 'application/json', + 'Authorization': bearer, // Your own auth + 'X-Supabase-Auth': token, // Set the Supabase user + } + }) + } + + /** + * Use the Auth token in your server-side function. + */ + async function apiFunction(req, res) { + const { access_token } = req.get('X-Supabase-Auth') + + // You can now use it within a Supabase Client + const supabase = createClient("https://xyzcompany.supabase.co", "public-anon-key") + const { user, error } = supabase.auth.setAuth(access_token) + + // This client will now send requests as this user + const { data } = await supabase.from('your_table').select() + } + ``` + + - id: auth.onAuthStateChange() + title: 'onAuthStateChange()' + $ref: '@supabase/gotrue-js.GoTrueClient.onAuthStateChange' + examples: + - id: listen-to-auth-changes + name: Listen to auth changes + isSpotlight: true + js: | + ```js + supabase.auth.onAuthStateChange((event, session) => { + console.log(event, session) + }) + ``` + - id: listen-to-sign-in + name: Listen to sign in + js: | + ```js + supabase.auth.onAuthStateChange((event, session) => { + if (event == 'SIGNED_IN') console.log('SIGNED_IN', session) + }) + ``` + - id: listen-to-sign-out + name: Listen to sign out + js: | + ```js + supabase.auth.onAuthStateChange((event, session) => { + if (event == 'SIGNED_OUT') console.log('SIGNED_OUT', session) + }) + ``` + - id: listen-to-token-refresh + name: Listen to token refresh + js: | + ```js + supabase.auth.onAuthStateChange((event, session) => { + if (event == 'TOKEN_REFRESHED') console.log('TOKEN_REFRESHED', session) + }) + ``` + - id: listen-to-user-updates + name: Listen to user updates + js: | + ```js + supabase.auth.onAuthStateChange((event, session) => { + if (event == 'USER_UPDATED') console.log('USER_UPDATED', session) + }) + ``` + - id: listen-to-user-deleted + name: Listen to user deleted + js: | + ```js + supabase.auth.onAuthStateChange((event, session) => { + if (event == 'USER_DELETED') console.log('USER_DELETED', session) + }) + ``` + - id: listen-to-password-recovery-events + name: Listen to password recovery events + js: | + ```js + supabase.auth.onAuthStateChange((event, session) => { + if (event == 'PASSWORD_RECOVERY') console.log('PASSWORD_RECOVERY', session) + }) + ``` + - id: auth.api.getUser() + title: 'getUser()' + $ref: '@supabase/gotrue-js.GoTrueApi.getUser' + notes: | + - Fetches the user object from the database instead of local storage. + - Note that user() fetches the user object from local storage which might not be the most updated. + - Requires the user's access_token. + examples: + - id: fetch-the-user-object-using-the-access-token-jwt. + name: Fetch the user object using the access_token jwt. + isSpotlight: true + js: | + ```js + const { user, error } = await supabase.auth.api.getUser( + 'ACCESS_TOKEN_JWT', + ) + ``` + + - id: auth.api.listUsers() + title: 'listUsers()' + $ref: '@supabase/gotrue-js.GoTrueApi.listUsers' + notes: | + - Requires a `service_role` key. + - This function should be called on a server. Never expose your `service_role` key in the browser. + examples: + - id: get-a-full-list-of-users. + name: Get a full list of users. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.listUsers() + ``` + + - id: auth.api.createUser() + title: 'createUser()' + $ref: '@supabase/gotrue-js.GoTrueApi.createUser' + notes: | + - Requires a `service_role` key. + - This function should be called on a server. Never expose your `service_role` key in the browser. + - If you do not provide the `email_confirm` and `phone_confirm` options to this function, both will default to false. + examples: + - id: create-a-new-user. + name: Create a new user. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.createUser({ + email: 'user@email.com', + password: 'password', + user_metadata: { name: 'Yoda' } + }) + ``` + - id: auto-confirm-email. + name: Auto-confirm email. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.createUser({ + email: 'user@email.com', + email_confirm: true + }) + ``` + - id: auto-confirm-phone. + name: Auto-confirm phone. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.createUser({ + phone: '1234567890', + phone_confirm: true + }) + ``` + + - id: auth.api.deleteUser() + title: 'deleteUser()' + $ref: '@supabase/gotrue-js.GoTrueApi.deleteUser' + notes: | + - Requires a `service_role` key. + - This function should be called on a server. Never expose your `service_role` key in the browser. + examples: + - id: remove-a-user-completely. + name: Remove a user completely. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.deleteUser( + '715ed5db-f090-4b8c-a067-640ecee36aa0' + ) + ``` + + - id: auth.api.inviteUserByEmail() + title: 'inviteUserByEmail()' + $ref: '@supabase/gotrue-js.GoTrueApi.inviteUserByEmail' + notes: | + - Requires a `service_role` key. + - This function should only be called on a server. Never expose your `service_role` key in the browser. + examples: + - id: basic-example. + name: Basic example. + isSpotlight: false + js: | + ```js + const { data: user, error } = await supabase.auth + .api + .inviteUserByEmail('email@example.com') + ``` + + - id: auth.api.sendMobileOTP() + title: 'sendMobileOTP()' + $ref: '@supabase/gotrue-js.GoTrueApi.sendMobileOTP' + notes: | + - Requires a `service_role` key. + - This function should only be called on a server. Never expose your `service_role` key in the browser. + examples: + - id: basic-example. + name: Basic example. + isSpotlight: false + js: | + ```js + const { data: user, error } = await supabase.auth + .api + .sendMobileOTP('12345879') + ``` + + - id: auth.api.resetPasswordForEmail() + title: 'resetPasswordForEmail()' + $ref: '@supabase/gotrue-js.GoTrueApi.resetPasswordForEmail' + notes: | + Sends a password reset request to an email address. + When the user clicks the reset link in the email they are redirected back to your application. + Prompt the user for a new password and call `auth.update()`: + ```js + const { data, error } = await supabase.auth.update({ + password: new_password, + }) + ``` + examples: + - id: reset-password + name: Reset password + isSpotlight: true + js: | + ```js + const { data, error } = await supabase.auth.api.resetPasswordForEmail( + 'user@email.com' + ) + ``` + - id: reset-password(react) + name: Reset password (React) + isSpotlight: true + js: | + ```js + /** + * Step 1: Send the user an email to get a password reset token. + * This email contains a link which sends the user back to your application. + */ + const { data, error } = await supabase.auth.api.resetPasswordForEmail( + 'user@email.com' + ) + + /** + * Step 2: Once the user is redirected back to your application, + * ask the user to reset their password. + */ + useEffect(() => { + supabase.auth.onAuthStateChange(async (event, session) => { + if (event == "PASSWORD_RECOVERY") { + const newPassword = prompt("What would you like your new password to be?"); + const { data, error } = await supabase.auth.update({ + password: newPassword, + }) + + if (data) alert("Password updated successfully!") + if (error) alert("There was an error updating your password.") + } + }) + }, []) + ``` + + - id: auth.api.generateLink() + title: 'generateLink()' + $ref: '@supabase/gotrue-js.GoTrueApi.generateLink' + notes: | + - Requires a `service_role` key. + - This function should only be called on a server. Never expose your `service_role` key in the browser. + examples: + - id: generate-an-invite-link + name: Generate an invite link + isSpotlight: false + js: | + ```js + const { data: user, error } = await supabase.auth.api.generateLink( + 'invite', + 'email@example.com' + ) + ``` + + - id: auth.api.updateUserById() + title: 'updateUserById()' + $ref: '@supabase/gotrue-js.GoTrueApi.updateUserById' + notes: | + - Requires a `service_role` key. + - This function should only be called on a server. Never expose your `service_role` key in the browser. + examples: + - id: updates-a-user's-email. + name: Updates a user's email. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.updateUserById( + '6aa5d0d4-2a9f-4483-b6c8-0cf4c6c98ac4', + { email: 'new@email.com' } + ) + ``` + - id: updates-a-user's-password. + name: Updates a user's password. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.updateUserById( + '6aa5d0d4-2a9f-4483-b6c8-0cf4c6c98ac4', + { password: 'new_password' } + ) + ``` + - id: updates-a-user's-metadata. + name: Updates a user's metadata. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.updateUserById( + '6aa5d0d4-2a9f-4483-b6c8-0cf4c6c98ac4', + { user_metadata: { hello: 'world' } } + ) + ``` + - id: updates-a-user's-app-metadata. + name: Updates a user's app_metadata. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.updateUserById( + '6aa5d0d4-2a9f-4483-b6c8-0cf4c6c98ac4', + { app_metadata: { plan: 'trial' } } + ) + ``` + - id: confirms-a-user's-email-address. + name: Confirms a user's email address. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.updateUserById( + '6aa5d0d4-2a9f-4483-b6c8-0cf4c6c98ac4', + { email_confirm: true } + ) + ``` + - id: confirms-a-user's-phone-number. + name: Confirms a user's phone number. + isSpotlight: true + js: | + ```js + const { data: user, error } = await supabase.auth.api.updateUserById( + '6aa5d0d4-2a9f-4483-b6c8-0cf4c6c98ac4', + { phone_confirm: true } + ) + ``` + - id: invoke() + title: 'invoke()' + description: | + Invokes a Supabase Function. + $ref: '@supabase/functions-js.FunctionsClient.invoke' + notes: | + - Requires an Authorization header. + - Invoke params generally match the [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) spec. + examples: + - id: basic-invocation. + name: Basic invocation. + isSpotlight: true + js: | + ```js + const { data, error } = await supabase.functions.invoke('hello', { + body: JSON.stringify({ foo: 'bar' }) + }) + ``` + - id: specifying-response-type. + name: Specifying response type. + description: | + By default, `invoke()` will parse the response as JSON. You can parse the response in the following formats: `json`, `blob`, `text`, and `arrayBuffer`. + isSpotlight: true + js: | + ```js + const { data, error } = await supabase.functions.invoke('hello', { + responseType: 'text', + body: JSON.stringify({ foo: 'bar' }) + }) + ``` + - id: parsing-custom-headers. + name: Parsing custom headers. + description: | + You can pass custom headers to your function. Note: supabase-js automatically passes the `Authorization` header with the signed in user's JWT. + isSpotlight: true + js: | + ```js + const { data, error } = await supabase.functions.invoke('hello', { + headers: { + "my-custom-header": 'my-custom-header-value' + }, + body: JSON.stringify({ foo: 'bar' }) + }) + ``` + + - id: select() + title: 'Fetch data: select()' + $ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.select' + notes: | + - By default, Supabase projects will return a maximum of 1,000 rows. This setting can be changed in Project API Settings. It's recommended that you keep it low to limit the payload size of accidental or malicious requests. You can use `range()` queries to paginate through your data. + - `select()` can be combined with [Modifiers](/docs/reference/javascript/using-modifiers) + - `select()` can be combined with [Filters](/docs/reference/javascript/using-filters) + - If using the Supabase hosted platform `apikey` is technically a reserved keyword, since the API gateway will pluck it out for authentication. [It should be avoided as a column name](https://github.com/supabase/supabase/issues/5465). + examples: + - id: getting-your-data + name: Getting your data + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select() + ``` + - id: selecting-specific-columns + name: Selecting specific columns + description: You can select specific fields from your tables. + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name') + ``` + - id: query-foreign-tables + name: Query foreign tables + description: If your database has foreign key relationships, you can query related tables too. + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select(` + name, + cities ( + name + ) + `) + ``` + note: | + What about join tables + If you're in a situation where your tables are **NOT** directly related, but instead are joined by a _join table_, + you can still use the `select()` method to query the related data. The PostgREST engine detects the relationship automatically. + For more details, [follow the link](https://postgrest.org/en/latest/api.html#embedding-through-join-tables). + - id: query-the-same-foreign-table-multiple-times + name: Query the same foreign table multiple times + description: | + Sometimes you will need to query the same foreign table twice. + In this case, you can use the name of the joined column to identify + which join you intend to use. For convenience, you can also give an + alias for each column. For example, if we had a shop of products, + and we wanted to get the supplier and the purchaser at the same time + (both in the users) table: + js: | + ```js + const { data, error } = await supabase + .from('products') + .select(` + id, + supplier:supplier_id ( name ), + purchaser:purchaser_id ( name ) + `) + ``` + - id: filtering-with-inner-joins + name: Filtering with inner joins + description: | + If you want to filter a table based on a child table's values you can use the `!inner()` function. For example, if you wanted + to select all rows in a `message` table which belong to a user with the `username` "Jane": + js: | + ```js + const { data, error } = await supabase + .from('messages') + .select('*, users!inner(*)') + .eq('users.username', 'Jane') + ``` + - id: querying-with-count-option + name: Querying with count option + description: | + You can get the number of rows by using the count option. + Allowed values for count option are `null`, [exact](https://postgrest.org/en/stable/api.html#exact-count), [planned](https://postgrest.org/en/stable/api.html#planned-count) and [estimated](https://postgrest.org/en/stable/api.html#estimated-count). + js: | + ```js + const { data, error, count } = await supabase + .from('cities') + .select('name', { count: 'exact' }) // if you don't want to return any rows, you can use { count: 'exact', head: true } + ``` + - id: querying-json-data + name: Querying JSON data + description: | + If you have data inside of a JSONB column, you can apply select + and query filters to the data values. Postgres offers a + [number of operators](https://www.postgresql.org/docs/current/functions-json.html) + for querying JSON data. Also see + [PostgREST docs](http://postgrest.org/en/v7.0.0/api.html#json-columns) for more details. + js: | + ```js + const { data, error } = await supabase + .from('users') + .select(` + id, name, + address->street + `) + .eq('address->postcode', 90210) + ``` + - id: return-data-as-csv + name: Return data as CSV + description: | + By default the data is returned in JSON format, however you can also request for it to be returned as Comma Separated Values. + js: | + ```js + const { data, error } = await supabase + .from('users') + .select() + .csv() + ``` + - id: aborting-requests-in-flight + name: Aborting requests in-flight + description: | + You can use an [`AbortController`](https://developer.mozilla.org/en-US/docs/Web/API/AbortController) to abort requests. Note that `status` and `statusText` doesn't mean anything for aborted requests, since the request wasn't actually fulfilled. + js: | + ```js + const ac = new AbortController() + supabase + .from('very_big_table') + .select() + .abortSignal(ac.signal) + .then(console.log) + ac.abort() + // { + // error: { + // message: 'FetchError: The user aborted a request.', + // details: '', + // hint: '', + // code: '' + // }, + // data: null, + // body: null, + // count: null, + // status: 400, + // statusText: 'Bad Request' + // } + ``` + + - id: insert() + title: 'Create data: insert()' + $ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.insert' + notes: | + - By default, every time you run `insert()`, the client library will make a `select` to return the full record. + This is convenient, but it can also cause problems if your Policies are not configured to allow the `select` operation. + If you are using Row Level Security and you are encountering problems, try setting the `returning` param to `minimal`. + examples: + - id: create-a-record + name: Create a record + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .insert([ + { name: 'The Shire', country_id: 554 } + ]) + ``` + - id: bulk-create + name: Bulk create + description: | + When running a bulk create, the operation is handled in a single transaction. If any of the inserts fail, all other operations are + rolled back. + js: | + ```js + const { data, error } = await supabase + .from('cities') + .insert([ + { name: 'The Shire', country_id: 554 }, + { name: 'Rohan', country_id: 555 }, + ]) + ``` + - id: upsert + name: Upsert + description: | + For upsert, if set to true, primary key columns would need to be included + in the data parameter in order for an update to properly happen. Also, primary keys + used must be natural, not surrogate. There are however, + [workarounds](https://github.com/PostgREST/postgrest/issues/1118) + for surrogate primary keys. + js: | + ```js + const { data, error } = await supabase + .from('cities') + .insert( + [ + { name: 'The Shire', country_id: 554 }, + { name: 'Rohan', country_id: 555 }, + { name: 'City by the Bay', country_id:840} + ], + { upsert: true }) + ``` + + - id: update() + title: 'Modify data: update()' + $ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.update' + notes: | + - `update()` should always be combined with [Filters](/docs/reference/javascript/using-filters) to target the item(s) you wish to update. + examples: + - id: updating-your-data + name: Updating your data + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Middle Earth' }) + .match({ name: 'Auckland' }) + ``` + - id: updating-json-data + name: Updating JSON data + description: | + Postgres offers a + [number of operators](https://www.postgresql.org/docs/current/functions-json.html) + for working with JSON data. Right now it is only possible to update an entire JSON document, + but we are [working on ideas](https://github.com/PostgREST/postgrest/issues/465) for updating individual keys. + js: | + ```js + const { data, error } = await supabase + .from('users') + .update(` + address: { + street: 'Melrose Place', + postcode: 90210 + } + `) + .eq('address->postcode', 90210) + ``` + + - id: upsert() + title: 'Upsert data: upsert()' + $ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.upsert' + notes: | + - Primary keys should be included in the data payload in order for an update to work correctly. + - Primary keys must be natural, not surrogate. There are however, [workarounds](https://github.com/PostgREST/postgrest/issues/1118) for surrogate primary keys. + - If you need to insert new data and update existing data at the same time, use [Postgres triggers](https://github.com/supabase/postgrest-js/issues/173#issuecomment-825124550). + examples: + - id: upsert-your-data + name: Upsert your data + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('messages') + .upsert({ id: 3, message: 'foo', username: 'supabot' }) + ``` + - id: bulk-upsert-your-data + name: Bulk Upsert your data + isSpotlight: false + js: | + ```js + const { data, error } = await supabase + .from('messages') + .upsert([ + { id: 3, message: 'foo', username: 'supabot' }, + { id: 4, message: 'bar', username: 'supabot' } + ]) + ``` + - id: upserting-into-tables-with-constraints + name: Upserting into tables with constraints + description: | + Running the following will cause supabase to upsert data into the `users` table. + If the username 'supabot' already exists, the `onConflict` argument tells supabase to overwrite that row + based on the column passed into `onConflict`. + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('users') + .upsert({ username: 'supabot' }, { onConflict: 'username' }) + ``` + - id: return-the-exact-number-of-rows + name: Return the exact number of rows + isSpotlight: true + js: | + ```js + const { data, error, count } = await supabase + .from('users') + .upsert({ + id: 3, message: 'foo', + username: 'supabot' + }, { + count: 'exact' + }) + ``` + + - id: delete() + title: 'Delete data: delete()' + $ref: '@supabase/postgrest-js."lib/PostgrestQueryBuilder".PostgrestQueryBuilder.delete' + notes: | + - `delete()` should always be combined with [filters](/docs/reference/javascript/using-filters) to target the item(s) you wish to delete. + - If you use `delete()` with filters and you have + [RLS](/docs/learn/auth-deep-dive/auth-row-level-security) enabled, only + rows visible through `SELECT` policies are deleted. Note that by default + no rows are visible, so you need at least one `SELECT`/`ALL` policy that + makes the rows visible. + examples: + - id: delete-records + name: Delete records + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .match({ id: 666 }) + ``` + + - id: rpc() + title: 'Postgres functions: rpc()' + description: | + You can call Postgres functions as _Remote Procedure Calls_, logic in your database that you can execute from anywhere. + Functions are useful when the logic rarely changes—like for password resets and updates. + + ```sql + create or replace function hello_world() returns text as $$ + select 'Hello world'; + $$ language sql; + ``` + $ref: '@supabase/postgrest-js."lib/PostgrestRpcBuilder".PostgrestRpcBuilder.rpc' + examples: + - id: call-a-postgres-function-without-arguments + name: Call a Postgres function without arguments + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .rpc('hello_world') + ``` + - id: call-a-postgres-function-with-arguments + name: Call a Postgres function with arguments + js: | + ```js + const { data, error } = await supabase + .rpc('echo_city', { name: 'The Shire' }) + ``` + - id: bulk-processing + name: Bulk processing + description: You can process large payloads at once using [array parameters](https://postgrest.org/en/stable/api.html#calling-functions-with-array-parameters). + js: | + ```js + const { data, error } = await postgrest + .rpc('echo_cities', { names: ['The Shire', 'Mordor'] }) + ``` + - id: call-a-postgres-function-with-filters + name: Call a Postgres function with filters + description: | + Postgres functions that return tables can also be combined with + [Modifiers](/docs/reference/javascript/using-modifiers) and + [Filters](/docs/reference/javascript/using-filters). + js: | + ```js + const { data, error } = await supabase + .rpc('echo_all_cities') + .select('name, population') + .eq('name', 'The Shire') + ``` + - id: call-a-postgres-function-with-a-count-option + name: Call a Postgres function with a count option + description: | + You can specify a count option to get the row count along with your data. + Allowed values for count option are `null`, `exact`, `planned` and `estimated`. + js: | + ```js + const { data, error, count } = await supabase + .rpc('hello_world', {}, { count: 'exact' }) + ``` + + - id: subscribe() + title: 'on().subscribe()' + $ref: '@supabase/supabase-js.lib/SupabaseQueryBuilder.SupabaseQueryBuilder.on' + notes: | + - Realtime is disabled by default for new Projects for better database performance and security. You can turn it on by [managing replication](/docs/guides/api#managing-realtime). + - If you want to receive the "previous" data for updates and deletes, you will need to set `REPLICA IDENTITY` to `FULL`, like this: `ALTER TABLE your_table REPLICA IDENTITY FULL;` + examples: + - id: listen-to-all-database-changes + name: Listen to all database changes + isSpotlight: true + js: | + ```js + const mySubscription = supabase + .from('*') + .on('*', payload => { + console.log('Change received!', payload) + }) + .subscribe() + ``` + - id: listening-to-a-specific-table + name: Listening to a specific table + js: | + ```js + const mySubscription = supabase + .from('countries') + .on('*', payload => { + console.log('Change received!', payload) + }) + .subscribe() + ``` + - id: listening-to-inserts + name: Listening to inserts + js: | + ```js + const mySubscription = supabase + .from('countries') + .on('INSERT', payload => { + console.log('Change received!', payload) + }) + .subscribe() + ``` + - id: listening-to-updates + name: Listening to updates + description: | + By default, Supabase will send only the updated record. If you want to receive the previous values as well you can + enable full replication for the table you are listening too: + + ```sql + alter table "your_table" replica identity full; + ``` + js: | + ```js + const mySubscription = supabase + .from('countries') + .on('UPDATE', payload => { + console.log('Change received!', payload) + }) + .subscribe() + ``` + - id: listening-to-deletes + name: Listening to deletes + description: | + By default, Supabase does not send deleted records. If you want to receive the deleted record you can + enable full replication for the table you are listening too: + + ```sql + alter table "your_table" replica identity full; + ``` + js: | + ```js + const mySubscription = supabase + .from('countries') + .on('DELETE', payload => { + console.log('Change received!', payload) + }) + .subscribe() + ``` + - id: listening-to-multiple-events + name: Listening to multiple events + description: You can chain listeners if you want to listen to multiple events for each table. + js: | + ```js + const mySubscription = supabase + .from('countries') + .on('INSERT', handleRecordInserted) + .on('DELETE', handleRecordDeleted) + .subscribe() + ``` + - id: listening-to-row-level-changes + name: Listening to row level changes + description: You can listen to individual rows using the format `{table}:{col}=eq.{val}` - where `{col}` is the column name, and `{val}` is the value which you want to match. + notes: | + - ``eq`` filter works with all database types as under the hood, it's casting both the filter value and the database value to the correct type and then comparing them. + js: | + ```js + const mySubscription = supabase + .from('countries:id=eq.200') + .on('UPDATE', handleRecordUpdated) + .subscribe() + ``` + + - id: removeSubscription() + title: 'removeSubscription()' + $ref: '@supabase/supabase-js.index.SupabaseClient.removeSubscription' + notes: | + - Removing subscriptions is a great way to maintain the performance of your project's database. Supabase will automatically handle cleanup 30 seconds after a user is disconnected, but unused subscriptions may cause degradation as more users are simultaneously subscribed. + examples: + - id: remove-a-subscription + name: Remove a subscription + isSpotlight: true + js: | + ```js + supabase.removeSubscription(mySubscription) + ``` + + - id: removeAllSubscriptions() + title: 'removeAllSubscriptions()' + $ref: '@supabase/supabase-js.index.SupabaseClient.removeAllSubscriptions' + notes: | + - Removing subscriptions is a great way to maintain the performance of your project's database. Supabase will automatically handle cleanup 30 seconds after a user is disconnected, but unused subscriptions may cause degradation as more users are simultaneously subscribed. + examples: + - id: removes-all-subscriptions + name: Removes all subscriptions + isSpotlight: true + js: | + ```js + supabase.removeAllSubscriptions() + ``` + + - id: getSubscriptions() + title: 'getSubscriptions()' + $ref: '@supabase/supabase-js.index.SupabaseClient.getSubscriptions' + examples: + - id: get-all-subscriptions + name: Get all subscriptions + isSpotlight: true + js: | + ```js + const subscriptions = supabase.getSubscriptions() + ``` + + - id: storage.listBuckets() + title: 'listBuckets()' + $ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.listBuckets' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` + - `objects` permissions: none + examples: + - id: list-buckets + name: List buckets + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .listBuckets() + ``` + + - id: storage.getBucket() + title: 'getBucket()' + $ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.getBucket' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` + - `objects` permissions: none + examples: + - id: get-bucket + name: Get bucket + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .getBucket('avatars') + ``` + + - id: storage.createBucket() + title: 'createBucket()' + $ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.createBucket' + notes: | + - Policy permissions required: + - `buckets` permissions: `insert` + - `objects` permissions: none + examples: + - id: create-bucket + name: Create bucket + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .createBucket('avatars', { public: false }) + ``` + + - id: storage.emptyBucket() + title: 'emptyBucket()' + $ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.emptyBucket' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` + - `objects` permissions: `select` and `delete` + examples: + - id: empty-bucket + name: Empty bucket + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .emptyBucket('avatars') + ``` + - id: storage.updateBucket() + title: 'updateBucket()' + $ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.updateBucket' + notes: | + - Policy permissions required: + - `buckets` permissions: `update` + - `objects` permissions: none + examples: + - id: update-bucket + name: Update bucket + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .updateBucket('avatars', { public: false }) + ``` + + - id: storage.deleteBucket() + title: 'deleteBucket()' + $ref: '@supabase/storage-js."lib/StorageBucketApi".StorageBucketApi.deleteBucket' + notes: | + - Policy permissions required: + - `buckets` permissions: `select` and `delete` + - `objects` permissions: none + examples: + - id: delete-bucket + name: Delete bucket + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .deleteBucket('avatars') + ``` + + - id: storage.from.upload() + title: 'from.upload()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.upload' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `insert` + - For React Native, using either `Blob`, `File` or `FormData` does not work as intended. Upload file using `ArrayBuffer` from base64 file data instead, see example below. + examples: + - id: upload-file + name: Upload file + isSpotlight: true + js: | + ```js + const avatarFile = event.target.files[0] + const { data, error } = await supabase + .storage + .from('avatars') + .upload('public/avatar1.png', avatarFile, { + cacheControl: '3600', + upsert: false + }) + ``` + - id: upload-file-using`arraybuffer`from-base64-file-data + name: Upload file using `ArrayBuffer` from base64 file data + js: | + ```js + import { decode } from 'base64-arraybuffer' + + const { data, error } = await supabase + .storage + .from('avatars') + .upload('public/avatar1.png', decode('base64FileData'), { + contentType: 'image/png' + }) + ``` + + - id: storage.from.update() + title: 'from.update()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.update' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `update` and `select` + - For React Native, using either `Blob`, `File` or `FormData` does not work as intended. Update file using `ArrayBuffer` from base64 file data instead, see example below. + examples: + - id: update-file + name: Update file + isSpotlight: true + js: | + ```js + const avatarFile = event.target.files[0] + const { data, error } = await supabase + .storage + .from('avatars') + .update('public/avatar1.png', avatarFile, { + cacheControl: '3600', + upsert: false + }) + ``` + - id: update-file-using`arraybuffer`from-base64-file-data + name: Update file using `ArrayBuffer` from base64 file data + js: | + ```js + import {decode} from 'base64-arraybuffer' + + const { data, error } = await supabase + .storage + .from('avatars') + .update('public/avatar1.png', decode('base64FileData'), { + contentType: 'image/png' + }) + ``` + + - id: storage.from.move() + title: 'from.move()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.move' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `update` and `select` + examples: + - id: move-file + name: Move file + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .from('avatars') + .move('public/avatar1.png', 'private/avatar2.png') + ``` + + - id: storage.from.copy() + title: 'from.copy()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.copy' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `insert` and `select` + examples: + - id: copy-file + name: Copy file + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .from('avatars') + .copy('public/avatar1.png', 'private/avatar2.png') + ``` + + - id: storage.from.createSignedUrl() + title: 'from.createSignedUrl()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.createSignedUrl' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `select` + examples: + - id: create-signed-url + name: Create Signed URL + isSpotlight: true + js: | + ```js + const { signedURL, error } = await supabase + .storage + .from('avatars') + .createSignedUrl('folder/avatar1.png', 60) + ``` + + - id: storage.from.createSignedUrls() + title: 'from.createSignedUrls()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.createSignedUrls' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `select` + examples: + - id: create-signed-urls + name: Create Signed URLs + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .from('avatars') + .createSignedUrls(['folder/avatar1.png', 'folder/avatar2.png'], 60) + ``` + + - id: storage.from.getPublicUrl() + title: 'from.getPublicUrl()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.getPublicUrl' + notes: | + - The bucket needs to be set to public, either via [updateBucket()](/docs/reference/javascript/storage-updatebucket) or by going to Storage on [app.supabase.com](https://app.supabase.com), clicking the overflow menu on a bucket and choosing "Make public" + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: none + examples: + - id: returns-the-url-for-an-asset-in-a-public-bucket + name: Returns the URL for an asset in a public bucket + isSpotlight: true + js: | + ```js + const { publicURL, error } = supabase + .storage + .from('public-bucket') + .getPublicUrl('folder/avatar1.png') + ``` + + - id: storage.from.download() + title: 'from.download()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.download' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `select` + examples: + - id: download-file + name: Download file + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .from('avatars') + .download('folder/avatar1.png') + ``` + + - id: storage.from.remove() + title: 'from.remove()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.remove' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `delete` and `select` + examples: + - id: delete-file + name: Delete file + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .from('avatars') + .remove(['folder/avatar1.png']) + ``` + + - id: storage.from.list() + title: 'from.list()' + $ref: '@supabase/storage-js."lib/StorageFileApi".StorageFileApi.list' + notes: | + - Policy permissions required: + - `buckets` permissions: none + - `objects` permissions: `select` + examples: + - id: list-files-in-a-bucket + name: List files in a bucket + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .storage + .from('avatars') + .list('folder', { + limit: 100, + offset: 0, + sortBy: { column: 'name', order: 'asc' }, + }) + ``` + - id: search-files-in-a-bucket + name: Search files in a bucket + js: | + ```js + const { data, error } = await supabase + .storage + .from('avatars') + .list('folder', { + limit: 100, + offset: 0, + sortBy: { column: 'name', order: 'asc' }, + search: 'jon' + }) + ``` + + - id: Using modifiers + title: Using Modifiers + description: | + Modifiers can be used on `select()` queries. + + If a Postgres function returns a table response, you can also apply modifiers to the `rpc()` function. + + - id: limit() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.limit' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .limit(1) + ``` + - id: with-embedded-resources + name: With embedded resources + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, cities(name)') + .eq('name', 'United States') + .limit(1, { foreignTable: 'cities' }) + ``` + + - id: order() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.order' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .order('id', { ascending: false }) + ``` + - id: with-embedded-resources + name: With embedded resources + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, cities(name)') + .eq('name', 'United States') + .order('name', {foreignTable: 'cities'}) + ``` + - id: ordering-multiple-columns + name: Ordering multiple columns + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name', 'country_id') + .order('country_id', { ascending: false }) + .order('name', { ascending: false }) + ``` + - id: range() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.range' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .range(0,3) + ``` + + - id: single() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.single' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .limit(1) + .single() + ``` + + - id: maybeSingle() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.maybeSingle' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .eq('name', 'Singapore') + .maybeSingle() + ``` + + - id: Using Filters + title: Using filters + description: | + Filters can be used on `select()`, `update()`, and `delete()` queries. + + If a Postgres function returns a table response, you can also apply filters. + + ### Applying Filters + + You must apply your filters to the end of your query. For example: + + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .eq('name', 'The Shire') // Correct + + const { data, error } = await supabase + .from('cities') + .eq('name', 'The Shire') // Incorrect + .select('name, country_id') + ``` + + ### Chaining + + Filters can be chained together to produce advanced queries. For example: + + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .gte('population', 1000) + .lt('population', 10000) + ``` + + ### Conditional Chaining + + Filters can be built up one step at a time and then executed. For example: + + ```js + const filterByName = null + const filterPopLow = 1000 + const filterPopHigh = 10000 + + let query = supabase + .from('cities') + .select('name, country_id') + + if (filterByName) { query = query.eq('name', filterByName) } + if (filterPopLow) { query = query.gte('population', filterPopLow) } + if (filterPopHigh) { query = query.lt('population', filterPopHigh) } + + const { data, error } = await query + ``` + + - id: .or() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.or' + notes: | + - `.or()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values. + + ```js + .or('id.in.(6,7), arraycol.cs.{"a","b"}') // Use Postgres list () for in filter. Array {} for array column and 'cs' for contains. + .or(`id.in.(${arrList}),arraycol.cs.{${arr}}`) // You can insert a javascipt array for list or array on array column. + .or(`id.in.(${arrList}),rangecol.cs.[${arrRange})`) // You can insert a javascipt array for list or range on a range column. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .or('id.eq.20,id.eq.30') + ``` + - id: use`or`with`and` + name: Use `or` with `and` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .or('id.gt.20,and(name.eq.New Zealand,name.eq.France)') + ``` + - id: use`or`on-foreign-tables + name: Use `or` on foreign tables + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('id, cities(*)') + .or('name.eq.Wellington,name.eq.Paris', { foreignTable: "cities" }) + ``` + + - id: .not() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.not' + notes: | + - `.not()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values. + + ```js + .not('name','eq','Paris') + .not('arraycol','cs','{"a","b"}') // Use Postgres array {} for array column and 'cs' for contains. + .not('rangecol','cs','(1,2]') // Use Postgres range syntax for range column. + .not('id','in','(6,7)') // Use Postgres list () for in filter. + .not('id','in',`(${arr})`) // You can insert a javascript array. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .not('name', 'eq', 'Paris') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .not('name', 'eq', 'Paris') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .not('name', 'eq', 'Paris') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .not('name', 'eq', 'Paris') + ``` + + - id: .match() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.match' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .match({name: 'Beijing', country_id: 156}) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .match({name: 'Beijing', country_id: 156}) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .match({name: 'Beijing', country_id: 156}) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .match({name: 'Beijing', country_id: 156}) + ``` + + - id: .eq() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.eq' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .eq('name', 'The shire') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .eq('name', 'San Francisco') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .eq('name', 'Mordor') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .eq('name', 'San Francisco') + ``` + + - id: .neq() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.neq' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .neq('name', 'The shire') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .neq('name', 'San Francisco') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .neq('name', 'Mordor') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .neq('name', 'Lagos') + ``` + + - id: .gt() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.gt' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .gt('country_id', 250) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .gt('country_id', 250) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .gt('country_id', 250) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .gt('country_id', 250) + ``` + + - id: .gte() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.gte' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .gte('country_id', 250) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .gte('country_id', 250) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .gte('country_id', 250) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .gte('country_id', 250) + ``` + + - id: .lt() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.lt' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .lt('country_id', 250) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .lt('country_id', 250) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .lt('country_id', 250) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .lt('country_id', 250) + ``` + + - id: .lte() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.lte' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .lte('country_id', 250) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .lte('country_id', 250) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .lte('country_id', 250) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .lte('country_id', 250) + ``` + + - id: .like() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.like' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .like('name', '%la%') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .like('name', '%la%') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .like('name', '%la%') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .like('name', '%la%') + ``` + + - id: .ilike() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.ilike' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .ilike('name', '%la%') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .ilike('name', '%la%') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .ilike('name', '%la%') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .ilike('name', '%la%') + ``` + + - id: .is() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.is' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .is('name', null) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .is('name', null) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .is('name', null) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .is('name', null) + ``` + + - id: .in() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.in' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .in('name', ['Rio de Janeiro', 'San Francisco']) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .in('name', ['Rio de Janeiro', 'San Francisco']) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .in('name', ['Rio de Janeiro', 'San Francisco']) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .in('name', ['Rio de Janeiro', 'San Francisco']) + ``` + + - id: .contains() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.contains' + notes: | + - `.contains()` can work on array columns or range columns. + It is very useful for finding rows where a tag array contains all the values in the filter array. + + ```js + .contains('arraycol',["a","b"]) // You can use a javascript array for an array column + .contains('arraycol','{"a","b"}') // You can use a string with Postgres array {} for array column. + .contains('rangecol','(1,2]') // Use Postgres range syntax for range column. + .contains('rangecol',`(${arr}]`) // You can insert an array into a string. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, main_exports') + .contains('main_exports', ['oil']) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .contains('main_exports', ['oil']) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .contains('main_exports', ['oil']) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .contains('main_exports', ['oil']) + ``` + + - id: .containedBy() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.containedBy' + notes: | + - `.containedBy()` can work on array columns or range columns. + + ```js + .containedBy('arraycol',["a","b"]) // You can use a javascript array for an array column + .containedBy('arraycol','{"a","b"}') // You can use a string with Postgres array {} for array column. + .containedBy('rangecol','(1,2]') // Use Postgres range syntax for range column. + .containedBy('rangecol',`(${arr}]`) // You can insert an array into a string. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, main_exports') + .containedBy('main_exports', ['cars', 'food', 'machine']) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .containedBy('main_exports', ['orks', 'surveillance', 'evil']) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .containedBy('main_exports', ['cars', 'food', 'machine']) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .containedBy('main_exports', ['cars', 'food', 'machine']) + ``` + + - id: .rangeLt() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeLt' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeLt('population_range_millions', '[150, 250]') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .rangeLt('population_range_millions', '[150, 250]') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .rangeLt('population_range_millions', '[150, 250]') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .rangeLt('population_range_millions', '[150, 250]') + ``` + + - id: .rangeGt() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeGt' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeGt('population_range_millions', '[150, 250]') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .rangeGt('population_range_millions', '[150, 250]') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .rangeGt('population_range_millions', '[150, 250]') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .rangeGt('population_range_millions', '[150, 250]') + ``` + + - id: .rangeGte() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeGte' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeGte('population_range_millions', '[150, 250]') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .rangeGte('population_range_millions', '[150, 250]') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .rangeGte('population_range_millions', '[150, 250]') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .rangeGte('population_range_millions', '[150, 250]') + ``` + + - id: .rangeLte() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeLte' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeLte('population_range_millions', '[150, 250]') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .rangeLte('population_range_millions', '[150, 250]') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .rangeLte('population_range_millions', '[150, 250]') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .rangeLte('population_range_millions', '[150, 250]') + ``` + + - id: .rangeAdjacent() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.rangeAdjacent' + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, population_range_millions') + .rangeAdjacent('population_range_millions', '[70, 185]') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .rangeAdjacent('population_range_millions', '[70, 185]') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .rangeAdjacent('population_range_millions', '[70, 185]') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .rangeAdjacent('population_range_millions', '[70, 185]') + ``` + + - id: .overlaps() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.overlaps' + notes: | + - `.overlaps()` can work on array columns or range columns. + + ```js + .overlaps('arraycol',["a","b"]) // You can use a javascript array for an array column + .overlaps('arraycol','{"a","b"}') // You can use a string with Postgres array {} for array column. + .overlaps('rangecol','(1,2]') // Use Postgres range syntax for range column. + .overlaps('rangecol',`(${arr}]`) // You can insert an array into a string. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('countries') + .select('name, id, main_exports') + .overlaps('main_exports', ['computers', 'minerals']) + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + let countries = await supabase + .from('countries') + .update({ name: 'Mordor' }) + .overlaps('main_exports', ['computers', 'minerals']) + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('countries') + .delete() + .overlaps('main_exports', ['computers', 'minerals']) + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_countries') + .overlaps('main_exports', ['computers', 'minerals']) + ``` + + - id: .textSearch() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.textSearch' + examples: + - id: text-search + name: Text search + js: | + ```js + const { data, error } = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', `'fat' & 'cat'`, { + config: 'english' + }) + ``` + - id: basic-normalization + name: Basic normalization + description: Uses PostgreSQL's `plainto_tsquery` function. + js: | + ```js + const { data, error } = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', `'fat' & 'cat'`, { + type: 'plain', + config: 'english' + }) + ``` + - id: full-normalization + name: Full normalization + description: Uses PostgreSQL's `phraseto_tsquery` function. + js: | + ```js + const { data, error } = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', `'fat' & 'cat'`, { + type: 'phrase', + config: 'english' + }) + ``` + - id: websearch + name: Websearch + description: | + Uses PostgreSQL's `websearch_to_tsquery` function. + This function will never raise syntax errors, which makes it possible to use raw user-supplied input for search, and can be used + with advanced operators. + + - `unquoted text`: text not inside quote marks will be converted to terms separated by & operators, as if processed by plainto_tsquery. + - `"quoted text"`: text inside quote marks will be converted to terms separated by <-> operators, as if processed by phraseto_tsquery. + - `OR`: the word “or” will be converted to the | operator. + - `-`: a dash will be converted to the ! operator. + + js: | + ```js + const { data, error } = await supabase + .from('quotes') + .select('catchphrase') + .textSearch('catchphrase', `'fat or cat'`, { + type: 'websearch', + config: 'english' + }) + ``` + + - id: .filter() + $ref: '@supabase/postgrest-js."lib/PostgrestFilterBuilder".PostgrestFilterBuilder.filter' + notes: | + - `.filter()` expects you to use the raw [PostgREST syntax](https://postgrest.org/en/stable/api.html#horizontal-filtering-rows) for the filter names and values, so it should only be used as an escape hatch in case other filters don't work. + ```js + .filter('arraycol','cs','{"a","b"}') // Use Postgres array {} for array column and 'cs' for contains. + .filter('rangecol','cs','(1,2]') // Use Postgres range syntax for range column. + .filter('id','in','(6,7)') // Use Postgres list () for in filter. + .filter('id','in',`(${arr})`) // You can insert a javascript array. + ``` + examples: + - id: with`select()` + name: With `select()` + isSpotlight: true + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, country_id') + .filter('name', 'in', '("Paris","Tokyo")') + ``` + - id: with`update()` + name: With `update()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .update({ name: 'Mordor' }) + .filter('name', 'in', '("Paris","Tokyo")') + ``` + - id: with`delete()` + name: With `delete()` + js: | + ```js + const { data, error } = await supabase + .from('cities') + .delete() + .filter('name', 'in', '("Paris","Tokyo")') + ``` + - id: with`rpc()` + name: With `rpc()` + js: | + ```js + // Only valid if the Postgres function returns a table type. + const { data, error } = await supabase + .rpc('echo_all_cities') + .filter('name', 'in', '("Paris","Tokyo")') + ``` + - id: filter-embedded-resources + name: Filter embedded resources + js: | + ```js + const { data, error } = await supabase + .from('cities') + .select('name, countries ( name )') + .filter('countries.name', 'in', '("France","Japan")') + ``` diff --git a/spec/supabase_js_v2_temp_new_shape.yml b/spec/supabase_js_v2_temp_new_shape.yml index 29da1f13dde..97f437a1ebf 100644 --- a/spec/supabase_js_v2_temp_new_shape.yml +++ b/spec/supabase_js_v2_temp_new_shape.yml @@ -1954,6 +1954,7 @@ functions: hideCodeBlock: true - id: Using Filters + title: Using Filters description: | Filters allow you to only return rows that match certain conditions. @@ -4074,6 +4075,7 @@ functions: ``` - id: Using Modifiers + title: Using Modifiers description: | Filters work on the row level—they allows you to return rows that only match certain conditions without changing the shape of the rows.