diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..29a0ec0 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,35 @@ +# Dependencies +node_modules +npm-debug.log +yarn-debug.log +yarn-error.log + +# Next.js build output +.next +out + +# Version control +.git +.gitignore + +# Environment files +.env* +!.env.example + +# Development files +README.md +*.md +.eslintrc* +.prettier* +.vscode +.idea +*.log + +# Docker files +Dockerfile +docker-compose.yml +.dockerignore + +# System files +.DS_Store +Thumbs.db diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..9a8497a --- /dev/null +++ b/Dockerfile @@ -0,0 +1,34 @@ +# Build stage +FROM node:18-alpine AS builder +WORKDIR /app +COPY package*.json ./ +RUN npm install +COPY . . +RUN npm run build + +# Production stage +FROM node:18-alpine AS runner +WORKDIR /app + +ENV NODE_ENV production + +# Create non-root user +RUN addgroup --system --gid 1001 nodejs +RUN adduser --system --uid 1001 nextjs + +# Copy necessary files from builder +COPY --from=builder /app/public ./public +COPY --from=builder /app/.next/standalone ./ +COPY --from=builder /app/.next/static ./.next/static + +# Set correct permissions +RUN chown -R nextjs:nodejs /app + +USER nextjs + +EXPOSE 3000 + +ENV PORT 3000 +ENV HOSTNAME "0.0.0.0" + +CMD ["node", "server.js"] diff --git a/app/components/FloatingHearts.tsx b/app/components/FloatingHearts.tsx new file mode 100644 index 0000000..a9b33f5 --- /dev/null +++ b/app/components/FloatingHearts.tsx @@ -0,0 +1,95 @@ +'use client'; + +import { useState, useEffect } from 'react'; +import { HeartIcon } from '@heroicons/react/24/solid'; + +interface Heart { + id: number; + angle: number; + speed: number; + startPosition: { x: number; y: number }; + scale: number; +} + +interface FloatingHeartsProps { + intensity: number; +} + +export function FloatingHearts({ intensity }: FloatingHeartsProps) { + const [hearts, setHearts] = useState([]); + + useEffect(() => { + if (intensity <= 0) return; + + // Number of hearts based on intensity + const numHearts = Math.min(Math.floor(intensity * 2), 50); + + // Create waves of hearts + const waves = 4; // Number of waves + const heartsPerWave = Math.ceil(numHearts / waves); + const waveDelay = 200; // Delay between waves in ms + const timers: NodeJS.Timeout[] = []; + + // Generate hearts in waves + for (let wave = 0; wave < waves; wave++) { + const timer = setTimeout(() => { + const newHearts = Array.from({ length: heartsPerWave }, (_, i) => { + const totalIndex = wave * heartsPerWave + i; + return { + id: Date.now() + totalIndex, + // Distribute angles evenly within each wave + angle: Math.random() * 360, // Random angle for full radial distribution + speed: 0.8 + Math.random() * 0.4, + startPosition: { + x: Math.random() * 40 - 20, + y: Math.random() * 40 - 20, + }, + scale: 0.8 + Math.random() * 0.4, + }; + }); + + setHearts(prev => [...prev, ...newHearts]); + }, wave * waveDelay); + + timers.push(timer); + } + + // Remove hearts after animation completes + const cleanupTimer = setTimeout(() => { + setHearts(prev => prev.filter(heart => heart.id > Date.now() - 3500)); + }, waves * waveDelay + 3500); + + timers.push(cleanupTimer); + + return () => { + timers.forEach(timer => clearTimeout(timer)); + }; + }, [intensity]); + + return ( +
+ {hearts.map((heart) => { + const style = { + '--angle': `${heart.angle}deg`, + '--speed': `${heart.speed}`, + '--start-x': `${heart.startPosition.x}px`, + '--start-y': `${heart.startPosition.y}px`, + '--scale': heart.scale, + } as React.CSSProperties; + + return ( +
+ +
+ ); + })} +
+ ); +} diff --git a/app/components/ThemeToggle.tsx b/app/components/ThemeToggle.tsx new file mode 100644 index 0000000..6172f85 --- /dev/null +++ b/app/components/ThemeToggle.tsx @@ -0,0 +1,22 @@ +'use client'; + +import { useTheme } from '../providers/ThemeProvider'; +import { SunIcon, MoonIcon } from '@heroicons/react/24/outline'; + +export function ThemeToggle() { + const { darkMode, toggleDarkMode } = useTheme(); + + return ( + + ); +} diff --git a/app/globals.css b/app/globals.css new file mode 100644 index 0000000..2ac8678 --- /dev/null +++ b/app/globals.css @@ -0,0 +1,52 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +body { + -webkit-tap-highlight-color: transparent; +} + +/* Light mode styles */ +body { + background-color: rgb(240, 253, 244); + color: rgb(15, 23, 42); + transition: background-color 0.3s ease, color 0.3s ease; +} + +/* Dark mode styles */ +:is(.dark body) { + background-color: rgb(15, 23, 42); + color: rgb(248, 250, 252); +} + +@keyframes shake { + 0%, 100% { transform: translateX(0); } + 25% { transform: translateX(-5px) rotate(-5deg); } + 75% { transform: translateX(5px) rotate(5deg); } +} + +.animate-shake { + animation: shake 0.3s cubic-bezier(.36,.07,.19,.97) both 4; +} + +@keyframes float-heart { + to { + transform: translate( + calc(var(--start-x) + (50vw * cos(var(--angle)))), + calc(var(--start-y) + (50vh * sin(var(--angle)))) + ) scale(var(--scale)); + opacity: 0; + } +} + +.animate-float-heart { + animation: float-heart calc(2s * var(--speed)) ease-out forwards; +} + +@keyframes fade-out { + to { opacity: 0; } +} + +.animate-fade-out { + animation: fade-out 2s ease-out forwards; +} diff --git a/app/hooks/useDarkMode.ts b/app/hooks/useDarkMode.ts new file mode 100644 index 0000000..49222cb --- /dev/null +++ b/app/hooks/useDarkMode.ts @@ -0,0 +1,34 @@ +'use client'; + +import { useState, useEffect } from 'react'; + +export function useDarkMode() { + const [darkMode, setDarkMode] = useState(false); + + useEffect(() => { + // Check if user has a dark mode preference in localStorage + const isDark = localStorage.getItem('darkMode') === 'true'; + // Check system preference if no localStorage value + const systemPrefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches; + + setDarkMode(isDark ?? systemPrefersDark); + + // Add listener for system theme changes + const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)'); + const handleChange = (e: MediaQueryListEvent) => { + if (localStorage.getItem('darkMode') === null) { + setDarkMode(e.matches); + } + }; + + mediaQuery.addEventListener('change', handleChange); + return () => mediaQuery.removeEventListener('change', handleChange); + }, []); + + const toggleDarkMode = () => { + setDarkMode(!darkMode); + localStorage.setItem('darkMode', (!darkMode).toString()); + }; + + return { darkMode, toggleDarkMode }; +} diff --git a/app/layout.tsx b/app/layout.tsx new file mode 100644 index 0000000..f202a8a --- /dev/null +++ b/app/layout.tsx @@ -0,0 +1,32 @@ +import type { Metadata } from 'next' +import { Inter } from 'next/font/google' +import { ThemeProvider } from './providers/ThemeProvider' +import { ThemeToggle } from './components/ThemeToggle' +import './globals.css' + +const inter = Inter({ subsets: ['latin'] }) + +export const metadata: Metadata = { + title: 'Shake the Frog', + description: 'A fun interactive frog that reacts to shaking!', + icons: { + icon: '/images/frog.svg' + } +} + +export default function RootLayout({ + children, +}: { + children: React.ReactNode +}) { + return ( + + + + + {children} + + + + ) +} diff --git a/app/page.tsx b/app/page.tsx new file mode 100644 index 0000000..9138fbe --- /dev/null +++ b/app/page.tsx @@ -0,0 +1,141 @@ +'use client'; + +import { useState, useEffect } from 'react'; +import Image from 'next/image'; +import { FloatingHearts } from './components/FloatingHearts'; + +export default function Home() { + const [isShaken, setIsShaken] = useState(false); + const [shakeIntensity, setShakeIntensity] = useState(0); + const [lastUpdate, setLastUpdate] = useState(0); + const [motionPermission, setMotionPermission] = useState('prompt'); + const shakeThreshold = 15; + + // Check if device motion is available and handle permissions + const requestMotionPermission = async () => { + if (typeof window === 'undefined') return; + + // Check if device motion is available + if (!('DeviceMotionEvent' in window)) { + setMotionPermission('denied'); + return; + } + + // Request permission on iOS devices + if ('requestPermission' in DeviceMotionEvent) { + try { + // @ts-expect-error - TypeScript doesn't know about requestPermission + const permission = await DeviceMotionEvent.requestPermission(); + setMotionPermission(permission); + } catch (err) { + console.error('Error requesting motion permission:', err); + setMotionPermission('denied'); + } + } else { + // Android or desktop - no permission needed + setMotionPermission('granted'); + } + }; + + const triggerShake = (intensity: number) => { + // Start shake animation + setIsShaken(true); + + // Always reset shake after 500ms + setTimeout(() => { + setIsShaken(false); + }, 500); + + // Trigger hearts with a shorter duration + setShakeIntensity(intensity); + setTimeout(() => setShakeIntensity(0), 300); + }; + + useEffect(() => { + const handleKeyPress = (event: KeyboardEvent) => { + if (event.code === 'Space') { + triggerShake(25); + } + }; + + const handleMotion = (event: DeviceMotionEvent) => { + const acceleration = event.accelerationIncludingGravity; + if (!acceleration) return; + + const currentTime = new Date().getTime(); + const timeDiff = currentTime - lastUpdate; + + if (timeDiff > 100) { + setLastUpdate(currentTime); + + const speed = Math.abs(acceleration.x || 0) + + Math.abs(acceleration.y || 0) + + Math.abs(acceleration.z || 0); + + if (speed > shakeThreshold) { + triggerShake(speed); + } + } + }; + + // Only add motion listener if permission is granted + if (typeof window !== 'undefined') { + if (motionPermission === 'granted' && 'DeviceMotionEvent' in window) { + window.addEventListener('devicemotion', handleMotion); + } + window.addEventListener('keydown', handleKeyPress); + } + + return () => { + if (typeof window !== 'undefined') { + if (motionPermission === 'granted') { + window.removeEventListener('devicemotion', handleMotion); + } + window.removeEventListener('keydown', handleKeyPress); + } + }; + }, [lastUpdate, motionPermission, triggerShake]); + + // Initial permission check + useEffect(() => { + requestMotionPermission(); + }, []); + + const handleClick = () => { + triggerShake(25); + }; + + return ( +
+
+ + Frog +
+
+

+ {motionPermission === 'prompt' ? ( + + ) : motionPermission === 'granted' ? ( + "Shake your device, press spacebar, or click/tap frog!" + ) : ( + "Press spacebar or click/tap frog!" + )} +

+
+
+ ); +} diff --git a/app/providers/ThemeProvider.tsx b/app/providers/ThemeProvider.tsx new file mode 100644 index 0000000..7ff3c88 --- /dev/null +++ b/app/providers/ThemeProvider.tsx @@ -0,0 +1,26 @@ +'use client'; + +import { createContext, useContext, useEffect } from 'react'; +import { useDarkMode } from '../hooks/useDarkMode'; + +const ThemeContext = createContext({ darkMode: false, toggleDarkMode: () => {} }); + +export const useTheme = () => useContext(ThemeContext); + +export function ThemeProvider({ children }: { children: React.ReactNode }) { + const { darkMode, toggleDarkMode } = useDarkMode(); + + useEffect(() => { + if (darkMode) { + document.documentElement.classList.add('dark'); + } else { + document.documentElement.classList.remove('dark'); + } + }, [darkMode]); + + return ( + + {children} + + ); +} diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..3f19dc5 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,22 @@ +services: + web: + build: + context: . + dockerfile: Dockerfile + ports: + - "3000:3000" + restart: unless-stopped + healthcheck: + test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 20s + environment: + - NODE_ENV=production + deploy: + resources: + limits: + memory: 1G + reservations: + memory: 512M diff --git a/next.config.ts b/next.config.ts index e9ffa30..b9f4418 100644 --- a/next.config.ts +++ b/next.config.ts @@ -1,7 +1,7 @@ import type { NextConfig } from "next"; const nextConfig: NextConfig = { - /* config options here */ + output: 'standalone' }; export default nextConfig; diff --git a/package-lock.json b/package-lock.json index bfe0f44..1ae34dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "shakethefrog", "version": "0.1.0", "dependencies": { + "@heroicons/react": "^2.2.0", "next": "15.1.4", "react": "^19.0.0", "react-dom": "^19.0.0" @@ -175,6 +176,15 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@heroicons/react": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.2.0.tgz", + "integrity": "sha512-LMcepvRaS9LYHJGsF0zzmgKCUim/X3N/DQKc4jepAXJ7l8QxJ1PmxJzqplF2Z3FE4PqBAIGyJAQ/w4B5dsqbtQ==", + "license": "MIT", + "peerDependencies": { + "react": ">= 16 || ^19.0.0-rc" + } + }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", diff --git a/package.json b/package.json index c7565fc..fa48cb6 100644 --- a/package.json +++ b/package.json @@ -9,19 +9,20 @@ "lint": "next lint" }, "dependencies": { + "@heroicons/react": "^2.2.0", + "next": "15.1.4", "react": "^19.0.0", - "react-dom": "^19.0.0", - "next": "15.1.4" + "react-dom": "^19.0.0" }, "devDependencies": { - "typescript": "^5", + "@eslint/eslintrc": "^3", "@types/node": "^20", "@types/react": "^19", "@types/react-dom": "^19", - "postcss": "^8", - "tailwindcss": "^3.4.1", "eslint": "^9", "eslint-config-next": "15.1.4", - "@eslint/eslintrc": "^3" + "postcss": "^8", + "tailwindcss": "^3.4.1", + "typescript": "^5" } } diff --git a/public/images/frog-ai.ai b/public/images/frog-ai.ai new file mode 100644 index 0000000..e3b0555 --- /dev/null +++ b/public/images/frog-ai.ai @@ -0,0 +1,315 @@ +%PDF-1.6 % +1 0 obj <>/OCGs[18 0 R]>>/Pages 3 0 R/Type/Catalog>> endobj 2 0 obj <>stream + + + + + Adobe Illustrator 29.1 (Windows) + 2025-01-14T23:15:37+02:00 + 2025-01-14T23:15:37+01:00 + 2025-01-14T23:15:37+01:00 + + + + 256 + 256 + JPEG + /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FUi17 zfp+lloV/wBIvB/ulDsv+u3b5dcxc2qjDbmWqeURYVqHnLXrwkCf6vGeiQfB/wAN9r8c109XOXWn GlmkUnlnnmPKWRpG8XJY/jmOZE82slakjo3JGKsOhU0P4Yg0qc6d5w1yyYD1zcRDrHN8e3s32h9+ ZGPVTj1tsjlkGcaF5s07VaRf7z3f++HPX/Ub9r9ebLDqoz25FyYZRJO8yW12KuxV2KuxV2KuxV2K pNrXmvS9KJjdjPdD/dEdCR/rHov68x82pjDbmWueURYZqHnnXLpiIXW0i7LGKtT3Zqn7qZrp62cu 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 + + + + 1 + False + False + + 397.220232 + 397.632808 + Points + + + + Cyan + Magenta + Yellow + Black + + + + + + Default Swatch Group + 0 + + + + Document + AIRobin + application/pdf + + + frog-ai + + + proof:pdf + uuid:dfc72568-9f5c-4c46-ab43-303993d06e16 + uuid:2d62e573-0f12-4979-9988-6bb64a084be0 + Adobe PDF library 17.00 + + + + + + + + + + + + + + + + + + + + + + + + + +endstream endobj 3 0 obj <> endobj 5 0 obj <>/Properties<>>>/Thumb 22 0 R/TrimBox[0.0 0.0 397.22 397.633]/Type/Page/PieceInfo<>>> endobj 20 0 obj <>stream +HlM7 @"m +#0W`@bOρ1Q$Ū𾕟~~__YuFӽ\huQZ]Owʧ_ƟӪGңq|~5G͇^8:Yqz-SvsvQ~\4rX7j^|zVS{%=f5)1Ž9X0&/}6tљgv9q}?QYQ5^7bpҊ6j` [mTnTɿY5P6yCw'`àR_,Ao:j/hǢ+3WS5=HfP:}#{yziORs"yk=/Xv + 'AP;,Q9ZzrǓxZxuh\'5'9nO(Jmu+IE_fNF&;T7t:e_VOS6xyZtZ}/XJ]uKߤCt6ь P`ʑ3V >TŸ xD X)8YQ炤ȋ~jA~*NC8e;A($z!pt|Ŕv1KP;; HJMZ𷡭wj 8WhԱԶaTgx˷ Dټ v!vi"x4Rwڪ=Ħl`$hXcJcINnth*3@H0NJgaVxAފ* .|% ll`IJbkJlIIO"A<$sIl&<V7)hH[ē'5pdEI0= ~JkN']ږbVX>1 +D_ȷp[\YiYp3wSmTԿn& 7"qcq}u"4UmU2@ ^D[JvIfz6Ã.]nly!j&JtCLCV1'j9i㲷|ؖ! BI݄qj+^|F+݋zLDX”*E`$+:3isCq ZǮcѫP:Xn^cBg>stream +8;WR3gC_@H#kZ;PY,-MKN2bl9O+4TZ.M4cJ0np;4-F5bF0o*Zli;bh +g;i*5@uMLsSl+(K7_J%oLs$*iV^ocWfb)[?>dG9#,Gl4J#uND>7'51?% +NdZN0n>]=R)`>:@GmBaqcBuU5Yc`p"#mKjgT(Gai-5kdD81I/@Uuas@n.#g8SaBAF +-O#cjMNttNn2oeRA01RWW'XLCM5![C=k)!nhm!^#>h/aI!*ad<.Rk^]!5J*G>Lq)d +I/D;=WqJ%1[KAW0F^KTsH6hf[8Vfaia3.U##%qhfX^ZXgiZ>]7\O,CJKd/A=?3otW +Goh&t:ZAI=<$&LG[$'h\@iM?EE1chkW+X,4MO`!ljO:8dF(nPRSU:YL-9'^H_)P^Z +EZjh\V9n7)`7prNGns!!*'!!!!$!rrW8,fu]<~> +endstream endobj 8 0 obj <> endobj 9 0 obj <> endobj 10 0 obj <>stream +%!PS-Adobe-3.0 +%%Creator: Adobe Illustrator(R) 24.0 +%%AI8_CreatorVersion: 29.1.0 +%%For: (sergej) () +%%Title: (il_1588xN.5193853335_qv5k.webp) +%%CreationDate: 1/14/2025 11:15 PM +%%Canvassize: 16383 +%%BoundingBox: 208 185 606 584 +%%HiResBoundingBox: 208.662747350571 185.937255819868 605.784892609992 583.688335743242 +%%DocumentProcessColors: Cyan Magenta Yellow Black +%AI5_FileFormat 14.0 +%AI12_BuildNumber: 142 +%AI3_ColorUsage: Color +%AI7_ImageSettings: 0 +%%RGBProcessColor: 0 0 0 ([Registration]) +%AI3_Cropmarks: 208.790525150414 186.05552680381 606.010756989248 583.688335029498 +%AI3_TemplateBox: 297.5 420.5 297.5 420.5 +%AI3_TileBox: 101.400641069831 -11.1280690833464 713.400641069831 780.871930916654 +%AI3_DocumentPreview: None +%AI5_ArtSize: 14400 14400 +%AI5_RulerUnits: 2 +%AI24_LargeCanvasScale: 1 +%AI9_ColorModel: 1 +%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0 +%AI5_TargetResolution: 800 +%AI5_NumLayers: 1 +%AI17_Begin_Content_if_version_gt:24 4 +%AI10_OpenToVie: -233.156102500866 744.688067981684 1.5462962962963 0 8308.52054420572 8307.39576435365 2017 1341 26 0 0 68 181 0 0 0 1 1 0 1 1 0 1 +%AI17_Alternate_Content +%AI9_OpenToView: -233.156102500866 744.688067981684 1.5462962962963 2017 1341 26 0 0 68 181 0 0 0 1 1 0 1 1 0 1 +%AI17_End_Versioned_Content +%AI5_OpenViewLayers: 7 +%AI17_Begin_Content_if_version_gt:24 4 +%AI17_Alternate_Content +%AI17_End_Versioned_Content +%%PageOrigin:0 0 +%AI7_GridSettings: 72 8 72 8 1 0 0.800000011920929 0.800000011920929 0.800000011920929 0.899999976158142 0.899999976158142 0.899999976158142 +%AI9_Flatten: 1 +%AI12_CMSettings: 00.MS +%%EndComments + +endstream endobj 11 0 obj <>stream +%AI24_ZStandard_Data(/X)j&DhQ5U:dwS%L" b  +7ߣz` TQ ?ڢ~3ޘ!-3|̙=笖5c$G*E4C|I\4qJK{|P;L :Z՟~iʹ헣 ,(e{m8~x>(KJW6,z7$n55Jϵ0Q/K@wcZ}ϦyN?m ++Ao$"QCSbؽi,<9?կscNpNiy >Į^[DZmN$[N,yw1zmHne~[̰lz )55ˏBSp}w>ġfL&~΀alà{9$\l4>~O0DH(%aL˰,Iǯƌh~E>,Cu,44e45Z4]`#EnvR ;7=h 9Y(v҇f7 ͐I3$=ec*̡Ki;~", fy2](]S,SevJⰬ8qQyŐc9wkaI EO(bzsC$=%8^c 1"H&8!9z\KI9}iSXeXfm{LW,ò4K,)+C/ѓG}Uzַ  ` +b + ` >01$24C4LC5\C6lA1EqIMSQW[}#c88c9#::#;#';I Iɑ$ɒ4ILI\IlI^җ`b9dYeʖmnz4CS4G4K4Q35Us5Y59Qh舒h(+ʢ-S,O4LtLɴLMTMהM۔]**jꪲj~pq%r2sEtUuevlg= ";$[&)+˲-lVlǖll6mvmٶm4M͔LL{ڢ+%:!Qfj&i7ɖiiXFbK^$)HvUDRŰ-AIJ4U2 A{I/RIJe(b;*lbGA3Q2Vd %Mb9#)ٱwգeAY,{CvO,m_s*8_x=wVNj䂯BZ=0M0f14ySE[W@@f[Bch~~P=Bcܧ`*P?-lN5׮ ^T`Jo5L үwTs<V}5(8,d<3*߸%>G4ɽ;/R$ +]iA9DUp]U#|$> %r%k8z`ν&#)Gr<)r"WrԸ~ Eka9$G^6%}A> = Hk*RR +&Y%ɰ$bZ/~ų9Wկ$7n㏚3f ?~O_ )^7,8aQ@pM,=^`'p AK߽ZKs=9{ &z7[Syz4G{#^(ˮ=bMҳYۢ皑 0 JwmYH@ 5HM*_)w ڵmsc%2SM_UoF9UoNqXCe9z`)j4M>z KciR= Xv"A2$8zòXv^0*Fɯ98,Kp@~3M5s*06}K " %hv#,N {8 U^3lD*-(aB18z_ql4H=U2{fh6.(>(A0jyNS(M*K(۷K,QtK P'ӀxCaA\|B-J"[ڟi)j'P<;+LR <-/-T`L[~ bMh/! Lxi22Ok,.;+ +Z %h^bE}5_\}b$-'amrW' L ^NL)҅a]ۘcW<ءD&!!B4 6g*1 %J?#P" "_+X(Xl($k>@qۀz<R05dEaVweDž[l:uPOGH;G8,dFCNvT +$ ̅?ů傌m0uv[ga(5[wLm1wC +L"?S@9e|)a]":_fvBOOHfX 0}_ʒxvKAv9F'oV`cl`(wc`G9f Jc5,&u]H5Kn31aErl:wl(cSUV#M-Q A o[AΩk4+ +IaYvaޫIW,^{N_+(ڂ^/a尌w髻Vd3 נ%^hvZĉ JA׉~ZLւA)yGhetG@,gǡ_bQ;A4,-i_zfE`U[{-%8s&M\N_z<~/浳7Sx`[ T>d~3-Uӻ~iշI*0g~ WpEPpHp +?]51 *l2i(aLWCgL['elgTmݰɎo{m^M3]ǴObQs E^|㔇Oolmje8N}R2U/Uykoho{Ǟ]4<4cTɳiWti^xU_l-'Ϧ={4u|Zb$R+OUj^& e8ׅW&4=lUޕٴG@kz-x F-@c4HCU 4}auS5[NӼ~5hJ=o{v=`PiԏTjFc+Rѷb:sXu41jT;jsJVozv:_M4̲x>yyRX=|ڧEYE}S?SsY /Ǿ幽mzultkV[ڮo?`߶޻i>+,} cEUpfEl~ATBܝ8~`m3|h8>u}o_ w'_Q4-(+gĮ:2&o<0~.8ZeҼVЋk6$moʹ]Q?@Y}R/FӴ-eֈg#(y㶉zG:2W4k#@Ahܑ; 5j'4pIXnAjF_-X1EubcrЬ++90'4rGǯ A^#((Q/4@PڋM=8{z@nڑ pyUB}J`ne=({efe$ԎW #ɣz8՛xj)mo88l\n>[ +AlRO?TkEa]"=vAO^UkC £QHve) :n2z(p>OĔӍ3(D+@I>I~k[$tF#+RW@Z*x,? \u~' +]Qpmi::m {N;p2ץO. 2VAuY@-X8,BLWT]H +'&wEJEK_.Y.`Ԓ]d˛2uySg!boeȷ"+B*4g.>+#lD= ȁ()[ ãbC sńB!LRqmrEDk{Lg詐QuvUUhK\{By6>A]Y rO vp4337}>pߞ xi]B_>>$<l_.-^., y&de- N>;Bw(q]TTQ=]% +j["V]Gli}@Vuhuv!МqXa3VPJ}ol"Rg7 Ս1UOR("6٦MAMIaI+«&«+2UAaYh)SF.vs oW8\Kr)KbB vr> ~KҴ4 IJBJ +W9- wB 3hLmXl z1L63o d2DA}^ZZ ̽vwe'xƒJ=eJ}4C~:o `I&˻dy'e;$Q +tyؾm\9Yr/ vBsjk mt5E'HlJM@nZQ)9,c(#*%Xsݮ4ny#匮q 12Ɏ|;tKA(;IH&UDhE(QcnK) +f ++%x캓NE*dQxPrqs $Qx9sUkq BkHѶQy.ai "F L !C#Qxx8}̕/U9,SO^({ȉe5U ̖bwUpؐWC ?PL6dϗ0Im1 .gē$"RM &6zBԇx H$ +^( +. )$pzz52 A5Ocx =;COqZDh4bzخbK -rn"uew,cٟϠ'qQFg 9 U]8([:!<;!T*~"(P\Az?ld dS eL^e"@Pd)~i]D)_>l =KbƋtX&$+;vՀenY`4`N8 .&枝ŞSd'xOM5Ϯ~3ϻb 3'] +ɽBO9os*ydB$Z4{vnKr2tQ>;wθ +h:;p#H2dy}s==7v1ZqtWmthtc `(*R rώ4i~؞p3؇::XDmd s`IqXH6>Cmn + Ǟ+[D+^$2I l/RsRk>yևWeW_jii smNȾ +_\\ 6jaYjno-Jm ?MdlM!?Ja!@[ђ]a "wVn`GL7n4#"kVnq[bF!ax3pW)!EPI mQi%9@Z}t":za3 jRK8؝7gaYHHzU9,c$) B+2Hh]_f>,!YǦnӠH@Xlɱu@̀:hx2jv獂&At::!sXf Hn"!GK0dyR$WacZP7%=#v 0R> J ?UUC6^5VHTnrK]j5PF<b׌M3ŇJi^*2aLI9,Ќ]#VQ_dxveƳHNoU<d6-kD$-/L=I6T^r͠d +P?X%΋11tv$g'TGE<;x"]e"~RۣǡTR(H R;j!nQ00() zwF~lg +$ǦaB*[ha^mBjtЎl(WEa= oCE/u>E▔*.J&JeMNeIQ8?5`-X!뜀АA5`Ǯ4KXmŸŅ&VRG A6}I(a t qJ[t;mqQI,y~sTg:dž|A>Bj3Є6X 㴅&òWab9; Aj6H}c( ǭ#fS{#kWx6Q )E'H8, 'd9,sD>m58М’셖h'+~֌aՅsǔ^uۍؾhۈYL+hAyIP 4+(e+$@Hդ6]ݥ;Fj(mI!IbBtq#pX#(eN6: [=66e dR 1~$ϙPƗpe/ ZlGI7\ h˼jdxeò,2(Hm VQ9(@jq*Yd%O"t.5) Ŧ+uKuĩHqt"erR'P|A +Mb8pa29eۻՃ$V@dk"qF&%B 75t9,o,DAu襎STA)̶ J)?J}S,j6B{R=Xف^nrXlN(@{Z) DS3ûX Y]s{  - >"B-;zkb! hUc9,C)a٪`,&A67ఌ8#|7+? p0/26z ^Yq +e%SXle?Rq5a8, @tuw}@n+] [|læS.vA[FYt{l::VGw^pXRVo(+МMH0Z~El9??|/R^ >MNz @mBkxڪuze1\mʪd+UU0rX N߸VIԺVj4H'9,3G%Q\ WݡTrF$duݫ7Lr2>aꠗ."t*,eU!:Z7/-^enU$l6ޤVDzP=TVTWf+QD 3#3evWCpvC½Yt,Ekx;hk㵵eE?E鰦ŽTJZU2r +q(Ux$dIq+qEislflPƱ@ H6c0Z8,KSQS7 {EAa,קkީ/`R %NdܤEpT""d]92(zFvp].p@e9xg,?PhG7 V +p#aǠYu9U)aMw A,r@ + /8(ZzƄ|ȖtQ$(~tt#iܜ㋒ArՑy=ꚡ Pq9[nZy,[`YBHdžYX96`ƔEQ ߷SHᰌ|57S +Gw,zyd߂04&6 +bP,5'1rJ<H[NQȥE6P9!4Ջa ]ń`#eJ͹H2y1sH 82PD/@.{Vc|Xq/fS$9L)ERz mcrPUTబX4>3!>˪Cm{3vaݶ/8xNS)hO]}\^9Iò c +}uUT2Ј  +f=.(JBP.."..0  qrTNIwl)L(4Ӭ-"SO.tcS_l<ڃ +br|pOhCs8ŕR-|URNG@6 _2YAtՔk OY&LW ۠'QRVK u߫5\m`C~(Ot/"7VYv2Ǧ.Tה!qBz!Jf#A'N`H$1H0*̜T1\.^uKR"ACE'贞ͺpd +)RVR9b'P4ہC@_. %@}hi6$K72v-=&SV TNp)D#-ψ =$#u*RQ7EAK"KHg1 $ >րo MM܀>(VݓjGl*.lJT:Xj߷![MvF=Mj!F`6<*Zg)1a`x9wKK&Lcۻ'@0PH]:)tt.O9J3(.G}J൹UbV˲dJVtE-_I_޲.eZ-) +dǍ>Ij!8+Fj :[c\+mPf^#SA1 +ZN[]cChfMhR7wݦ2RkE;I=͕ɸxOivz7>h +$~iL6ŹS%*[AFRf7#kK?Qyڈr,SC '~w=c Os!j#7UMO~P֪,kGmbxʻD-؎JjcnZ 9@&Ǒ,DfmC+ylcZ] F|P8n\]6F};wR77nf@,UŻ#RZse*l +EvrT,/htUtMH;xwuTC_ K1 P j<:Z|p ɪ FRjM:nih0pIs +HN L.yѨo7;/u`ĹL]3"Mxm!n(q=ğC8GRkn9Ŀ}܎턑d2ػv6dRt%7'Wp~W0xzqR wip;g{!31S=| Q~w-7hmCNq/mĴj5g*9MkgO-)qy<gJhm2K$SJ; j[SS[{[ylWv*h}qda4%tٔsM $̍ D؛ + wTGuf_ \?ybԿ% =9m@dAdT߭nl<2wu܅H(_59DkXTi@Yo; 鑴WGU3^ת P6Up[=D\-V izX_jJf-zB3t|GՅJ(8| 9(5Ê_mubu+WNtg?|!5!('xx;Y~s9^a"MyyptXLIxP,tpkypAsN|3 -XJ˙k$rpx n zBOX( +WЊ /+B 6 +|. + xOII e:Jn3D9oyGp))oM~V(^G75 <\;LɥT&BSsDO2$migVӾrG1-8l% Oኋ1P]]Fv}OQp%&2+K.6 +JFlP dL( pzb  b?oxS`vrɠA8}>n-قD iMg/u2d4s\&AQɚ*>I)./zfrF Q;rgFMwZ^ѪPwaKw2;t))4 ~B+Q9!O+mθJO- rp *P@Y7Y)ֻd+Z]0Yo X:3~x-L(Az$[F鵥_&)w^K0@eHQp;<'ŰPIL]bk\v/U(ȏM?2i吩v +"HY֙^_f6F]*g|&ԅ~.\& 9 SQ: F-ҲxjWzњ_8QA2&&Mg)(A$15mkCT,ܓZcI +f"AO0rO}+؛" +<,X^t!IYM/ 5kܛ H2mHr嵊;f"rp(b F듏:<ڥPv"P +2Ʃrjd3 ,J~M3t-!QX<au9URշf̼d#dJ٦fNg͉.Vٖ98 {óbzHK]5嫲Zy;Wg|f*m;`?G:&;U\5Cyn:T0SBҐUM<2k0/1A=iDRNR +ҵdZLDR42QQKD!k0lstWmg< &S`=CX{LNF\m\ ц@kDB={|4eYVo z J(+% k_^Ŋ>`XQJk1$ڤk g~ R^0a@q˛3X\#x>}v`\-؏`%rL&V&KW=G(j$:rѬQ9]A4# _|۽GEgAP @@wݠh[~iGn%Ӄ+}c uTR%كlgH֫R+<]H, jMsH Gjyd5N蹐8@fnV,Ԋx/ 3:BzE@7w/7b\i>is0'D(ؤۊ.bѳA"Y%['hG3pyX[zɯ8G8c4i.P%Wzrf 2֎A߅cBP[a7G{Ai5_,\[=BtLyJڋ _I*84ZY.EQ[({!Pӧƞ} 'ckqjpWkF P)jypb|Dٙ|6m*t1W(WNM_C>M::LGڸ"qaIo"Qi2mz;'T-/)""qa{X egoF:&o>dq MX4@ni^G{4kcY'^^swPd*E @{!d{Ӂ/z `^z1F׭ +>$k +z+}'uײmߋ<6Lk*ZXՉR|}i@ZKPtWSէ :˨C>KXPfSeu;93&$IJ׳X2aViHV@͐a".Kz@ *f=;楎m#cN8@RRr"R)^jZYqV.N%0qTcVBXjTmva<WX~䞕M;4 '~XɋnVM1tlOfFLhGPe٭}y+Jm_+#"ı~ט)й={A/yO*thaDKJqhKPP(D 汏-W򛶰ʄOqw'MxBH]*{9m)C dUٰח86l{wrF?c`8J(?-,Ԅh4/ce'_)(REBr_`L;"ʴյ"U3=P3)bneWP=iu1)ӢqcIϕjPx9g P~b )BpS(ŸVe`q74Okb9``#Z(uc[#yy̧XLL8U)Im68YFfVf"HT!Qڻ|Hm^@;-HT}[3':a[&zQ-dJxu +%Y6hH~O8[M轆y_ +FN]fx^y#!-H2jL:n0}pY +&}I-6$_[SFK&}+.U/SYF'#_/dh>Q~^nV@F=.*2:Y^4VwU^te +c`M/znǭ7=2ZߋN['-41 ef桲޽G(#x/:]2Z҆/& Nbxьd4)> +gX%Vs5U)ȅ!I*'>OY6mo3ڮ _4 :W;e48430etʘ?kv:.}o֠-6ApU#GRvF!BNq5p{=Z7|  hKi[ +(/dE<2W *a藹ze0EbQanisף3LaR];?NdMN-z8JҢm><`F L+-_nFnt)ŏ8@tcmMjh E@j  + Oy7֛ A9WjicčE | [7mR<я7=\=Ni)g4QEnOV"6tu׸<%i=;Փ? 5~@iݗ Dpшh&7 +ve[pbšW-& +$L ~!Od7Gs<>=9i4дnGjFߪ푌bP:J}|NF+L 7nP3JD$OUQ-#ϸUy%ڜ\{wak*! X8%Gg- + aωFɫG0Ra+0BBL6_d2mcKZ8R;Wo^>4S3M#?+詐!=|AXmJ' +; q¾sڮ+k6%O>6#4'Q#mt@R@r6Q{0˦lk 3R$OCMOjNpEK 61UH-73(YO#J.Vi3

)<\P)6]D(_Abv.I?*1 !F B!L^&צY HFՆ88EzTFz)RlMfΤyȩ! K~X|ب>MR?:2*S 'ȩ'3{v pŅ7w!'8qt6t6 ѷQߕ3#NS{/Ž9j>$K@Wb 5,⑛LVp`26_"gju8KQTcԬg@sյ(x$[KF>Bܕzv T ƅ~`50(g?X FGÔp?Uf|&gs")ugpJY3v$}J9c V` `0)323'PJbm`6+A@~"kbl4~^Dž~Xᝀ&M\T¤ )\XߊvWe Jf;ְePybs9/j%7mi- yhx. +`ۅ3^քй)+(>sLWzR˹ς}Ev50nB !Yf&$8-&[>KpuÀ<|]CS}F=^ +>ُ~z3m@":40>j<Jz2:5\WJ<¿V( X+Fs[o/JpFmQoa{&pa(s뢶kʞ68vXk6W3'젏He;a"@A삛Bt{4MjB )2)ĹС!;@ddD"RpEs: 7lrKk  ݺdB:ڮZ߉լ-~3Џ013-`ꬍs!FN/0ρm>XX&$_ԩshEr4@8^+t)T>;- |U{qw$p!w2`{|}SsS]Ѕ hNrȔjֶ!j'%bA!}I"ECCk!]]NsCBT9vmpW?ڌI4ꦉ $@"Rd%EI|vl +N8 "Pc) lCjص$8T!5oA]ExC3[e3MKQ1v{1+ey;wmxhJL(0H‘j0Hj #})@0< Tԏk#50FT#P(jn$bah |i/+')C(?VQ.ۮ5~Em}@`cWkJ⢉th/8[AcC8'CyĀ#pl!m%a +N47TwcHst~N}AB6K dʇ SX oœf)c!GWċ-ll]dz9A7\7s!"X7-AѨ#2c5S*YxL[ـ6`8(?wAbM^C?` ١lDZ˯G ֋.PF2 ӫxfuzDM}F[[z,[$0*oLkow1*l}+X\#2Tm 3H~U}.$^`kmcVoSЬrQq-RR~BfF_q$$4~"LW#5ۍsÇ, .Š|B~}` +wVɥ(0K!qcya"BD=$nMH4:m:t{x6ů7ډcgbDJψt.CFe0?Ng+dn1V"8H2pۢ* Kpח"YCH|i!PgէȤܑ -BW\&Ю%nPm֒L ,ʳR?S:8OMEDLwMNq?;haC{r ͕ZNnh|-j o@_3\: O]1$FG0haw؎lKh:9FUKlՐ žݔJr~v >ût _A<pEiF٨Bel +Ƌ)rr˸QHJjv4(z/jHwp +A+DÙ e@Z' + 猢Qc68PS;<̀B[tD}:l v4ĪvAQxjH[ (6Q#i]61v/8L($_1dҡ-^Y_}$o|hi= ܎!7@wQxTAP! + F5.HpvL=^V M&`]86\Eq IBw|?yHg8F \5&Gt$ ^f芜ͱ\uP,ثhuDcW8&>+j|g:Q%ڇ5<ɕiK~`f( /,ldI7cwg^INgvR&J_gjbW`2,zM5JB\ߑj"Ne^_;@3ue_x}kn7!52b6b탙.Ӿ'ǷP(~/d vKS}`2l +Z->mt?:_B RTR kdchaElU `lrd{E +į0C,| ?M2c]) +L8҅( +wX 7d+( oDkD3r /knHua :SQ`WO5Gѷ];cO~&LLiֈsciP˸:x>܄.Ĥwސnsj 'qr3v4B^ɜ_1(*6Lpi`,™qM3e|<_0"{f+b?lԼl/qW&Q RN&`Iώ)Jh[>z9(2^yO#֕R㆏"Qg;m[\z։(ؼ`Yň;7-Kf.xg0c}V CB<3:U Ƥ7d=wԃ +c`EŪƵJ#ZC3iᩎ<ׂu5*wTF a5%@,^oN{8F Ŋu$ًͭ;:QԅY:96Q6ioA],c6t1Fܗ!g +Ά>gs݄&;* +5ԑ'?r>4й + o;:Hس~A?z;Lz3LuK9LHy3={L ۥkӾVA*49ʖ \6HnӣSNJM=ceoG/V}!)C5&@7W1o$Tia)>jmA^S +&/ SWFl#:˵N ,/v&3~d?|"׏?T{^ ?w8~x=2#{~z= -)0+Wk\=&'R +df; i#者d ~c^<|i>saFrz|80wB*ޘC#l]h/`_ң &ec +0@kZFW70VW ؍>ܔLQ &-Zu<0$PФ$IDH+\$^NO/KޑϕʭSxWZ՛ zvE2q8 k'/Q䅟<"^}߂9嚩*GSD5e.c.Eoa.JtK?fpq:WqMykB52P#O$nxzpkю~aϪ }wh yzգ]}o\Oջ c A~]~#mE-$8J\@Jxa'ud7;fSĺfP ܘ4bX&`CN³iɂ#8  ,2bi5L:%ҁ<r)ITjA@b!H +"0@ J`.T(Ĵ X ^RJJ\LJx y8є0L6p <,! (0$IIEIɉȤ@Hd +K`$b&Yxt< + a'z@x\00Ra $%.*``806 +胄BC/ ;D|:*88L8nedL +aS0 'BrTt* H2>,HHJ%y1>ؠ X#%3qrઐ"E#@hG }&x&da8x*@$ Dp&,hebi +Ho@R Dtc=Tؘ|RUzu>g;b?غluNwqX.R?hm]e+j+JChثp1W#*K{m7y)vUo؏.ٗg4rqmZܿme_ګ\y3rLvML3_꞉hw9ݽ/ulU}JތƁ=r[͸~muUz*u5<]xϘױWf4>ޢ2[u~z*^{>~uo}mRun\3Y;SWޭ.U|}O3]5}7֚ںneşjMO.s۝;R]D\ߩ. momK}U^*o.͌Ɓr|f_6׵ݚuyv~TS33Cs^k<5ڎW2*LCuJ5qُYsl4G?[93f4TzSjP]{_.T}}e6U}N_PPmե%*Ge*{w_eTRh.d4,)hR210)6Q LGBڜhH!ʔ2THy a9H7a`=' abb1p(,^gB"KRV HFcdd>8p"`]JH +=P*!Jd70t@Z,`J2 )WZH(- ZD-Qhѕ&s +D4B-X(@ʄML򱑀%o l>F!*!%*x8l&HBDHh2yI}|vwk=Wo4O65_\uջs]mf4u/hF"TxSݹ26m7/TlLuFTfv1]{ȷzɫȻ{舮k{kSo|/ٕןG7͕ӴxRݽ~To{gT!^4[OU\|_s/_*FSK^t9ݳy/s>\~ϟ-Y{ݥ3ULljλS۫&c}*en~;ĥx}3::u::GOSC{ōZoCO[謧NJ56{Yy]W]ڨrS#!7w0m)U[ުn7WZ{m.l3k\_תVvnueroöum~vS1w{ka[s.Tijiko7;j3^JSڻ7Sם*OcyuYZOo>=UU[]gvkOm[o휌ٶT;ZU|jKmu^]=Wz*η=Uhkk=#?u:WhS;Sǥʗ7Qqqy;^^ޱW־Z㽭bTj|U-21-LUm舋+_U)ZTyl 嬬̿U.^3.thF[me +wY2O^S7yGFCAec[C}n}k8 dB )>R<d|T)bCպwx|vj͊vM˃ы\  KLby0za)J2 F0 B2" QzƟykʜ~T{*s6;cn{C6nSvK6F׵ؗɋWUn?+UշfnW*?o\|.yq/w|t厪MoW44ULVEtU*:}a?_:.fUx}ȬkYUv;/Lugֹ 5Yl[Wc*7|in->5Y}2uʿMϱV1l[ü\ww.ϗa=rNuoh s*WCӅت93M=q)iJSOG[m~ט߸rUuwz|~dTŜ.uWіSv%jZo?o]ُS^/7#.3eϖճש*cօ*o]o6~WռZ6ur^7vM[:ޔWz^~Uvߞ͖nMw֡:_;Wȋ͊ƞɿڳ;׺U}dUߪ|S o^l\oݎiܸnk?W Y993۲22!7{oU؆lƾU]_qfKCuyU*[}}ǘ{LA}igqZ/oUoޟ8ʨ3ֱT0R!!HP <IzASG"9)c!B&Iʜr#\O92P[G\  N+MT~+nac_z!Ԝ@{&^DܫJ<7WϞ*{ gb^<>ẍ͐˴_Z4H"j"5g>k7EC}tR`܈8܋5 AB4RX8 K\=l\cPA=Q` ,ws !׿buOlҁu-O-WmtV[x7XjcHnuJMT";&,M>wӪ:.3yaAD( iɴ+>GY}p'uczF4PQ~Y5"z>t?0gBTa=5-*;(Sڧ܃PXC+*y#Qn^5Op Fu +8anY +b/۲@-d +1fZi)=Qkڊ&` 5BVj;.$){ fdG!i@_$8H@ +`RDTF\rҶ]Ys gHѧ=' hy~=Ԭ/]!LѢ!o0g +,Zg;'sC(YqpE|᜶|Qʬ,Bz웫Uf!++V*h-\=SİrwaT'g%1QA8el1n%_ +JLF4(1٫4M[iX -V)t0TǎY:J]-\I-w/.^#@ɢ׏nQ5z}ݧ b9ZIUX\`)=9jx҈vW˿:ֳo/thCPdn/'% 9@JBxksӳ^fR9֛J9$}D#N!TS*s(;mb51Ym@O[yunT yH:b24$̽οzK>H`7h--OБxi]1l50-V|酃P;9CiXuD[W+8Ц  fO!E=D26נR81wʲ _3;8BH Ӥf91a6JU xBi%y[Hl0N?,i|#=GKξ[9  , < +endstream endobj 23 0 obj [/Indexed/DeviceRGB 255 24 0 R] endobj 24 0 obj <>stream +8;X]O>EqN@%''O_@%e@?J;%+8(9e>X=MR6S?i^YgA3=].HDXF.R$lIL@"pJ+EP(%0 +b]6ajmNZn*!='OQZeQ^Y*,=]?C.B+\Ulg9dhD*"iC[;*=3`oP1[!S^)?1)IZ4dup` +E1r!/,*0[*9.aFIR2&b-C#soRZ7Dl%MLY\.?d>Mn +6%Q2oYfNRF$$+ON<+]RUJmC0InDZ4OTs0S!saG>GGKUlQ*Q?45:CI&4J'_2j$XKrcYp0n+Xl_nU*O( +l[$6Nn+Z_Nq0]s7hs]`XX$6Ra!<<'!!!*'!!rrmPX()~> +endstream endobj 18 0 obj <> endobj 25 0 obj [/View/Design] endobj 26 0 obj <>>> endobj 21 0 obj <> endobj 19 0 obj [18 0 R] endobj 27 0 obj <> endobj xref +0 28 +0000000004 65535 f +0000000016 00000 n +0000000147 00000 n +0000018590 00000 n +0000000000 00000 f +0000018641 00000 n +0000000000 00000 f +0000000000 00000 f +0000021140 00000 n +0000021212 00000 n +0000021352 00000 n +0000023023 00000 n +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000057314 00000 n +0000057614 00000 n +0000019010 00000 n +0000057501 00000 n +0000020531 00000 n +0000056739 00000 n +0000056787 00000 n +0000057385 00000 n +0000057416 00000 n +0000057639 00000 n +trailer +<]>> +startxref +57824 +%%EOF diff --git a/public/images/frog-shaken-ai.ai b/public/images/frog-shaken-ai.ai new file mode 100644 index 0000000..8c1094f --- /dev/null +++ b/public/images/frog-shaken-ai.ai @@ -0,0 +1,376 @@ +%PDF-1.6 % +1 0 obj <>/OCGs[18 0 R]>>/Pages 3 0 R/Type/Catalog>> endobj 2 0 obj <>stream + + + + + Adobe Illustrator 29.1 (Windows) + 2025-01-14T23:27:16+02:00 + 2025-01-14T23:27:16+01:00 + 2025-01-14T23:27:16+01:00 + + + + 256 + 256 + JPEG + /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FUi17 zfp+lloV/wBIvB/ulDsv+u3b5dcxc2qjDbmWqeURYVqHnLXrwkCf6vGeiQfB/wAN9r8c109XOXWn GlmkUnlnnmPKWRpG8XJY/jmOZE82slakjo3JGKsOhU0P4Yg0qc6d5w1yyYD1zcRDrHN8e3s32h9+ ZGPVTj1tsjlkGcaF5s07VaRf7z3f++HPX/Ub9r9ebLDqoz25FyYZRJO8yW12KuxV2KuxV2KuxV2K pNrXmvS9KJjdjPdD/dEdCR/rHov68x82pjDbmWueURYZqHnnXLpiIXW0i7LGKtT3Zqn7qZrp62cu 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 + + + + 1 + False + False + + 397.220232 + 397.632808 + Points + + + + Cyan + Magenta + Yellow + Black + + + + + + Default Swatch Group + 0 + + + + AIRobin + Document + application/pdf + + + frog-shaken-ai + + + proof:pdf + xmp.did:ddee3d99-9c85-6a40-b906-53478f73bf52 + uuid:496b2d4d-9846-452c-aceb-c8c6aa58d5eb + uuid:dfc72568-9f5c-4c46-ab43-303993d06e16 + + xmp.iid:41c4487d-f674-834c-8274-cd276af5bd65 + xmp.did:41c4487d-f674-834c-8274-cd276af5bd65 + uuid:dfc72568-9f5c-4c46-ab43-303993d06e16 + default + + + + + saved + xmp.iid:efdb66fa-9358-f749-98c2-77937f2febac + 2025-01-14T23:15:49+01:00 + Adobe Illustrator 29.1 (Windows) + / + + + saved + xmp.iid:ddee3d99-9c85-6a40-b906-53478f73bf52 + 2025-01-14T23:27:13+01:00 + Adobe Illustrator 29.1 (Windows) + / + + + + Adobe PDF library 17.00 + + + + + + + + + + + + + + + + + + + + + + + + + +endstream endobj 3 0 obj <> endobj 5 0 obj <>/Properties<>>>/Thumb 22 0 R/TrimBox[0.0 0.0 397.22 397.633]/Type/Page/PieceInfo<>>> endobj 20 0 obj <>stream +Htˎ)MxZ6!<`{rWnUO\>}O?.V:#^?}裴vo+ߋ?+UXG]xCx\sT<赍Ss9kڢ:5,nuYN6OkF F֋QqjoYyJ}GqG2& F>fa>F +ty}~sz~jk6vx7goPZ`్˄l[mtnt +Y5P6 ֹ;֎`àS_lAw:j'hǂv`f)V:<}{Zz`4Q.]xxf`)H}0D'3L ADjg{hOiN"_'5nO$JmuWE%^f{# KX]zg9/`HW|{ZuZ^ SW_ԿC0 dFh ((rdU(>C<@3&]:-C`E\Nv)!pP?OQwf~8>H"dLiZ ]u\p}ECX8Mi9u{Y֔h=4|:eQG찓>93r, 臂QVԝy2&B+t*u3H 52%E>_I  }}ډ)#洙$2%j=̻<=)5'8FC'΂^ㅀ_^hӏq&f3`BN_Lq2.1G +dP_H&О0{=bπ]ψ] a Ѻu}zLd35-raRRF޽D4l9?v1n/^ "| +endstream endobj 22 0 obj <>stream +8;WR3c..Ii%*XQ?^6UlY$rjMjigr8XUR_o$8H)X5]Y&AWKGg/M.J8Jt>@M$9-%bTF +JDN[urtp'BrWA?[j>"**p\5]Hq#cm25_u]HJ>K%3bkHXl^+j)9R)/S)E$0[B"+f0g>0f<"9HjNd6X\k'*Or>A@X?X4pW.(jVBFd,b< +'R-oVR.#OT"4tPm(Y$%RXto`; +endstream endobj 8 0 obj <> endobj 9 0 obj <> endobj 10 0 obj <>stream +%!PS-Adobe-3.0 +%%Creator: Adobe Illustrator(R) 24.0 +%%AI8_CreatorVersion: 29.1.0 +%%For: (sergej) () +%%Title: (frog-shaken.svg) +%%CreationDate: 1/14/2025 11:27 PM +%%Canvassize: 16383 +%%BoundingBox: 208 185 606 584 +%%HiResBoundingBox: 208.662747350571 185.937255819868 605.784892609992 583.688335743242 +%%DocumentProcessColors: Cyan Magenta Yellow Black +%AI5_FileFormat 14.0 +%AI12_BuildNumber: 142 +%AI3_ColorUsage: Color +%AI7_ImageSettings: 0 +%%RGBProcessColor: 0 0 0 ([Registration]) +%AI3_Cropmarks: 208.790525150414 186.05552680381 606.010756989248 583.688335029498 +%AI3_TemplateBox: 297.5 420.5 297.5 420.5 +%AI3_TileBox: 101.400641069831 -11.1280690833464 713.400641069831 780.871930916654 +%AI3_DocumentPreview: None +%AI5_ArtSize: 14400 14400 +%AI5_RulerUnits: 2 +%AI24_LargeCanvasScale: 1 +%AI9_ColorModel: 1 +%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0 +%AI5_TargetResolution: 800 +%AI5_NumLayers: 1 +%AI17_Begin_Content_if_version_gt:24 4 +%AI10_OpenToVie: 34.5983885170808 684.167109897841 2.31944444444444 0 8360.38281965481 8272.95863860515 2017 1341 18 0 0 68 181 0 0 0 1 1 0 1 1 0 1 +%AI17_Alternate_Content +%AI9_OpenToView: 34.5983885170808 684.167109897841 2.31944444444444 2017 1341 18 0 0 68 181 0 0 0 1 1 0 1 1 0 1 +%AI17_End_Versioned_Content +%AI5_OpenViewLayers: 7 +%AI17_Begin_Content_if_version_gt:24 4 +%AI17_Alternate_Content +%AI17_End_Versioned_Content +%%PageOrigin:0 0 +%AI7_GridSettings: 72 8 72 8 1 0 0.800000011920929 0.800000011920929 0.800000011920929 0.899999976158142 0.899999976158142 0.899999976158142 +%AI9_Flatten: 1 +%AI12_CMSettings: 00.MS +%%EndComments + +endstream endobj 11 0 obj <>stream +%AI24_ZStandard_Data(/X$':&Dh1"2@1u݃KXCDA@S  +A55`i-73i^O?<7lϜj|P?J/9(I|Rd0I?ėąI3AԼL}' U_ʹ3|ZL \~9|P͂z0"Yۺgچ㷎SBdxe 9n~OYù@_\uH|߳iO0` +$AЛ&ɻHn )z1w4A / ~?5wNplw ߩ6-Pu/;=qK@5D~ӭ׆D>=Y_& Ǧ ר^"o] QY[Ji$5`2!{wp `+!ڽe˧+}!GD,) cR 4XeL?~5fDKӰ,a*uc' -umAe>]f'Űs9f)p͐eb'}hvS 14CX8noHכ+ ,|Xfxݹk%kevʱNIuRq5.j5u4~,Gq-,I>I{\ER Co`hǵ${G{\ ǐ Yq ,ES$$9zNIbaY2\ ,XVGOқWYzvЃ "8$X&)e*,Ȃ- P ǐ 0 p ٰPQ$R4ETLEU\EVlE>яX(Hh蘎긎؎'A2$ER$G$K$Q2%Ur%Y%yYX%Yhjlٖ7A34Es4I4M5SS5W5[((h,ڢ<ŲLTLǔLL4MtMٴMUjꨒj***_Wp WqWr-W,3WtMWu]WvmWvֳ !+#K%k(*,۲o6lvlɶlmVmזmvMLTL-(Z#jifhzlfed)%KbkdWET,Q TA,KAS[,CY$h$˱K˰IJe(b;*lbGA3Q2Vd %Mb9#)ٱwգeAY,{CvO,:J~tkV :ZQ2Zݯ&t5 16Jqv5 ^oUsh<meT[ݯF.* XM}cCg8%[~slS]h o2hC%çh q@CzO9%[\2zRIe*e3HQ\kdX[֬d㰬8Ϩ$/~dbI&fJ͓(vIVuW I(+Q{/VezvkbXc)'}2G=>ƵYcrJ^re 腠0hȟ. rHH)tg$êni_U߸?jΘ]=u~1{ b߰pFIg Pnrd;c%7G^:X#yucX5#1 MЛ9$EQXv-!Enͪ=׌ya ,I]U2|߿UoB"5WZЮAojP1JI[Юo-INojqE{_f4jYk-4e>`H XM7˰$=Z9f/Eѓe:)r$Cҏg\8, KQeJ59U0J~)aXc ?ضh/_ ~Wy'ֻN-4ȏoqXXh vDa RiA9˸zYַcA~ri4GGq(` +t%OcG*wK7&MM4FĖtL #8,[R-I8%*׆[48eQ(iZԃXN VoU2$ ) SтM 7J"I 06LF @ A1PA  A| K~2"p;TL1!kp!TFT : ܎= Ia}Xt8&'qX$EJnd8Hoaٸ9HU|JBYY OZֈ S=^^eJbD+Pj(dv@T&b)rAZ]0-?&Ƀ&4@q5؏Nq\sDȝ-JNa?/I/TᏁ>1x|6+ a& KE'xBm̀ +A+DP +Vy ͐n[rXfܳ{{}|C@qe\M(e iЯn +, _,6pCԵIOm@=zI)u 2ڢ0^+@ ;-6:'@㋁o$#m2#!P;USpBssyP ENWrA6[:rlv;u[}]ۘĀ!tYu&C©}䰌.PM~/3;beH`g LǾxveI<ɥT @;# q7+z걂nrX6`0VPUqPk #j֎PH$ +Ϛ%gL"96]Yl;6ɱqީ* + +& ׄJ[I 5fۀ,c{;0Mդ+ ؉NX/wIPKm ug/UrXFr ˻ +]hvnZOrj֙kЁ`ypl/4y-HHR?Z%D?@-&kA<Հ@E?2#B$Ƕ2yu*1rlc`Q|MRjH:>}R9zo,(yVY3lBEzu9sdxd3w溽_\nXh>y2̒_ f/-~UhN/[;1M?1ͷ_^z&ïJ%7ɬ 꼴[/ ҪoT2`^Яܑ +CB ")v,:GcU؞eXfY3Q+ØCɯv4/VaO*(4/u&;홦{5Mt>G-M{mP+S>ɫc~÷i^8QKW4W乮ףS=i8>yⴀZ*4ʫi4//{6Ϳg=Z@V>ɯSճWmIC}NuմIz5M'Cէwe{6HY~M/ۻCըhiu2Nscw)qzo=:^@lmϮQGq>wJͨcSxlzZ*_Lw _8F5Q͂jcWmN|"_*U߮_+Yv'4/|_ 53}Zdo[U7Xc85ך ^r[ۦWǶMf_5[ m~ ^azI%9+ޝX%au`,EmxU0!GgI~;İ$M4Ipz'KT9+N}LSK__nHb؉㯂)zZ ^7{# `Ljb/Ey>N >J96kVYP -rwZPւ5׷-ϰךӭp|}o_ w'_Q4-(+gĮ:2&o<0~.8ZeҼVЋk6$moʹ]Q?@Y}R/FӴ-{ k{ݯsBΫg+œ/ "rztDJAi/6kG&tW )"f1薙P;^-Ȏ&]`To?nIMqp_gn9H'(I=-Pu݊t + #<(a >q{xWa( +7 +jG!MWb{* Bd.Ꜻs<SL7k.ΠB%[|R|R.D\Z!eA'bS0 +1)^Qu!)UwT*/}]ʺd(RKwuv.oMe"#ߊ" FWFМݺܮ`wò48"&H`Lo0 3& +05?HEkFy0ޮHBFVUUE.-rE +@&L~{&u ]&|]J\ ò~{,`9,*;bԊG +ݡ#&qvSQFM"t]N(&mAvXv"!Y!evBsrXaeXA)Aci FJ3h$@W7H~ +WerF.%Q, ]kQDK+l_M`ssBfʽ0h yU2DՐ"I> )6RhTF䰌"`uиɎ3%Ĉ{t$;"-Af$ h" T9pG-=v *"U(ᢲNJP":.2PZ<_ +N$Ѷuh/OJJb"6'h\zj +S- )( +zP(k8X\5zza) 4.&!>EAe3X`/|rTuHliܳ\센R @qòz@>mN 06NA~& m 2yQFAu.|]$LbO8/aO/c lWeҸ]L;.T {v{N=<5+*}& "@t+& +>Ω] +]h ;ٹ-Eq +.9*Í Qx]T})&zŤk9,s^!۷IͫWӎ5VxQtK3=;֞ӄ:b{bx@P4b"8;`evU`\̃ω$ak>"BsCz?oֿ Sλ)4{owd$ +x,&$?/NhniH%JZ[ 8_}q_}=%hǞg;!*P|EpsA 0Ůxe= ~(#F4M 86*%eDUni#DKv[&tKY%1!Ygm9 M\p%B>&q?7D 4m_h !X54xkI/bww"]zu1Xd>.:M"9ayP$Q96zdɨڝ7 +bo[R J<|2~aH"SGh-`>JJ \i!\'CݔP ,BJ +$P:/(mG'8WW NS簌{upXS H TvJuzƃsXa +(;"kȍZ?ʿ!EgrXf0CeAJ.lN=XǖXA/z.sy*P\hb/u|iW隄 +~@-ؼAicĢ'7Gţ +֝ %^q ;b[!e +I X*`da}!pP MUkTz3ߡ|l(AC 8c Mxk%P=N[h9,{}- + )n㰌Gȼ

bV]1m 7|k Rt2@2H62GF QXxQ3[ A0!,^h~RJ!jx06X](gG[(*=Ђ#"Ԃ>_ +." V562 +ynRk (ds32ˇP~XR +9"hJ)GpXV\2Ŗ^6, *#WfòAWpZ<1l;url|qmɱamA(9l%iQtwjE +e.Ek}ؔM,]zOj?6H㰌a'*E41L}-ZPx_é꠬[AzHVRU#e RGāmn5 +dIJKo%FJt2sTŵMh +Ry9/ J.gD+HV׽zD('k[}^;z,b!AIrXfZUrub1)8p UVEfsMjE +CAjEueB +NJ=02SFlG=g8*ܛEgRY/αvC&==^[nYVC]k*HAU!# RGBO;QBW6kV e +D acQ96ò;u;uݰWD) _Fy}Z᝺b +-%P"A&MZdH +I%!BօS(Үg nhZFaaPgyvtmO82-q ܛ^nPLlaHnۄq1PĒ_.GRPgLl)AI >N"A,߈ºHJIǺH9A ?(I$WG݃ +%zq!cf˿)$t(}lcVnL9Y\B}88 +W#L}#:@ qtBA8p01Gv-LC`mӨp-]/R]s/TӁ(Ё\*Q:ou<GspX BPL 6QԜ$8,?bk1,!5@ ge0f:ɇIKBmb/w{zB \8@`W V .jсbX$uUP9Ј0 +f=.&JDP.."..0  qrTNIwT\#1Tbq̈́y-q?.~15)NM R0xt>8a+IoſiBeE~SOe;@7$Gl^iٿL:ygT:[5ȿ+P `"/XTgbX 2v1A@a[}V+*g~iF-Z,܅i"|G +|㿉))Xjb[d=ʱȟӪ~̖2(-dCnA'%TeB $ KU{Ϣ ??[b8scTw2UT[sҲL7<\S2i^"5b/`U0Ûa7?Ln3%ݭDPpz5l*,BP6!7+.+ŒSU%"x!d!,^cs+GY.’d6/I5+7Γ6g+[kHZ%I@*'@Zl[mݚ4HAgnXkmˬ+*(aB;i [Z޾rl{ʹ ZT% of_t49r9܌+' "mS'a%Rq3O2^X55ij\K>.;+?~ /qB&G?e?;]u(r.HcɡsUNuqvRJK֘P3bxTJŶHX4ꆟ^4Pi-TRrz7s=_!ފ,"q]n췧 ^4-:PmmGf -}C. .s=*3xn%I>EP؈|trk<@wF㣵@;!{yMv騮G^3K1@P2>1Z>|tਊ >Äu$0qsw-].rSL6K A:Ln/h4XuM])ax;%i(y~7%0fq`ˤ2hdG$޻m[t^3/qqΝ``U /"ip;g#ã51y|p,{5Vf3S㹾]aC3/lUR+ Du)A,"`PF#+QC'*MHi~2$6ȦLϪ)N:@TXbɖ% %).&}\^ vYvF D *!7Lփ\m+MfBˎ =9o@HgATUon>z tضuF$T,WQ9F%tDQj`'; ).iG1ɒ@ !Z3SHU8[]o~3@X=Gc Juc0:pKDxD;E{RJM ڌ2aŭ _t:+eQMTr aX_'5 j0qxؿF7$KNWfV,AQ 2Si8}&y>_)=fc4N߆LcN,mi <ضma.s@vcw 29}.'hd +;fCRMwQ#8ـw_%#G "kuO׳DX 9{q;:Yǝh nJy?;ڕȓ}%͓]g\\%9XHkk%挿<A]. Kn,M?& =z-pҀ{Ƒ  M;NR',2 ڝOb.+f(N#.kU }!XORCY42MrQR@e,<&K-D#}2Ot&B^w*MR[PqKڲ=U±YҊڎ_eU1[{VbBT;qq`vn$ȉ.{ ʂ[A_=~SZx:Oh +>UFi%8VmߏU< ay|j! }AJ8ͩYxOJK\4FMYi8ශ;ȯ͞}jm`x VG cFce>+۴y+H%q[*#_ʩuw{bl6- T7*UK"mV@7?;"J \5Fڜ##S%ZR-Ho;O[*7?Q21 G'W:Al֞? +mM@$!/WAĶ@fa >U$3D+cy4FxmdQL<.#lKL(G~=^ \/X+NpV,Ssy fpbE"W%[0" AB-(o`t(<ޏߜ_j/u AͲ>0Xvlz{/%qt麅7z;N;|"J&aL랁P8%Fҭ]B+&mj-zbUpj_Z0Ɖ<5H y4ܪ + @XXv-^DZ<&4̈́EXI^$V `+T,`(ɠea%puc D0M/9z2Y Mx^Eq lB[Ff 5Z=_h@d<.V>N`ÖO< ZEmO9{+,ӿAg#*9"j#r8[G^͖ښVgu4K.4M"1pS7;o H)#fэWYZ89T5 /!TskRd/1[9?P2N|Xc +^ Ff`/fYJh!牶"M'kqRW'`ħĢ;F~lAd|# +G hh}U9jYLd6wm{!݆"~p&޾4Q4NckZz7c +Ap0x0,F}9PEImн>ˬ R( W:fڄ0+~ᒭQ1RX7~E:v0"Oo1R^oEǺ#$J=0Sβ3⊵ +t_|"'@`a))w)-~/ +`PVAXjTe\x{1Ԙ~/lA k|.(te mT]ݽ.x>@~/)hY'"b7M,!ER G֘SMR%Pt'HZi!-:p7p%t# qhPyᥗZKrKMOqF&K-W\xà~es9X +6cNZ+=Լ +GRB-m KMd f'7 +C4jxhHx祀vr'+Y*Cu&|M;7V1!Eq䆊xY96faQnv{$h]sc1gV`{RQ`TuWE׮r[mC](v`M- -&n>2 +Z1ڲT\;f.y2j!SZ>#cM;$d ̶/*3bTto@=Ҁ~ '?![g9.I0$wF<}zxp'%cxAꁦQ: p_MvMkmk>xEl/'y԰ndBO2hM+{$%秩7<퉩:6h/ y8bϝ:Yvߊi !&G #7 '%w15i=LSq@D)j&SڗmKbjb/Xo70c1S~d[W9{4n(vu(F+f?r NF)!bIx/?8޾x Cy0 ҕBK)iV 9Maƅ Jcm \(D: azx.olj4@ "ea FMC\eV\~'(N7'/ic=r5C]HT0tx\5 >0YϾ7^ =nʼnO^m~11Qx#DR '@VJ}}k䘧Fw9*dʁ) )[aaڳ +h^Y&/y.& ϕN1-={lg:ogYBќ'$as y-9wm޶(Nv?4`ꏘ^L7ruЭrFd8Q~^ +{*2ՀZ^:dt/$d4 +g`@b̋vjVF7p22֋^ v!o*k/z4/ etgڽhCNѓx/Z]J{|$)DFOkv_m_G"}z! r'0R +E„ʐzķ#8v87Ɍ)j/ C +"h4}^ CC7mČ~6 02zmp_5(t ԈA} +;D`QT>vc~߉ N4 BO8H Ku̠V$ YV!Bʕ2\ dM8C';MzyT[Jр;U@?^'rz>S2a}uH,-'!H4T1& ""3T*dwa5.H)3 yFeoЧe5{MQޟo/$Dt;E]+ +?Y*i'_k[Mx=K V]'U蛜<M4r,Aɼ 5d x]m."h{o4i&?󨍂kc[A%ZC@ +'ԪIBd+fޠї j|њd7:k96}h4;Z#/F܄߶֍VK)i!ĉ]؅u޼||fcQS'+7ɧZ(%A׀}%(A'KcX#ܨ9`wIqm.a7W|w|+[J3OJmďkDLfQV(Ra '{)n@z`ٳ3NZ%,RDb*36N?՚S;"ʿZ| 7 HIyըSZ'_ۊ[IAm6Jf3>6ڸсiZ q@rS,<\e\i{.42 b}'ňUcMtbRї6ZH[#\^աn6^KYV͒xI;4 M%#u+ǣ4.|(͙W<wh+8ۥA46FyWX tI&jP.7бhY)g:0jC:L-ڊ'Hh.{F'C+aIqXV oڎ|[']Ŵfw*&DƋt4*dZN  MB!RsHYYCE2Z!҇0{!,lb[s-+h8+m㖃D,-p _Sj3!;FmZA"`)l=V,*ߥ6J:MsJs40lr,QAE(C}{U_jSiTl|"V 84U8+tm1ԥAJ́|Rh5Y3֊-?PF\TH" +5M[ N!OGjK #U#ԁ5+!K3`Q柳K𖥧fyGӘςEZ|&,(|XXBXëVrf [Qsjgԃ|^/# H4B^[B{x=~E1DB[HBghHq\ל\)?^Ս2LBe-W +A% V$ƻ +G0k',+eXX˂r$l*=.YPc +v:$5|r41"%s=`+N;BE+"dk/^́-fA=%(96`㽾} ':*v蔳E(^lkӣa Lf#g9 $kٓ{>TBoG%xGpjBhSso-A ~,uj:Ҡܫ(Y\y!jK/A'0)zY B7E'#;҂UAcG2v#9ȑ9- rҖAnd `VP&5/ :e@]w-ȣ Sb>-Gq"Vd8PjaAPF껽(R]'n]yG֘`ut64q@A"T]aQ32wp"]% F*6N81n >jgiL%U^8pKy:+z?}A8q 'qjšn30f~~+X+#%GͦtK- +Me:I5=;;xQ`< I(:jjı+έt@uE;1ǜ}y32S˓`C"L.ZT]I[Uzd^v%+Er,w2ʐ +>Q(cR߹vG[9"|ڛ؄ B{C׶ ) gISl;5>cA5KqN[cL:' gƯNb ! :[/C\#d0I6#i.."r!sx;Rw2VBF6| >|p̷ct{|/6bi6(6g.nƞSd5e]h[n۸w}),?ovU J ddK)У2Cb^TVOcc#J Q̎XZ߁Ls6$ה BM0RzzE]#s49V%H9dPкjIH}xOJtɀEq|1:$>up9`Z8؝S/uR욢6&#a\L3\7>|1 ETj,Ƙ2{C i`w2,_l5~ʻ(GOF4<\n|?M3UX4[M?{YSĂ'\Ksp8V8Dm! %Q's.CLvM$pSPN JBvdr9* s^ڏgq1A 6Td^)!!bͱpTDXЄO}GTO`˓(v7trnK (TlkfG O%KKg\,eoʭ\Iu2yw%Z=m$#`k)8ZBarRh 1oUE#*Ep7/yiɸF BX+HqUM{!XWyQ6fI;, V /{(b h]u*hv?GH8I^NhW5u춝$ ל- U6\clQմԟM;0& TxI8|E$bݻ!0y08-/HO O70}ppe͙5񕷳o(;o#N  sDWN B&\;҃0<*VKaQC] &‰ ?H'XׄDP p0$e.=sTLu!R,d"] YZUut +<|,#M+.nZ?I>i +Y+_ —^bإ(-kx0[u]azѲ)~TrRcz0=#\~/n.TE~+_d^j~Wם̈D1 ~ ~+.2\;NӻJ3.Fu8Jk%L _~" $ JrPZWN'ڑG|];IׁxP f)Q8Ǹoˠ8(iOmYEevѣTV%Ybn;?4yTq#dp^߂3Yv-wqI\7K>EZtvO_4 o`JbKXb qD)je':, +[O<̊JZ}v2T>a PMCq:.EA*@V7 ܺ7'ⱑ +څ;LXƷDQ0"C\fU5qҨ=]K `/$3(!"nif;JFy!6f_X+wÚ'F+;[E48Gڈ=16Ccr*t6~/ڷPhA)([kƋC=Ɛ donwmt3SfT_lf-򿐻yX+^=*X7 2 J`ҙ?;tf+m'.\wW+a5>=WvKMV7~DX˷Mq)g[':aGf#ߴ,-e?3g[2'CC#rw@b\3L$Өf!p̗ ԀwdEu1-IJ̅*+" +)HZ1R cDq, r1Dž!MȩjlX{TmᗕB=*쎕l@݌fL}R:?/&$}, ڽ}^٭M.^iO.{8upzJ͟o%L a[/W8EwAW*oeq@kS_kLQ61Q^Eq|%I\|Qw1y0f6 bj[#P_M^Cd?@{~z26h ‡Yo2T;zď 3+T沨7^#>bܗ<݁|5o/s)K]Aj|}-X`|ΧB_)q _Oq؝OOFSq +gUG L:p2H$n]aNC-ޒ4nV)*/ ޴}wa0XqHW?mvl,\qjK~(8-5#?k[';XVstwG7q Nn/ѫ%?;|Ew5~gfIoE'!/^߈\W ++!8 G/%]$2]V&?QZyZ+t)m +L-$8J@E T L/ +0rKw^n3)b]@}!n`0H PiBcat%uib%fB7%" x`@ +X&0! +³iIVF($p8"6+V ebj`< tEA NxKrB"D0`$ 1# /1FD%0,##/+H#"VaD_@<|hFZD%ep"xV@HN^H'( '%# ' (DJJFLZD%*F>THN*@@, {삂cgyJ4p(<%:B2" +Tp^d Ї z`I]8)4H7D + : *8#fW>&[,i<ÁCFS ,ATl VG ABt2M p!s! )  T2A + ? E"AEA eH/ .&g B:t1&{Qqg%V9 +>,%0#QaS$& JRIp`]P0OXYyhy`Ad@FQ38$ǃ9GH%ǁʹmp 0(CN:Gѱǣs6hazN>BXa)XGeb#3qJ&8aĴ()Ή2>Ѥt ADJ$y8kXPz@ +$crq h|&nHLB$1A5*62 @T + IZBXFGAB [",-T"9; +," (4Qq!*,)#Ar2gǥ#R@|@,DDF(!I~( DL 'N 0t&$ ‚x`Ld1 "2$4YAW>,) LÙz8$tLf-2 ҹձT3م* 26L>>QD:*9yH P* FA +I'<$D-Hp J+_U)ZTylM嬬̿U.^3.thF[me +wY2O^S7FFSAec[C}k_OA@QPc H%"+/6T{g֬عOm'.h@=OwiF|u}qMu^kS#g;Tv<RUU]jɭϘk6>/Tgݯ٬ƨ掾O1".[CSt\3V|˾O9ZnbWuڊP5>56\FՈ_^[mj>lwM^jk{)KeJn3Tm̼S_]{u3oFRɮi]3m:Ǽ^x_~JO34[ɛѨ~s.Uیv\Wծ~!RWe{{enFyο ٪[lgWaڛWhTֵKEJMwsdL]zlW9g?h@wz\[kj˻񷗕E6e6?Mܻ{̵nwKus}4t{S[[#-Uyk73v;S%mk?5jGzwSm/f4 gVyjvdTꟙ^jzEh^U!sn{g.?hTTzSjP]{_.T}}e6U}N_TPmե%*Ge*{w_eTGe41͊D2fPQ@QXPS CUvQ94P<0,&!86(8&0PF6T(Az8D:{5ٲU؊,V*6VneEեyU.#L{sC~|Ntl=̶lkO{׭*6d6ew{5+_b.~#WֶȆo;>cZ=s}h{s[ww;#GEUC_~=;[hb{Cg]ͼn3ix2n{N\\PQ׶k}cb:#fWOd3T +V殽D[~UݽL~tD]Mν|ny}Ok٣JKiklT^]﷽3_mque~yj'*.Ty˯/)j%/ThiYg~k.ToiٖRiٙ*&ZR[e5|]vU>2yGujz~KպqWUYq)w=~FuwT_{-ltScŚzٽȬɼS+.mTi|UOLs㫨/Tjk6y3qGo=M~T\cGF^WwxoU#&.}Ufw Sv[&zƇ +Z"K LiZ0rYJ2 +F/ <,X{=._3}'.LCShTo1׼uk溾nǶM\onٻL LKHFJ5c}7}22:]e6.Y/3~EdGm>+5ktgo۔ݒͭu}9+eUۏoʬ~UC[խϛ9f4J̎}nxlmjk?1~tjլj/ {U]U=}%JGk_viׇzvﺞUaTiz|oPMU϶}5|LfUeN[|s7O,{:}\kguSslDC;[͗ ߽qmyU|!::=/7Uzk+mU7oz?!f)O<{LtFLok<{ŝvي}~ofm:U;s&wr&rNznzUm?!TΪۭ֝i _s6.:RΌF/ZNuʻU6ZvTʖhx߼hxy?u*^WO3ƱP(R!̌msSHP0@ %IPAGd9L!!BfFDdDd$I$j'\[r ]9nYXc.Hg=DS-E%UL>T{ RϜ!MQݖ#1Eˢ? c p;Ӊy Yp`+8;T +73: D84+upm .\73noa壿W#+݂CjFHھb +#!eqx?;:Qf8uN"iIܖ.p6wg0njX]#a]sq(S|Ε_˗= @Z.7UtVvs* Q9 +gf1> CIX"}HǙb-0 b|f@=i'؍`?#I3/G>-|9,gYvHD⺫C\kt!(A6:(ktڮ +HtB shRƣ}RlS ^"M^:ED@#֜b6UjgQ w\JrAL8Nx<>%yH3ҵ .=h@6TG\l`szޜŏ) 8{,VA 0@S8"B ^|rBys~aF"d-{/Bmf*jPRҕ{<e$t‚NlPs®pp6zSR%Upq,kEkԅ(*%A~^`y<5<,*GhuZ5oXI ,zN( ) =ٱA +qo_>h"tlCLJfXHxe2'rD +1A*/B?@-Q)˕Lp +Z8y,N* B¡_>zAIe$$po )x\gn@ g ߆Ϝ :4 +s!Sˠ kqbN{=n:QdꬦB̛85()GxpHi^يGɪΓuݕ)i?;J0x +'}ҽDqGO@ *' uX L~TDW 9菅5? S<x^ HjU- 1DU +` 5AxDAFpAH+۴(qEjg}wCg!OmaX tVSkBMAm$Pg计. t7Ba9m@ s\^ L`OY9H^w3p K2T +4їd}#ɩUAJ[Pg`_}$6k!߂KsW"Q +G.PXοlg`!r{zE4_?"w["xUPME0(he^ͦJt̹yc@,R֐\MdPcdf.SB&7 +QHRٞyN^hG10E +@ I$$EgϺ95j#[ +2NSN|0Q~>i_7cJ¼*u\]{2DkRJ.#r*]| 5p@M4[UJLv])G9ϴK%ˁ&fe2C }YTh]E*\EH-+q- bD踢徾#jYT<-9{.vϵTbYO7zusS^Uze\`ĕ7 e߀#9xWȞ\˲92$1s XRu(2?9xeq^ҫ^(,A_ +]ְ>x!;sb +EeNB^%C ^M.qci=J7v[A+ܱ~6#1y6bWU>_YCv|škYHkYJKKJ%@Rt&,2#^$qEv^v.ɺfS!=z f, M>,i-sP*Q]KۈE[57Efxnjk Y1 6SQ"-Zl0nbΨZPc/ak3Cn/5?*7 {\!E춀]{X" abÝAqG7lpKz))u%Ps5QF[;: rD/bh,р!Qpo)Xރi{y%WHz*Ԗ .0珝E]-/ 8%]Iٶ +afS9ENcaD{QlWeVD$j` +VR 2 )<Ka'rqV568c( n3h䎹4"M|X۠HTQZv>/}ZsOOqz?03lG91Pτ21SnWl(a>5xeIJفE͝b>y5rw=І\>cY'M+q4(K9!%4dL6|G +endstream endobj 23 0 obj [/Indexed/DeviceRGB 255 24 0 R] endobj 24 0 obj <>stream +8;X]O>EqN@%''O_@%e@?J;%+8(9e>X=MR6S?i^YgA3=].HDXF.R$lIL@"pJ+EP(%0 +b]6ajmNZn*!='OQZeQ^Y*,=]?C.B+\Ulg9dhD*"iC[;*=3`oP1[!S^)?1)IZ4dup` +E1r!/,*0[*9.aFIR2&b-C#soRZ7Dl%MLY\.?d>Mn +6%Q2oYfNRF$$+ON<+]RUJmC0InDZ4OTs0S!saG>GGKUlQ*Q?45:CI&4J'_2j$XKrcYp0n+Xl_nU*O( +l[$6Nn+Z_Nq0]s7hs]`XX$6Ra!<<'!!!*'!!rrmPX()~> +endstream endobj 18 0 obj <> endobj 25 0 obj [/View/Design] endobj 26 0 obj <>>> endobj 21 0 obj <> endobj 19 0 obj [18 0 R] endobj 27 0 obj <> endobj xref +0 28 +0000000004 65535 f +0000000016 00000 n +0000000147 00000 n +0000020606 00000 n +0000000000 00000 f +0000020657 00000 n +0000000000 00000 f +0000000000 00000 f +0000023264 00000 n +0000023336 00000 n +0000023476 00000 n +0000025132 00000 n +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000060145 00000 n +0000060445 00000 n +0000021026 00000 n +0000060332 00000 n +0000022630 00000 n +0000059570 00000 n +0000059618 00000 n +0000060216 00000 n +0000060247 00000 n +0000060470 00000 n +trailer +<<102DB4876AE0EA43BA423AD60363629D>]>> +startxref +60662 +%%EOF diff --git a/public/images/frog-shaken.svg b/public/images/frog-shaken.svg new file mode 100644 index 0000000..f65fcfe --- /dev/null +++ b/public/images/frog-shaken.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/images/frog.svg b/public/images/frog.svg new file mode 100644 index 0000000..965a088 --- /dev/null +++ b/public/images/frog.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tailwind.config.ts b/tailwind.config.ts index 109807b..dcd2708 100644 --- a/tailwind.config.ts +++ b/tailwind.config.ts @@ -1,18 +1,42 @@ -import type { Config } from "tailwindcss"; +import type { Config } from 'tailwindcss' -export default { +const config: Config = { content: [ - "./src/pages/**/*.{js,ts,jsx,tsx,mdx}", - "./src/components/**/*.{js,ts,jsx,tsx,mdx}", - "./src/app/**/*.{js,ts,jsx,tsx,mdx}", + './pages/**/*.{js,ts,jsx,tsx,mdx}', + './components/**/*.{js,ts,jsx,tsx,mdx}', + './app/**/*.{js,ts,jsx,tsx,mdx}', ], + darkMode: 'class', theme: { extend: { - colors: { - background: "var(--background)", - foreground: "var(--foreground)", + keyframes: { + shake: { + '0%, 100%': { transform: 'rotate(0deg)' }, + '25%': { transform: 'rotate(-5deg)' }, + '75%': { transform: 'rotate(5deg)' } + }, + float: { + '0%': { + transform: 'translate(calc(-50% + var(--start-x)), calc(-50% + var(--start-y))) scale(var(--scale))', + opacity: '1' + }, + '100%': { + transform: 'translate(calc(-50% + var(--start-x) + (cos(var(--angle)) * 500px)), calc(-50% + var(--start-y) + (sin(var(--angle)) * 500px))) scale(var(--scale))', + opacity: '0' + } + }, + fadeOut: { + '0%': { opacity: '1' }, + '100%': { opacity: '0' } + } }, + animation: { + 'shake': 'shake 0.2s ease-in-out infinite', + 'float-heart': 'float 2s cubic-bezier(0.2, 0, 0.8, 1) forwards', + 'fade-out': 'fadeOut 2s ease-out forwards' + } }, }, plugins: [], -} satisfies Config; +} +export default config