From 2d6f3184ffeef4d081e3aa09dbc6d2b7873a728f Mon Sep 17 00:00:00 2001 From: Luneric Date: Sun, 8 Nov 2026 22:49:14 -0800 Subject: [PATCH 1/2] adding the first product --- .gitignore | 5 +- apps/api/src/app.module.ts | 5 +- apps/api/src/app.setup.ts | 6 +- apps/api/src/products/products.controller.ts | 19 +++ apps/api/src/products/products.module.ts | 12 ++ .../api/src/products/products.service.spec.ts | 75 ++++++++ apps/api/src/products/products.service.ts | 116 +++++++++++++ .../api/src/products/shopify-product.types.ts | 14 ++ apps/api/tsconfig.json | 1 - apps/mobile/__tests__/home-screen.test.tsx | 32 +++- .../popular-products-screen.test.tsx | 58 ++++++- .../app/(protected)/home/popular-products.tsx | 2 +- apps/mobile/app/(protected)/recommended.tsx | 2 +- apps/mobile/app/(protected)/watched-items.tsx | 2 +- .../assets/images/pokemon-30th-poster.webp | Bin 0 -> 145468 bytes apps/mobile/features/api/productsClient.ts | 54 ++++++ apps/mobile/features/home/HomeScreen.tsx | 49 ++++-- .../PopularProductsScreen.tsx | 161 ++++++------------ apps/mobile/features/products/ProductCard.tsx | 39 ++++- apps/mobile/jest.setup.ts | 5 + apps/mobile/lib/secureStorage.ts | 11 +- apps/mobile/package-lock.json | 35 +++- apps/mobile/package.json | 4 + apps/mobile/tsconfig.json | 1 + .../20261101000000_create_products.sql | 31 ++++ 25 files changed, 591 insertions(+), 148 deletions(-) create mode 100644 apps/api/src/products/products.controller.ts create mode 100644 apps/api/src/products/products.module.ts create mode 100644 apps/api/src/products/products.service.spec.ts create mode 100644 apps/api/src/products/products.service.ts create mode 100644 apps/api/src/products/shopify-product.types.ts create mode 100644 apps/mobile/assets/images/pokemon-30th-poster.webp create mode 100644 apps/mobile/features/api/productsClient.ts create mode 100644 apps/mobile/jest.setup.ts create mode 100644 supabase/migrations/20261101000000_create_products.sql diff --git a/.gitignore b/.gitignore index 700225f..3851ab0 100644 --- a/.gitignore +++ b/.gitignore @@ -15,7 +15,4 @@ android/.gradle/ postgres-data/ *.log -.idea/ -.env -.env.* -!.env.example +.idea/ \ No newline at end of file diff --git a/apps/api/src/app.module.ts b/apps/api/src/app.module.ts index aa2a03d..224605b 100644 --- a/apps/api/src/app.module.ts +++ b/apps/api/src/app.module.ts @@ -1,9 +1,10 @@ import { Module } from '@nestjs/common'; import { AccountModule } from './account/account.module'; import { NotificationsModule } from './notifications/notifications.module'; +import { ProductsModule } from './products/products.module'; import { SupabaseModule } from './supabase/supabase.module'; @Module({ - imports: [SupabaseModule, AccountModule, NotificationsModule], + imports: [SupabaseModule, AccountModule, NotificationsModule, ProductsModule], }) -export class AppModule {} +export class AppModule {} \ No newline at end of file diff --git a/apps/api/src/app.setup.ts b/apps/api/src/app.setup.ts index 8d666b9..7c854d9 100644 --- a/apps/api/src/app.setup.ts +++ b/apps/api/src/app.setup.ts @@ -1,8 +1,12 @@ import { INestApplication, ValidationPipe } from '@nestjs/common'; export function configureApp(app: INestApplication) { + app.enableCors({ + origin: true, + credentials: true, + }); app.useGlobalPipes( new ValidationPipe({ whitelist: true, forbidNonWhitelisted: true }), ); return app; -} +} \ No newline at end of file diff --git a/apps/api/src/products/products.controller.ts b/apps/api/src/products/products.controller.ts new file mode 100644 index 0000000..872dd07 --- /dev/null +++ b/apps/api/src/products/products.controller.ts @@ -0,0 +1,19 @@ +import { Controller, Get, Param, UseGuards } from '@nestjs/common'; +import { SupabaseAuthGuard } from '../auth/supabase-auth.guard'; +import { ProductsService } from './products.service'; + +@Controller('products') +@UseGuards(SupabaseAuthGuard) +export class ProductsController { + constructor(private readonly products: ProductsService) {} + + @Get() + list() { + return this.products.listWithStock(); + } + + @Get(':id/stock') + stock(@Param('id') id: string) { + return this.products.getStock(id); + } +} \ No newline at end of file diff --git a/apps/api/src/products/products.module.ts b/apps/api/src/products/products.module.ts new file mode 100644 index 0000000..64eef77 --- /dev/null +++ b/apps/api/src/products/products.module.ts @@ -0,0 +1,12 @@ +import { Module } from '@nestjs/common'; +import { SupabaseAuthGuard } from '../auth/supabase-auth.guard'; +import { SupabaseModule } from '../supabase/supabase.module'; +import { ProductsController } from './products.controller'; +import { ProductsService } from './products.service'; + +@Module({ + imports: [SupabaseModule], + controllers: [ProductsController], + providers: [ProductsService, SupabaseAuthGuard], +}) +export class ProductsModule {} \ No newline at end of file diff --git a/apps/api/src/products/products.service.spec.ts b/apps/api/src/products/products.service.spec.ts new file mode 100644 index 0000000..68f51d1 --- /dev/null +++ b/apps/api/src/products/products.service.spec.ts @@ -0,0 +1,75 @@ +import { ProductsService } from './products.service'; + +describe('ProductsService', () => { + it('preserves Shopify decimal-string prices', async () => { + const from = jest.fn().mockReturnValue({ + select: jest.fn().mockReturnValue({ + order: jest.fn().mockResolvedValue({ + data: [ + { + slug: 'poster', + name: 'Poster', + store: 'Shop of Magic', + shopify_url: 'https://example.com/product.js', + }, + ], + error: null, + }), + }), + }); + const service = new ProductsService({ admin: { from } } as never); + const fetchMock = jest.spyOn(global, 'fetch').mockResolvedValue( + new Response( + JSON.stringify({ + available: true, + featured_image: null, + price: '29.99', + variants: [], + }), + { status: 200 }, + ), + ); + + await expect(service.listWithStock()).resolves.toEqual([ + expect.objectContaining({ price: '$29.99' }), + ]); + + fetchMock.mockRestore(); + }); + + it('includes the price when the Shopify variant is out of stock', async () => { + const from = jest.fn().mockReturnValue({ + select: jest.fn().mockReturnValue({ + order: jest.fn().mockResolvedValue({ + data: [ + { + slug: 'poster', + name: 'Poster', + store: 'Shop of Magic', + shopify_url: 'https://example.com/product.js', + }, + ], + error: null, + }), + }), + }); + const service = new ProductsService({ admin: { from } } as never); + const fetchMock = jest.spyOn(global, 'fetch').mockResolvedValue( + new Response( + JSON.stringify({ + available: false, + featured_image: null, + price: '29.99', + variants: [{ id: 1, available: false, price: '29.99' }], + }), + { status: 200 }, + ), + ); + + await expect(service.listWithStock()).resolves.toEqual([ + expect.objectContaining({ available: false, price: '$29.99' }), + ]); + + fetchMock.mockRestore(); + }); +}); diff --git a/apps/api/src/products/products.service.ts b/apps/api/src/products/products.service.ts new file mode 100644 index 0000000..68ed99f --- /dev/null +++ b/apps/api/src/products/products.service.ts @@ -0,0 +1,116 @@ +import { + Injectable, + InternalServerErrorException, + Logger, + NotFoundException, +} from '@nestjs/common'; +import { SupabaseService } from '../supabase/supabase.service'; +import type { ShopifyProductResponse } from './shopify-product.types'; + +type ProductRow = { + slug: string; + name: string; + store: string; + shopify_url: string; +}; + +type TrackedProduct = { + id: string; + name: string; + store: string; + shopifyUrl: string; +}; + +export type ProductStockDto = { + id: string; + name: string; + store: string; + price: string; + available: boolean; + imageUrl: string | null; + checkedAt: string; +}; + +const FETCH_TIMEOUT_MS = 8_000; + +function formatPrice(value: string | number): string { + const amount = typeof value === 'string' ? Number.parseFloat(value) : value; + return Number.isFinite(amount) ? `$${amount.toFixed(2)}` : ''; +} + +function normalizeImageUrl(src: string | null): string | null { + if (!src) return null; + return src.startsWith('//') ? `https:${src}` : src; +} + +@Injectable() +export class ProductsService { + private readonly logger = new Logger(ProductsService.name); + + constructor(private readonly supabase: SupabaseService) {} + + private get db() { + return this.supabase.admin; + } + + async listWithStock(): Promise { + const tracked = await this.listTrackedProducts(); + return Promise.all(tracked.map((p) => this.fetchStock(p))); + } + + async getStock(slug: string): Promise { + const tracked = await this.listTrackedProducts(); + const product = tracked.find((p) => p.id === slug); + if (!product) throw new NotFoundException(); + return this.fetchStock(product); + } + + private async listTrackedProducts(): Promise { + const { data, error } = await this.db + .from('products') + .select('slug, name, store, shopify_url') + .order('created_at', { ascending: true }); + + if (error) throw new InternalServerErrorException(); + + return (data as ProductRow[]).map((row) => ({ + id: row.slug, + name: row.name, + store: row.store, + shopifyUrl: row.shopify_url, + })); + } + + private async fetchStock(product: TrackedProduct): Promise { + try { + const res = await fetch(product.shopifyUrl, { + signal: AbortSignal.timeout(FETCH_TIMEOUT_MS), + }); + if (!res.ok) throw new Error(`Shopify responded ${res.status}`); + + const data = (await res.json()) as ShopifyProductResponse; + const variant = data.variants?.[0]; + + return { + id: product.id, + name: product.name, + store: product.store, + price: formatPrice(variant?.price ?? data.price), + available: variant ? variant.available : data.available, + imageUrl: normalizeImageUrl(data.featured_image), + checkedAt: new Date().toISOString(), + }; + } catch (error) { + this.logger.warn(`Stock check failed for ${product.id}: ${error}`); + return { + id: product.id, + name: product.name, + store: product.store, + price: '', + available: false, + imageUrl: null, + checkedAt: new Date().toISOString(), + }; + } + } +} diff --git a/apps/api/src/products/shopify-product.types.ts b/apps/api/src/products/shopify-product.types.ts new file mode 100644 index 0000000..5059cd4 --- /dev/null +++ b/apps/api/src/products/shopify-product.types.ts @@ -0,0 +1,14 @@ +export type ShopifyVariant = { + id: number; + available: boolean; + price: string | number; +}; + +export type ShopifyProductResponse = { + id: number; + title: string; + available: boolean; + price: string | number; + featured_image: string | null; + variants: ShopifyVariant[]; +}; diff --git a/apps/api/tsconfig.json b/apps/api/tsconfig.json index aba29b0..02a649b 100644 --- a/apps/api/tsconfig.json +++ b/apps/api/tsconfig.json @@ -13,7 +13,6 @@ "target": "ES2023", "sourceMap": true, "outDir": "./dist", - "baseUrl": "./", "incremental": true, "skipLibCheck": true, "strictNullChecks": true, diff --git a/apps/mobile/__tests__/home-screen.test.tsx b/apps/mobile/__tests__/home-screen.test.tsx index 2f3833f..d271429 100644 --- a/apps/mobile/__tests__/home-screen.test.tsx +++ b/apps/mobile/__tests__/home-screen.test.tsx @@ -8,9 +8,35 @@ jest.mock("../features/products/ProductCard", () => ({ }, })); -import { fireEvent, render } from "@testing-library/react-native"; +import { fireEvent, render, waitFor } from "@testing-library/react-native"; import { Text as MockText } from "react-native"; +jest.mock("../features/api/productsClient", () => ({ + loadProducts: jest.fn().mockResolvedValue({ + ok: true, + data: [ + { + id: "popular-1", + name: "Popular Product 1", + store: "Amazon", + price: "$19.99", + available: true, + imageUrl: null, + checkedAt: "2026-11-08T00:00:00.000Z", + }, + { + id: "popular-2", + name: "Popular Product 2", + store: "Target", + price: "$49.99", + available: false, + imageUrl: null, + checkedAt: "2026-11-08T00:00:00.000Z", + }, + ], + }), +})); + import { HomeScreen } from "../features/home/HomeScreen"; describe("HomeScreen", () => { @@ -19,7 +45,9 @@ describe("HomeScreen", () => { , ); - expect(screen.getAllByTestId("shared-product-card")).toHaveLength(4); + await waitFor(() => + expect(screen.getAllByTestId("shared-product-card")).toHaveLength(4), + ); }); it("opens Watched Items from the homepage section", async () => { diff --git a/apps/mobile/__tests__/popular-products-screen.test.tsx b/apps/mobile/__tests__/popular-products-screen.test.tsx index e107d3c..e4389a4 100644 --- a/apps/mobile/__tests__/popular-products-screen.test.tsx +++ b/apps/mobile/__tests__/popular-products-screen.test.tsx @@ -1,11 +1,49 @@ -import { fireEvent, render } from "@testing-library/react-native"; +import { fireEvent, render, waitFor } from "@testing-library/react-native"; + +jest.mock("../features/api/productsClient", () => ({ + loadProducts: jest.fn().mockResolvedValue({ + ok: true, + data: [ + { + id: "switch-2", + name: "Nintendo Switch 2", + store: "Target", + price: "$449.99", + available: true, + imageUrl: null, + checkedAt: "2026-11-08T00:00:00.000Z", + }, + { + id: "headphones", + name: "Sony WH-1000XM6", + store: "Amazon", + price: "$398.00", + available: true, + imageUrl: null, + checkedAt: "2026-11-08T00:00:00.000Z", + }, + { + id: "pokemon-etb", + name: "Pokémon TCG: Prismatic Evolutions ETB", + store: "Walmart", + price: "$54.97", + available: false, + imageUrl: null, + checkedAt: "2026-11-08T00:00:00.000Z", + }, + ], + }), +})); import { PopularProductsScreen } from "../features/popular-products/PopularProductsScreen"; describe("PopularProductsScreen", () => { - it("shows placeholder products with their stores and prices", async () => { + it("shows products with their stores and prices", async () => { const screen = await render(); + await waitFor(() => { + expect(screen.getByText("Nintendo Switch 2")).toBeTruthy(); + }); expect(screen.getByText("Nintendo Switch 2")).toBeTruthy(); expect(screen.getByText("Target")).toBeTruthy(); expect(screen.getByText("$449.99")).toBeTruthy(); @@ -14,6 +52,10 @@ describe("PopularProductsScreen", () => { it("filters products by search text", async () => { const screen = await render(); + await waitFor(() => + expect(screen.getByText("Sony WH-1000XM6")).toBeTruthy(), + ); + await fireEvent.changeText( screen.getByLabelText("Search popular products"), "sony", @@ -23,14 +65,12 @@ describe("PopularProductsScreen", () => { expect(screen.queryByText("Nintendo Switch 2")).toBeNull(); }); - it("filters products by category", async () => { + it("shows stock status for unavailable products", async () => { const screen = await render(); - await fireEvent.press(screen.getByRole("button", { name: "Cards" })); - - expect( - screen.getByText("Pokémon TCG: Prismatic Evolutions ETB"), - ).toBeTruthy(); - expect(screen.queryByText("Sony WH-1000XM6")).toBeNull(); + await waitFor(() => { + expect(screen.getByText("Out of Stock")).toBeTruthy(); + expect(screen.getByText("$54.97")).toBeTruthy(); + }); }); }); diff --git a/apps/mobile/app/(protected)/home/popular-products.tsx b/apps/mobile/app/(protected)/home/popular-products.tsx index d2a70c9..f3372dc 100644 --- a/apps/mobile/app/(protected)/home/popular-products.tsx +++ b/apps/mobile/app/(protected)/home/popular-products.tsx @@ -10,7 +10,7 @@ export default function PopularProductsRoute() { router.replace(route as never) }} onLogout={async () => { - await supabase.auth.signOut(); + if (supabase) await supabase.auth.signOut(); router.replace("/"); }} /> diff --git a/apps/mobile/app/(protected)/recommended.tsx b/apps/mobile/app/(protected)/recommended.tsx index 50eb2e2..63959e4 100644 --- a/apps/mobile/app/(protected)/recommended.tsx +++ b/apps/mobile/app/(protected)/recommended.tsx @@ -10,7 +10,7 @@ export default function RecommendedProductsRoute() { router.replace(route as never) }} onLogout={async () => { - await supabase.auth.signOut(); + if (supabase) await supabase.auth.signOut(); router.replace("/"); }} /> diff --git a/apps/mobile/app/(protected)/watched-items.tsx b/apps/mobile/app/(protected)/watched-items.tsx index 4d83d65..3a04fb6 100644 --- a/apps/mobile/app/(protected)/watched-items.tsx +++ b/apps/mobile/app/(protected)/watched-items.tsx @@ -10,7 +10,7 @@ export default function WatchedItemsRoute() { router.replace(route as never) }} onLogout={async () => { - await supabase.auth.signOut(); + if (supabase) await supabase.auth.signOut(); router.replace("/"); }} /> diff --git a/apps/mobile/assets/images/pokemon-30th-poster.webp b/apps/mobile/assets/images/pokemon-30th-poster.webp new file mode 100644 index 0000000000000000000000000000000000000000..4ec72762fc404d3652dd35730cb30310657c2257 GIT binary patch literal 145468 zcmZ^~bCe~)vo5+@)3$Bfwr$&X_q1(H8`F08v~6RiZJX1!x%Zpjz4xti?t16Ns;v4d z>RXXfk@-heWQLloloSUKI6zxcOhrqDM+Xi70MPtvKOp{d$cl@r`~v%T3jq7&VD9J+ zjsgHUI(fLMNsE!_=<1O`ZvnsnxBv(MEr8e5+}%Y~MMdF1?EhJwSN^g8$s*%_Z2ixi z|6eVvg{8aszo)nVnz6Zyo5w$&{?iwNmxs%Lu+Be>;r7p|f7sza*!q9t;QwH=|BciB z7e_-){2vG59~QCxZ`ka=;s4XuKMDZKoXy>U$OZwopUh&!1DwEKqUQ_&MXT6XpaB@a5nx+M^Oj>Acq40ZL|MIkfehX9FU~@ zEf0(?0U`lHNS5S>L~$`GM&%3&4P&<)6sjxRF2m}H~1@Qxa10Oz> z-*!KDkA(kGKg~hr&o4Xw%UHJYH{ohf3}_yh`1OySnfPw}*}wd;3!DWGgM!`@p9?_1 z@cxP*e^C3|%R>RE0JPd8{kr?n4-)?Cj{`CRd4h(&PTFojiLd=n{r`-AgaKQDAW;2> z@~bfjsMbFfbPLi2&VoQ=&>)ag{~m!z@xg1PMR1zZ-w-9t$%E@V==7E8hB_gg-#*{t-aa zFX^wKm)Qs5SK;69qo7F;IuJVo85cPDFPh3GH{biFLHwV>@4LYM^FX4$W)Sl`vR;rQ zh!SM|IeX*v{?E1G{zc*DpdJv^$00Bd1X?S2=zj(^e}SIdJ`4VZLijp}p>HUtB*+8Q z3}pUtzG`1Qc{Tn7Z3Yc|&AgI6F#~U&h_8XN!i7OTpn9P6m-N-YA^F_(3j%#T1fGFF zFLhsIAYkZOD#Rsk_>&gyjC<}0@Be&CMA!$ltb&3PH{C>z^_2>4qL2eQ)@_dqO~^66 zsDuZ`AG*>Iw_s~MpqWDWYzNto6&@#j{y%nk`e<>SO7O2S*4Ojv^6b1_e=mkj zK5NbD7$zdq;(4P5<(zywK<1y~dDh?4_-LQQKPEY(ooB*b5Og~Q&j=Sy+H}&!=g;I_ zy;bxXDPfLUqx=Ku__-{by?$yFAwS58fL-x_y+d+-Ahe7VywH{A)npJ!o%^v_8+Az4E4Fpuo*TMXP>07#8@w$VuE!z^w?{mUd?(QaDn0s$Y8yuB{b5 zEkp&^JUPvs3%8RAZ0(J^sTP8S*mWUk1rRH8!W0YqK(o8QV!o%RnT*L9W_@%0qts%; z&PR~BMVCw1>%1e8<$n*Md@PI3vSOnkhYBzDrl5Yey*M$Q`-=uLr6{INXe#1|?YD-t zU!&y^MT6|Ss%cpiiusEosuLrrVU>?+z7$G(_#eYD{O?tlruy%j5krN!5h%Mno-4SN z!0Ozfcs58FJwe-!NlK2Okhv)`dIO#ocjNE8s7CC_Uw!A1&1!Oy@6ua=MjpS@GQyfM zEyZpE{N#lX1rt5^BAT~5H-bq_G<($Nm5GA$xuw>6V!#X>&x$A}4ue|H1V^@2^24>aV$R??ZpS$ZsiY4a~d=61m{QZ4v%YGr+-q?bl2wrwu zZv;t;@{oQ0iO>dv|1!h3iozmV-zW-oIH+rEi`y3`9yy;}qiTjUJvMyOd49RC zhSAYRR+bGMEME!`XrQL)^lR}7nh}Ql|GV}V^Q}Xiu4rb_8NUN-Y$c;4Z!A?$+|WqP=GA}{5UXmW&y!u!_$Rp zOLOGLZi%ixhPsX`HsKkUQUndkTrs~`EiVf=5FeZ1>!;|~eOYHn);~K9lfL&3>x-9+ zay_na4^P`#r2~$TFIq&}s=$2wIb{sAH|=cPrh%eZI$k6<&pe zROU`3l?N({?}^cFyG$Mw=`;r0oJfTTmlh1ng#?X2D}+>qoTn`0y2?+mej&kV_6!zV|H91ewrWMVy?Zz=hqN&HCuhxqM>v;}at z43a4}lAksGHfNH?Tq-515lHd_YJ%uNhS&`9OzE_fW*(9Cqk3|blsKlz2_11OfbNhx zyT;`4ymgG|^^!zpkFL3q#k1~uYqqrf`7wBytWz*qjN>g%0h+`ti$woKS#FlBBV|Fr^ZoU9K#Q(iJ8ajz zg-)nGOK4>3M5jG;49|3TYQ4O$R{`JNj+?%vcnv4gTEh!$e)r7m{@EzTq+2r(i*1fa7)+%v3gRGP5V6`Mce=T5!3UTaX* zO?=?xBY98Z;Je@mlu9hVBU==eJ z$kAM|)m{eXg#h=;y&1PShh8t@@hp4|O^3M#PxaiVoi$i-v8!8a9)rBwB$U&rRI6_~ z-pZ%dtDYaHsX!9eULtE(6QuWCzL5=H-sV}Va7p314X~Rgcy^hOxT$7IDAN?Npo4Y_ z-e85o(Q0m`hZd)5?IT*{omekh?6p2+8ns9;@ZZD6Uk9(|kP(BEEYOQ_9_x+D+7n zE)vnFLQ|93)(F&2_Rv@($Ty+3Mj1f+lk}<@;_QYKi`%N3+*{YKKyosc#W;b7Ws`+M zgwTbIwF;I>{zRF{_<|wv8^c%}hOUmuL@DhR1@(z^Wo-EwPC2gGUdN7=il&~RlpD%j z!IYEQuJ8!C8@97P_3K)zn*xn)++)OCwdktO7qTm3L_N6^b5kmYmmlM|WdEF7)|)E! zA>6;%qkM;V%GvTxx>Bs|rqfmab;KbwGzB)jPX}oyMVcm^xl#^)Ux!3|@_rh`HFZS@H}M5v^0%Zv=LX;P<@hU__af%t5}H7N zSKM2x$Pp%^(@~0@NHYZocW{8ciJvS7dxb8^>8QJwU~9YGZDMlJ6piIbk0OjVJlzC` zOGt=v6&vj@3?Off7hU)m_;cGa7c;p{eHs}UbdNV($-qk!3G3%hcp(*%vRXZ!kSKYY zAWF|-YgO7Z_0TQOEwlvY4m(%vrqO<_54VZAqwtHKe;P7t@*6AkNFfn>T7ND=QTmPh zq&X`|UHeo?71b_52h`6{7JcN8N5w@boNo*c+Iymh-cak)lYb_aXJxZ?rq@Kl*_4Rl zev~gF=w~dobffc+Pd^8c)Y_G8St0#%H2PKs;jv`0>7s#`oTuxOxpMK?q?7-s;N)2n zCI9i@T|{nm*A&M8@*1yQYqYQwa8>o}m#mFGu_(o<{tg`hUxUVa{A*B(op8BEgw@37 zaAWO$O7KJ0PpkaFS5D2E8nuV&IINK*0yw{&!=}W17v^XheE4AFaOSCZxIW{aboYk2 z;wyrB@H=hp`0Uq6*d#hhM+zf2@>{&Ngdiz>-bJd2uX+a`?g3>gL(BMkq`3)mf!cbS z&Y`|!ufeMy8)EU9Q1lZQpP5ElqWj#uW&7=CbUMUxY|ycue3>6Mu;RRN&M&ZT$JsXf z0Nc~4+dpz&(u>4LH5KtS2AArY@bP0^#TljU%XcbLqvoi3%F${d#54`TZKEHBC=D91 zz`7B~&(p32yXmKikdvPK$ds0k%R?q#yDgigJ$gpf^m@35kc$6!Zl1m&6MR0MtdSS%X{mh^Zo{|y{Wh==^C57!xh7wN{)v~tS7T&8yDIt>{8c_8?796DF6L677~hnlSL6>k_lHPl z3yH!*m@^RtF0`6)y?^Xtxn$Ds;_fa_{hh<6`H;whIcwFiCa!!}0w`t#onbW7QVOjF z7-Sn0UloIK)9zbY$1?<5*plKXx75$CH$bd1-owY)6v*8($8I4&>a?Lz8w>djUOisi zqtr`8dsqIs;&_6|Z0siT@&6)iJz-Js$tXYgpsd?OMBLYjQ6FLKF6O7%Sw!9K=z8t- zMz9rtd6^aJty#|KsvA3_;EP%rB$6$AgSlSxctul*`}D0a!j5dBw-J|n z)!EJW`Rz}+-0XugdR_HYCbT<|Vv+Mhh9U!1Wh;;Q8#uSY#8gA*Jv~-;{SDO!di;GA zS836EKT#dcJS(ih8Lim=j;;=O!f5vJ`8+4r-oH)(sq=o6r}M@1=`Wvst+OA?vuAk? z?Vpz(tnyGRs@3Tc=Ll&Pn>!ChalD{?4ObE5_#d~Tfpa1vfkHnW zzub8S+)41(vG1nlcaojQg~Z^^+U^wzVZKi?#v-uRC98{=NEl}!&bs)}qE3JBKv;oJ zR-XK|A2t6d&efiem6>g zF}nSB`gyw^U6N4mc(Qr2Gm+3mGtb4mdK4{eScAf@{qaRA5KgQSXBDb&Bs49YvS`vz zVdq2jwgh!8ZFmNH55)2&~dPpN0zb<9_^W|MSWF=Syr3|W^AG+ZPGd$6 zZ~6VYpyutoWv$Y0G157Rq@dC351;2bBiE zr&?84%3X;0OmOz;qG4@gdVVxFi9ANy+h`uYe&xhCtAADjX<+-am2e>p4PBz&?+f!# zuD9;&5=y;ei}- zpnP9Yyy89H^Nk4D=Nz>TV~|C{usLhxQezNCfXfpv?6|e>*-!CGv`7bY!j5B&qkz(? zA+_wA4X}}ww{>RV+3GCR=O{hs6LS~_6#com7|p_s9qW@8vBZvB;r|is8FhC&EaRHL z_Ko`G^Y@lIP4kxORp?8x^AAxQ7Oi_fChA9G(}};I?ajy*4x{ibW}(aF^Jt^%Cn;_# zVMb#GLV<+m8V>ZXq8!jN_jez%qzr)$69&|y!R@r}5BQF+B^RpjTe*FB6WN`B;Q_1j zXP9rWAifq=ZwquD8|NKqP#&a;mY=)rH)GenPUrEzWqLd8b7?mWQphXUc3_C0e4jT9 z9J$DC{AkUIBGvck4KVFTS$%=4%%o^&+J#piw3AqmT+;y0zt?XLDQ@pdI*6@}G@8q^3E0-ELgA=e#UMQyKJniCQOb`aE z=8gqvK(H&3=L$7>pUr?GLN8z-4$#Oo=YZzLpfzg3cwkD!ni*r5z^yho87n^{&b);+ zGN51SG_vmMi>X~N{le$VVF|6DzW}lqBF?>#xaFOUiPq{%V6)HwKd5V~-`0;o63io+ zJc8`Q^TDikY^ms4$ua0}-e+@fhYA{Hba{R&1D!^(7qb=)A@z~Hbm5b%?;6ylACSFB zSO-BsNPF!d#nDn{Ml{f!y!kL8k@bV>%SwO+M*#Wwa5J$4`NCorCu7Tb!3VpXcMGY` zBO+Vw5^c>E0f@eyJZ>79e$2$2JA*HICY3cGw(k%tn$BbX~J z$U8#A(szw3G%@cUe_oSbyf1AR3D*fecM#kZb44|wNl));a=7;?Nd5sGUhB`Do4$$H zVRSAu$3THRXf-Irxa2SjNNLLRrFwSN9}W+C&p5>dx16~+6vZhb^VdtG6<7a05&P0< z*)J$nvYWwj&E*N(gK#=PZT#q4nV2qL`Hq)gF?$1RsLwt)V{JS{pmyUCz`daz;&7<) z5IiyWNV;t4G<|6{oAN=8-SREtSPp8ASbnz=rUHZZP)`f;OIP>G{6PNhwEtTw2|cRE zpyG`hd6i*QnVt5wc1IIAPZ~ETq8c?kH7#&?v4kMN-ppN0ZYvJclcf@sxQMdXyiSM^ zA9WLp=6ztsU6_?_8*nIl5;-U2LY$>v=Fk&YA{6hTd3PLO1z+=N;56cMJUxme0L6&t zZIopiw%+cj`dSr#qeoN_#vPQsugMJRLDz{(7$@xoNq!+WQ@Kqu2A&q0{Yi*cRl!zv zFUn?~U)65oCr^~y9bS+vErZXz9n&@KRPT(p95oF=CQd496*X}*c_J<-OP7dcLl}P=q=E#B_%zn}H%{QoYT1 z>az~Lpxl>XvhP_dBQ=L>c4aBu3BEiJS(6eRX40j>GTudX zkF~OZUvt9#&eI4j)S~QB6TNyLNvbUC#Jk5>{Kr0D-KMK-jsng_R`YA8h&c9-2{18> zT+Hf=hQj$oO!>qWqsMAg>aMHPUK8TH*OCm0@ti}0qs6D>PDh?P)$W;x^Q%GY@?7EHcN`p*Wla2jGVs}2Sqr!5x(lAj zv~C+YhH$`hc%NIRTbMB81*M#r@S#YxJO?P|)kf$H~&m);Mb);Fsm3eEdo z?L^^Y!k`xFelAjSQ=1s&q<{|YtZJWKKRtf$X~}{KmIjsX@bOdnCDUWL@OoV=#`8{D zT$GnlMn;Ab+G`}-Rga}`*eBMz88Eg?e(_{!JN0_%5^ZiDCz!C&(<&jf>hqTT?~=~TYTzab{+ zp3d*RSYm-@hMTP4HM~?J9X41r+mx{b{P7Pf#mc&VWXX49e5cR{KjmYts30;HE+zYv zt_u9A`rB>sGS$*k2*XTFsM6G5x!xC;1#19*Xwlltl(j|h;Q1#xnI<+~FcrV<6jW<8 zFCQdJ%xQ#(<7oF$Z0y9GWDnr`%io%Bbmv-}#Gksoz77(8s#dKz-+0^EdJla4Br|}? zu{0*&K%h)$V|?C_S<7>&=yup)6RUk?opgwMJ|p0)P#Ku+pLH>+=VW6>DoeT>oF_YMT?lvQjHMB~{G zvc0PM4}WAa+-*u)xKao)0w+vz6MNg{0k#&V&X?KBzs>48HRR`^Qn8~XBQMQ9O0UD6 zPa9=EN!a9achEP5J_k>0@yzm*xAu1=B;a957s_Au{N;W;69j8W_S6gFpO|(G{PrK7 z`@|La-6T2Gl`{VDgcbq3!Yuuz`CHA>pP@zNFnf^q?kaRVb$;97zK;oGP9`n`m)vf2 z3!0jex1uTB0@vxy?6Ifds7Z9HCes1^R?wG1CZ4!w7KXo~LcW6Yeod^m=^e&wY7*H% zCw;ff&n_!>oJPs{m+!SsV;NMHt$TLLV@*5sra40uqHIaNH-Sfs{Q2LotRIVbeC&bs zl0Z$4C_--`Fokc-77OtoAckoq3r4NITxJg=Jy;|@`;)(s?(MXy4}8)3l87ZH(G`{0 zZw0aPnR)pX2pZZ5sJykNYpDosPQozo3v3eGxCW?2)|3(%#}a2SpO5M-rLvh2)>aW_cb{+^I z*BKQ~!cU3M$`Wv^??N-+VMj5pa+G9e9*lv=Fq~9yX!6kh^em&3-1O?1<>_MA-OhnC z0fYzqcgq?-Hyl*<@kYQDip>@loSzgbE>9EM26XIyRnxJMeNtqgXo=tq3yT7M?i3Bt!O%8^Hu9v!ITqvL zviu>Cxf0YiwCpV9;8z=R%aG+i6(HPq@CC>Ecf4%r1yfkN-v#cih5ga(%A>tU7|o7X zQmEa9umV_L+W-6|C6n>1Ni(h|soNM3&D~!h0io@;#O&)wf)yKrpFqv2rzpvMe#H*X z24xjD4VU|7BJEMRZijA4Kr(5i%GnPyv%5!6k%^_^+JNg4M>eUF?N6Pyn`7u4t$#jb z#wf0MJj@x=^^VddE}#u>+){i%2L(H4~AQpPiX*u4oyz+Z- zxv;AmxvX5-cb#`OqT%B-Px$n6x|iY~0#ARxExtGfJtx3@Oz~>G$edl{8U9rGdyXk8 z*I~7$i6Tl7<=0bBNT4!8*k=f@zSpSK-XGFwt2B0$ir_~hPiPUNmr&sZ2x=xB^tC`2 zW_kU&1NMycbxP*pFxiKET;6gGbmX-nT8s3<#k92U_m{t!ESSpbs)YenUGmD_#I{Nx z;}+1_ONh$4>1JmCTi2hGyezyT1G@AXHR`B|6}W`*A=oDna#NLzILmtlSxTmqqZ1b_ z=$U-w+sYfd`TsOc*;bj|^_&od$s4IBN-~>uSh^@)UQ39>j;)+O8N>Nw&VD?ahS2V1 z=A@h{+#~@_+&EICFyX=$_2*|JI9HGW?b57BZNX!6#Fubue?QQ}XK_b^4S%NL3)&Vm zbdUqy?T0TGLJOm46m&a(-1_-lCD0<3X7M(RBE7NEa`mVOk++X96`}5V7Y%@s z%oamtDPckQ15Uaz%J=s>=crPvF*Z`t0=2gCl3vdPtidBgS*k^ztE}d?P)6gQ0|gN@ zFVpUEOO%S?Pns|9mvH4Bo}Rb!MF;3wrvd!t4>4YgMQ4aoP`1^|S+(R(Vxe_^J3E1# z12BVu4s1rk7|BF9Nja;;nZ9rh9kWWMl0g3cycYcmdyt5^K=dC+ydor&_d~lhT~L1! zgqSMrD#8I*5ea>{9pz38q;_oH+j(07(Q9>*&`;+PZ~kt)WYnC$Hyh|y)5UT?#qpa<`|M7BgP+RZ=I*C2^ zg#61FW5!|gtv%?$b>QLa0&28FM}_tQ`%NIGobtFyxUol8P9?z`1^6%N2bLh^m8+_8 zy1aL@*&bpjx^Sk}{(xrBU+*!_w^g-S0~@EsDrc_c>Ju!i;*(Yq<;S$gMALMzCjI0c z73;AvXMm5!OLaB4);{sK7G!6I4nGg?7ly)0)A(cL=gkO@Jxk_{Q?x|%D6K&DDwk+q zoMHj9vcj!j2^xMXo#BmAON)n3WGcCCDz{nHifH`dCJKajLCcN9v-4AUHaIO)D7Eu1 zrA4O{JdV4$4Lf=t4(QTR5Z`=q?Wk%7o)U`j8vF(7mT)|nWXG(+5(?e^mGY>37L3;)s0n#>lG z8*2V!Ro~<^R~c(Qp8AGztB+=$y^6cvFQZsda!&Gxt)X_-rh7U3Ne#~i_nw#i{%f4r z3EwUsZOE{1d&wk3Lb1hQvy!wVV?o==-^qYJyw~Ct##Wz2I2V^1sc$7c>K%7sSl?4^ zcWKQrU`$o4Di^4aaA9$dp!cTR`b;W5r+<#~mf zwB75|Hpgja|F%i7$TwnQ5NLfz+)Qz^DvN%++oV;ZfutBMEK~T zi5+*4;!U>3xp65z_@&y&uUaf>h4KiEy@N-($LCdIyEqfAw;fmC-ri+Qyb>Om&!j5f zVt=;<-*t{MzeJQvKRXA#s6s?tj@7nQ%rlOzvXsdfptcS^ySow%JDxIXX~TSbThCDq z2tdwl1a-55-cvO9H$Omb*k=c8e1ml^`$Y)|u0ZrQx^z#+%GfnrFu)I?3v-JKF1eCNlU8hm@APCoINOCxb^KAkeklD9CMXp}7Fi zyypkst_PyQblMDdWK+V>^VREyq&@62b(F;*vXhFCN(N+(TH1T3Wdu<1c)!Kb7EVA z{8z{nH-3GuFrN;-?Vd3pJuDht^^bOZ{c@0PvIm{gx-T$INuR)hOY0oN^OB*?eYNj& zJvwSLLDH7l{Di*9Hx{o{z8;r0pM=Ba*vq>6q7!B|eaDnU8?#sZtB~71>y^2WvayxW z5p`HPR%*Hx%;Q~`&U5Gg2 zEsnZj-$R!WG}qrWyl>w9%T`!gdXz9tv`BnA!v*^|ABjsTlmc}db0 z$(YxgnLf&U@?vT63mC^LGpl5(%1gXQx2|Zk}A1oR4MGXiZ zLC>Pl4JWDa)V_F^X9Jw$a+>1fa?6QHWK-57Eg>wdmro_T8^;WxCYIA@19ccy@k6|N zlknp9?1Ls}a`HzYyL1YknY#~fT4y(-Y|fqx7v`#8=}0OqOn275LB=YEb56+%X5YNH z>0(|-@!@+`Nu-~)x0cG62~H$;)*bNcoo;t!VBv=?a|FmiOjx(kdh}KJ$B#=^&15W? z`00(=#W3boR6cEJB48c5-Q_tG8y8(!X*1s^sXMp*;&?rvf|UaEX<6jlgZ(&b6&~zy z^r?I;OTM=uq=boU>srky9`nNsj~AbRnDnYsOABMG=RIuub6Wh{E6Qwn4x}GE1MurK z|1O@=jKnQ=T9bV`255k3EZ@7K0s@T9PUy3?ZvFb03^x1MF_qyJI#AU`QVDx|FIxLN z`(Gi?|1f`xbKrUDV0>*$X*3m=zjzl<^H=_*UQb>R6mW58Sl87vHQsHr6QySG4Cpk{ z4+3ZR&kcMnOjuXE8lzT5$!^b$o}16l7)lSKY}WLjl&JcZ7`z6MW!nIDVZlP>niCV1 z$^1fK3b^&0*EF%il(K5A1`=l1w;XMMqtf=8K<+Ma-C-aqv@|1+KR)g z-yF?l-lC_A#3Knh`bPQL)nx4QgfBBdCVTX z!t3r9;-T9|x`?sfFlYwB#>PZ4w5=8!(Q4CS zpgvXp=kD(b52jT8A1wW-WO8OkNSTQyuG^wjh8ZwY116kSQM>6Fn%`6o4QOHG*b`hGqvS_D;P@)mtL!C)gZj}Vr3*25I;b`&MD3}SXk5!@@^nnP?`mn_AH6ouB& z7(Rr*{}5MdZiT63(LKq;)BBekNRsQXZ{1jlwCbMg5>;HwY_Z=S46M|w{Plbxl`0{m z>IoY}bT)T*`3MK~UJ*hexl)fb$u`yd`J2Ne9?WV{p#djYt8{S?GhkdhLgz^qpSQ`e znd^56;h}j;IhY(d2GRRP7aq-JOrtQdJ+@fv!DWJQY=J#*Wjowbn~*BunKM~}e~JJI~qRxikvU|Fxd#9d6;`M0~; ziu`Gl*KoXp3>xVWHn|0_V_Y&1nQyYwnC!lC)!Pez*e9t!tUL}vWs zc*rx(J)5xIcPmIjfgPNNl{7PTBSoqTZC}bDcSf2I3(S+g_vP!qM-<&7Ql5NA^+HI{ z{I9UShcIxY)w`z$1)`v^bvIubG-6AO3)sQm&9VIQ9{Kn$w)0&`n(j%tRVEUeRtP2~*b|CY@{tT#8n7SA-azAL4Q2eP zko<86+MgjE1*S3(%P!ihqxnPBna}NO3)kPWni$PFnD*w?QRN#-;&w| zlY8NJX?@t1=_h~WLH&_`_eqm&2p;np_v7VpM*E_@Cwo@X^C1>cbT#T{cn0lcQ=4xA&ZXxH>}HL2OiDdy%dJf8`Lbs^6++Y zqyhHY1@y4FuoUlf8wnG&L*ticxmnH13rQq7NyEx8e3sVzN7!qV{AddF@Hy@?EBt%at1gGGewXFI?m|OhdcPDT_%#4nyeZ6nBZ|#Ejt?+^Aezd_5OZ>wTKOU*U24n+o`SH zyb}@rluZ*rv+;odmmaZ86<_Za9Ux1zowp{5l}`Zx z7C~4T7#jMIf$_fLgV0Z4n7e$g3wT&SlBcEY>~6&`u^aRfvAwV%O5MgT!imV~DadyD zGwxcGZv41-BDQNb!gmL(c`d9FW{bSLMlrwrc!2V_zqpDc(UntED~7SWAlbr~mA8+g z=jy8KC?p_fw1x)Ka?rH$spD$V;?Bk>5Yji>iwSkV9P|~4dL3h^sA)FZR0LGY3rKF? z!oIr*MJ_$Uf{qIa>;-Ev_8_w*9vf>nok6}yHSn6AA1LQs= z6(5c6?O4wbR1)N#)bbxzu&J**zHP|I8Nig`*l82f&y$KOBU&49b(XBJxYlz<>@ z$NGMHEi&!f^jc`M@N6a}k=2TVGi6i07yLvzDC`aiS7Hzq98&wGBLLyA^lM(Vr;(N) zyn|S3bZP;k&RuPzOCW6mW|B1ALnBIWLS1J!V5wGEwt_T>Au!$aNrhElv~B4<2|vSt z_BYk98JFoFuogRTF?y{}H|h0ax$HN+GN_)3J$@dAabzOKE+;J%0-L(4#7AqBSNQ(r%Nx&e8&>fcCoYBXl8IU9? z;???{q-4frX$cu7OJmwKhp2Q3w}5d)*PW$r%^DvxCkyT~%0xNO=LFP*$%mIXk_s95 z?4wbGt|YUB%va_Z>1ZjuAXn9qZ3&-$4n){`IQHcDep$>%9P{W7%R5W%8_;?UlQ0$n zt|8JYMdsK=hQLfjn#_>^Oz^l_iE|%g0P`IV+*Xs0x;~_%%N7CCX(17$jUs_j#)2@b zFS3=-WgC2gk)3I?@BVFQyb+}CmK!cW{X)M+_3oW>{%I3x!VaEISV)!Uq8;X#$Tws& zr=E?Bw|TYzPPa4mO);Gm`(psUqyZpBq~|GEvd>9}98kjaJ~gD|I5Ikb*zztjQchLp z{@jj-jV%;CXrBY;^vl{4DSv%iThPQ1q;28+Hr#F3z((A&?vQi7(;$(dAY)Yx*6#Cb|@$l)s*RTe5AI>!s$EXAdz*`DSixRJJkAcXW5mH(;>C?uTPth8gLsRmkyi z!*xf}TcH42PHAM}_Sg1;{n=`sKMwnStF5(mo7ZuPQFmZs?br8tGHDtbAiPO^;``{H zzSKwtWR?2Xid{Op$w8XY8Jlra9zByNPfoY+&WOgn4iGWH|FFaA#!Hj#@6|o73wdr{ z*C8tw9cA1grbM^^=d5sG4Auh|IDz%?bX1#__yeCy1C+HS+>RyZ_E3*4dc5X>U1G{_ zarf=$oPCkLN#p*z#TVd4v1lZ#qX>Da@8SuXG?>Xxj>p&(ri0=O=n=+yPMg3z@=8HB zvS(aHxsL!PD^v!8d!3NA3x@z>k0OC#Q7}JqhM`(Ye!gXY;Bd>iY^* z)pPwKcko^9lCt->>I!xJxY@ge0vH&IQo6;|5#ifBKvyiiJ!H1PtEPS@{h?K8dM7gQ zDBUNN2nba9?I|ob`K1p$Cg|#?|MYT-+3+l(NqVPuoLLqtC2}#W|7)@_a++lOe$QQH zSCJ|WnG-DhPDs8wKaePKk;{;aK7%KUj6}5ft?uxGvM*5@i)A*@pP+-E!wOs{Vm<#h ze_1ec+!s#Dx%yb&0W8K8&3>Jh(IkxL`U+uci{#N?0?NLNW}x%R)l8!jGU5oAiXYDB zfTaNH!6Ce{|I8<()8gs}K9`_Cl!zIuL8~Xp<8pwTVddIs+Zsy`#K>>4-eeD4HuSd> z9J^)mE#vr+5&jWXM@j<%#s*}&znk5+C5!U8x@W;U=7cgYu2_(TfW_RN=469qM3SA( z4oJ0U=v7tN7jI7+2WcnSI(@pN>sB#VR6imiQBMgGPBIeAhM@F$Eb|}(#g(DMO^Ell zsNdw}kP*T0iSi9U?Sl29yc!?Absw^mR$ykgtm|ivbz!|pu`zd8&*vWKBO4u}GfcHa z@Q|EnW$7#%O_Hs!1{YUuM;Q2UWpS6d5Fp&^%oef2IAl3JC+h^DM?&>JEJXpAbz(lIn2A5cvz$-JBhQ;@lzb2P5drrXcb|H{Xq-r@q}mNX|)=hmx%CU|7(5qznm zTZ%+P?JQSoOk7LYbIG{bfFcla?VD$6L;|GK)~7BQv4)g{!K)~^=jp1Z(rX>vxN0@~ z5G1P$U?`3aC#QWflkeSX`3fL6Bx{P>?jakYF$U`A5PKA8u1A|;jc--oPNggt{N>5} zW@xg$iCSu0_bvEXqhs==O+vjSEz=D(E&-LC9ji96DSB*_)_O6{9JDmOKu@jIA47VQ z$vpenl?2G^h?nwnAn~{(-)F6v)l|<<^rKDzgx&vO4%p?Il#qdc#!;k8Iw-pE;K4Z>i&U z#|`M;V;)z$|2GQ813n(JKi_g%_m`+(8^O&f8J^sf6psE9riq>!3iYjlkeck-2#94Z zOio4AF_QE^q;f-wUKNYm3-daDZH8rG6ZDJPpz4!7yziGUQODf8N8x2tON_vMvOuac z2>E(Dq4WIbD6|yK4TN$UD%-6G`{-Sn^v||EA-j%j(-ducY%gkNgS^o^p;bWw|5ljE z&wY}&NYU?iTfzN`;wfyOa|B5H7uyL3&GJ``@aGA^~4JSdtu!y z_`nke>M`wzxND3oqAVOjY@aY)2j_%YJTg9EPg|KpGke*#fH!{3KTus76DmK|^bSxk zPv4AkV%gcFambqVWq+yB0p}iS|A#qJauAa|as`^)xXU z0lJ;-$k(t z4a~WK(|@lE!lZ16p_E14zr_*xgM)-a){g^1Y@E3(b50c+q+00l?z6k&x*|j5Qr`o= zCwzDTt&5ltV@LOhe^7WhgN)X|ZoO{mWlYGbk}BY&)IQO|7g@m?|)r#(O}=okl3i&&=(p3uEzjO z#_5V9Bsp9;tb0<5OGb)S{#Alt8p=i;F$T<~YMftWB^K+Im#EA%rGDV=3@N#!(`GjquKyEwW zu3~}E@}dTh6-El z(+zK&71-sCbDJN29+I~aWHQFj&(7E z|K$NDS8{U{a;e&MvQG1G9^G7h}v%QyndH(t`N~fL~08)(1IMfCR-E z-7;>Sc62PWFDDB3oPB@j%JruW{bC62Seye>* zA-};z$0fV1vu*e#z`m69(18xhqXO6QGN+GXsaAi_1!*$pH8F}{q#?z0$*FK^8ZiDH zXmGlR_t3>e$%E&*c?6?op>QJpX`_sykozbQh*Jxe#H_W~3rXADW^yQYApOt~t`78% z{iMK2m{<~Il!+U9hT?Y|$UO%LhR41{p-ey7A;F-{c5-tIpn)f?q`_|b(oSsfb+=b2 zhWcnm1oSui0MsA}lowX`AUflCykh`T(8oWc@BeT-TMO&zJ%dLwF^^QZ4;jTYKX<{C zt@{6T2uL%}q8?^)fQr}K4#t7=#`!diaC_%e&#S_he)4_8&Lz?GE>WM0Wpjl)rfSup z+Cvjj)HR$)S~f3N`FvbX3RmngLwPwVl27kHRTo*xBuCiw1)FVwJVpKVa|6d{G^^EE z6~0Fi%qzt5odgyf_UZF&mLKw*cxg2UFHQOpIhznqP@Nh@G(4z9HlEaAT2;}!XjIIZ z$aqRY&lg@79Ij$EiWf|R%#davCiRKf!li+U9tn^j_UA%TVj5|W9e-}_l8);~v zTe_q;0_l)dS*bwW3x#_)hXaa$nClD(Db;O6Lp-EJeda+BNowA2uP6Z=;EzHi`(cUe zI1pyTqP0ZqhxSjh zIcZgA-g;1HZT;|G;++Xyax>v{NL%I=Es`3FElt`nEK3hOK<}chhgLsGY|8;jM;VMl zr|w==)P=wCW$A?pktR~mX}U@4bhghvzjzodd%|voN0f6QT+n1yGQhS!!MQrJU5y4J zV_miW+T0$-4%>a-kq^o*&i(`xD*Iw6M`qMypE=TAB64Ut?`|icM^=v`W@EzAhMGDg zL{ptfLfkF^Of4&KXR23(Lt!RGo^F|HL1In|uxu!8OA5s;&qel0?J@1ik17u!w@JQm zQjc~(e-@^;a+|)5e8eMDJ2%Z*M4g$$l`*p&M!sRPpry?N+-tzlN(@scg(0E_nF~-W zAU9OSdSx=HtFE5#h0L99jbSTq!v5f~3h&R6&#K>>dft8+K56NjF2XYrnc{dYpqRq*-n5>*+!4I{g)I<`Ou4@Q!kQL= z*WLde|EBV^)hi4AhPu-L$0RWFPz0W=#5>+B;43q-dUmr2`&`N@6xiS23=c&6F8z`9 zMe*rRv#am=N@r$~yCcT^YYOb~0KfGYHXe_h;fl0eNFcwk>s`&Y{l0PO&CJsDOtUjs z-M*j*wTk4$LcQwyw9!9d!Gxb~{m`GPV4n-dP_*n^YLalv?<80uq&^d?PG=qkYv3f->qv$Os(d!8@Ou_08$%xjD3nV3@k!J3 zmJv8qg!_;Vy;H{OtDwT2PNgaGcMXhX=tHQ_^`Kkoru|Bv@tO| z*Mg@xqF*2MTh|1OlDt6}`XM3}MDU7p+s{VuNl2y4c{1#7_Ewr_+7ctZI*6)OLIrD^ z{@pCYlL3jb%ukjVbj>9^ij7bUrBqTPBeA0w9 z06MpBZ0Cd|PP}BynAwuqGqckgm|vfp%s|QOE;B;mAHr!YJ~ zw2^{8bKj&vR>Bx1R+IE^M|t5?nMiv#Dta2?0Z?sHFpEW&!#urF@8l>iaLY*f z=*i(W*qGBHKf!KIU4yt6mqhRyF-g!K?`Fw!Mqr$<_-6=+?U~8bPDpD+7p+~x`f)W3 zI*Fs`AxQYNeJ9vNRAsBdzYJWCSpK)K6qct5bwQkz-WyoZ`0CvN@(LIIKKD!ul>JoB z?76;=JjkxFG{}axiNU5{ty>GlQi8-~(3I_1GLSih1a36d)jz&_c$c*s^~~N!j4{WP z7wUFjm!#g=YVbA@2hd}{-bJr{% z3FARqhO5I@&MU>pHd?#duh0lZAyF&{D4Nls8A-ys9pLFY;S^xAm@+sx0Bh|OYfHbS z%gvHxobA-ebp9E*s=B7Gz(M($y5MBGp;O*E_TjdZXlQ3I0{&z>@Z8@)KNv5EXqs zFxd{LzHc6|3CX>2P)VLLr;bhTH62St1e3NLkG#j}AEZ2{0rkptjsQ<`2zpvli(AJ` zw||s<*Pk5Nb7AnXJ}!>kNzYC%SRZbFX%%JWXx)+YO{KJr1A?a2H`KuiCr3>30N{N= zi$)W(ZK0S$&Ebxh+%sCaJhsWGrV}1uDmOy*38zs0$fkBA+A)A$yZs z(jdZOfNye6dRB+5)`||@&yiIy-8hjI`L@L7f^E!;n+~^>Y_6o@uvB*%e{AesK5Wtz z;PJR|>3cC<%+x=sVb$VIJ_`q?SwtF2>&f`_Yj@WW^&kCZf2%xAe|L>5A)0N&Zd<>_ zh$OcM5~s7^(>=z<_6OgHzoxoj7)}yz+$_TR09C9bnzj%lT0Br+s2rQ+mx_JzuGF4q z#?1vQ1jgTq`sEK}2kqTZ6+y706FMe3`O8Nrh3Q+Acb#|7>*Rwc)46z42urgJOo zP!5aTdnUYX`TGU+C@O@VS`v!?hxLGxlK^(_VKP3yBx zlhwN)K9}+N2x!5;Tjab`i!bRn+X(cPT{dJH_-nHukN-Vit{I(`fzcx}($UhIVbY#> zay>sralQyaCrQXTPn!&zpoxPAzpz_wWbPitMyo|KGIgR<_b|&ciPjFUZakMIW#n@D^fhi*Qd*s zzBcnBmnHt>&#aV1>3*!h&*V}cX+!4}*z!>BM1GU91g4#vrj1a~8M6id7=;(>hKwN=&))NUhGlS6 zr6PA7V~orc2+4#oVSLU3gm^G1RIIFWVL^&RpQ0jzCbS9GCkobxmKUFG1caBZA4m^> zoK5ZIA{r*Iyv}0O;U+{b6;?ouft{u37bn2Mql_c!`-nk7aLpc`FSHpqxoQ=h8%9Rq zX9fXw7vpGaDW{#S1At@%V%Ozmg_>Aw_LP$+Wt%4^aZT|H`Sv6#>4lYXA_i~Ch^KD6 z@a7DcE9%o7W88>@HTiEabRHgiqJE0=-E}0T(==lzIE+tp*Fn2oHdf`?BQZHx&sLy6 zmezj|AEm4&GwdMoZ874?)z36{34hb*zEHsG8ARG`IjoF^bUR(FT3p;YSMjQutF zuDQx_Zy z`))$<$dhh;2LGZlLlU)OGY_coO*cx`hyyDR=m+nGr%i_s2#)4&$X>gzjK{1b&C6`j zt?>i5Jhws8{T^P9!?C9zT8&wK8|^Y-rOjW0V|m0Cjh!;M(RR^?6m%m42$UTev|ac) z^$@nal?DZ?DbWH;-T$39$w3wNDEZm8xIHIF{Cpr{&ntR$=t0o%mu)gf9TqhOmk z^hp-&JI)E4;}+XLuyWatc24;+fWa1b9?0tEA#|c-opNVo+II;c<5ib#yk9K;pq5_F z9xS}GF0m9{Dv2iFe%?%&aG;b3+QdCJJZt@ZnRA4AAuOd70C*g%jqHbeRj(z>IwX}u z+5&=yCK(3;`EY&L|3e8g>HNs_5N*F5%0U`n#XuvOf5i|Wat=0z2cggFSa{cAa3paW z14Ha$8{4l|4A2gc-CF7zMc*SM!VHgalSt#p);HwR0I zFEAMBz9)-5K(SD*aVZkUs|Wjh@W~#N+{)Yf&7~QBUS>tUaGNl|s}n0zIFq4w4LNnTOxG!b~EhtK>Rz`!DXIqR$e;y_* z5{Po;jBy0hRENt_xr3gtR(8`>$xJKI4Ss?TcNt~JUO9kA=fr68?;?s0ouf8Y6l7u= zr+Sj)RHOiPuXD20K<7y}GH74fZ|Tk`BAhQ{+}x~;)SOBYSNz@G*DJC8Z$igtkec3hRuAWVi>} zsh_2_RYXfa93n0nJ!i2YP&gN#Vl1+>Wn|JEJtTuCO`1-J?+`_J_-uVFF-F1XSvNQz zpiT`VCo$OvuRJXw$Q8}1cdpWg{s?Za{K02K#qCcCP>AdaEgMI z5SBr3TI&l5LhArUlUW~vJ7p#~k1XD$_t9Q#Yris=2do9v+Q3E1^LtCJ+<a+>_^gn|F zG8`yIdh7Y)TR^WjgG40+6;n-aDYH$nffRAVQkO3ze|8kvh~@A^?xq!4@-V>qml6k9 zL}GRAW1V4YMS{#d?J@(fO^Cs9Q4AhLnZQ;?&16mtve)Hldi+=Y=RV5Dc;=KILeu}| z0T?L*qpXtCpk&f4$4&&xFzZvS`O20c#lzr0F>_-wNqi{IO4XD{p4O5Snz{k@Y`0MR z)|Jca`pJ$OD_fX8fMwbOe|1dgG`?mm<`4yJx~^LrN4h#&k+XQOuaq_41yq2{dB1wi zC#(XOj`6~*3Bf$z33sjB^$2;BX?6}17$S*$;5I{Ta;eqi5c#jab4zRt%e#_kA8o)Pok^ulxbdcX zD7t5s1V@$C9rCjvhB|D!{Lz{?P&e7kD}Li6<7uesr>xXf8X-p^RHUkpabHMOX-qwi z%>~KlaK+ZmG15UeRU*&Ws^m1lYUf#0-qPw;n`v=hX&-E594V~@31LV5bY=Zge;`(s zGQ(h$sV2G91NR)h^@yyzFm3`U&H+GJYqMc_(g2&zKre{4w%&xg+*9F3ht>BK(r{Be zPXK)BqxVs@r%)Mx$*a_at#=Y&jJb%$$4wi^rHsGx#-AgX_CbG(xQKkL8G>js4@wk9kOv25R1=VcmgeU`y8{g6@Ypod9-{@cyEsTB@o{t(nW*26()F> zndh8ARSdF2MZ3+nxsEPMEIhclRWxEAaXWar$y1$z z^3K4%9{yYf0|Y3nJ-#uB-X@)JHkUIij|wms2!gl81YtGz^L@d76jxn#xVBI4d2tE5 zQnUfLSC00mQZh^6<1$i0rpi8DYDS(OM2r-_?jVos&j*nWXmqO49R&k%@#(O$4hkDa zNJlzgZavKJrFoYsD5Wz;{(3^5Spxku)uoG^Rp5P~1o|w6r;AFe439cSERpoSe!cv& z^(SssbcLK7_KX|z(<{uKqt@A`E}6$+1$FG{^Yh3CR#BcY12n38eFP>BBR=DJPw3`V ztJobVE>w!o@O99p+$x)_Ro3s0H6T?uwsH|Z_Fp|iqk&iOhiR@l#=r?=ClRwr!Jn{t zsZmck2J@DA9Y)z?MGbwWDS4}|KFs6V({0_9r)?l*ggcI-ohW6zJ@mIj2zkHKYYt*^9MoLWJPUlZNfRn< ztU)#B4bmz7vRw zeG}!Mq#i`2`KmEDsi?B*Kc9eUIzY46hm16ln>n&T$_f})a+E?Mth)LQs*tU1TK^@6 z8aufmb=IAS1a=2P!L(+DEYbW2aNofY;HKQYs|O{tb9ysu`GO)Ojl(>ggR`@Tq(v&A zGfbPJ^oa;D9*VI-1YcQ-_xQ+~WIikNp#D`U?8Ay14*`Rf2s*(bG8n|n{{s*ZZj**K zw}fF`G3uYBW#KDKYWK`QZickkTFI~gg39>mq<}YZ2Zd#e&I{QA zg&QP{D)o(#Y5)RNfS|ORC%#aAg?Cy0hdk5yh>a5w--~9a6hR5_UZgo>Z4@BH{A|g- zzg~SDq}r<*Ko4q^(?ooO$RBF(G*nUnj}bC$rba#;{D)R$-5dsXyF@36WbMduAewM= z+kPX#neOsri>t5(igf3_adBeHJZM>QyKC!mPQAc1*-ZHiBAGuw^}#sSn-R3+efaE@ zCwox`xlci6VyR=3huCN;+*b;x%`~COy+de`w+kJ#s-L`}?^c`a-o>R??Um&^j-2*@ zNR9^d?udiETr52>0BJM zl&-GI3tWg>TViYj*k~5a&X(7(W2AID3)~a;viF~R0bwQIX1Go%LsonV>%%O-7j|T{ zW-8r%E%O1wmY_V?bT_ zkt@$~pFCmz=Vx1)(Z^_@5Dm+%N#{~o-B(}HFuqvl0)p&oM{6u~Blwj%)A}e~GM^W6 zl4&&&B2Q)7^NH)7*%k=pJ)Iy`9c{cbwvC*kf30l@v+30zXHEJH2ViI@p3z8nTe65u zolFdq#fCCv4c9KH?ZaZuLuZ#N>M$yd+BJYM*Y3m;=^cr2)eA~r3S3w*;jX-*(aZ-wzBpwQ4f#16+T`CjWgWy zI_(kK{Os3+po39M3Vp)gXHN4hEtw836lgc+3KS9lI`hG(W3GaP4`KntyE!E!lHqQE zu_5U$y7iJ9hL6a5A1B&I1u9j=i8mMm(wF%2+znt@VR{)JWV?h6r{gJX1>KY6LKVB= z4BNC?=<#4V@bs5D>SoPPfv#m#H^JWa!@mU@Ya(lzyLWjLL%{bt!<}(p3aT@8$Azm; za9p$1?e8^#=czwIS$+8Yi3%DQTyb>&jO|T-9?RULKA=z!! zQ4Bb8ZdDsMWm!N@0&XM>5=XdJ8Ckc})reveOBw%P=MEK{t0t`qV(ORSx0+Vca1JA2 z|4GD}6IQCpO^04S%6>Fo#NjbuDL&^mjhg%&+KqarlQ)55qgjmI!tr#&8-`85R~XDh z3|!5f&2|EIZ-JE4SOlf{eAh*wzO!NM1 z!_Nm{7~FzhyfU(?xnTZI4fh!m)$i3^n{GJ||54j=xdxZS3gU;-#7Y$96wW4Q0=o8W zXzSTUKp|vDW;PdLluypw<&ur`L2~dKttGv|Eo@85t%4c&LcrR%{qAdqBTaoDPu>O- z%}LxZ@lZX?2r6;GveyN?I^G9w?9S%- zSGw(H&AYTa4}MHE<8t^NnZu~EMq8VkcOH>&3A2L5 z?_+)t;xjH}US}Tn^J7pFX zx&z)FXL!2ex`aSqJZ_Uns{P!Rc;3mN>~%Ea&>gJNBbg&3d*TvcWqD{Ai$kW(}9UWMWp3;()&joWe@ zQ0cJnrYE`4X4vLX;7KJMd?pS9Za8);2|joYYESF~=dU5d9n%@mp#bRRh9mn0xYY5J zn=YdRx`0iQ%Cb*@EX>^xpR3B-OkqIpL5oK7PX9XKy1PkqpXD$Wu2@6TWHS|Yp{w!; zEr7NwW!#TgZ@jv2I~0aE3sz!B>H`^!-XlxqTW9n zx;XEtDFh@?o@DYL>8L50d$sibbj*Nagzc&JGBXd3fMpn%z8SLA0gNE1hD^7|!zve} zSw#L`E{J-PzSrT{2%F$?=lPplk7cgJw3s5b*JdQX+KYG#;tkvOM+ zYdXVcuk4pJoT%cMZz=luH(7}AMpz=?cS=2&L2|P9f#O1WY1(#5`kpKjwO?unShJu@ zU@Dz}f&Ytw3AIqP{*BLTHi5K-+JxhNch&!E#jA?6^}qINSthByGx2jYA%W?uK!XtV zM5Y+25nBQ!`^vySGv<3R2$K9AviJ>bPM)$K@qA-W+->-CZ$$njEn{u7cy$2!$qrC! z4vjCe$cT{WERIjeAK0c_vh%$d%1uCdrI-f#aRaiCRy{3IB%_2FUzXvvysQ*gh-Yny z3X82&*l*+=b4?sF_f{pFRkY|U@sVK&ciJ!#*2#(($SlS2A^NygLis^wG%XEr+V4?7 z{V;&w7-_ub_k&nJnK2cc+SS^M4K0%_iRhe5uzM^ce<&?DGTT70aQrQOGDoF5u4hMz zK4sa-jDl1a2uS1Qmk*^WOz&a8!naOh4~^Vln@}EdYbx~)cP*aejJlw2);wmr^R8L1-szfmqq zNB&&BtRaJBK=X;Ur^gZsJ~V-W8I@h`C4>#~A%t-oNG>r8%V%^tz?B%N#!8>MUVoeZ zk5#=$_X}s=7WAh6+}nxR$24`X*hcq-f;QkvKF7>_tEp81Cw|6PdrIZS*mw)SYGM6R zK$XJEVD>}FGJ47|I>w8^MLYaLcksOLFffDHl$AQSbY0_hXAmal{AF>K`u{fmU``~^ zF)?+UgG8A;P=(ECPl`^Emh(^}S((ZnvJf!(C&$jzj=DHJBgDuc z#rQ4Y4T9wflQ9l^?Kvm*{t7$P=AzM4lRmwHmtPJXg@~K`5X>wZ0*veZMysv=hQuhvhdS{uy~e&w@@M&)(96Sw^*2QQ2@u`l$ zBZ1S7b7op5t}Da_i0AVO_9+%84nETnI6oG*(&*|@SSbKJwv}ral_C)wldT>DMi#Gq zF%=KThGW1B4)`{f30xi+>{RK--#&?lpidHB+CBOZaak(kz6WjFE#TJH#%3e)3Hd&gg?=1lPFJwl_#Jte2lrbUY z^sxSqNz=w|R>gj>u7vT!05Sj#i@aImBnsWX@ZH?Ry+*cx`dkGv&-{v#>H2z6gC`ox z9>hvR^KmX)fC6ue6=33n?T=g!Z#0 zNZ+5x52~0_y8zV#Pl&jelhNtBuV=ie5T!A}yeb%w_j(*|w;WSChH{JsV5mXwtq#N*s%-Koo$$XbtX0pHQe#F zf*EPR54LEJFwZ*{En>n*%N_m)Z6L&qhwSlu$SNvi5Hn_RU`YO|Go)oBI!k>Fpcx4& z8rB37lf)My+xziXD1Lka9-wm$*Z65l%_JAGMRPXu3PD}8fs7gmS&TG(VoGA_UGa-4 zQA2!HL_UjFA@EQOVc4zYUXh(r!sDGj5}s&r&;7TGihdu9hqZSfVV%8vi+6Q~)nT)& z$sBnFXrKVV8}Kn&ZDa2U7*!Ot2(=EEyVSTAWf}7#cHwg zn0L=^UY8}1au)g`NU6eaL&q#KLo_X+o9PWBP9v#W_tuj(Z$CPW?H4Qw;z7=sGPD4#Mvahk>nY4vBD%K=LPU>Ci z``HP0%1KEmQrkRJK90xjAO420-;FGb6@FyP6ppivCxJ!ee|REq=%SISeuUjtIE#K2 z#Rz*(N#^Q4@kfyxc(uHi=~ZKB;($ zm%$x4_mx(3IJNg@$-W3M!_Ly{aNIMqEM}Mu#o;f*XH&m3SDRRa^iKo;MHjAmSWg9^ zoHBt@DjIDjCg&VF>@3laJmNHKa~N)5Qlx!!Uy-~7pX|ooa0gX6Ke~XQYgAu=9RY^7 zN-zSqScN-dLg*801~WbO5WXc&C+N7ePo<<TMYKxO-v&bQ3I%e}DhoMPDPbXLm?_HZG}RQlK%{CIjsu+}Jb04mM$cw6~}PtxIA!6jdAPy7Ef~idzZXi+wo);G5B7 zPU|{~LyElPzEs>>&L& zc?*fE&_(8J0QP49jk*8Vlk5N}%IEn|jv_bfMyNbpc-xY}oDuhrLQ%TbcZ_9)G`R<8 zl68GR0qh54Qr~O2U>2vChs*ePwIu)W_oI4fT9+6JZLMGsP1PSK<54k7Ne@)t+gLDO zJ@7`Wa)rJOVv?A0-GNe2sAGPQ!9bdin6P;E;?ljyizq866|heJfpH|jHcXAv3%2Ja zvmS6gZZ0GjL-4P*pmVud>tgPVr25!4B^1n!)g?z!dvm3O*wYN!|MwN7VnTI(xJ$3A z{r_(+##3JzDXWo~f?sEuy>&RwjiF0O0t5-I4Cy$HyTv+iofSfGJMePT{vl(bsBd=> z1udYful^tA_Og?WAdA;mm&o%W#r6lQRcG5s5$fe508+=+L@R>&og1zo?iH3tvyya( zuPk!|Udv5kgQ3|MBGoB~tsfuuy$KH2i<027$ zbUD;+yYlY`@zhg4a=3{P{cYFL^@K@o-4g70l*<_43*GJqj5`oM8Jmp+7#)aFIdS@-n4plxdq zSTiy1-W(#Q+$2*>i6y*~|L8lz$J><*g1h|g?NAKCB9mZFKRDWtEc)^x=#F@!?zQ+A zE0fIniT<7N!G=oVv+=;{+I-UPsPGXj7)XL0`!hE!TzTnnMKsk2y$xHhY2Z$da(!-Cu(OE>tdM^WriS3M z!FvQ_qgqT*qUOoi#nh(3f=iM48X`=uow=|1t(mx87crLnJPYC?DbP`cqxnOZp` zCPd2c3}2d{$r3A8^Gyq*7k<+u#s$XuD&9pTZ7vEf>IekO+@qwmcuPI8^ta1sA%rFIy=l0B1+Qfoqm$F290-BEvrC@Hq;WUgYx# zmSI&M{HPNPyaY5&4k;mHv!%K-n7p_$XoKH_enJR|ZniU5)Hi_274zVIp!8O(VBHR? zqy)(_tb4}qz9YrF-jI@rF*VxH$-SGtUW1ab*YhPGB#XTx$eI?`uD zdBRIj=2|?3g5m`dF>FFQJ;U)*uQ#%M!9fozi#`k1`yd0W5yB|oXq4XI%mQXB`U=f* z<}Msxt`}dwS399-9M9sY`SX29Ux$Gp9QDIRW*{@FEHDs)RLLhTV9BVq;`EyD`6g=| zSiah{s5Q{GP_kO{##j;osqj2kdloV*lq(!9zo$4LdTCjEWtec6(5;5HKJtk zY@PFIH1tm;DnX^7j;%1_Ku+m}>>VykF=Vum19L#(@vOtRi0(d$%pe5hf65yFx-EFO z=_Ij9iJ}u#l^U6|UYCGS=e~0(;qpLB+p6D2vLS!ntuc)d=%Ey z=~*BSopE?9L(;x>s^tBAf&d|v-nC%H=6t6M|_0%6(TlBf7;JK*J?8 zZ@%Y{<_1`?Ef~{pES|%G9Hdjr`~&~WXfR%RBKf76l{uD+YcFcHZE6FC4b4&usO)xlF9Ku*jVQ=Ai-Sn6jKM8Y*bgH@hdWlQdqFF!jo$?V< zTwYAJh^3qM%CA~A+YjLV*6tLzOYt>5V0rC0G>OcZyE0dUB&h0V*3j7|-M1OZ9>9j* z@=Qi&&P@Qk9B)lBrE@-mn(mTvkdSj_yQ#4BpwegCuya%0^M0Y}q%> zF*vwwS!@4-NqLnKA^{Lwwa9_)yEhji*igYoPFfw41J&9N3^<|7$f!Z56{Bb;dAG`s z)qeQw@zBr1tyWlRrf%S8BcEK0Zh(9FJ&SbXG})6c6-`bPj-fdUrofQokT8u(>cS-B zRs*3=|7K+gb(&(w5=7G6YbTrvn*u++xGDAUadSF zNgImPyo~uv*}Cgb{fJdi2#Q3o$}6QL5NZb*@csRp^Fw*MF$NY{jV|o^_#5Nn7@(F3 z*#K7-x<>XXoQGHjYo+adSwqG|V`ZTQE$YkwKS030Y1viX;C}xP+O2_7s7e?$);cAs z%k1@tow9+hjp%B;O^O<_gM~?|L4lM9d7g~!$b9YUnqaW#d@kD-&}2Z($qvLJutt%KAz10EkJ9;D#}fOiE+5dqoJ2!kYt-t$ZY-U2tyI|OU8)H$6(k;fs&(}>5ZeYlbO< zFW66Q@hPZ$Y0#F*NpV?8Di{Zfk%*F2GTpZ4lC8gKXw_(TP73TXv>f(oo}JHNH+&gO@+d_3YB5?$v$6ltB_02q>~zK6X#V0W ztdW=zh_P*9<{hBjvWI0rdA+&=CPy56im{TLVDy@Rv-Ea*PdnfK#x0av!b2p|r8|S+ z`aL~2-A(3kxqeJcH)-dqKR}U6bv!^B*u;m7v5f}^^Z>Uyx1S#H?MBc&O|u~$5et78 zTV6KM_>Oi8mwaI&x17Ns0lwRL2c8z&MkcB)u8}O1r*s}&$C3OSO64PElfvmEc2M&!`fil5nW5V>O^ETDp~T2e}KTFj00V6b_strgS$!bVU=X;+Pi$^@%F zHC%{D!_Jn)!g^@zx-9U9AyKH^#v6IK_~9((04V$5DN^%Wm9R}=437AnV&Lfq2-aB4 zvOhWRI)E-B>ZkqP3ryymleY;ua!>LN068|XRuojcS3~9W?rLD!Ged9CRNPmySXyF` z=nOn$CDgkiu}EA20%1{l7(aTO2 z1cs;#wAZA4Uw{i1Oc_cRZ~*tV<{bO8bL;HcxbInMgRtyBrN03qd*`2Qq{Hr(hmbdl z!1QAeGcp*f`Y$WZteV>dYQYEi@n#%da{*3cf?^%D`DeHR&w?Nv5_7E#kRuQUw${O# z(F}{+KZE*ecQcUvF(YKupHN)W7)9J4?v9(cZO5zI^u{)}q{gZb+uF-njHRnkFl@u^ zpf-F*GeH<8Q|!70*HC48p`nxjys9vmt90!g;57oh984pov4_Fk3)5C8MCqaWz_|1W z-HHkf2RxmlV%Dq=xTAN%@Y$enY13<%=9&NNo$3qkO4Qy*W0Jzqf9e7)tPCA9q`)^+l(B z;jdR;_)n2b9{#_;IKV1-L@~Fi(pGIMA%#ljZmaDlE~3o_Ji9Ais-6hvb2Gkslm$9N zTq=^7&(eW?CRRZ;Dy&Eyh&~sdvZ(%}-#H~P2MN)!M10|0Mp3nWr-xYGuwpa|;W$4+ zyS0Q}kJ`7`Rg{0+IrGD}e$Q}elo6x-z!EE~gdU9)tersA(UYAm3{_43G^h%+vg8~> zeMxQ6Sx5r8MLwy4B0DnNPC*gC){_!iM6C#s7eP!k;(Lc=wWSXeS`NCXM?RUW;DQ7G zu?+3z;iK)6Mzeh600oe`t||tMCZMB*+?6462F4O>IwHUuDEh|w8Q%BOBZYB_dQ?eI zICJAAmbnf7Ygk#Oche!S<_UL8e~MmKh{8Pd z^}%~WKSQ%h{NH`+k^5Yp!!%Zqlq@JvY-i0{`h<-NA{vAlk4@$k_J!^Ogk?wzlL0A` zvl{6ej}7EB<)Pj=DRl;qe4T*Ihpd}-T&!A==j56py60-YcTXD`n>sQm$tvB7^nBQ2 zytkAOPS6oC!0&$f6yTR5xWRH-!+6!{_En96e}b%{21hrIKFX-1>WQvz$$abpYvE(* zvE*?lDxHLEK#%yJ!S>aRr%uA76H#Ju+#KA7Nma8&_ z%?+Q%*Dw#RJ%e5}iwLen^&_yQJ)m8vk8j475i6>TM|8S5dp$8u_-fBi9615`p*NJ` z_f5Ey`(vSS*+b`UiorXj{6+{gV~=dS^j zl>Otxltns@+0J?w@&N4}REkN7hnFDP8u_L98EJ65pnPBOE9Ud>&h0iYIIT~lC^TiW z(*c(ePM2k+wJ4{gNSCmg_vgt4U7=W`(vjes+m8CwJUdr{qwX-1&5VklNdC} zsWdVBBP@;=UV04h&v#EFpXB0_i=A3h0eTmJpnOr{q=@&u+@#UpTC{E;$tb6fZ96Td zDq^vfzBBX(XIbxn!ct~GR~508t3>kJFX+X9R5S5REO8aF0|O8`vGbf1n_QXo#bI34 zOm{rDljDZ}au=`EuXCOtf~FZ8lC{EspkdY>2Tj6T@>gE*@o#p{3ZbsDSA-Q0_m3Hy zpuXoi#}Tdx3O;}Y@t*IHmDMndN*Y%-!N~u5{yX9>PxmV4m9z=@{0g`<35MEFZ=;%% zU3!y{r&gNmd0dou48f3?tru0Vh#3P#HLY_^)^Lur_XJUMfgSovo@SrcLFcCJ1c~Xx zAHs_`{hL)9z!0}xMdwg1kp3o1GN4Fi4v;VXyOao){PA7mGkI>#-ROq;5jm&JAZ?y} z^HdpyG)GAD{I6i3Ux$c&eD281QPZgEKs)t*lYXwCRsWo$$4ydLAE{dzFX$B>HwZY( zlni(ru{$SQCM(EZ|1`{_m=qqBDN|Gc8l#L;9JL>iFyy;G`p(f9QCB}aM5l4^qx^0Dr*6*EMCFH6y1aJp0=QuNViS|0!s7{a z`0~vl3Ubp+vaKT9OOsFKc$+?9Wb zUIF{X4a}LULAqe6>pM-TW-l007J2aUu-F$Umnf$I;gj6yE9?GcIjcV;1z9vv4`cgn zZjf!MeYg(r*cn3)x~3DD2o|=W2)(!Si|)pOVcnKEe0=OCKps1^Yt zw6TKk9QZ04sqAAH@%G;(su~=!!88 z_-$1u8GCK)!TQc`_jRRY*0B$*3E?Qqc(JKPbQz6|rdnEYfNyaDgNz7AAh*HhX{f)*5=4&vCG4SwIcWte${Ry?ldy^)ARXoO9 zQG4yMKrq4|G*`Q`nu3tmNT3eL$?mZ8f!|vh^dw0FzZGk#`!@Ss1Q%^d@WQ2vz;J% zIdZuq&#pbZ&w8`Da7R=>kR2~s8f4G|LZxehk>OKI+=}z#mOc!{zQZU&xGq@E&0ByZ z_@ux%XE3Kf8N;uunQ4U>vJg)2&wfTpxqIeoyrq<|oxz44unS`mcoW|b6XfSk6G`}k0`UZip->@@@vSnLd?gW2vMj_4kI+3I2k zR9oMT4zz*L1iFvS^&feVC(2)-HzARZ-}-?oIduuHpoH)fabO|`-_&ZvnRGw!f%NB$ z>!AL8cs7j6hi6pc7%z6%EyxK(V)tUBDgDIjxrIg+lMxFBiLwC^0M|K>@H41=wSqFZ zp?Qf2R~@O|v7JS_BM-Q^g21m`5ooR7z!((yw)yCv`68&L#&U^}|9IH|X^unP~Q3~3)Ww|27& zwKO_n41xxpL1~fS0!q*KDIvAbIh#MCpcs}lFKVeenty(ef3U{~Rc?PbYAQW$t3b8j zKW+`cGSLstB^@rIUC5kbTAC=qJ8_0*$?}>W*FzT*%~Z00Ki=>uAtXF@~Q4)7iu zLx>k^S35D3SH{JIOxe#fb0fm2)wmn?A)MR{SF}Phf^mck)HA0ZSdnx2YH5z_4NZ=7 z{&~mq3W%9|X`r4f?O(7Jkic<7ygH5{yd!N90H3myMV}sh1p;Uk$mK`Qq6ga_aA>?p z{qIUp!~+Yvl=n=I+zu|u`2qnp`2onI_ zj0W1J*04%xeW+a~bZ8o7@e6K#;yTcUo`&h?<*ne65t@R=IiaZp+?#?(ncd{(Kw@h4 z^@+y=wXCG=u4Agsyd2J(TcY#|2r;?V7SZN^g@DU|-rIwRZT*dSOT))E8t}zlPmwz! z7F28uB~nnPFj4jugacxP!oq%uu#H-_mS>PL` zh73h=rS-nk`XWBnY}&Q&FcU0Lq4sjkx%mBmD0~v%?JLdL$1#t>1Rd`0>=AkW`40J4 zO0710nMFRGmhd0REHNi0sOfYUH8%}sB#y)T(w7R!U)#bBJ$A$$TTWZ|#6)Kqkf$pU z`&TWCZt&ze#nqY{U;JK(dRZGYL;u2B#G~YlxU=dsPNe*^g+`}j_rrNuKjXE$VPgw2 zNW-m?aqh{a!OFiCMQ`?m?61g>>Q5%dY64bYraZ|%UYX73l}DHkg<3i+V!lG%MJ|zQ z{3e-q;y!4V_h`T`wQM~MjGSpOrN0V41yu)kGuX_Q_th+>sm_J{=V>wSaBuA_U|}j@ zfC7%z@06%erbI9XQY$|(9Kq^?yO|Q;7Mqr0e$xx0BI#KeLyOWKIKd4FoB^_@>N(| zT4xKk=1+GGzvs<0fO&N6Vbd`X7`CYEy~3OImM(Lzm!v4@ zDwjSobzuB`V3v3V>Y-*m(0X95vwFL~Ho%@`$9zD0?ybootXe{hFPgzY%^HT6^19D! zlEehSiqMKVLnawr!9dv1%2cwE)|oX!R%96^5D42Sc?Y17w=XJ=^NodU~(nY|M3Obt6;{Fhv>wh zHAUfQcRzkP()rUy(8>hj2>OKKgjFV8Ou7T>Fhc*d3l|XNccRly6@m{yuZY@0XXtP% zIdq}FGT3pixoYzi=kdiW_*|{1N5=s+llO*vk9T7VWT?8XZ;ZW@1|JR=ko0dlS$0ND zj0B}U7&8h>E1L>FR1Tmr-m*oIS=(&$1a5R}53VsSk0Xbrj(ue+9*=BZJ_gxs<vMNZaIdd026gP!% zDF_Fj=H82meL`pq4^xsw#@p0mIPR<{pAY=rv_I+Vipd1lQf-J`O$e>fpmLwqGT(*( zlrg=oY`-I6sQ8IxKZeEo9#*zYhbNSfKZ@d!cB}qHM|hmI8!64r8GO0`>uFcI)u8|+ zW=ibLRUMOuUpg$4<{*!>I~jz7ZJy`_58*ZrmN<{5iNA`m#e>m6!~vcVFmC`VhNOTe zI?wn|xg*%4t~hj{{bc>E2dX1TA$gW+R|i$GCAWHx4hFYwJY*+o(kcNBpy4fBp{vOK zf8{;?aS{!$#Q1on5pE>|R3m>B3h|D5h(-N=XzYw#cpf!&_CzLHdEYx%Gq~krqW(!0 zc|?~IG8Eu3t4-k_p)v@<>*IxaJ7?8V=R9)DbEK(88&+hg!%#VLViVv%9k(C`j}wA3&}@naqjEl0fiqd1j&YH7dL{231&SwuQQt zA&@R&>ZI$vLn!izczo0ApN#ODPG)6F5D3%WghU=I)*AS;36q<>Pq?Pk z!RQT<-4~*McRCN5w0FXnyBedh#C*`^l;2XAOqKl8uuDjB2;w=%OpK!uonl>o`?kG_H?ebbi1L8b3 zLBR^iON$9+8P>^U7;a`2i>wx8{-m~jF%JR78a4F__k=+)`(y5B3euYEUf^x;YOfr( zwdHiHmG()H)I8t<@D}x)1c_>Pb3Z>K?&!VIuue<`am}n3s+x1rdJ3d@=re0Dt~IRi ztPwovZjLp|SD@RSy^Dt4sQlnbkwed_fOXV${v>0ZfC&<>M~ z-%6P`^jE2!UD`;Zz9?~-I18GO$obg6_T!TWXeF>f=Qi&Qmhrx=>O$Q;x!^Bb>mVdi z7D3iPuPOrWE;As2tCfL6pZqTClcRS&^6eq%j(GIYj!Q-=%NPQ93bn01LLcmp;YE^W z%zeq@L}I2y+~r5L`TMDz;w8j^D7b0a!pnZ4DrUcVD*)6VzAu0e5x2<5P6sY@NU{bJ z2Qt|Z`l08OLlJ6gf_g3aBIfILJsioPZgtDgMZf<^141Q@0_{{@bN8?<#hd^yxV@4C z3^<9+w!J+5(*Npk2$x}5yo3oXl7nMlE#tHokulfDDC%Om#3xfp(owz)O_<_SP~hPP zI#g>7CC4ce{R20u>95|maunK)#;uX*He(x}!G{kHzlqDB>ffyN`@#I9B$Zi5ZjH5wY0X1!|=h z_lQ!Z5bR6|-bxKRH^fG#wwJW-^?$gS1DBWAQFAn0aA3eC#YzJ;1!VnfP2C6azA<*; z^Dv<$VHWu417#4+mKcZ+M0B?^#udTA1eg5O(D8LtqyA|5UCnb|zy~@Ey1bG0e@K$< z12i7*_%O5Lg-mVN2+42m!T=OlsTKc&TVWmwi~u$trPNRJR&0qYtwE117HISBI~U!4 zY7?mR8>dhiCq?B%F?V03AzzX!NwgXPQ=Jdw2?Mo z1HJitMu0jmhCr8G)iXR{5(9gpCOx_y;wJ!a)t2dL9 zAutM6wugq1V9jz3A3Y2R(;v&0I0dse?;_>uN%XQ?|6~@R-J80dlYcE?VfpGn zC(o_X)s?!7B%%T#UouuOv-lKjMbzb1`B%yo_bK;vO&GYyxWSRv z5M23LeZ=QlHU6Nb9iX5o^L=(xmVf89@ea;~9n2OFB5Uhl9>6N@o$oFN{U~WM)DOt( zaPwe0L}u|PGgqG9=8};!JDjP>T7lvxV9|SZt^l*$H2p6r&f{-)2fz7@1Z+%Cm{NIB{N%XWP1abs3Hh{7OCH8O{Q0R^DZSSBUx0Hvn2|& zUIIF-v#mQ}fHu7zJUWZ@OX)CH`K5eD5~A)AyFm~q|FE=DibL$KCK3fH=okf^)%|c( z2ztTxk-*FnC+MiRAHqVe`ac?}5$s%Vr{h7=q^FZiy`ph19ntF~taa57Zy*c>eX|`9 zs2YNn8Fk+y#^E3MKFTN7{?xx}C2W7OWYDt1nVs1E$p<2S>o~ly!&QGzGRb_j~mAdYV z@LohH;RIqJ#ZrBGJh(}GB6g7kjrOp0jvN#t-ED+j%(;Q5dvErH7Y&|QBc_66ObSu2G7(0{K2 zL%di)6X;nJ3?b~tPE;xL3zwyEk`~Od#r+41OKVwgJ-m+4F#JjK@R-Mq&+4Dl*W=5n0RXWSs4{R89kUS_it|$f_wkE+B zEp*S9)R~>sa4@?46kLQLL}7I*8acn=)3)q&c@vzDRcdHwzge%d9DoBc-e+DSRoP!-fexp;u#U;Be|CcQu0~*qb*Nx8D_M zLz`15t;UoE^@M^`u=wZ{Ek__c#Ekduy0egDt zcTPR{dM8rnP%6Fh)xUzMCp_oOE9ODa{vPS)BSHf$t9kiL^xAo}8Qa;sq z@&d&hU{_~~7*th@bLSo{k*r5_`oYQ6GU&7s(X3(B89BJ-*Vx+3bW>CEv;p@%}Z z4I$|)=G;Fu@p3)v*lgjb0wts_+W%woIi-s*LE83<BLK$Aq6lq;> zfR9z)8n_~V*r0u{H4#uI22Js#kgq^t57HhkndFsiC5zS42k2|CgYA?@o$z((7AN8q>A&C5>AYQOQTfnV#RpU=FW2%&}jv?bg z5#J93>i@BY=m*w0p-;+!9V&CLA+v?vOwiEP@m~m?o5@>V<)iT@+t| z`?HgfvXPB@q^=)Bj7d4ZDD92*+H=jIAxycY$zuStJWwYMQm}m~tBXqSl{OG`QfjI@ zlEhDl^eye~Xiu0sWVIH(mdU&Uk9(8=K7HQbSTUl1qLEVQ%pe4S2Yt&GWpgPV%irnr zO|LFL8Jme#{&K!9VNm8v!r=Ex-9Lb`ie)A>!%s3YW45kv@;aGzbkdeRdP(tRHO#uQe zAUM#?=1B)aLy;Z263Wk8r;G{bo+tun-8``IIQ-UX>gz>d5N+s7B1l0&oKTU>zf`n!G0WtEV+cLnYAM@3tm8_rdYRj>373R59(TfMz zbLrHo1CLWc3{;zd0~MS+^e_6joGMiOvFs4Dk8=TSIuxK&ZTd`*72Bb|as*-z2|$C{lA&6WkP9rxbYv z{Wm_E-~Sxo#7#p@nI<5fTUb|dau4L&63wh$_)57PcK62v>urhN3rGFy!AXU@5)xu2 zbw}3sAG7ZVj+zpvMvE#qAfQuZhdIre=U(G)c(#0K_?4=uCZTS2VHBUoho*?UN>pUIp;sC{}wx2wP%xXUh% zKR7N1WajlmYb1J^bP5Z5D7Z$@uXWEWom#9hO>!*ngE2|E(9;40YS>6x^Y?=%NTy(S zs_zG3^5KO`?N_T}iP^w5O6*y@m{m+RcX>2x^?R#erzInPRvbX*&;63hvL*?pb@v&i6HlJBR6OQPFgnd@PODPl?`zq)jzZu&S^3 z$fr_S)kV~6Xr#*WhXM|vFU^(%BB$)l&Pg}v)-}UrnehI7@y*Zaa?fXZS0_~uRq7Zy zR|QDSx-C+FK4^^TW85W}{uSk*wm&xpq=H(DDXJ6vU9!fK*JcI5W8#N`nFTWHa9cZu z9lElOxKW`~$YYSCXY8c(L>hAu={CvQyDDzgXuy)*{ZiJ(t|9?3ehP9WtlOhyRlh|c zN%;TonCO)KP!QYE_h&`jp!hbQ6b2uw;9*3Qb^S*+^to7DYqsQH$1o5&F^s@jzngv# zC4)A9=%GnD+Lgcr@X~-q9!$$YBlxaVO(^0!)Bqgc;^puFFv9*-CM0V?!tAg|Es6N^ zrI4Zt8mMC8r(i8Rz)S!9z767;9CDhRIybKaW}}EC>l24> zMucVQFh?rYm)lYQJLf-g;fB9ieNYw$W_O<4mbS z#6(|=*A<7%+^|VG0c-`qU1Tzz)sZx?`g*I8NdvtnPha4lW0>9vh2w&76v_sR!J6nr zx$uV>JQzj{j-IYhzWfo@5qzkXK+6z&Gjw_t#~Y1aq8H_`SGj3ZVwhv*zFvbBCv(t1ut z&?YsZo|MkyJ~bBPh0JJ5NoCt|RgYH+{*y6N5U?%}-g%u=84;95!u#9uu3;63lrPf| zmzwzwvHPpVom3<&f}UrZQRcX_SJSPzf{+4HzW@UN=Rtu8Z{Zs|8AX#V!F?G$v_o$w5PnDe)F3z`vi>PwsPRNk$uqo{q2EPpA^IogxJY4)2*w^s);~mE9^0pUN`*C!H-kh zDs{k!(M;RH3rH^RIuD9Ngue<(JT{KwAd8iO&rg{+%~0vW{mM-KLk1+74xVlT-;fJ& z6l6ICVo?&?6i8!b=v1c*=)SrD!o_JclYIBoYwzbP*xJAgp+X34Mz4Wy=`6FtDtW0b z&N0JV1kjPSAQ9w3o+vBwlQ||2svWbi{mzOnt0}!mLbs<-uK57jj(AA!V7Y!yH;=mn zA^WdZ=x1K_8^HzeF`s|Gi|1YR;kABkr=FH6QcWLah`w$}3$g@MVM9nkRJ*$IB0!AD zkd0t=Sr|+0WjKCj1A@zl0Bra5{W=+NSb511*CF)|L`kR`+z*h^E(erFAHG?}zSO$` zB9@a`zn)*I%F5o(Zq$+<(QCOnVk4~JyTZr@hOKkDI&*6nO*le`4gOX%*U8?-96V5p8- zzXSfl-EilLx1PYnZg(6u*|t9WSJ#f7sj+T6GNqN}(lJ7-`*oa}2ngx_Eck_Tgn&f9 zw0vF>;`|gFFDH^+LPoOW22O%)QQ9;E5S#I3C_JKr96#?D zA_quvR86aJ73i{0gmBlnOn6O$^2 zZpAAJ)~@lLqDpwEbT3XHyPZ>pW=vCYe)LpU?j@&Rb@%zF&W*@G{e#S=Tch}Cb!L%$ z6kmi;gL3U0{5{e)v+w=OX#7^(4Y^+JI|H+N6B zI*IyEWzCaV1a>fD<%pR2rMOG*FOK|b1SRna{$~Xb2~XavW33hiw;B|_Z(K~ zr)Hqj=2?wS#(U4h*uNc+1Z&+XFbP(N8R_l;hcOW+eWG+rabO4SiJl-#z;5LY{6nQ) z#6J+82kW({F7%kDe(r3(%Q+hnxIDTs!Gn$7*gM(aQomL9s(i#V*m$cpKpfV_sLYCq zL-QrWD#HjsE}`_Q?!c`hj;_!_xhLa*N;8-vWqLzFaW9$GovzjycQ~E9yzbb^{B+Xf zI+PFKlqp}WJJ?W+TBhV%`EB2@HncJ|w*x9!p$l6?&}FuYvc)dwX) zrOAzCqHI~=d(J8ER}t;cqiAEL_(iP{d7FiqTRO3Jn;4Q~rgq|SQpTANzF zJp#8<(PC$g+jpQnyvYxK2q}H~+g|1W@amsN<0= z7-q;%96b#H+;sU}euqci!hwg`2B_)M>IlP?A~X2oEI=*JcnJq)0|WdnC{Gf$b=x+w zM(mgj8ucRTPi-wI0jVW_&3Fli;8yL4v%*<0^*h-|UmF6=VH+{DNSN5vK{}4$htN$B zZY+v=b~GXp)y!)ZdH5WYDBxY5*m$Ds^`cm6@ILX1GxJBBUUdb2oPH#YFstM((PHG zqd)Z<$7tUViRAJAUf;K1`8J;Q5+eEyVNCbFpaP$XS|XV4c5`qy(FcpgNs=GdE!*zIW&=x-adR=JFiLp2e2cw? zm~#Z=%SeMMA}Y_*%((aQW)AsDyS1)`7> zKo6-mT`?higr}!cq1Ub{t5fjvvj$wjiY*10E3U;197@Bow0pj02%DtKZ&%mmSjtWA zXuX<2E#eJp2wTdd@k4Ww#V((kyI3^?jJ@jBtf(7lRkgE}h8%P6{2X$wI zH#?-E_oMe8s>w7+QxgAQnkOb@$~m^sHD637@_zFZ4(3I^0qhT_ zhRP<;dFq`Y;a93~h?NjhQ#~vWnncMI=1#?Kibd{3QvG;oI=!D!yqJXeF{3dHMwvv) zQmn)FmCddf;y7vLz9ImI3tRXEw>3$sF(yilfK42&Bn_;m06=8$tWkVg^BcJt?|1A{ zVv2BCcFAL)kGex?y18l7HDuXZTQ$%N?P)#H1+#H})(eRqgEdKKJhnkv)ui#LkcjD3 z#aJ1bIk`Y zFyKfp3>oH2CgJoV!~pazW8-F4J-RU6*DP-Y_8;KScu&#bYu%lHzOc)mF6uM3VQV=e zkm+q>-plcq&HA(UWcohR1Rv0`W^CaZJ&OhkrU{6C;+nb6Xwd4;A&NuCAVbu$j$7_& zurJ(xf7H6f#lt>Kn;UbT$(mkdKczWEd&oj0(DlHt_)N!FH_UAc z&ZcvFVvJMHtGdvY7Ubnb$F$t^7a8KIe;|$VQChgyOU)Q9xiCR-#1hNpACD;4&F?ds zQ~A9y{EeVwC#TL_qM^~_gd!Hx#wmANYSPx5V`Lk z3t$GsT~z0fGu^S2`ntCo@2v1742BB{kF0q*$80Oz?)qU5?T$|X++rR}R!F~r;Waxg zK-n=Rx%c?~G_zCjLa5A%ZZ4>BT8P&UKU!i{|4({eK_r0h^w@YHS-8FTDsj4{kdAiOd9ZMvZi^@CM2$v{ENG&^7~zBq zVH&CD1c}a=r)NidmiBo)MMJb#Cj?S?NkEbcp`S(W&iC{aZyM9yuhf~@k;C)>zM`U{ z!KVYc4h{c86ue?KVFMfiRyG?5z~tsldIdMqk9J~=pl5;VES2@E61v3a1*RWKRIXR+ zPRCCc1;rB|SA=){&(9u&#$l*>GUI4gEKS@&xD4INbToOe+{|`H5JS;Wl*oKirjj;v zq(wyQ7Q6p&nUbZB!8dZR?b0}1PtjvTEYvqXfBit-jr4e$@aaqfYkv5Y%^9d0GBjp! zJ+oT>M#2doI%p$Z^?eDQ6;EMi3tix0^{#@&E$O(PVn66D|z%8SeAnxK_+5McUTqj1YSqmp%gT|-fb@&fgBoZO@gL2Y*q|?zc-qNT9 z4hRaXAXBbzU4o>zlh=NMMlop~uPdg}{qVnWQmQ2^OFUab0P7GkT3fAwM$R%!VW$jJ zFoJxity20r6#$Rux4e5(M`JBR3wNTRGrjWzya=J>JSg49y|ysPkr(w48GyfAIBfo4 zf1tB)VX2z)SEX;I;R18ux)N;0f1ax->4Wr;U%GH00pL5St(NUq&r@-FQNVeaI%V&3 zKjBv>B*>6IK0HZt=lA(-6(Qq)1$(2ptmn&Sa0H@P+7F`M+z^1nnxj{f)RGXpreUTC zlVMx|=qWoH2((9#(zAzlLZN1RRhE%rHjc~HwV*39n9>O%bZDG-Ue`S520-BK)U5;k zK86M6T9%S)AaObthP5N+Fa-paf%Vuf740XN`MCP<3>&e*8(%#JzF-C)!0CW|0uxFC z&*r})%w2))6o_fEt3rlGds? zpZc(aob|3(3vHpM-Q5Q~XBSl!W|!}mMh9eTZXP+2l=-Nwsbz>~!`=Lh{c@F<+~aus z&33-q{l-6-k;qYt*UXlzPR)}mRO{345A5Q@uFE{r5UCwq1X4qZ;9oP1Q7-gYn zawh-^n%!gAg^Y6MOLODgFvEY6p_H(B}15WCTzlMhUHWc>CU zf*6n*vJ;rWPZa;nLX=5YBD77?{(~s|1)5`)`cDXh*?;LL zu%@8sl^_?2J+6zhl`|^uH|D4vAej;_+{_etMY`%d0Z9OcaA(_)F$_OAuT|g;7M}j- zxQ%1z=VVWf;=xj5%~y@oFk#17K(*|3p4!Vf2e4tU`vKMVeBFQ{dzxY{L7EOayY#*> zzmGA0Yxis@q$A3bopssBH(#GNxz*7EI$TboR8#;0an_FM;}B56ELhtnIFWAzvtJ>D zfya)@pqLUJKttPnBk(l86V>uvKSpIf`g}_!zQdEfRz4*OiCG9Ig|XodIdI%)@2gql zjsqV4tfpAizV|}ZAVcB%hPoTmu`;=chO+jPA{^WDP+h}f99;Z(<6W_PoK&HOTtNp` zJj7jQxWgP*-%~g8vd0N<@gmac!+r_?(E4$YspXJdaKu?)%1AAwC%7#m@OSDQ(wYJS z;f^6XK{Gk_UrHBG_*KhZ3Fy~X%yqW*JfFq-f12Egsy=ecR&--S3l|`MFSj!Srn@9)?>z;@iu*C6$QqSFzjK zc$7uI!Jtj(6}C!4^Be@qXii@IB3j7vIj&Lp3@^a4oPzxO+FMLHvB53vlFfI0PyqYB zi{k$y#;2c!r&(mMJir$A_)2@R+#{V(E_(nPb2`7pjn$Jwv{e0`Y{Yy9E1;om){2o6 zr)wke`1n;0Bu&^$tXbq|L&iE3P@on&zaDDD?df9*-wNIo>oowuy5y-K4R>5#SIe1L z>w7!mjguvEAReuRitA9;6@lRNB3WrBU(Z~`L8|ps)>4p$@Cv)e$Tg4O8S+@zS9;6T zqEVUi%-NKX9_DATa@1S~Na;_%z3uncrg|gvBnAW(qGYLs@IxJ-TjgnhU_&SY!-A$W z1BZIsnKHl9A7)fp=0B#Kl93a2RV?x0L==~Yx^x7ppKS>J}zX!SevZLl(KSWzEA32dk#Oq!JkZ;Sp|%or)$s zn0ixz8e=;JbZm6g-9CwMgj|IP>G|7peoo=IaZjs|KE_GI!U6Ngw=(UR<~7F#McpeI zwwhsj;z)mre5dM*DCcep3xVpvVfRBch*<86wviBgAnYeFqpRuRSkE_~%)wFa>@b?` z5Yi@fHr{Uw7$)W+H6%UB*7Pd-OzAD^niZHHO4U=PeQ>8D@r~fpqUo;&VG|`l-hqmY zwot1b(M8`Ug#j>+0?~bA4{R zi#%W>ar!w9RTzsOjD2*>S4RQt{hdQjdVG;dd#d2AGv3eoe|qK)5V}@O48^iNYstmp zuYCm_pAqfABs=7H2cTL+E}w=f|7X>H44|w2 z{Z*^!ZcQyVG$Qap;{>&ccnd^B88}!zs5zQCAGq&zNdez}j8%w!+rq@Eg3HUQak=^M z*VeuTywlxoS|&oK)Y_K>yZ~tjI7PWBcx_nCm7r#RVz{^=<*TdwArF5~<`j5VQUxo{uPQ<(fAfVo zZ2*mxS9DI?8V`G9J9U#LKl5*g(#*2FMaw9hJk5Qg;gf!<4x5$KM@CMhZ( zDDDU>qc{mCRlHLO%e7gVWN0XtmruT*?4>vA2l<5<_A3zKEf%9}FR9(89_^Z!E7g}R zXXfiScH1Y%>1uG!W)EVZRYf;L>mix!i1c~7EV+Ad1^~3G{N|D}FHdH5G7@#LOkINWP#o@kF99w5^ ze(EX1t+>@VZgR`4`u{3^DL)YH1xRjBEjme79q$2Hzl}|ZfJ93$>o%oo4Z%@EX9wB` zg77%}!rt=5_z`K`!)%)GAZn-v`Ez_@UBQQQf-8sDeWC)p$PCz@!MqHpDY}3$lZ>!N zZRyRGXzC)~Fmz?5G@W82gHf&-fA}#SC>642wo|%+6Q^F)YP~%H*;(sA4nn?j0EryD zrvi5?BN&6cR4I(owgK36BY82fVlc5RM{a5XlX&PFxYCTp&DyW&(TrgLQw-^>)BgaD zU0b}38PzVV_nu|I;6YFf!%^_l#1f)h7agkQ?pUnQK-J#Zfw}nX3fwoYLOYR*ELGgE zQUKj$V=9JmOE{ZkyWJA^NeFOQQRON?BmdZt5hQ71F$~pAT-$svEEh%FyxoGjDA;hi z=g)tGwQvMLmj5HERY1eYL=r$tS8G~KfS=1o;KzJX?m|NCzvn1A*ewgHzpJBcDb%7G zpMR6IO-nbGE8PpmaFrhK>^Cvci?m5fiJobqn<9#9M`ECCSLW`ES-tmKgNCrkXoRr{ z7Q%eC&Q1E^l7s<5U4YSq@9jitw_G%bD2c3=QnI%}C#hXFSJOKJ!#t<2z$law?_b++ zQEbv?P2dSU+O9fniB*olw1v^PR^-NSpeqRX7aUK>hVBvnZ#t8CR4I(Xzp%nTAHP1_ zg#@8|BKJ~p<6z?Xh9d{|lFy2-b32jXI!&~cD0K)(kOTB*+N`Msd&Sp^g4sk357Hrq zvIyeQ)3qhr3zE=u{#E9?lK2LFv#0?=N5vtW_2vn)o+co+W*(EL`fIzbS474)1`ynY z-PW54`jm}m$|9s#ywbuKHq$(~)HExe3+8;XqBTJJ20mpZbws;cg{L_!CCe4j&zeMsH8WRS;MdvkVw(LRbV3SL`E+&Qd`fBN<@-mV&b%vN_ zI~U1D6rXmdq9Dt0YOoVH^nQ3tfZM)=Y-65xyv zti%ukuKr^((^_(xozS914g5ch!lSxGHB-ivbDPKkOJ6%sH39>+)UU5kqUx*Ut9^VC&P3ddx*}H(P){G!Sru^*3>?2IWk_m1 zhP2UxgUis`^%GK_KPfbf$r#1DOro%?4KMzkZ)i;^9Y+u9;l|@ zR$WJTaeZ!)|0tuX3>h5~rJ`nZn;`PgVaY|>h#}7zZ3nh433boD0u>pt4=PA?W9L;B4KJkZI#!RmnA2OTRoEJ+U&2SHYtz70D=hxWnnP7H=LaEpkOqR%l0k_t zgwFd-yz1st zht*0z(xoSZGQX4B$T5q>UQ{fidDsZJn-r_!T{0XLArWgCvMToHcUt%ydJ%`%zVF## zIvCB}<}@!jkjQ+q1JuF&*b>`)_rYhW90e<38^3wh*zi;0ONS5+2SH_VzZ_KWiPBmL z5!0suO%~7|yi7}N7u_o5M>S{4XKS}Lo*IVn()wYbat+ zH1ug;&}hg;x?OE~hlaKERK@~CZ_;-{Xe*ltN4THJ-tvgsAYo#wm(~ZIX^~COgR1%L zBR5fmqF!zbA$nKXeWT%z(@TE*a*6S6QDhR&IA&t(+L-eQ4Xl`VS{7#z^>{}QV`Fpr zyzTk9xXBJZduA`4-Ul_H>l!jO);-`ohMcDjC)#Oe0iuWbh$CyKndkWtNWf+)*btxf zgROrb8=h{uDW0W@&C71EvvMrlI$rX8wrG*=8;2AC7=Dszftc=ePn@!40P%|SU_6_H z6*Oq(r3lky%{5i+sO2WRP)*ur!F^q1dP{*8a-Go2LIw^Qi|M5`_6ajb2u;%kkl#p& z%b2|IAInl?WmKaOQCV6DtHgsRreqP-F@VsRYHKXarWr@p8Hp1bv>2VkV zy&i$cYEa1%q~2g@@29CcM?hf-#IB=~Pz`*v>N9?KNN1-$s2S+s2Cb?zwqQB1YU% zi`c;p?HGn@b`axpI|KXhvxNdc|E9iYaXU<>;IyqG>CHdbRCh)FoI00%1mjsG!Ch&z z<0k;MsVwz`axN+|Xq&Ivb19r0estVeuo087r+y%8zRGJwdJw@$;1iH9R)bsCH16>- zzZNteKQUO*3VyjYL|p*+^dbzbF~IqBHcnq2%$S49R3fT&O#!u^?*6S1Qzz1PHsHwU zgIq{cmX@s5u#rW$6cB5}6InKkGa@xQdt(0b39+@GugI*UOPZJU%N1@mmtZ}f;~{-L z-kQELL0DdP34cH*B5>Yux_PubT<;FH3)OGU zXv8gIwCX9u&x|*IeJ$M?q?cqMDp(a&O3qH`X=#iUK=c2C39Fr{DHRSBG2T+uXx&u7 zUB#A=g)YH4*)xmdzfdV>?JSh0y07z&3haIt^*}h9mRf^bM1$2C1Z>YtNN2R4@A=yYc z=|U%t3C^+(k9(PqVsRE3Pd%Gog*?2(aK=k{S?}pyzm)@}LYiM7voaoAloELsE$3d; zRrdPL>LG`h4H-QzAxm5u3zC>n&_eg&am9C5{$Bzlc?Px_#c5R}d|UH6+lU~qkGeU^ zT?4M!#POZiIVwWEh*-#fK}OG%sxO;l_ihAp2?O~i)lIJ!tgJYiNgpIqY#;v8^G?jg zm458JD{(ig&T04-Qr4AEE?>(&@EeM}EnNs<7nIkIWlZ6g5QovpheTF*2UxoArM%<; zWl9huKyWQnNlByQ->TdDc7!YE`NwC zwSZ5FL*sw64&LgrTotGPU$vNx@j`sK@2iv=E7bpAak>fo(q6G~B6AI;LI8N%DA??} z3_M5MT^4o}={{LzEgO23dztRHU|{pHvC8*g!2+PZP+I4c|dp22g_XLV~y7C@=x7RNx*CYjG>fNk=5tlwm?0Q z0E=BZA`w&2K`ux1I?|7Wr8i#y-PrTlX8)I`2p7J#V6GyPI(Lc(Ij79kS4B=qvpzlX zX{X{wqFeOWK_L@hULI~{%5PmtFQks_K^=cdKhkX;1(bAx^6yq_ zD?7QL?cBJL?SbQa5XW?)TEo);Z*AXR!skTC;CJg4F8$m_m2Vp(GJhc7BE`#bY$385 za^m-RT(m-vG9Jhlmz>{v1eeeKs0B!KiXu(%jW5juS)i407dlzh_MyQP@XgS)>C!N_ zCviY#9E+v-=w=x7ADy(J@f}$^>xcmGK?AqqiUN(%x0Jv$3FMm29@=Xn;ZS^6n+{FIE>qb-L@bDkEGk+_Z_YWNtUvNxo=9~8 zv4UQC1yO}_yEO%*s*ky4X`}O12ZJJh@CHr6pK=kBgiu;dM}7Qa06EE#;gehRwIc1`58`@qK z$1x4)C2teIOPFlXMZBuR;Zw(J&;5+Gba#((27myd)0_Y=oR*%!e z3gQ?dYw()Wcm-pQ!^=zZdhYuC??#-Do>vYx; z#{CzR^Jw79PTjj4@#_*a{wWK!l>YX1yD2^J;tN0KgfF1hT zv}#V`Vk^h?e*{cDxY5|Q_-9gM3!$NbUJf1WJ`9ZFk|jN?`3HqjO2wvOX7Ddd;`nD? z3JuLrAcam#?+xX6OtoImW+kXtZ&7Re2dG8f5Ot^@3>B!61YGA=&`7V3VJ#g!MM)Kl zG!B6!+-;ooI*NbTjf=DvKQj-1<#6jZpw=*Jw*FUC#+`$x*qn9y)a#iw3kKQ@_b?-E z2a%2#y8ZuQoL^ZL=t$I&d-*wFxrGn;S&ZmH>y=?!ZaGNwdftJ2l5uU8y>>3m(e40I zA8?jooJWps)|>Gr&-a;VsYPCEU1?MFOzPtFliZ+R^rQXxOjt~-rj!pi9b*FL5(N>% zlf0s8y*RnUgoJjsne3OxH937^mhEHE_9Sb%9+PhvBni5pab-j}z`Fg^;OYsxW?ZR& z+ra)h`dHWgAtvdUgS{~%TLv%-RZ>;&Zzzw_()#pep0qe(+{`f-r!v39H++d~Y_1^6 zjWx4ql0;2?^@laOxN!z)ErtE~9bx%5nIsbTt!pWCr(xm)sDnb#exRXMA75=_TaND9 zSYH|8Y#pzeGM_r;)efs?y(TLGMYk8#zmtJ2E$17#isnh3cFtmdAC=Nv!V6m zaTcKNqf|b9Z3c#S9FXa_&iCiF9}1T2|5r8RJ<_(U1+jD8mEO1c;Lbn`VIqmKdQrc` zzh%0WCqao2ltPn`B8dA1Xa3h$AUR0L%5ZjgS0P-EoYq4jLzX+z} z;UGUlj|qM++f$auNMhEXzb)fT8mX3l z2{PvO-*qXYM9+4;;887z3`@)pIjb`}g&_6jmgYchHd#Qo399oLDlL2z>!%48=7T?NS12j0A@r@K~ws1}UA@3uM3I7L%E*;3!2 zN`v|pd|9S$gMg}E$v`oQjeL9KdH00vtiZbZJ(Rp6-ZegATu`8qTUjEF(DE^y$$jxp zZnog?849kA7?8GKCq9;l8*zE8U7t$}k!agCSo4Jw&9INa>;mP#HnDPt5Ox3e?JG60i!yQws`hrqNPOp zrzyG5(K1IT;OfwL5BU&cmP5H%z9keM0;^{=0e(ZFQ>z@|N3Y`LK&flNVCu;<7z z+1R%Gu^5C%9-B8~t=Lfw;he=fo&#SA@(Xi( zE8llimW}&*tvUn^`i#RvXj`koyu$zHiq)R;Fj}Gq@rlty$EDJ>9fZ^4Xk*N*;905m z!Ai_eHPIDs0f$O#s5mpYHeuw*`nnjLqVG!a+$pp=RpX3t9*RQ5!KmMDYkxjOr*xkR8O73LoHo)b@f8^QXewFs~Doh#k zOYRJuC-9g4s46gp)O;woWQ@E@AU1c^NTwAIsd(TD)o|1?>M zaQSK*KYRhAx|lv?0pG>Zvv1gvJzA!o@I7qt>nK{648f%J`Sc2OMMnp3y_q@H5HWz7 zx?4l;H%_i}?H9XMhIgwD|4fh}lgf*|CMZVyXT2=c%AOgbkWX*^uJpXPL9=JXmB9hI zZnVsNK*N?U655bUA|r|>#+ml7;`xZCwpOECF)`nfdCF!W;`^xU@b8n$CyWgr$bx7V z4vXp}$gIwsH~XEEDu32NfN#JdDa2Uj%3x-#*-jDT7*GMnReK7tFKk%%rw4~(Ii~G6 zND&`my#Sp;LskfMx0vnTl9$B`^je#<%@ND0+r5s4%2$`}^~Xfa_fzjx^7z;0C-Don zh{qbJ&#n}zk>aRRN;tuefcHn8%*9>v#)_IL#Gr=DRdN&UvITTM{>?wW7XE!U@FyH4 zcncR^ml){)0S^BdRppf6j4Fa5XFFmQ9V%H|1nHo|YMp#_h?qpN>lIbLAQipUaYAz{ zt@{2Yt<_$_@?Pig=1SQyLA%Thi075+ARRNF6CEisu~qmFgwL18_dF({3{-4AZ#EUZ zTB)iW+ULp=k+GADVC*S5prrEZYQeo9%;3Z;G~}uW3Hs3|IY6k~d4e5+w;ZU(^9-UefA3wXnu9d|?FdFgW^xD) zi^&L#ao=$f6Bcpiord=pF(eSC&1Iz<4P>RYd{t``@>gE4%xS3Z&)Q1H-J07m1bUr$ z@Zb#8N-ynt6H_zAcUJ71KoRT;svzvqJy`~)0V_nSv`#lf^Et#j2f*ic7Vhuha<_t9 z)3}9nQR!nM(5LZ>pjRHf9zV3TOq}{5pqs#c=c;kWK<8%xgju&Qf|BV1G7Dn`(|<@VZWy-Oh2lO}1y^I8 zpvb!}b>U4J1fS1430lupF)mh@7&)IS&li-sicU{HCgd;}-psj(i4a^*cJ1mGsr5Z7 z1!6`;DAMR6w}Gt+BWfE?5hR3@)prQ~gYW}c|4)7EdtO`d*&4i{T;o--(I#*1l^{4s zBU?Q?0uqs)6mo)kT#I`Y@#+Ku>Umqqd$!RUP|M4+Z%NL*z6^o5QK3kepxW!V6|1)D z!+YZ+4~u5I*c50m{+}Ug9O0nDvcLDo+*b!Q2S_ty z1n>!*>b_#H7&d$&`#|`d)+?8&5$nBBtN9a6BUiQDpMctv_seFaKPE@LeKSLtrvc(2 zADBk>=P~p_Xck;8>->ISUsSm@iq@~#)π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%0AKa!33!{t`yMyhDhKpUfw?4;+Jo7D8m$> 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 literal 0 HcmV?d00001 diff --git a/apps/mobile/features/api/productsClient.ts b/apps/mobile/features/api/productsClient.ts new file mode 100644 index 0000000..0206b7b --- /dev/null +++ b/apps/mobile/features/api/productsClient.ts @@ -0,0 +1,54 @@ +import { readApiUrl } from "../../lib/apiConfig"; +import { supabase } from "../../lib/supabase"; +import { withTimeout } from "../auth/authService"; +import type { FailureKind, Result } from "./accountClient"; + +export type Product = { + id: string; + name: string; + store: string; + price: string; + available: boolean; + imageUrl: string | null; + checkedAt: string; +}; + +const REQUEST_TIMEOUT_MS = 10_000; + +async function request(path: string): Promise> { + if (!supabase) return { ok: false, failure: { kind: "configuration" } }; + + try { + const apiUrl = readApiUrl(); + const { data } = await withTimeout( + supabase.auth.getSession(), + REQUEST_TIMEOUT_MS, + "Session lookup timed out.", + ); + const token = data.session?.access_token; + if (!token) return { ok: false, failure: { kind: "unauthorized" } }; + + const res = await withTimeout( + fetch(`${apiUrl}${path}`, { + headers: { Authorization: `Bearer ${token}` }, + }), + REQUEST_TIMEOUT_MS, + "Product request timed out.", + ); + if (res.ok) return { ok: true, data: (await res.json()) as T }; + + const kind: FailureKind = res.status === 401 ? "unauthorized" : "unknown"; + return { ok: false, failure: { kind } }; + } catch { + try { + readApiUrl(); + } catch { + return { ok: false, failure: { kind: "configuration" } }; + } + return { ok: false, failure: { kind: "network" } }; + } +} + +export async function loadProducts(): Promise> { + return request("/products"); +} diff --git a/apps/mobile/features/home/HomeScreen.tsx b/apps/mobile/features/home/HomeScreen.tsx index dcdad35..0974978 100644 --- a/apps/mobile/features/home/HomeScreen.tsx +++ b/apps/mobile/features/home/HomeScreen.tsx @@ -1,12 +1,17 @@ +import { useEffect, useState } from "react"; import { Pressable, ScrollView, StyleSheet, Text, View } from "react-native"; import { SafeAreaView } from "react-native-safe-area-context"; +import { loadProducts, type Product } from "../api/productsClient"; import { AuthenticatedHeader, type AuthenticatedNavigation, } from "../navigation/AuthenticatedHeader"; import { ProductCard } from "../products/ProductCard"; +// eslint-disable-next-line @typescript-eslint/no-require-imports +const POKEMON_POSTER_IMAGE = require("../../assets/images/pokemon-30th-poster.webp"); + type HomeScreenProps = { navigation?: AuthenticatedNavigation; onAccountInfo?: () => void; @@ -24,6 +29,20 @@ export function HomeScreen({ onOpenWatchedItems = () => undefined, onOpenPopularProducts = () => undefined, }: HomeScreenProps) { + const [popularProducts, setPopularProducts] = useState([]); + + useEffect(() => { + let cancelled = false; + + loadProducts().then((result) => { + if (!cancelled && result.ok) setPopularProducts(result.data); + }); + + return () => { + cancelled = true; + }; + }, []); + return ( @@ -95,19 +114,23 @@ export function HomeScreen({ - - - + {popularProducts.length === 0 ? ( + Loading products... + ) : ( + popularProducts + .slice(0, 2) + .map((product) => ( + + )) + )} diff --git a/apps/mobile/features/popular-products/PopularProductsScreen.tsx b/apps/mobile/features/popular-products/PopularProductsScreen.tsx index ed57256..adfe08e 100644 --- a/apps/mobile/features/popular-products/PopularProductsScreen.tsx +++ b/apps/mobile/features/popular-products/PopularProductsScreen.tsx @@ -1,7 +1,7 @@ -import { useMemo, useState } from "react"; +import { useEffect, useMemo, useState } from "react"; import { - Pressable, + ActivityIndicator, ScrollView, StyleSheet, Text, @@ -10,54 +10,15 @@ import { } from "react-native"; import { SafeAreaView } from "react-native-safe-area-context"; +import { loadProducts, type Product } from "../api/productsClient"; import { AuthenticatedHeader, type AuthenticatedNavigation, } from "../navigation/AuthenticatedHeader"; import { ProductCard } from "../products/ProductCard"; -type Category = "All" | "Electronics" | "Cards" | "Collectibles"; - -type PopularProduct = { - id: string; - name: string; - store: string; - price: string; - category: Exclude; -}; - -const categories: Category[] = ["All", "Electronics", "Cards", "Collectibles"]; - -const products: PopularProduct[] = [ - { - id: "switch-2", - name: "Nintendo Switch 2", - store: "Target", - price: "$449.99", - category: "Electronics", - }, - { - id: "headphones", - name: "Sony WH-1000XM6", - store: "Amazon", - price: "$398.00", - category: "Electronics", - }, - { - id: "pokemon-etb", - name: "Pokémon TCG: Prismatic Evolutions ETB", - store: "Walmart", - price: "$54.97", - category: "Cards", - }, - { - id: "lego-f1", - name: "LEGO Technic Ferrari SF-24 F1 Car", - store: "LEGO", - price: "$229.99", - category: "Collectibles", - }, -]; +// eslint-disable-next-line @typescript-eslint/no-require-imports +const POKEMON_POSTER_IMAGE = require("../../assets/images/pokemon-30th-poster.webp"); type PopularProductsScreenProps = { navigation?: AuthenticatedNavigation; @@ -69,22 +30,43 @@ export function PopularProductsScreen({ onLogout, }: PopularProductsScreenProps) { const [search, setSearch] = useState(""); - const [selectedCategory, setSelectedCategory] = useState("All"); + const [products, setProducts] = useState([]); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(null); + + useEffect(() => { + let cancelled = false; + + async function fetchProducts() { + setLoading(true); + const result = await loadProducts(); + if (cancelled) return; + + if (result.ok) { + setProducts(result.data); + setError(null); + } else { + setError("Unable to load products right now."); + } + setLoading(false); + } + + fetchProducts(); + return () => { + cancelled = true; + }; + }, []); const filteredProducts = useMemo(() => { const searchTerm = search.trim().toLowerCase(); + if (!searchTerm) return products; - return products.filter((product) => { - const inCategory = - selectedCategory === "All" || product.category === selectedCategory; - const matchesSearch = - !searchTerm || + return products.filter( + (product) => product.name.toLowerCase().includes(searchTerm) || - product.store.toLowerCase().includes(searchTerm); - - return inCategory && matchesSearch; - }); - }, [search, selectedCategory]); + product.store.toLowerCase().includes(searchTerm), + ); + }, [search, products]); return ( @@ -94,7 +76,7 @@ export function PopularProductsScreen({ Popular Products - Browse placeholder deals from stores shoppers watch most. + Live stock status from tracked stores. - - {categories.map((category) => { - const selected = category === selectedCategory; - - return ( - setSelectedCategory(category)} - style={[ - styles.categoryButton, - selected && styles.categoryButtonSelected, - ]} - > - - {category} - - - ); - })} - - - {filteredProducts.length === 0 ? ( + {loading ? ( + + ) : error ? ( + + Something went wrong + {error} + + ) : filteredProducts.length === 0 ? ( No products found - - Try another search or category. - + Try another search. ) : ( filteredProducts.map((product) => ( - IMG + {imageSource ? ( + + ) : ( + IMG + )} {store} {price} + {available !== undefined && ( + + + {available ? "In Stock" : "Out of Stock"} + + + )} ); @@ -57,6 +82,7 @@ const styles = StyleSheet.create({ borderRadius: 8, height: 72, justifyContent: "center", + overflow: "hidden", width: 72, }, gridImagePlaceholder: { @@ -64,6 +90,7 @@ const styles = StyleSheet.create({ marginBottom: 12, width: "100%", }, + image: { height: "100%", width: "100%" }, imagePlaceholderText: { color: "#777", fontSize: 12, fontWeight: "600" }, productDetails: { flex: 1, marginLeft: 14 }, gridProductDetails: { marginLeft: 0 }, @@ -78,4 +105,14 @@ const styles = StyleSheet.create({ gridStore: { color: "#888", fontSize: 13, marginBottom: 6, marginTop: 0 }, price: { color: "#79DCA0", fontSize: 17, fontWeight: "700", marginTop: 7 }, gridPrice: { color: "#fff", marginTop: 0 }, + stockBadge: { + alignSelf: "flex-start", + borderRadius: 6, + marginTop: 7, + paddingHorizontal: 8, + paddingVertical: 3, + }, + inStockBadge: { backgroundColor: "#1d3a28" }, + outOfStockBadge: { backgroundColor: "#3a1d1d" }, + stockBadgeText: { color: "#fff", fontSize: 12, fontWeight: "600" }, }); diff --git a/apps/mobile/jest.setup.ts b/apps/mobile/jest.setup.ts new file mode 100644 index 0000000..eb09cd1 --- /dev/null +++ b/apps/mobile/jest.setup.ts @@ -0,0 +1,5 @@ +jest.mock("@react-native-async-storage/async-storage", () => + jest.requireActual( + "@react-native-async-storage/async-storage/jest/async-storage-mock", + ), +); diff --git a/apps/mobile/lib/secureStorage.ts b/apps/mobile/lib/secureStorage.ts index f0fd3aa..baa4a6e 100644 --- a/apps/mobile/lib/secureStorage.ts +++ b/apps/mobile/lib/secureStorage.ts @@ -1,12 +1,15 @@ -import * as SecureStore from "expo-secure-store"; +import AsyncStorage from "@react-native-async-storage/async-storage"; import { Platform } from "react-native"; +// Supabase's session payload (access token + refresh token + user metadata) +// routinely exceeds SecureStore's 2048-byte per-item limit, so the session +// itself is kept in AsyncStorage. Nothing else currently uses this module. export const secureStorage = { getItem: (key: string): Promise => { if (Platform.OS === "web") { return Promise.resolve(localStorage.getItem(key)); } - return SecureStore.getItemAsync(key); + return AsyncStorage.getItem(key); }, setItem: (key: string, value: string): Promise => { @@ -14,7 +17,7 @@ export const secureStorage = { localStorage.setItem(key, value); return Promise.resolve(); } - return SecureStore.setItemAsync(key, value); + return AsyncStorage.setItem(key, value); }, removeItem: (key: string): Promise => { @@ -22,6 +25,6 @@ export const secureStorage = { localStorage.removeItem(key); return Promise.resolve(); } - return SecureStore.deleteItemAsync(key); + return AsyncStorage.removeItem(key); }, }; diff --git a/apps/mobile/package-lock.json b/apps/mobile/package-lock.json index c9a42b9..7a9dff0 100644 --- a/apps/mobile/package-lock.json +++ b/apps/mobile/package-lock.json @@ -10,6 +10,7 @@ "dependencies": { "@expo/metro-runtime": "~57.0.16", "@expo/ui": "~57.0.9", + "@react-native-async-storage/async-storage": "2.2.0", "@supabase/supabase-js": "^2.117.3", "expo": "~57.0.10", "expo-constants": "~57.0.9", @@ -2699,6 +2700,18 @@ } } }, + "node_modules/@react-native-async-storage/async-storage": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@react-native-async-storage/async-storage/-/async-storage-2.2.0.tgz", + "integrity": "sha512-gvRvjR5JAaUZF8tv2Kcq/Gbt3JHwbKFYfmb445rhOj6NUMx3qPLixmDx5pZAyb9at1bYvJ4/eTUipU5aki45xw==", + "license": "MIT", + "dependencies": { + "merge-options": "^3.0.4" + }, + "peerDependencies": { + "react-native": "^0.0.0-0 || >=0.65 <1.0" + } + }, "node_modules/@react-native-masked-view/masked-view": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/@react-native-masked-view/masked-view/-/masked-view-0.3.2.tgz", @@ -6077,7 +6090,6 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, "hasInstallScript": true, "license": "MIT", "optional": true, @@ -6601,6 +6613,15 @@ "node": ">=0.12.0" } }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/is-potential-custom-element-name": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", @@ -8521,6 +8542,18 @@ "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==", "license": "MIT" }, + "node_modules/merge-options": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/merge-options/-/merge-options-3.0.4.tgz", + "integrity": "sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ==", + "license": "MIT", + "dependencies": { + "is-plain-obj": "^2.1.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", diff --git a/apps/mobile/package.json b/apps/mobile/package.json index 5d3328c..aaf7048 100644 --- a/apps/mobile/package.json +++ b/apps/mobile/package.json @@ -17,6 +17,7 @@ "dependencies": { "@expo/metro-runtime": "~57.0.16", "@expo/ui": "~57.0.9", + "@react-native-async-storage/async-storage": "2.2.0", "@supabase/supabase-js": "^2.117.3", "expo": "~57.0.10", "expo-constants": "~57.0.9", @@ -55,6 +56,9 @@ }, "jest": { "preset": "jest-expo", + "setupFiles": [ + "/jest.setup.ts" + ], "testTimeout": 30000 } } diff --git a/apps/mobile/tsconfig.json b/apps/mobile/tsconfig.json index 178b601..0e98340 100644 --- a/apps/mobile/tsconfig.json +++ b/apps/mobile/tsconfig.json @@ -1,6 +1,7 @@ { "extends": "expo/tsconfig.base", "compilerOptions": { + "jsx": "react-jsx", "strict": true, "types": ["jest"], "paths": { diff --git a/supabase/migrations/20261101000000_create_products.sql b/supabase/migrations/20261101000000_create_products.sql new file mode 100644 index 0000000..fc616b9 --- /dev/null +++ b/supabase/migrations/20261101000000_create_products.sql @@ -0,0 +1,31 @@ +create table if not exists public.products ( + id uuid primary key default gen_random_uuid(), + slug text not null unique, + name text not null, + store text not null, + shopify_url text not null, + created_at timestamptz not null default now() +); + +create index if not exists products_created_at_idx + on public.products (created_at desc); + +alter table public.products enable row level security; + +drop policy if exists "authenticated users can read products" +on public.products; + +create policy "authenticated users can read products" +on public.products +for select +to authenticated +using (true); + +insert into public.products (slug, name, store, shopify_url) +values ( + 'pokemon-30th-poster', + 'Pokemon TCG: 30th Celebration - Poster Collection', + 'Shop of Magic', + 'https://shop.shopofmagic.com/collections/pokemon-30th-anniversary-collection-1/products/pokemon-30th-celebration-poster-collection.js' +) +on conflict (slug) do nothing; \ No newline at end of file From 1be1cada109e7aba87d0275a12f8a4b625e1a2bb Mon Sep 17 00:00:00 2001 From: Luneric Date: Sun, 8 Nov 2026 22:54:31 -0800 Subject: [PATCH 2/2] fix: format code with prettier --- apps/api/src/app.module.ts | 2 +- apps/api/src/app.setup.ts | 2 +- apps/api/src/products/products.controller.ts | 2 +- apps/api/src/products/products.module.ts | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/api/src/app.module.ts b/apps/api/src/app.module.ts index 224605b..123dcee 100644 --- a/apps/api/src/app.module.ts +++ b/apps/api/src/app.module.ts @@ -7,4 +7,4 @@ import { SupabaseModule } from './supabase/supabase.module'; @Module({ imports: [SupabaseModule, AccountModule, NotificationsModule, ProductsModule], }) -export class AppModule {} \ No newline at end of file +export class AppModule {} diff --git a/apps/api/src/app.setup.ts b/apps/api/src/app.setup.ts index 7c854d9..d7acc22 100644 --- a/apps/api/src/app.setup.ts +++ b/apps/api/src/app.setup.ts @@ -9,4 +9,4 @@ export function configureApp(app: INestApplication) { new ValidationPipe({ whitelist: true, forbidNonWhitelisted: true }), ); return app; -} \ No newline at end of file +} diff --git a/apps/api/src/products/products.controller.ts b/apps/api/src/products/products.controller.ts index 872dd07..13081bc 100644 --- a/apps/api/src/products/products.controller.ts +++ b/apps/api/src/products/products.controller.ts @@ -16,4 +16,4 @@ export class ProductsController { stock(@Param('id') id: string) { return this.products.getStock(id); } -} \ No newline at end of file +} diff --git a/apps/api/src/products/products.module.ts b/apps/api/src/products/products.module.ts index 64eef77..432324b 100644 --- a/apps/api/src/products/products.module.ts +++ b/apps/api/src/products/products.module.ts @@ -9,4 +9,4 @@ import { ProductsService } from './products.service'; controllers: [ProductsController], providers: [ProductsService, SupabaseAuthGuard], }) -export class ProductsModule {} \ No newline at end of file +export class ProductsModule {}