From b9fbed9a543be6b0b54054757d396d38c9743520 Mon Sep 17 00:00:00 2001 From: Hadi <112569860+anotherhadi@users.noreply.github.com> Date: Wed, 24 Sep 2025 17:20:03 +0200 Subject: [PATCH] init --- .github/assets/banner.png | Bin 0 -> 17855 bytes .github/assets/logo.png | Bin 0 -> 6360 bytes .gitignore | 2 + CONTRIBUTING.md | 13 + LICENSE | 21 + README.md | 117 ++++++ back/.air.toml | 21 + back/.gitignore | 1 + back/api/api.go | 174 ++++++++ back/cmd/main.go | 21 + back/go.mod | 70 ++++ back/go.sum | 179 +++++++++ back/search/dataleak/dataleak.go | 191 +++++++++ back/search/osint/github.go | 90 +++++ back/search/search.go | 68 ++++ back/server/dataleak.go | 111 ++++++ back/server/server.go | 61 +++ back/server/settings.go | 129 ++++++ back/server/utils.go | 131 ++++++ flake.lock | 43 ++ flake.nix | 58 +++ front/.gitignore | 26 ++ front/bun.lock | 377 ++++++++++++++++++ front/index.html | 14 + front/package.json | 34 ++ front/public/favicon.svg | 3 + front/public/l.png | Bin 0 -> 436161 bytes front/src/App.svelte | 6 + front/src/app.css | 94 +++++ front/src/lib/components/accordion.svelte | 79 ++++ .../lib/components/dark-mode-toggle.svelte | 29 ++ .../lib/components/index/AnimatedBeam.svelte | 104 +++++ .../index/AnimatedBeamMultiple.svelte | 125 ++++++ front/src/lib/components/index/Circle.svelte | 19 + .../components/index/search/datawells.svelte | 115 ++++++ .../components/index/search/history.svelte | 130 ++++++ .../index/search/howToSearch.svelte | 46 +++ .../index/search/id/githubResult.svelte | 313 +++++++++++++++ .../lib/components/index/search/id/row.svelte | 100 +++++ .../components/index/search/id/rows.svelte | 72 ++++ .../components/index/search/id/stats.svelte | 54 +++ .../components/index/search/searchbar.svelte | 104 +++++ .../components/index/search/services.svelte | 83 ++++ .../lib/components/index/search/stats.svelte | 46 +++ front/src/lib/components/logo.svelte | 16 + front/src/lib/components/server-dialog.svelte | 144 +++++++ front/src/lib/components/table.svelte | 79 ++++ .../lib/navigation/sidebar-menu-item.svelte | 30 ++ front/src/lib/navigation/sidebar.svelte | 57 +++ front/src/lib/navigation/topbar.svelte | 47 +++ front/src/lib/stores/server.ts | 15 + front/src/lib/types.ts | 78 ++++ front/src/lib/utils.ts | 80 ++++ front/src/main.ts | 5 + front/src/routes/dataleaks/index.svelte | 57 +++ front/src/routes/index.svelte | 137 +++++++ front/src/routes/layout.svelte | 28 ++ front/src/routes/leak-utils/index.svelte | 18 + front/src/routes/parquet/index.svelte | 18 + front/src/routes/search/[id]/index.svelte | 226 +++++++++++ front/src/routes/search/index.svelte | 94 +++++ front/src/vite-env.d.ts | 2 + front/svelte.config.js | 6 + front/tsconfig.json | 21 + front/vite.config.ts | 15 + leak-utils/DATALEAKS-NORMALIZATION.md | 138 +++++++ leak-utils/README.md | 107 +++++ leak-utils/go.mod | 42 ++ leak-utils/go.sum | 94 +++++ leak-utils/leak-utils/main.go | 145 +++++++ leak-utils/misc/csv.go | 173 ++++++++ leak-utils/misc/misc.go | 31 ++ leak-utils/misc/ulp.go | 67 ++++ leak-utils/parquet/format.go | 107 +++++ leak-utils/parquet/parquet.go | 276 +++++++++++++ leak-utils/parquet/suggestions.go | 81 ++++ leak-utils/parquet/utils.go | 105 +++++ leak-utils/settings/colors.go | 27 ++ leak-utils/settings/settings.go | 9 + netlify.toml | 4 + nix/back.nix | 155 +++++++ nix/devshell.nix | 12 + nix/leak-utils.nix | 21 + 83 files changed, 6241 insertions(+) create mode 100644 .github/assets/banner.png create mode 100644 .github/assets/logo.png create mode 100644 .gitignore create mode 100644 CONTRIBUTING.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 back/.air.toml create mode 100644 back/.gitignore create mode 100644 back/api/api.go create mode 100644 back/cmd/main.go create mode 100644 back/go.mod create mode 100644 back/go.sum create mode 100644 back/search/dataleak/dataleak.go create mode 100644 back/search/osint/github.go create mode 100644 back/search/search.go create mode 100644 back/server/dataleak.go create mode 100644 back/server/server.go create mode 100644 back/server/settings.go create mode 100644 back/server/utils.go create mode 100644 flake.lock create mode 100644 flake.nix create mode 100644 front/.gitignore create mode 100644 front/bun.lock create mode 100644 front/index.html create mode 100644 front/package.json create mode 100644 front/public/favicon.svg create mode 100644 front/public/l.png create mode 100644 front/src/App.svelte create mode 100644 front/src/app.css create mode 100644 front/src/lib/components/accordion.svelte create mode 100644 front/src/lib/components/dark-mode-toggle.svelte create mode 100644 front/src/lib/components/index/AnimatedBeam.svelte create mode 100644 front/src/lib/components/index/AnimatedBeamMultiple.svelte create mode 100644 front/src/lib/components/index/Circle.svelte create mode 100644 front/src/lib/components/index/search/datawells.svelte create mode 100644 front/src/lib/components/index/search/history.svelte create mode 100644 front/src/lib/components/index/search/howToSearch.svelte create mode 100644 front/src/lib/components/index/search/id/githubResult.svelte create mode 100644 front/src/lib/components/index/search/id/row.svelte create mode 100644 front/src/lib/components/index/search/id/rows.svelte create mode 100644 front/src/lib/components/index/search/id/stats.svelte create mode 100644 front/src/lib/components/index/search/searchbar.svelte create mode 100644 front/src/lib/components/index/search/services.svelte create mode 100644 front/src/lib/components/index/search/stats.svelte create mode 100644 front/src/lib/components/logo.svelte create mode 100644 front/src/lib/components/server-dialog.svelte create mode 100644 front/src/lib/components/table.svelte create mode 100644 front/src/lib/navigation/sidebar-menu-item.svelte create mode 100644 front/src/lib/navigation/sidebar.svelte create mode 100644 front/src/lib/navigation/topbar.svelte create mode 100644 front/src/lib/stores/server.ts create mode 100644 front/src/lib/types.ts create mode 100644 front/src/lib/utils.ts create mode 100644 front/src/main.ts create mode 100644 front/src/routes/dataleaks/index.svelte create mode 100644 front/src/routes/index.svelte create mode 100644 front/src/routes/layout.svelte create mode 100644 front/src/routes/leak-utils/index.svelte create mode 100644 front/src/routes/parquet/index.svelte create mode 100644 front/src/routes/search/[id]/index.svelte create mode 100644 front/src/routes/search/index.svelte create mode 100644 front/src/vite-env.d.ts create mode 100644 front/svelte.config.js create mode 100644 front/tsconfig.json create mode 100644 front/vite.config.ts create mode 100644 leak-utils/DATALEAKS-NORMALIZATION.md create mode 100644 leak-utils/README.md create mode 100644 leak-utils/go.mod create mode 100644 leak-utils/go.sum create mode 100644 leak-utils/leak-utils/main.go create mode 100644 leak-utils/misc/csv.go create mode 100644 leak-utils/misc/misc.go create mode 100644 leak-utils/misc/ulp.go create mode 100644 leak-utils/parquet/format.go create mode 100644 leak-utils/parquet/parquet.go create mode 100644 leak-utils/parquet/suggestions.go create mode 100644 leak-utils/parquet/utils.go create mode 100644 leak-utils/settings/colors.go create mode 100644 leak-utils/settings/settings.go create mode 100644 netlify.toml create mode 100644 nix/back.nix create mode 100644 nix/devshell.nix create mode 100644 nix/leak-utils.nix diff --git a/.github/assets/banner.png b/.github/assets/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..e0eb5615c383ecf556086e9a9eb231a8b9491e22 GIT binary patch literal 17855 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 Bj-LPk literal 0 HcmV?d00001 diff --git a/.github/assets/logo.png b/.github/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a8da9701e612cc614ecb2a76465b0626a7ea42c4 GIT binary patch literal 6360 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 + nixy logo + + +
+ +# Eleakxir β€” Self-hosted search engine for leaked data. + +[Eleakxir](https://eleakxir.hadi.diy) is a **self-hosted search engine** that +lets you connect to your own **private and secure server**, **explore data +wells** (parquet files) from multiple sources, and visualize results in a clean, +modern web interface. + +> ✨ 100% open-source β€” you control your data, you control your server. + +## πŸš€ Features + +- πŸ” **Private by design** β€” connect to your own Eleakxir server with a custom + URL + password. +- 🎨 **Beautiful UI** β€” built with Svelte, TailwindCSS, and DaisyUI. +- πŸ›  **Open source & extensible** β€” hack it, self-host it, extend it. +- **πŸ“ Efficient File Format**: Uses the columnar **Parquet** format for high + compression and rapid query performance. +- **πŸ€– Automatic Discovery**: Automatically detects new `.parquet` files in your + folders and updates its metadata cache on a configurable schedule. +- **πŸ“œ Standardized Schema**: Includes a detailed guide on how to normalize your + data leaks for consistent and effective searching across different breaches. + (See [here](./leak-utils/DATALEAKS-NORMALIZATION.md)) +- **🧰 Data Utility Toolkit**: Includes a dedicated command-line tool + [leak-utils](./leak-utils/README.md) for managing, cleaning, and converting + data files to the standardized Parquet format. +- **πŸ” OSINT Tools**: Integration of various OSINT tools: + - [github-recon](https://github.com/anotherhadi/github-recon) + - [gravatar-recon](https://github.com/anotherhadi/gravatar-recon) (To-do) + - sherlock (To-do) + - holehe (To-do) + - ghunt (To-do) + +## βš™οΈ How it works + +1. You run an **Elixir server** that manages parquet files from various leaked + data sources and multiple OSINT tools. +2. Eleakxir (the web client) connects to your server via HTTPS and authenticated + headers. +3. You can: + - Search across indexed leaks and OSINT tools + - Browse results interactively + - Review history and stats + +## 🚨 Disclaimer + +Eleakxir is provided **for educational and research purposes only**. You are +solely responsible for how you use this software. Accessing, storing, or +distributing leaked data may be illegal in your jurisdiction. The authors and +contributors **do not condone or promote illegal activity**. Use responsibly and +only with data you are legally permitted to process. + +## πŸ§‘β€πŸ’» Tech stack + +- **Frontend**: [Svelte](https://svelte.dev/), + [sv-router](https://github.com/colinlienard/sv-router), + [TailwindCSS](https://tailwindcss.com/), [DaisyUI](https://daisyui.com/) +- **Backend**: [Golang](https://go.dev), [Gin](https://gin-gonic.com), + [duckdb](https://duckdb.org) + +## πŸ“¦ Getting started + +### Install with NixOS + +1. In the `flake.nix` file, add `eleakxir` in the `inputs` section and import + the `eleakxir.nixosModules.default` module: + +```nix +{ + inputs = { + eleakxir.url = "github:anotherhadi/eleakxir"; + }; + outputs = { + # ... + modules = [ + inputs.eleakxir.nixosModules.eleakxir + ]; + # ... + } +} +``` + +2. Enable the backend service: + +```nix +services.eleakxir = { + enable = true; + # port = 9198; + folders = ["/var/lib/eleakxir/leaks/"] # Folders with parquet files +}; +``` + +## πŸ”‘ Configuration + +### Backend + +Check the [back.nix](./nix/back.nix) file to see configuration options. + +### Client + +Before searching, configure your server in the client: + +1. Open [https://eleakxir.hadi.diy](https://eleakxir.hadi.diy) in your browser + and add your server. +2. Click **β€œConnect your server”** in the UI. +3. Enter your **server URL** and **password**. +4. Start searching πŸš€ + +## 🀝 Contributing + +[Contributions are welcome](./CONTRIBUTING.md)! Feel free to open issues or +submit PRs. diff --git a/back/.air.toml b/back/.air.toml new file mode 100644 index 0000000..197045c --- /dev/null +++ b/back/.air.toml @@ -0,0 +1,21 @@ +root = "." +tmp_dir = "tmp" + +[build] +cmd = "go build -o ./tmp/main ./cmd/main.go" +full_bin = "DEBUG=true DATALEAKS_FOLDERS=../testdata ./tmp/main" +args = [] +exclude_dir = ["tmp", "vendor"] +exclude_file = [] +exclude_regex = ["_test.go"] +exclude_unchanged = false +follow_symlink = false +send_interrupt = false +delay = 1000 # ms +stop_on_error = true + +[log] +time = true + +[misc] +clean_on_exit = true diff --git a/back/.gitignore b/back/.gitignore new file mode 100644 index 0000000..3fec32c --- /dev/null +++ b/back/.gitignore @@ -0,0 +1 @@ +tmp/ diff --git a/back/api/api.go b/back/api/api.go new file mode 100644 index 0000000..5cc0f62 --- /dev/null +++ b/back/api/api.go @@ -0,0 +1,174 @@ +package api + +import ( + "net/http" + "strings" + "time" + + "github.com/anotherhadi/eleakxir/backend/search" + "github.com/anotherhadi/eleakxir/backend/server" + "github.com/gin-gonic/gin" +) + +// TODO: We need to know when we hit the LIMIT + +func routes(s *server.Server, cache *map[string]*search.Result) { + s.Router.Use( + func(c *gin.Context) { + if s.Settings.Password != "" { + password := c.GetHeader("X-Password") + if password != s.Settings.Password { + c.AbortWithStatusJSON(http.StatusUnauthorized, gin.H{"error": "Unauthorized"}) + return + } + } + c.Next() + }, + ) + + s.Router.GET("/", func(c *gin.Context) { + c.JSON(http.StatusOK, gin.H{ + "Settings": s.Settings, + "Dataleaks": s.Dataleaks, + "TotalDataleaks": s.TotalDataleaks, + "TotalRows": s.TotalRows, + "TotalSize": s.TotalSize, + }) + }) + + s.Router.GET("/history", func(c *gin.Context) { + type historyItem struct { + Id string + Status string + Date time.Time + Query search.Query + Results int + } + var history []historyItem + s.Mu.RLock() + for _, r := range *cache { + history = append(history, historyItem{ + Id: r.Id, + Status: r.Status, + Date: r.Date, + Query: r.Query, + Results: len(r.LeakResult.Rows), + }) + } + s.Mu.RUnlock() + for i := 0; i < len(history)-1; i++ { + for j := 0; j < len(history)-i-1; j++ { + if history[j].Date.Before(history[j+1].Date) { + history[j], history[j+1] = history[j+1], history[j] + } + } + } + c.JSON(http.StatusOK, gin.H{ + "History": history, + }) + }) + + s.Router.POST("/search", func(c *gin.Context) { + var query search.Query + if err := c.BindJSON(&query); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"Error": "invalid JSON"}) + return + } + query = cleanQuery(query) + if len(query.Text) <= s.Settings.MinimumQueryLength { + c.JSON(http.StatusBadRequest, gin.H{"Error": "query too short"}) + return + } + id := search.EncodeQueryID(query, *s.TotalDataleaks) + s.Mu.RLock() + _, exists := (*cache)[id] + s.Mu.RUnlock() + if exists { + c.JSON(http.StatusOK, gin.H{"Id": id}) + return + } + r := search.Result{ + Id: id, + } + go search.Search(s, query, &r, s.Mu) + s.Mu.Lock() + (*cache)[id] = &r + s.Mu.Unlock() + c.JSON(http.StatusOK, gin.H{"Id": id}) + }) + + s.Router.GET("/search/:id", func(c *gin.Context) { + id := c.Param("id") + s.Mu.RLock() + r, exists := (*cache)[id] + s.Mu.RUnlock() + if !exists { + c.JSON(http.StatusNotFound, gin.H{"Error": "not found"}) + return + } + c.JSON(http.StatusOK, r) + }) +} + +func Init(s *server.Server) { + if !s.Settings.Debug { + gin.SetMode(gin.ReleaseMode) + } + + s.Router = gin.Default() + s.Router.Use(CORSMiddleware()) + + cache := make(map[string]*search.Result) + + go func() { + for { + time.Sleep(time.Minute) + deleteOldCache(s, &cache) + } + }() + + routes(s, &cache) +} + +func deleteOldCache(s *server.Server, cache *map[string]*search.Result) { + s.Mu.Lock() + defer s.Mu.Unlock() + now := time.Now() + for id, r := range *cache { + if now.Sub(r.Date) > s.Settings.MaxCacheDuration { + delete(*cache, id) + } + } +} + +func cleanQuery(q search.Query) search.Query { + q.Column = strings.ToLower(strings.TrimSpace(q.Column)) + q.Column = strings.Join(strings.Fields(q.Column), " ") + q.Column = strings.ReplaceAll(q.Column, "`", "") + q.Column = strings.ReplaceAll(q.Column, "'", "") + q.Column = strings.ReplaceAll(q.Column, "-", "_") + q.Column = strings.ReplaceAll(q.Column, " ", "_") + q.Column = strings.ReplaceAll(q.Column, "\"", "") + + q.Text = strings.TrimSpace(q.Text) + q.Text = strings.Join(strings.Fields(q.Text), " ") + + return q +} + +func CORSMiddleware() gin.HandlerFunc { + return func(c *gin.Context) { + c.Writer.Header().Set("Access-Control-Allow-Origin", "*") + c.Writer.Header().Set("Access-Control-Allow-Credentials", "true") + c.Writer.Header(). + Set("Access-Control-Allow-Headers", "X-Password, Content-Type, Content-Length, Accept-Encoding, X-CSRF-Token, Authorization, accept, origin, Cache-Control, X-Requested-With") + c.Writer.Header().Set("Access-Control-Allow-Methods", "POST, OPTIONS, GET, PUT, DELETE") + + if c.Request.Method == "OPTIONS" { + c.AbortWithStatus(204) + return + } + + c.Next() + } +} diff --git a/back/cmd/main.go b/back/cmd/main.go new file mode 100644 index 0000000..db444f3 --- /dev/null +++ b/back/cmd/main.go @@ -0,0 +1,21 @@ +package main + +import ( + "fmt" + "strconv" + + "github.com/anotherhadi/eleakxir/backend/api" + "github.com/anotherhadi/eleakxir/backend/server" +) + +func main() { + server := server.NewServer() + fmt.Println("Starting the server.") + + api.Init(server) + + err := server.Router.Run(":" + strconv.Itoa(server.Settings.Port)) + if err != nil { + panic(err) + } +} diff --git a/back/go.mod b/back/go.mod new file mode 100644 index 0000000..6b45ca6 --- /dev/null +++ b/back/go.mod @@ -0,0 +1,70 @@ +module github.com/anotherhadi/eleakxir/backend + +go 1.25.0 + +require ( + github.com/anotherhadi/github-recon v1.5.6 + github.com/charmbracelet/log v0.4.2 + github.com/gin-gonic/gin v1.10.1 + github.com/marcboeker/go-duckdb v1.8.5 +) + +require ( + github.com/apache/arrow-go/v18 v18.1.0 // indirect + github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect + github.com/bytedance/sonic v1.11.6 // indirect + github.com/bytedance/sonic/loader v0.1.1 // indirect + github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc // indirect + github.com/charmbracelet/lipgloss v1.1.0 // indirect + github.com/charmbracelet/x/ansi v0.8.0 // indirect + github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd // indirect + github.com/charmbracelet/x/term v0.2.1 // indirect + github.com/cloudwego/base64x v0.1.4 // indirect + github.com/cloudwego/iasm v0.2.0 // indirect + github.com/gabriel-vasile/mimetype v1.4.3 // indirect + github.com/gin-contrib/sse v0.1.0 // indirect + github.com/go-logfmt/logfmt v0.6.0 // indirect + github.com/go-playground/locales v0.14.1 // indirect + github.com/go-playground/universal-translator v0.18.1 // indirect + github.com/go-playground/validator/v10 v10.20.0 // indirect + github.com/go-viper/mapstructure/v2 v2.2.1 // indirect + github.com/goccy/go-json v0.10.5 // indirect + github.com/google/flatbuffers v25.1.24+incompatible // indirect + github.com/google/go-github/v72 v72.0.0 // indirect + github.com/google/go-querystring v1.1.0 // indirect + github.com/google/uuid v1.6.0 // indirect + github.com/joho/godotenv v1.5.1 // indirect + github.com/json-iterator/go v1.1.12 // indirect + github.com/klauspost/compress v1.17.11 // indirect + github.com/klauspost/cpuid/v2 v2.2.9 // indirect + github.com/leodido/go-urn v1.4.0 // indirect + github.com/lucasb-eyer/go-colorful v1.2.0 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect + github.com/mattn/go-runewidth v0.0.16 // indirect + github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect + github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/muesli/termenv v0.16.0 // indirect + github.com/pelletier/go-toml/v2 v2.2.2 // indirect + github.com/pierrec/lz4/v4 v4.1.22 // indirect + github.com/rivo/uniseg v0.4.7 // indirect + github.com/rogpeppe/go-internal v1.14.1 // indirect + github.com/saran13raj/go-pixels v0.0.0-20250629121333-58b240a3ae51 // indirect + github.com/spf13/pflag v1.0.7 // indirect + github.com/twitchyliquid64/golang-asm v0.15.1 // indirect + github.com/ugorji/go/codec v1.2.12 // indirect + github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect + github.com/zeebo/xxh3 v1.0.2 // indirect + golang.org/x/arch v0.8.0 // indirect + golang.org/x/crypto v0.38.0 // indirect + golang.org/x/exp v0.0.0-20250128182459-e0ece0dbea4c // indirect + golang.org/x/image v0.28.0 // indirect + golang.org/x/mod v0.25.0 // indirect + golang.org/x/net v0.40.0 // indirect + golang.org/x/sync v0.15.0 // indirect + golang.org/x/sys v0.33.0 // indirect + golang.org/x/text v0.26.0 // indirect + golang.org/x/tools v0.33.0 // indirect + golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect + google.golang.org/protobuf v1.36.1 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect +) diff --git a/back/go.sum b/back/go.sum new file mode 100644 index 0000000..edf6922 --- /dev/null +++ b/back/go.sum @@ -0,0 +1,179 @@ +github.com/andybalholm/brotli v1.1.1 h1:PR2pgnyFznKEugtsUo0xLdDop5SKXd5Qf5ysW+7XdTA= +github.com/andybalholm/brotli v1.1.1/go.mod h1:05ib4cKhjx3OQYUY22hTVd34Bc8upXjOLL2rKwwZBoA= +github.com/anotherhadi/github-recon v1.5.6 h1:IN3lQZRqqNbPpSyP5fvNoJrYODbM2tNwS5tiRgD+i1s= +github.com/anotherhadi/github-recon v1.5.6/go.mod h1:E2tmCmjEZdJeBx8u1J8sSMtnmU8aDQ6IjCoq3ykoHtY= +github.com/apache/arrow-go/v18 v18.1.0 h1:agLwJUiVuwXZdwPYVrlITfx7bndULJ/dggbnLFgDp/Y= +github.com/apache/arrow-go/v18 v18.1.0/go.mod h1:tigU/sIgKNXaesf5d7Y95jBBKS5KsxTqYBKXFsvKzo0= +github.com/apache/thrift v0.21.0 h1:tdPmh/ptjE1IJnhbhrcl2++TauVjy242rkV/UzJChnE= +github.com/apache/thrift v0.21.0/go.mod h1:W1H8aR/QRtYNvrPeFXBtobyRkd0/YVhTc6i07XIAgDw= +github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= +github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= +github.com/bytedance/sonic v1.11.6 h1:oUp34TzMlL+OY1OUWxHqsdkgC/Zfc85zGqw9siXjrc0= +github.com/bytedance/sonic v1.11.6/go.mod h1:LysEHSvpvDySVdC2f87zGWf6CIKJcAvqab1ZaiQtds4= +github.com/bytedance/sonic/loader v0.1.1 h1:c+e5Pt1k/cy5wMveRDyk2X4B9hF4g7an8N3zCYjJFNM= +github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU= +github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc h1:4pZI35227imm7yK2bGPcfpFEmuY1gc2YSTShr4iJBfs= +github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc/go.mod h1:X4/0JoqgTIPSFcRA/P6INZzIuyqdFY5rm8tb41s9okk= +github.com/charmbracelet/lipgloss v1.1.0 h1:vYXsiLHVkK7fp74RkV7b2kq9+zDLoEU4MZoFqR/noCY= +github.com/charmbracelet/lipgloss v1.1.0/go.mod h1:/6Q8FR2o+kj8rz4Dq0zQc3vYf7X+B0binUUBwA0aL30= +github.com/charmbracelet/log v0.4.2 h1:hYt8Qj6a8yLnvR+h7MwsJv/XvmBJXiueUcI3cIxsyig= +github.com/charmbracelet/log v0.4.2/go.mod h1:qifHGX/tc7eluv2R6pWIpyHDDrrb/AG71Pf2ysQu5nw= +github.com/charmbracelet/x/ansi v0.8.0 h1:9GTq3xq9caJW8ZrBTe0LIe2fvfLR/bYXKTx2llXn7xE= +github.com/charmbracelet/x/ansi v0.8.0/go.mod h1:wdYl/ONOLHLIVmQaxbIYEC/cRKOQyjTkowiI4blgS9Q= +github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd h1:vy0GVL4jeHEwG5YOXDmi86oYw2yuYUGqz6a8sLwg0X8= +github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd/go.mod h1:xe0nKWGd3eJgtqZRaN9RjMtK7xUYchjzPr7q6kcvCCs= +github.com/charmbracelet/x/term v0.2.1 h1:AQeHeLZ1OqSXhrAWpYUtZyX1T3zVxfpZuEQMIQaGIAQ= +github.com/charmbracelet/x/term v0.2.1/go.mod h1:oQ4enTYFV7QN4m0i9mzHrViD7TQKvNEEkHUMCmsxdUg= +github.com/cloudwego/base64x v0.1.4 h1:jwCgWpFanWmN8xoIUHa2rtzmkd5J2plF/dnLS6Xd/0Y= +github.com/cloudwego/base64x v0.1.4/go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w= +github.com/cloudwego/iasm v0.2.0 h1:1KNIy1I1H9hNNFEEH3DVnI4UujN+1zjpuk6gwHLTssg= +github.com/cloudwego/iasm v0.2.0/go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0= +github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk= +github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= +github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= +github.com/gin-gonic/gin v1.10.1 h1:T0ujvqyCSqRopADpgPgiTT63DUQVSfojyME59Ei63pQ= +github.com/gin-gonic/gin v1.10.1/go.mod h1:4PMNQiOhvDRa013RKVbsiNwoyezlm2rm0uX/T7kzp5Y= +github.com/go-logfmt/logfmt v0.6.0 h1:wGYYu3uicYdqXVgoYbvnkrPVXkuLM1p1ifugDMEdRi4= +github.com/go-logfmt/logfmt v0.6.0/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= +github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= +github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= +github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= +github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= +github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY= +github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= +github.com/go-playground/validator/v10 v10.20.0 h1:K9ISHbSaI0lyB2eWMPJo+kOS/FBExVwjEviJTixqxL8= +github.com/go-playground/validator/v10 v10.20.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM= +github.com/go-viper/mapstructure/v2 v2.2.1 h1:ZAaOCxANMuZx5RCeg0mBdEZk7DZasvvZIxtHqx8aGss= +github.com/go-viper/mapstructure/v2 v2.2.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM= +github.com/goccy/go-json v0.10.5 h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4= +github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= +github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= +github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/google/flatbuffers v25.1.24+incompatible h1:4wPqL3K7GzBd1CwyhSd3usxLKOaJN/AC6puCca6Jm7o= +github.com/google/flatbuffers v25.1.24+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= +github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= +github.com/google/go-github/v72 v72.0.0 h1:FcIO37BLoVPBO9igQQ6tStsv2asG4IPcYFi655PPvBM= +github.com/google/go-github/v72 v72.0.0/go.mod h1:WWtw8GMRiL62mvIquf1kO3onRHeWWKmK01qdCY8c5fg= +github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= +github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0= +github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/klauspost/asmfmt v1.3.2 h1:4Ri7ox3EwapiOjCki+hw14RyKk201CN4rzyCJRFLpK4= +github.com/klauspost/asmfmt v1.3.2/go.mod h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE= +github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc= +github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= +github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= +github.com/klauspost/cpuid/v2 v2.2.9 h1:66ze0taIn2H33fBvCkXuv9BmCwDfafmiIVpKV9kKGuY= +github.com/klauspost/cpuid/v2 v2.2.9/go.mod h1:rqkxqrZ1EhYM9G+hXH7YdowN5R5RGN6NK4QwQ3WMXF8= +github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ= +github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI= +github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= +github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= +github.com/marcboeker/go-duckdb v1.8.5 h1:tkYp+TANippy0DaIOP5OEfBEwbUINqiFqgwMQ44jME0= +github.com/marcboeker/go-duckdb v1.8.5/go.mod h1:6mK7+WQE4P4u5AFLvVBmhFxY5fvhymFptghgJX6B+/8= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= +github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8 h1:AMFGa4R4MiIpspGNG7Z948v4n35fFGB3RR3G/ry4FWs= +github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod h1:mC1jAcsrzbxHt8iiaC+zU4b1ylILSosueou12R++wfY= +github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3 h1:+n/aFZefKZp7spd8DFdX7uMikMLXX4oubIzJF4kv/wI= +github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/muesli/termenv v0.16.0 h1:S5AlUN9dENB57rsbnkPyfdGuWIlkmzJjbFf0Tf5FWUc= +github.com/muesli/termenv v0.16.0/go.mod h1:ZRfOIKPFDYQoDFF4Olj7/QJbW60Ol/kL1pU3VfY/Cnk= +github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= +github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= +github.com/pierrec/lz4/v4 v4.1.22 h1:cKFw6uJDK+/gfw5BcDL0JL5aBsAFdsIT18eRtLj7VIU= +github.com/pierrec/lz4/v4 v4.1.22/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= +github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= +github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= +github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= +github.com/saran13raj/go-pixels v0.0.0-20250629121333-58b240a3ae51 h1:H/XUfYcLxI3CBmDlgBpnOeTntRgqWvIoUXnqhCF5a0s= +github.com/saran13raj/go-pixels v0.0.0-20250629121333-58b240a3ae51/go.mod h1:sqhdZVLvqzTEBtmZBuTnFDUW0Lsryw2X2/wrLgqLEYg= +github.com/spf13/pflag v1.0.7 h1:vN6T9TfwStFPFM5XzjsvmzZkLuaLX+HS+0SeFLRgU6M= +github.com/spf13/pflag v1.0.7/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= +github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08= +github.com/ugorji/go/codec v1.2.12 h1:9LC83zGrHhuUA9l16C9AHXAqEV/2wBQ4nkvumAE65EE= +github.com/ugorji/go/codec v1.2.12/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= +github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no= +github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM= +github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ= +github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0= +github.com/zeebo/xxh3 v1.0.2 h1:xZmwmqxHZA8AI603jOQ0tMqmBr9lPeFwGg6d+xy9DC0= +github.com/zeebo/xxh3 v1.0.2/go.mod h1:5NWz9Sef7zIDm2JHfFlcQvNekmcEl9ekUZQQKCYaDcA= +golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= +golang.org/x/arch v0.8.0 h1:3wRIsP3pM4yUptoR96otTUOXI367OS0+c9eeRi9doIc= +golang.org/x/arch v0.8.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= +golang.org/x/crypto v0.38.0 h1:jt+WWG8IZlBnVbomuhg2Mdq0+BBQaHbtqHEFEigjUV8= +golang.org/x/crypto v0.38.0/go.mod h1:MvrbAqul58NNYPKnOra203SB9vpuZW0e+RRZV+Ggqjw= +golang.org/x/exp v0.0.0-20250128182459-e0ece0dbea4c h1:KL/ZBHXgKGVmuZBZ01Lt57yE5ws8ZPSkkihmEyq7FXc= +golang.org/x/exp v0.0.0-20250128182459-e0ece0dbea4c/go.mod h1:tujkw807nyEEAamNbDrEGzRav+ilXA7PCRAd6xsmwiU= +golang.org/x/image v0.28.0 h1:gdem5JW1OLS4FbkWgLO+7ZeFzYtL3xClb97GaUzYMFE= +golang.org/x/image v0.28.0/go.mod h1:GUJYXtnGKEUgggyzh+Vxt+AviiCcyiwpsl8iQ8MvwGY= +golang.org/x/mod v0.25.0 h1:n7a+ZbQKQA/Ysbyb0/6IbB1H/X41mKgbhfv7AfG/44w= +golang.org/x/mod v0.25.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= +golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY= +golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds= +golang.org/x/sync v0.15.0 h1:KWH3jNZsfyT6xfAfKiz6MRNmd46ByHDYaZ7KSkCtdW8= +golang.org/x/sync v0.15.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw= +golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M= +golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA= +golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc= +golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da h1:noIWHXmPHxILtqtCOPIhSt0ABwskkZKjD3bXGnZGpNY= +golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= +gonum.org/v1/gonum v0.15.1 h1:FNy7N6OUZVUaWG9pTiD+jlhdQ3lMP+/LcTpJ6+a8sQ0= +gonum.org/v1/gonum v0.15.1/go.mod h1:eZTZuRFrzu5pcyjN5wJhcIhnUdNijYxX1T2IcrOGY0o= +google.golang.org/protobuf v1.36.1 h1:yBPeRvTftaleIgM3PZ/WBIZ7XM/eEYAaEyCwvyjq/gk= +google.golang.org/protobuf v1.36.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYmp6pbG50= +rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= diff --git a/back/search/dataleak/dataleak.go b/back/search/dataleak/dataleak.go new file mode 100644 index 0000000..4632474 --- /dev/null +++ b/back/search/dataleak/dataleak.go @@ -0,0 +1,191 @@ +package dataleak + +import ( + "fmt" + "slices" + "strconv" + "strings" + "time" + + "github.com/anotherhadi/eleakxir/backend/server" + "github.com/charmbracelet/log" +) + +type LeakResult struct { + Duration time.Duration + Rows []map[string]string + Error string +} + +func Search(s *server.Server, queryText, column string, exactMatch bool) LeakResult { + if len(*(s.Dataleaks)) == 0 { + return LeakResult{ + Error: "No dataleak configured", + } + } + now := time.Now() + result := LeakResult{} + + sqlQuery := buildSqlQuery(s, queryText, column, exactMatch) + + if s.Settings.Debug { + log.Info("New query:", "query", sqlQuery) + } + rows, err := s.Duckdb.Query(sqlQuery) + if err != nil { + result.Error = err.Error() + return result + } + defer rows.Close() + + cols, err := rows.Columns() + if err != nil { + result.Error = err.Error() + return result + } + + rawResult := make([][]byte, len(cols)) + dest := make([]any, len(cols)) + for i := range rawResult { + dest[i] = &rawResult[i] + } + + for rows.Next() { + err := rows.Scan(dest...) + if err != nil { + result.Error = err.Error() + return result + } + + rowMap := make(map[string]string) + for i, colName := range cols { + if rawResult[i] == nil || colName == "" { + continue + } + if colName == "filename" { + rowMap["source"] = server.FormatParquetName(string(rawResult[i])) + continue + } + rowMap[colName] = string(rawResult[i]) + } + result.Rows = append(result.Rows, rowMap) + } + + if err = rows.Err(); err != nil { + result.Error = err.Error() + return result + } + + result.Rows = removeDuplicateMaps(result.Rows) + + result.Duration = time.Since(now) + return result +} + +func removeDuplicateMaps(maps []map[string]string) []map[string]string { + seen := make(map[string]struct{}) + result := []map[string]string{} + + for _, m := range maps { + // Create a unique key for the map by concatenating its key-value pairs + var sb strings.Builder + keys := make([]string, 0, len(m)) + for k := range m { + keys = append(keys, k) + } + slices.Sort(keys) // Sort keys to ensure consistent order + for _, k := range keys { + sb.WriteString(k) + sb.WriteString("=") + sb.WriteString(m[k]) + sb.WriteString(";") + } + key := sb.String() + + if _, exists := seen[key]; !exists { + seen[key] = struct{}{} + result = append(result, m) + } + } + + return result +} + +func buildSqlQuery(s *server.Server, queryText, column string, exactMatch bool) string { + limit := strconv.Itoa(s.Settings.Limit) + from := getFromClause(s) + if column == "name" { + column = "full_name" + } + columns := []string{column} + if column == "all" || column == "" { + columns = s.Settings.BaseColumns + } + columnsFiltered := []string{} + allColumns := []string{} + // TODO: Add columns that ends with _col aswell + for _, dataleak := range *s.Dataleaks { + for _, col := range dataleak.Columns { + if !slices.Contains(allColumns, col) { + allColumns = append(allColumns, col) + } + } + } + if column == "full_text" { + columnsFiltered = allColumns + } else { + for _, col := range columns { + if slices.Contains(allColumns, col) { + columnsFiltered = append(columnsFiltered, col) + } + } + } + + if len(columnsFiltered) == 0 { + return fmt.Sprintf("SELECT * FROM %s LIMIT %s", from, limit) + } + + where := getWhereClause(queryText, columnsFiltered, exactMatch) + return fmt.Sprintf("SELECT * FROM %s WHERE %s LIMIT %s", from, where, limit) +} + +func getWhereClause(queryText string, columns []string, exactMatch bool) string { + terms := strings.Fields(queryText) + var andClauses []string + + for _, term := range terms { + var orClausesForTerm []string + termEscaped := strings.ReplaceAll(term, "'", "''") + + for _, col := range columns { + if exactMatch { + termEscapedILike := strings.ReplaceAll(termEscaped, "_", "\\_") + termEscapedILike = strings.ReplaceAll(termEscapedILike, "%", "\\%") + orClausesForTerm = append(orClausesForTerm, fmt.Sprintf("\"%s\" ILIKE '%s' ESCAPE '\\'", col, strings.ToLower(termEscapedILike))) + } else { + // Escape characters for ILIKE + termEscapedILike := strings.ReplaceAll(termEscaped, "_", "\\_") + termEscapedILike = strings.ReplaceAll(termEscapedILike, "%", "\\%") + orClausesForTerm = append(orClausesForTerm, fmt.Sprintf("\"%s\" ILIKE '%%%s%%' ESCAPE '\\'", col, strings.ToLower(termEscapedILike))) + } + } + andClauses = append(andClauses, "("+strings.Join(orClausesForTerm, " OR ")+")") + } + return strings.Join(andClauses, " AND ") +} + +func getFromClause(s *server.Server) string { + parquets := []string{} + for _, dataleak := range *s.Dataleaks { + parquets = append(parquets, "'"+dataleak.Path+"'") + } + return fmt.Sprintf("read_parquet([%s], union_by_name=true, filename=true)", strings.Join(parquets, ", ")) +} + +func castAllColumns(cols []string) []string { + casted := make([]string, len(cols)) + for i, col := range cols { + casted[i] = fmt.Sprintf("cast(%s as text)", col) + } + return casted +} diff --git a/back/search/osint/github.go b/back/search/osint/github.go new file mode 100644 index 0000000..3ec1fbc --- /dev/null +++ b/back/search/osint/github.go @@ -0,0 +1,90 @@ +package osint + +import ( + "strings" + "time" + + "github.com/anotherhadi/eleakxir/backend/server" + + recon_email "github.com/anotherhadi/github-recon/github-recon/email" + recon_username "github.com/anotherhadi/github-recon/github-recon/username" + github_recon_settings "github.com/anotherhadi/github-recon/settings" +) + +type GithubResult struct { + Duration time.Duration + Error string + + UsernameResult *recon_username.UsernameResult + EmailResult *recon_email.EmailResult +} + +func Search(s *server.Server, queryText, column string) *GithubResult { + if !s.Settings.GithubRecon { + return nil + } + gr := GithubResult{} + now := time.Now() + settings := github_recon_settings.GetDefaultSettings() + settings.Token = s.Settings.GithubToken + settings.DeepScan = s.Settings.GithubDeepMode + if settings.Token != "null" && strings.TrimSpace(settings.Token) != "" { + settings.Client = settings.Client.WithAuthToken(settings.Token) + } + settings.Silent = true + + queryText = strings.TrimSpace(queryText) + + if column == "email" || strings.HasSuffix(column, "_email") || + column == "username" || strings.HasSuffix(column, "_username") || + column == "" || column == "all" { + if isValidEmail(queryText) { + settings.Target = queryText + settings.TargetType = github_recon_settings.TargetEmail + result := recon_email.Email(settings) + gr.EmailResult = &result + } else if isValidUsername(queryText) { + settings.Target = queryText + settings.TargetType = github_recon_settings.TargetUsername + result, err := recon_username.Username(settings) + if err != nil { + gr.Error = err.Error() + } + if result.User.Username == "" { + gr.UsernameResult = nil + } else { + gr.UsernameResult = &result + } + } else { + return nil + } + } else { + return nil + } + + gr.Duration = time.Since(now) + return &gr +} + +func isValidEmail(email string) bool { + if !strings.Contains(email, "@") || !strings.Contains(email, ".") { + return false + } + if strings.HasPrefix(email, "@") || strings.HasSuffix(email, "@") { + return false + } + if strings.Contains(email, " ") { + return false + } + return true +} + +func isValidUsername(username string) bool { + if len(username) < 1 || len(username) > 39 { + return false + } + if strings.Contains(username, " ") { + return false + } + return true +} diff --git a/back/search/search.go b/back/search/search.go new file mode 100644 index 0000000..7677096 --- /dev/null +++ b/back/search/search.go @@ -0,0 +1,68 @@ +package search + +import ( + "encoding/base64" + "encoding/json" + "fmt" + "sync" + "time" + + "github.com/anotherhadi/eleakxir/backend/search/dataleak" + "github.com/anotherhadi/eleakxir/backend/search/osint" + "github.com/anotherhadi/eleakxir/backend/server" +) + +type Query struct { + Text string + Column string // The column to search in (e.g., "email", "password", etc. + ExactMatch bool // Whether to search for an exact match +} + +type Result struct { + Id string + Date time.Time + Status string // "pending", "completed" + Query Query + + LeakResult dataleak.LeakResult + GithubResult osint.GithubResult +} + +func Search(s *server.Server, q Query, r *Result, mu *sync.RWMutex) { + var wg sync.WaitGroup + + mu.Lock() + r.Date = time.Now() + r.Status = "pending" + r.Query = q + mu.Unlock() + + wg.Add(2) + + go func() { + leakResult := dataleak.Search(s, q.Text, q.Column, q.ExactMatch) + mu.Lock() + r.LeakResult = leakResult + mu.Unlock() + wg.Done() + }() + + go func() { + githubResult := osint.Search(s, q.Text, q.Column) + mu.Lock() + r.GithubResult = *githubResult + mu.Unlock() + wg.Done() + }() + + wg.Wait() + + mu.Lock() + r.Status = "completed" + mu.Unlock() +} + +func EncodeQueryID(q Query, dataleaksCount uint64) string { + raw, _ := json.Marshal(q) + return fmt.Sprintf("%d:%s", dataleaksCount, base64.URLEncoding.EncodeToString(raw)) +} diff --git a/back/server/dataleak.go b/back/server/dataleak.go new file mode 100644 index 0000000..a2903ac --- /dev/null +++ b/back/server/dataleak.go @@ -0,0 +1,111 @@ +package server + +import ( + "encoding/json" + "fmt" + "os" + "path/filepath" + + "github.com/charmbracelet/log" +) + +type Dataleak struct { + Path string + Name string + Columns []string + Length uint64 + Size uint64 +} + +const CACHE_FILENAME = "dataleaks_cache.json" + +// TODO: check os.FileInfo.ModTime() to see if the file has changed since last cache update + +func Cache(s *Server) error { + if len(s.Settings.Folders) == 0 { + return nil + } + if s.Settings.CacheFolder == "" { + s.Settings.CacheFolder = s.Settings.Folders[0] + } + if err := createDirectoryIfNotExists(s.Settings.CacheFolder); err != nil { + return err + } + + cacheFile := filepath.Join(s.Settings.CacheFolder, CACHE_FILENAME) + dataleaks := []Dataleak{} + + data, err := os.ReadFile(cacheFile) + if err == nil { + if err := json.Unmarshal(data, &dataleaks); err != nil { + log.Warn("Failed to unmarshal dataleaks cache", "error", err) + } + } else { + log.Warn("Failed to read dataleaks cache file", "error", err) + } + + // Filter out non-existent files + filteredDataleaks := []Dataleak{} + writeOutput := false + for _, d := range dataleaks { + if _, err := os.Stat(d.Path); err == nil { + filteredDataleaks = append(filteredDataleaks, d) + } else if os.IsNotExist(err) { + log.Info("Removing non-existent file from cache", "path", d.Path) + writeOutput = true + } else { + log.Error("Error checking file existence", "path", d.Path, "error", err) + } + } + dataleaks = filteredDataleaks + + // Create a map for quick lookups + dataleakMap := make(map[string]struct{}, len(dataleaks)) + for _, d := range dataleaks { + dataleakMap[d.Path] = struct{}{} + } + + // Add new files + parquetFiles := getAllParquetFiles(s.Settings.Folders) + for _, p := range parquetFiles { + if _, found := dataleakMap[p]; found { + continue + } + + writeOutput = true + dataleaks = append(dataleaks, getDataleak(*s, p)) + } + + if writeOutput { + data, err := json.MarshalIndent(dataleaks, "", " ") + if err != nil { + return fmt.Errorf("error marshalling cache: %w", err) + } + if err := os.WriteFile(cacheFile, data, 0644); err != nil { + return fmt.Errorf("error writing cache: %w", err) + } + } + + s.Dataleaks = &dataleaks + totalDataleaks := uint64(len(dataleaks)) + totalRows := uint64(0) + totalSize := uint64(0) + for _, d := range dataleaks { + totalRows += d.Length + totalSize += d.Size + } + s.TotalDataleaks = &totalDataleaks + s.TotalSize = &totalSize + s.TotalRows = &totalRows + return nil +} + +func getDataleak(s Server, path string) Dataleak { + return Dataleak{ + Path: path, + Name: FormatParquetName(path), + Columns: getParquetColumns(s, path), + Length: getParquetLength(s, path), + Size: getFileSize(path), + } +} diff --git a/back/server/server.go b/back/server/server.go new file mode 100644 index 0000000..e16fdd6 --- /dev/null +++ b/back/server/server.go @@ -0,0 +1,61 @@ +package server + +import ( + "database/sql" + "sync" + "time" + + "github.com/charmbracelet/log" + "github.com/gin-gonic/gin" + _ "github.com/marcboeker/go-duckdb" +) + +type Server struct { + Settings ServerSettings + + Dataleaks *[]Dataleak + + TotalRows *uint64 + TotalDataleaks *uint64 + TotalSize *uint64 // MB + + Router *gin.Engine + Duckdb *sql.DB + Mu *sync.RWMutex +} + +func NewServer() *Server { + zero := uint64(0) + emptyDataleak := []Dataleak{} + s := &Server{ + Settings: LoadServerSettings(), + Mu: &sync.RWMutex{}, + TotalDataleaks: &zero, + TotalRows: &zero, + TotalSize: &zero, + Dataleaks: &emptyDataleak, + } + + var err error + + s.Duckdb, err = sql.Open("duckdb", "") + if err != nil { + panic(err) + } + + err = Cache(s) + if err != nil { + panic(err) + } + go func() { + for { + time.Sleep(s.Settings.ReloadDataleaksInterval) + err := Cache(s) + if err != nil { + log.Error(err) + } + } + }() + + return s +} diff --git a/back/server/settings.go b/back/server/settings.go new file mode 100644 index 0000000..8a3c04f --- /dev/null +++ b/back/server/settings.go @@ -0,0 +1,129 @@ +package server + +import ( + "os" + "strconv" + "strings" + "time" + + github_recon_settings "github.com/anotherhadi/github-recon/settings" +) + +type ServerSettings struct { + Port int `json:"-"` // Port to run the server on + Debug bool + Password string `json:"-"` // Do not expose the password in JSON + MinimumQueryLength int + MaxCacheDuration time.Duration // Delete a search from the cache after this duration + + // Dataleaks + Folders []string // Folders to search in for parquets, recursive + CacheFolder string + BaseColumns []string // Use these columns when column="all" + Limit int // Limit number of rows returned + ReloadDataleaksInterval time.Duration // Reload dataleaks files from disk every X + + // OSINT Tools + GithubRecon bool // Activate github-recon OSINT tool + GithubToken string `json:"-"` // Github token for github-recon + GithubTokenLoaded bool + GithubDeepMode bool // Deep mode for github-recon +} + +func LoadServerSettings() ServerSettings { + ss := ServerSettings{ + Port: getEnvPortOrDefault("PORT", 9198), + Debug: getEnvBoolOrDefault("DEBUG", false), + Password: getEnvStringOrDefault("PASSWORD", ""), + MinimumQueryLength: getEnvIntOrDefault("MINIMUM_QUERY_LENGTH", 3), + MaxCacheDuration: getEnvDurationOrDefault("MAX_CACHE_DURATION", 24*time.Hour), + + // Dataleaks + Folders: getEnvStringListOrDefault("DATALEAKS_FOLDERS", []string{}), + CacheFolder: getEnvStringOrDefault("DATALEAKS_CACHE_FOLDER", ""), + BaseColumns: getEnvStringListOrDefault("BASE_COLUMNS", []string{"email", "username", "password", "full_name", "phone", "url"}), + Limit: getEnvIntOrDefault("LIMIT", 100), + ReloadDataleaksInterval: getEnvDurationOrDefault("RELOAD_DATALEAKS_INTERVAL", 20*time.Minute), + + // OSINT Tools + GithubRecon: getEnvBoolOrDefault("GITHUB_RECON", true), + GithubToken: getEnvStringOrDefault("GITHUB_TOKEN", "null"), + GithubDeepMode: getEnvBoolOrDefault("GITHUB_DEEP_MODE", false), + } + + if ss.GithubToken == "null" || strings.TrimSpace(ss.GithubToken) == "" { + ss.GithubToken = github_recon_settings.GetToken() + } + + if ss.GithubToken != "null" && strings.TrimSpace(ss.GithubToken) != "" { + ss.GithubTokenLoaded = true + } + + return ss +} + +func getEnvStringOrDefault(envKey, defaultValue string) string { + value := strings.TrimSpace(os.Getenv(envKey)) + if value == "" { + return defaultValue + } + return value +} + +func getEnvBoolOrDefault(envKey string, defaultValue bool) bool { + value := strings.TrimSpace(os.Getenv(envKey)) + if value == "" { + return defaultValue + } + value = strings.ToLower(value) + if value == "true" || value == "1" { + return true + } else if value == "false" || value == "0" { + return false + } + return defaultValue +} + +func getEnvDurationOrDefault(envKey string, defaultValue time.Duration) time.Duration { + v := getEnvStringOrDefault(envKey, "") + if v == "" { + return defaultValue + } + t, err := time.ParseDuration(v) + if err != nil { + return defaultValue + } + return t +} + +func getEnvStringListOrDefault(envKey string, defaultValue []string) []string { + value := strings.TrimSpace(os.Getenv(envKey)) + if value == "" { + return defaultValue + } + l := strings.Split(value, ",") + for i := range l { + l[i] = strings.TrimSpace(l[i]) + } + return l +} + +func getEnvIntOrDefault(envKey string, defaultValue int) int { + value := strings.TrimSpace(os.Getenv(envKey)) + if value == "" { + return defaultValue + } + i, err := strconv.Atoi(value) + if err != nil { + return defaultValue + } + return i +} + +func getEnvPortOrDefault(envKey string, defaultValue int) int { + p := getEnvIntOrDefault(envKey, defaultValue) + if p <= 0 || p >= 65534 { + return defaultValue + } + return p +} diff --git a/back/server/utils.go b/back/server/utils.go new file mode 100644 index 0000000..13678dc --- /dev/null +++ b/back/server/utils.go @@ -0,0 +1,131 @@ +package server + +import ( + "database/sql" + "fmt" + "os" + "path/filepath" + "strings" +) + +func getParquetColumns(s Server, path string) []string { + query := fmt.Sprintf("DESCRIBE SELECT * FROM '%s';", path) + + rows, err := s.Duckdb.Query(query) + if err != nil { + return []string{} + } + defer rows.Close() + + var columns []string + + for rows.Next() { + var columnName string + var columnType string + var nullable string + + var key sql.NullString + var defaultValue sql.NullString + var extra sql.NullString + + if err := rows.Scan(&columnName, &columnType, &nullable, &key, &defaultValue, &extra); err != nil { + return []string{} + } + columns = append(columns, columnName) + } + + if err = rows.Err(); err != nil { + return []string{} + } + + if len(columns) == 0 { + return []string{} + } + + return columns +} + +func getParquetLength(s Server, path string) uint64 { + query := fmt.Sprintf("SELECT COUNT(*) FROM '%s';", path) + + row := s.Duckdb.QueryRow(query) + + var count uint64 + if err := row.Scan(&count); err != nil { + return 0 + } + + return count +} + +// Walk through the given folder and its subfolders to find all parquet files +// Return a list of path +func getAllParquetFiles(folders []string) []string { + var paths []string + for _, baseDir := range folders { + _ = filepath.Walk(baseDir, func(path string, info os.FileInfo, err error) error { + if err != nil || info.IsDir() || !strings.HasSuffix(info.Name(), ".parquet") { + return err + } + paths = append(paths, path) + return nil + }) + } + return paths +} + +func getFileSize(path string) uint64 { + info, err := os.Stat(path) + if err != nil { + return 0 + } + return uint64(info.Size() / (1024 * 1024)) // MB +} + +func FormatParquetName(path string) string { + _, file := filepath.Split(path) + fileName := strings.TrimSuffix(file, ".parquet") + + parts := strings.Split(fileName, "-") + sourceName := parts[0] + var blocks []string + + for _, part := range parts[1:] { + if strings.HasPrefix(part, "date_") { + dateStr := strings.TrimPrefix(part, "date_") + dateStr = strings.ReplaceAll(dateStr, "_", "/") + blocks = append(blocks, fmt.Sprintf("date: %s", dateStr)) + } else if strings.HasPrefix(part, "source_") { + sourceStr := strings.TrimPrefix(part, "source_") + blocks = append(blocks, fmt.Sprintf("source: %s", sourceStr)) + } else if strings.HasPrefix(part, "notes_") { + noteStr := strings.TrimPrefix(part, "notes_") + noteStr = strings.ReplaceAll(noteStr, "_", " ") + blocks = append(blocks, noteStr) + } + } + + sourceName = strings.ReplaceAll(sourceName, "_", " ") + sourceWords := strings.Fields(sourceName) + for i, word := range sourceWords { + if len(word) > 0 { + sourceWords[i] = strings.ToUpper(string(word[0])) + word[1:] + } + } + formattedSourceName := strings.Join(sourceWords, " ") + + if len(blocks) > 0 { + return fmt.Sprintf("%s (%s)", formattedSourceName, strings.Join(blocks, ", ")) + } + + return formattedSourceName +} + +func createDirectoryIfNotExists(path string) error { + if _, err := os.Stat(path); os.IsNotExist(err) { + if err := os.MkdirAll(path, 0755); err != nil { + return err + } + } + return nil +} diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..553b50a --- /dev/null +++ b/flake.lock @@ -0,0 +1,43 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1757487488, + "narHash": "sha256-zwE/e7CuPJUWKdvvTCB7iunV4E/+G0lKfv4kk/5Izdg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ab0f3607a6c7486ea22229b92ed2d355f1482ee0", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs", + "systems": "systems" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..d4dca0f --- /dev/null +++ b/flake.nix @@ -0,0 +1,58 @@ +{ + description = "Flake for eleakxir"; + + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + systems.url = "github:nix-systems/default"; + }; + + outputs = { + systems, + self, + nixpkgs, + ... + }: let + eachSystem = nixpkgs.lib.genAttrs (import systems); + + importBackend = system: + import ./nix/back.nix { + pkgs = nixpkgs.legacyPackages.${system}; + lib = nixpkgs.lib; + inherit self; + }; + + importUtils = system: + import ./nix/leak-utils.nix { + pkgs = nixpkgs.legacyPackages.${system}; + lib = nixpkgs.lib; + inherit self; + }; + + importDevShell = system: + import ./nix/devshell.nix { + pkgs = nixpkgs.legacyPackages.${system}; + lib = nixpkgs.lib; + inherit self; + }; + in { + packages = eachSystem (system: { + backend = (importBackend system).package; + leak-utils = (importUtils system).package; + }); + + devShells = eachSystem (system: { + default = (importDevShell system).devShell; + }); + + nixosModules.eleakxir = { + config, + lib, + pkgs, + ... + }: + (importBackend pkgs.system).nixosModule { + inherit config lib pkgs; + inherit self; + }; + }; +} diff --git a/front/.gitignore b/front/.gitignore new file mode 100644 index 0000000..3aee7df --- /dev/null +++ b/front/.gitignore @@ -0,0 +1,26 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? + +.router diff --git a/front/bun.lock b/front/bun.lock new file mode 100644 index 0000000..0d205dd --- /dev/null +++ b/front/bun.lock @@ -0,0 +1,377 @@ +{ + "lockfileVersion": 1, + "workspaces": { + "": { + "name": "svelte-app", + "dependencies": { + "@lucide/svelte": "^0.542.0", + "@tailwindcss/vite": "^4.1.12", + "axios": "^1.12.1", + "clsx": "^2.1.1", + "marked": "^16.3.0", + "path": "^0.12.7", + "sv-router": "latest", + "svelte-sonner": "^1.0.5", + "tailwind-merge": "^3.3.1", + "tailwindcss": "^4.1.12", + "theme-change": "^2.5.0", + }, + "devDependencies": { + "@sveltejs/vite-plugin-svelte": "^5.0.3", + "@tailwindcss/typography": "^0.5.18", + "daisyui": "^5.1.6", + "svelte": "^5.20.2", + "svelte-check": "^4.1.4", + "typescript": "~5.7.2", + "vite": "^6.2.0", + }, + }, + }, + "packages": { + "@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.9", "", { "os": "aix", "cpu": "ppc64" }, "sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA=="], + + "@esbuild/android-arm": ["@esbuild/android-arm@0.25.9", "", { "os": "android", "cpu": "arm" }, "sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ=="], + + "@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.9", "", { "os": "android", "cpu": "arm64" }, "sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg=="], + + "@esbuild/android-x64": ["@esbuild/android-x64@0.25.9", "", { "os": "android", "cpu": "x64" }, "sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw=="], + + "@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.9", "", { "os": "darwin", "cpu": "arm64" }, "sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg=="], + + "@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.9", "", { "os": "darwin", "cpu": "x64" }, "sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ=="], + + "@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.9", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q=="], + + "@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.9", "", { "os": "freebsd", "cpu": "x64" }, "sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg=="], + + "@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.9", "", { "os": "linux", "cpu": "arm" }, "sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw=="], + + "@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.9", "", { "os": "linux", "cpu": "arm64" }, "sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw=="], + + "@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.9", "", { "os": "linux", "cpu": "ia32" }, "sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A=="], + + "@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.9", "", { "os": "linux", "cpu": "none" }, "sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ=="], + + "@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.9", "", { "os": "linux", "cpu": "none" }, "sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA=="], + + "@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.9", "", { "os": "linux", "cpu": "ppc64" }, "sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w=="], + + "@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.9", "", { "os": "linux", "cpu": "none" }, "sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg=="], + + "@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.9", "", { "os": "linux", "cpu": "s390x" }, "sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA=="], + + "@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.9", "", { "os": "linux", "cpu": "x64" }, "sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg=="], + + "@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.25.9", "", { "os": "none", "cpu": "arm64" }, "sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q=="], + + "@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.9", "", { "os": "none", "cpu": "x64" }, "sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g=="], + + "@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.25.9", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ=="], + + "@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.9", "", { "os": "openbsd", "cpu": "x64" }, "sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA=="], + + "@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.25.9", "", { "os": "none", "cpu": "arm64" }, "sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg=="], + + "@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.9", "", { "os": "sunos", "cpu": "x64" }, "sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw=="], + + "@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.9", "", { "os": "win32", "cpu": "arm64" }, "sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ=="], + + "@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.9", "", { "os": "win32", "cpu": "ia32" }, "sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww=="], + + "@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.9", "", { "os": "win32", "cpu": "x64" }, "sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ=="], + + "@isaacs/fs-minipass": ["@isaacs/fs-minipass@4.0.1", "", { "dependencies": { "minipass": "^7.0.4" } }, "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w=="], + + "@jridgewell/gen-mapping": ["@jridgewell/gen-mapping@0.3.13", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA=="], + + "@jridgewell/remapping": ["@jridgewell/remapping@2.3.5", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ=="], + + "@jridgewell/resolve-uri": ["@jridgewell/resolve-uri@3.1.2", "", {}, "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="], + + "@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], + + "@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.30", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q=="], + + "@lucide/svelte": ["@lucide/svelte@0.542.0", "", { "peerDependencies": { "svelte": "^5" } }, "sha512-NuWttxTVfMSURpOxcKiKvoCtma3JtEpcJWzF/0cO69saZfXlv6G8NYAvEEGLmk75YPl+I+ROe+F97WhddM8r2A=="], + + "@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.50.0", "", { "os": "android", "cpu": "arm" }, "sha512-lVgpeQyy4fWN5QYebtW4buT/4kn4p4IJ+kDNB4uYNT5b8c8DLJDg6titg20NIg7E8RWwdWZORW6vUFfrLyG3KQ=="], + + "@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.50.0", "", { "os": "android", "cpu": "arm64" }, "sha512-2O73dR4Dc9bp+wSYhviP6sDziurB5/HCym7xILKifWdE9UsOe2FtNcM+I4xZjKrfLJnq5UR8k9riB87gauiQtw=="], + + "@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.50.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-vwSXQN8T4sKf1RHr1F0s98Pf8UPz7pS6P3LG9NSmuw0TVh7EmaE+5Ny7hJOZ0M2yuTctEsHHRTMi2wuHkdS6Hg=="], + + "@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.50.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-cQp/WG8HE7BCGyFVuzUg0FNmupxC+EPZEwWu2FCGGw5WDT1o2/YlENbm5e9SMvfDFR6FRhVCBePLqj0o8MN7Vw=="], + + "@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.50.0", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-UR1uTJFU/p801DvvBbtDD7z9mQL8J80xB0bR7DqW7UGQHRm/OaKzp4is7sQSdbt2pjjSS72eAtRh43hNduTnnQ=="], + + "@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.50.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-G/DKyS6PK0dD0+VEzH/6n/hWDNPDZSMBmqsElWnCRGrYOb2jC0VSupp7UAHHQ4+QILwkxSMaYIbQ72dktp8pKA=="], + + "@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.50.0", "", { "os": "linux", "cpu": "arm" }, "sha512-u72Mzc6jyJwKjJbZZcIYmd9bumJu7KNmHYdue43vT1rXPm2rITwmPWF0mmPzLm9/vJWxIRbao/jrQmxTO0Sm9w=="], + + "@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.50.0", "", { "os": "linux", "cpu": "arm" }, "sha512-S4UefYdV0tnynDJV1mdkNawp0E5Qm2MtSs330IyHgaccOFrwqsvgigUD29uT+B/70PDY1eQ3t40+xf6wIvXJyg=="], + + "@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.50.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-1EhkSvUQXJsIhk4msxP5nNAUWoB4MFDHhtc4gAYvnqoHlaL9V3F37pNHabndawsfy/Tp7BPiy/aSa6XBYbaD1g=="], + + "@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.50.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-EtBDIZuDtVg75xIPIK1l5vCXNNCIRM0OBPUG+tbApDuJAy9mKago6QxX+tfMzbCI6tXEhMuZuN1+CU8iDW+0UQ=="], + + "@rollup/rollup-linux-loongarch64-gnu": ["@rollup/rollup-linux-loongarch64-gnu@4.50.0", "", { "os": "linux", "cpu": "none" }, "sha512-BGYSwJdMP0hT5CCmljuSNx7+k+0upweM2M4YGfFBjnFSZMHOLYR0gEEj/dxyYJ6Zc6AiSeaBY8dWOa11GF/ppQ=="], + + "@rollup/rollup-linux-ppc64-gnu": ["@rollup/rollup-linux-ppc64-gnu@4.50.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-I1gSMzkVe1KzAxKAroCJL30hA4DqSi+wGc5gviD0y3IL/VkvcnAqwBf4RHXHyvH66YVHxpKO8ojrgc4SrWAnLg=="], + + "@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.50.0", "", { "os": "linux", "cpu": "none" }, "sha512-bSbWlY3jZo7molh4tc5dKfeSxkqnf48UsLqYbUhnkdnfgZjgufLS/NTA8PcP/dnvct5CCdNkABJ56CbclMRYCA=="], + + "@rollup/rollup-linux-riscv64-musl": ["@rollup/rollup-linux-riscv64-musl@4.50.0", "", { "os": "linux", "cpu": "none" }, "sha512-LSXSGumSURzEQLT2e4sFqFOv3LWZsEF8FK7AAv9zHZNDdMnUPYH3t8ZlaeYYZyTXnsob3htwTKeWtBIkPV27iQ=="], + + "@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.50.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-CxRKyakfDrsLXiCyucVfVWVoaPA4oFSpPpDwlMcDFQvrv3XY6KEzMtMZrA+e/goC8xxp2WSOxHQubP8fPmmjOQ=="], + + "@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.50.0", "", { "os": "linux", "cpu": "x64" }, "sha512-8PrJJA7/VU8ToHVEPu14FzuSAqVKyo5gg/J8xUerMbyNkWkO9j2ExBho/68RnJsMGNJq4zH114iAttgm7BZVkA=="], + + "@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.50.0", "", { "os": "linux", "cpu": "x64" }, "sha512-SkE6YQp+CzpyOrbw7Oc4MgXFvTw2UIBElvAvLCo230pyxOLmYwRPwZ/L5lBe/VW/qT1ZgND9wJfOsdy0XptRvw=="], + + "@rollup/rollup-openharmony-arm64": ["@rollup/rollup-openharmony-arm64@4.50.0", "", { "os": "none", "cpu": "arm64" }, "sha512-PZkNLPfvXeIOgJWA804zjSFH7fARBBCpCXxgkGDRjjAhRLOR8o0IGS01ykh5GYfod4c2yiiREuDM8iZ+pVsT+Q=="], + + "@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.50.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-q7cIIdFvWQoaCbLDUyUc8YfR3Jh2xx3unO8Dn6/TTogKjfwrax9SyfmGGK6cQhKtjePI7jRfd7iRYcxYs93esg=="], + + "@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.50.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-XzNOVg/YnDOmFdDKcxxK410PrcbcqZkBmz+0FicpW5jtjKQxcW1BZJEQOF0NJa6JO7CZhett8GEtRN/wYLYJuw=="], + + "@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.50.0", "", { "os": "win32", "cpu": "x64" }, "sha512-xMmiWRR8sp72Zqwjgtf3QbZfF1wdh8X2ABu3EaozvZcyHJeU0r+XAnXdKgs4cCAp6ORoYoCygipYP1mjmbjrsg=="], + + "@sveltejs/acorn-typescript": ["@sveltejs/acorn-typescript@1.0.5", "", { "peerDependencies": { "acorn": "^8.9.0" } }, "sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ=="], + + "@sveltejs/vite-plugin-svelte": ["@sveltejs/vite-plugin-svelte@5.1.1", "", { "dependencies": { "@sveltejs/vite-plugin-svelte-inspector": "^4.0.1", "debug": "^4.4.1", "deepmerge": "^4.3.1", "kleur": "^4.1.5", "magic-string": "^0.30.17", "vitefu": "^1.0.6" }, "peerDependencies": { "svelte": "^5.0.0", "vite": "^6.0.0" } }, "sha512-Y1Cs7hhTc+a5E9Va/xwKlAJoariQyHY+5zBgCZg4PFWNYQ1nMN9sjK1zhw1gK69DuqVP++sht/1GZg1aRwmAXQ=="], + + "@sveltejs/vite-plugin-svelte-inspector": ["@sveltejs/vite-plugin-svelte-inspector@4.0.1", "", { "dependencies": { "debug": "^4.3.7" }, "peerDependencies": { "@sveltejs/vite-plugin-svelte": "^5.0.0", "svelte": "^5.0.0", "vite": "^6.0.0" } }, "sha512-J/Nmb2Q2y7mck2hyCX4ckVHcR5tu2J+MtBEQqpDrrgELZ2uvraQcK/ioCV61AqkdXFgriksOKIceDcQmqnGhVw=="], + + "@tailwindcss/node": ["@tailwindcss/node@4.1.12", "", { "dependencies": { "@jridgewell/remapping": "^2.3.4", "enhanced-resolve": "^5.18.3", "jiti": "^2.5.1", "lightningcss": "1.30.1", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.12" } }, "sha512-3hm9brwvQkZFe++SBt+oLjo4OLDtkvlE8q2WalaD/7QWaeM7KEJbAiY/LJZUaCs7Xa8aUu4xy3uoyX4q54UVdQ=="], + + "@tailwindcss/oxide": ["@tailwindcss/oxide@4.1.12", "", { "dependencies": { "detect-libc": "^2.0.4", "tar": "^7.4.3" }, "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.1.12", "@tailwindcss/oxide-darwin-arm64": "4.1.12", "@tailwindcss/oxide-darwin-x64": "4.1.12", "@tailwindcss/oxide-freebsd-x64": "4.1.12", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.12", "@tailwindcss/oxide-linux-arm64-gnu": "4.1.12", "@tailwindcss/oxide-linux-arm64-musl": "4.1.12", "@tailwindcss/oxide-linux-x64-gnu": "4.1.12", "@tailwindcss/oxide-linux-x64-musl": "4.1.12", "@tailwindcss/oxide-wasm32-wasi": "4.1.12", "@tailwindcss/oxide-win32-arm64-msvc": "4.1.12", "@tailwindcss/oxide-win32-x64-msvc": "4.1.12" } }, "sha512-gM5EoKHW/ukmlEtphNwaGx45fGoEmP10v51t9unv55voWh6WrOL19hfuIdo2FjxIaZzw776/BUQg7Pck++cIVw=="], + + "@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.1.12", "", { "os": "android", "cpu": "arm64" }, "sha512-oNY5pq+1gc4T6QVTsZKwZaGpBb2N1H1fsc1GD4o7yinFySqIuRZ2E4NvGasWc6PhYJwGK2+5YT1f9Tp80zUQZQ=="], + + "@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.1.12", "", { "os": "darwin", "cpu": "arm64" }, "sha512-cq1qmq2HEtDV9HvZlTtrj671mCdGB93bVY6J29mwCyaMYCP/JaUBXxrQQQm7Qn33AXXASPUb2HFZlWiiHWFytw=="], + + "@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.1.12", "", { "os": "darwin", "cpu": "x64" }, "sha512-6UCsIeFUcBfpangqlXay9Ffty9XhFH1QuUFn0WV83W8lGdX8cD5/+2ONLluALJD5+yJ7k8mVtwy3zMZmzEfbLg=="], + + "@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.1.12", "", { "os": "freebsd", "cpu": "x64" }, "sha512-JOH/f7j6+nYXIrHobRYCtoArJdMJh5zy5lr0FV0Qu47MID/vqJAY3r/OElPzx1C/wdT1uS7cPq+xdYYelny1ww=="], + + "@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.1.12", "", { "os": "linux", "cpu": "arm" }, "sha512-v4Ghvi9AU1SYgGr3/j38PD8PEe6bRfTnNSUE3YCMIRrrNigCFtHZ2TCm8142X8fcSqHBZBceDx+JlFJEfNg5zQ=="], + + "@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.1.12", "", { "os": "linux", "cpu": "arm64" }, "sha512-YP5s1LmetL9UsvVAKusHSyPlzSRqYyRB0f+Kl/xcYQSPLEw/BvGfxzbH+ihUciePDjiXwHh+p+qbSP3SlJw+6g=="], + + "@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.1.12", "", { "os": "linux", "cpu": "arm64" }, "sha512-V8pAM3s8gsrXcCv6kCHSuwyb/gPsd863iT+v1PGXC4fSL/OJqsKhfK//v8P+w9ThKIoqNbEnsZqNy+WDnwQqCA=="], + + "@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.1.12", "", { "os": "linux", "cpu": "x64" }, "sha512-xYfqYLjvm2UQ3TZggTGrwxjYaLB62b1Wiysw/YE3Yqbh86sOMoTn0feF98PonP7LtjsWOWcXEbGqDL7zv0uW8Q=="], + + "@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.1.12", "", { "os": "linux", "cpu": "x64" }, "sha512-ha0pHPamN+fWZY7GCzz5rKunlv9L5R8kdh+YNvP5awe3LtuXb5nRi/H27GeL2U+TdhDOptU7T6Is7mdwh5Ar3A=="], + + "@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.1.12", "", { "dependencies": { "@emnapi/core": "^1.4.5", "@emnapi/runtime": "^1.4.5", "@emnapi/wasi-threads": "^1.0.4", "@napi-rs/wasm-runtime": "^0.2.12", "@tybys/wasm-util": "^0.10.0", "tslib": "^2.8.0" }, "cpu": "none" }, "sha512-4tSyu3dW+ktzdEpuk6g49KdEangu3eCYoqPhWNsZgUhyegEda3M9rG0/j1GV/JjVVsj+lG7jWAyrTlLzd/WEBg=="], + + "@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.1.12", "", { "os": "win32", "cpu": "arm64" }, "sha512-iGLyD/cVP724+FGtMWslhcFyg4xyYyM+5F4hGvKA7eifPkXHRAUDFaimu53fpNg9X8dfP75pXx/zFt/jlNF+lg=="], + + "@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.1.12", "", { "os": "win32", "cpu": "x64" }, "sha512-NKIh5rzw6CpEodv/++r0hGLlfgT/gFN+5WNdZtvh6wpU2BpGNgdjvj6H2oFc8nCM839QM1YOhjpgbAONUb4IxA=="], + + "@tailwindcss/typography": ["@tailwindcss/typography@0.5.18", "", { "dependencies": { "postcss-selector-parser": "6.0.10" }, "peerDependencies": { "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1" } }, "sha512-dDIgwZOlf+tVkZ7A029VvQ1+ngKATENDjMEx2N35s2yPjfTS05RWSM8ilhEWSa5DMJ6ci2Ha9WNZEd2GQjrdQg=="], + + "@tailwindcss/vite": ["@tailwindcss/vite@4.1.12", "", { "dependencies": { "@tailwindcss/node": "4.1.12", "@tailwindcss/oxide": "4.1.12", "tailwindcss": "4.1.12" }, "peerDependencies": { "vite": "^5.2.0 || ^6 || ^7" } }, "sha512-4pt0AMFDx7gzIrAOIYgYP0KCBuKWqyW8ayrdiLEjoJTT4pKTjrzG/e4uzWtTLDziC+66R9wbUqZBccJalSE5vQ=="], + + "@types/estree": ["@types/estree@1.0.8", "", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="], + + "acorn": ["acorn@8.15.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg=="], + + "aria-query": ["aria-query@5.3.2", "", {}, "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw=="], + + "asynckit": ["asynckit@0.4.0", "", {}, "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="], + + "axios": ["axios@1.12.1", "", { "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.4", "proxy-from-env": "^1.1.0" } }, "sha512-Kn4kbSXpkFHCGE6rBFNwIv0GQs4AvDT80jlveJDKFxjbTYMUeB4QtsdPCv6H8Cm19Je7IU6VFtRl2zWZI0rudQ=="], + + "axobject-query": ["axobject-query@4.1.0", "", {}, "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ=="], + + "call-bind-apply-helpers": ["call-bind-apply-helpers@1.0.2", "", { "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2" } }, "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ=="], + + "chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], + + "chownr": ["chownr@3.0.0", "", {}, "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g=="], + + "clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], + + "combined-stream": ["combined-stream@1.0.8", "", { "dependencies": { "delayed-stream": "~1.0.0" } }, "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="], + + "cssesc": ["cssesc@3.0.0", "", { "bin": { "cssesc": "bin/cssesc" } }, "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="], + + "daisyui": ["daisyui@5.1.6", "", {}, "sha512-KCzv25f+3lwWbfnPZZG9Xo0kSGO1NSysyIiS5AoCtDotIrvvArggHklCey1Fg6U2gZuqxsi2rptT1q3khoYCMw=="], + + "debug": ["debug@4.4.1", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ=="], + + "deepmerge": ["deepmerge@4.3.1", "", {}, "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A=="], + + "delayed-stream": ["delayed-stream@1.0.0", "", {}, "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="], + + "detect-libc": ["detect-libc@2.0.4", "", {}, "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA=="], + + "dunder-proto": ["dunder-proto@1.0.1", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.1", "es-errors": "^1.3.0", "gopd": "^1.2.0" } }, "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A=="], + + "enhanced-resolve": ["enhanced-resolve@5.18.3", "", { "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" } }, "sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww=="], + + "es-define-property": ["es-define-property@1.0.1", "", {}, "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g=="], + + "es-errors": ["es-errors@1.3.0", "", {}, "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="], + + "es-object-atoms": ["es-object-atoms@1.1.1", "", { "dependencies": { "es-errors": "^1.3.0" } }, "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA=="], + + "es-set-tostringtag": ["es-set-tostringtag@2.1.0", "", { "dependencies": { "es-errors": "^1.3.0", "get-intrinsic": "^1.2.6", "has-tostringtag": "^1.0.2", "hasown": "^2.0.2" } }, "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA=="], + + "esbuild": ["esbuild@0.25.9", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.9", "@esbuild/android-arm": "0.25.9", "@esbuild/android-arm64": "0.25.9", "@esbuild/android-x64": "0.25.9", "@esbuild/darwin-arm64": "0.25.9", "@esbuild/darwin-x64": "0.25.9", "@esbuild/freebsd-arm64": "0.25.9", "@esbuild/freebsd-x64": "0.25.9", "@esbuild/linux-arm": "0.25.9", "@esbuild/linux-arm64": "0.25.9", "@esbuild/linux-ia32": "0.25.9", "@esbuild/linux-loong64": "0.25.9", "@esbuild/linux-mips64el": "0.25.9", "@esbuild/linux-ppc64": "0.25.9", "@esbuild/linux-riscv64": "0.25.9", "@esbuild/linux-s390x": "0.25.9", "@esbuild/linux-x64": "0.25.9", "@esbuild/netbsd-arm64": "0.25.9", "@esbuild/netbsd-x64": "0.25.9", "@esbuild/openbsd-arm64": "0.25.9", "@esbuild/openbsd-x64": "0.25.9", "@esbuild/openharmony-arm64": "0.25.9", "@esbuild/sunos-x64": "0.25.9", "@esbuild/win32-arm64": "0.25.9", "@esbuild/win32-ia32": "0.25.9", "@esbuild/win32-x64": "0.25.9" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g=="], + + "esm-env": ["esm-env@1.2.2", "", {}, "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA=="], + + "esrap": ["esrap@2.1.0", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" } }, "sha512-yzmPNpl7TBbMRC5Lj2JlJZNPml0tzqoqP5B1JXycNUwtqma9AKCO0M2wHrdgsHcy1WRW7S9rJknAMtByg3usgA=="], + + "fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], + + "follow-redirects": ["follow-redirects@1.15.11", "", {}, "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ=="], + + "form-data": ["form-data@4.0.4", "", { "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", "es-set-tostringtag": "^2.1.0", "hasown": "^2.0.2", "mime-types": "^2.1.12" } }, "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow=="], + + "fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="], + + "function-bind": ["function-bind@1.1.2", "", {}, "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="], + + "get-intrinsic": ["get-intrinsic@1.3.0", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", "es-errors": "^1.3.0", "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", "get-proto": "^1.0.1", "gopd": "^1.2.0", "has-symbols": "^1.1.0", "hasown": "^2.0.2", "math-intrinsics": "^1.1.0" } }, "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ=="], + + "get-proto": ["get-proto@1.0.1", "", { "dependencies": { "dunder-proto": "^1.0.1", "es-object-atoms": "^1.0.0" } }, "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g=="], + + "gopd": ["gopd@1.2.0", "", {}, "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg=="], + + "graceful-fs": ["graceful-fs@4.2.11", "", {}, "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="], + + "has-symbols": ["has-symbols@1.1.0", "", {}, "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="], + + "has-tostringtag": ["has-tostringtag@1.0.2", "", { "dependencies": { "has-symbols": "^1.0.3" } }, "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw=="], + + "hasown": ["hasown@2.0.2", "", { "dependencies": { "function-bind": "^1.1.2" } }, "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ=="], + + "inherits": ["inherits@2.0.3", "", {}, "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw=="], + + "is-reference": ["is-reference@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.6" } }, "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw=="], + + "jiti": ["jiti@2.5.1", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w=="], + + "kleur": ["kleur@4.1.5", "", {}, "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ=="], + + "lightningcss": ["lightningcss@1.30.1", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-darwin-arm64": "1.30.1", "lightningcss-darwin-x64": "1.30.1", "lightningcss-freebsd-x64": "1.30.1", "lightningcss-linux-arm-gnueabihf": "1.30.1", "lightningcss-linux-arm64-gnu": "1.30.1", "lightningcss-linux-arm64-musl": "1.30.1", "lightningcss-linux-x64-gnu": "1.30.1", "lightningcss-linux-x64-musl": "1.30.1", "lightningcss-win32-arm64-msvc": "1.30.1", "lightningcss-win32-x64-msvc": "1.30.1" } }, "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg=="], + + "lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.30.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ=="], + + "lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.30.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA=="], + + "lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.30.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig=="], + + "lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.30.1", "", { "os": "linux", "cpu": "arm" }, "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q=="], + + "lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw=="], + + "lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ=="], + + "lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw=="], + + "lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ=="], + + "lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.30.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA=="], + + "lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.30.1", "", { "os": "win32", "cpu": "x64" }, "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg=="], + + "locate-character": ["locate-character@3.0.0", "", {}, "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA=="], + + "magic-string": ["magic-string@0.30.18", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ=="], + + "marked": ["marked@16.3.0", "", { "bin": { "marked": "bin/marked.js" } }, "sha512-K3UxuKu6l6bmA5FUwYho8CfJBlsUWAooKtdGgMcERSpF7gcBUrCGsLH7wDaaNOzwq18JzSUDyoEb/YsrqMac3w=="], + + "math-intrinsics": ["math-intrinsics@1.1.0", "", {}, "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="], + + "mime-db": ["mime-db@1.52.0", "", {}, "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="], + + "mime-types": ["mime-types@2.1.35", "", { "dependencies": { "mime-db": "1.52.0" } }, "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="], + + "minipass": ["minipass@7.1.2", "", {}, "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="], + + "minizlib": ["minizlib@3.0.2", "", { "dependencies": { "minipass": "^7.1.2" } }, "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA=="], + + "mkdirp": ["mkdirp@3.0.1", "", { "bin": { "mkdirp": "dist/cjs/src/bin.js" } }, "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg=="], + + "mri": ["mri@1.2.0", "", {}, "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA=="], + + "ms": ["ms@2.1.3", "", {}, "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="], + + "nanoid": ["nanoid@3.3.11", "", { "bin": { "nanoid": "bin/nanoid.cjs" } }, "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w=="], + + "path": ["path@0.12.7", "", { "dependencies": { "process": "^0.11.1", "util": "^0.10.3" } }, "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q=="], + + "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], + + "picomatch": ["picomatch@4.0.3", "", {}, "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="], + + "postcss": ["postcss@8.5.6", "", { "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg=="], + + "postcss-selector-parser": ["postcss-selector-parser@6.0.10", "", { "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" } }, "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w=="], + + "process": ["process@0.11.10", "", {}, "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A=="], + + "proxy-from-env": ["proxy-from-env@1.1.0", "", {}, "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="], + + "readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], + + "rollup": ["rollup@4.50.0", "", { "dependencies": { "@types/estree": "1.0.8" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.50.0", "@rollup/rollup-android-arm64": "4.50.0", "@rollup/rollup-darwin-arm64": "4.50.0", "@rollup/rollup-darwin-x64": "4.50.0", "@rollup/rollup-freebsd-arm64": "4.50.0", "@rollup/rollup-freebsd-x64": "4.50.0", "@rollup/rollup-linux-arm-gnueabihf": "4.50.0", "@rollup/rollup-linux-arm-musleabihf": "4.50.0", "@rollup/rollup-linux-arm64-gnu": "4.50.0", "@rollup/rollup-linux-arm64-musl": "4.50.0", "@rollup/rollup-linux-loongarch64-gnu": "4.50.0", "@rollup/rollup-linux-ppc64-gnu": "4.50.0", "@rollup/rollup-linux-riscv64-gnu": "4.50.0", "@rollup/rollup-linux-riscv64-musl": "4.50.0", "@rollup/rollup-linux-s390x-gnu": "4.50.0", "@rollup/rollup-linux-x64-gnu": "4.50.0", "@rollup/rollup-linux-x64-musl": "4.50.0", "@rollup/rollup-openharmony-arm64": "4.50.0", "@rollup/rollup-win32-arm64-msvc": "4.50.0", "@rollup/rollup-win32-ia32-msvc": "4.50.0", "@rollup/rollup-win32-x64-msvc": "4.50.0", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-/Zl4D8zPifNmyGzJS+3kVoyXeDeT/GrsJM94sACNg9RtUE0hrHa1bNPtRSrfHTMH5HjRzce6K7rlTh3Khiw+pw=="], + + "runed": ["runed@0.28.0", "", { "dependencies": { "esm-env": "^1.0.0" }, "peerDependencies": { "svelte": "^5.7.0" } }, "sha512-k2xx7RuO9hWcdd9f+8JoBeqWtYrm5CALfgpkg2YDB80ds/QE4w0qqu34A7fqiAwiBBSBQOid7TLxwxVC27ymWQ=="], + + "sade": ["sade@1.8.1", "", { "dependencies": { "mri": "^1.1.0" } }, "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A=="], + + "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="], + + "sv-router": ["sv-router@0.8.1", "", { "dependencies": { "esm-env": "^1.2.2" }, "peerDependencies": { "svelte": "^5" }, "bin": { "sv-router": "src/cli/index.js" } }, "sha512-evUoE6TFEB89u8FzgEXiqj8aCTTCbCrWLBbfPe8qZxbNUT5I0sARoTLIZJtBNuumXe+FxpCCDrb8v/d6va+ZVQ=="], + + "svelte": ["svelte@5.38.6", "", { "dependencies": { "@jridgewell/remapping": "^2.3.4", "@jridgewell/sourcemap-codec": "^1.5.0", "@sveltejs/acorn-typescript": "^1.0.5", "@types/estree": "^1.0.5", "acorn": "^8.12.1", "aria-query": "^5.3.1", "axobject-query": "^4.1.0", "clsx": "^2.1.1", "esm-env": "^1.2.1", "esrap": "^2.1.0", "is-reference": "^3.0.3", "locate-character": "^3.0.0", "magic-string": "^0.30.11", "zimmerframe": "^1.1.2" } }, "sha512-ltBPlkvqk3bgCK7/N323atUpP3O3Y+DrGV4dcULrsSn4fZaaNnOmdplNznwfdWclAgvSr5rxjtzn/zJhRm6TKg=="], + + "svelte-check": ["svelte-check@4.3.1", "", { "dependencies": { "@jridgewell/trace-mapping": "^0.3.25", "chokidar": "^4.0.1", "fdir": "^6.2.0", "picocolors": "^1.0.0", "sade": "^1.7.4" }, "peerDependencies": { "svelte": "^4.0.0 || ^5.0.0-next.0", "typescript": ">=5.0.0" }, "bin": { "svelte-check": "bin/svelte-check" } }, "sha512-lkh8gff5gpHLjxIV+IaApMxQhTGnir2pNUAqcNgeKkvK5bT/30Ey/nzBxNLDlkztCH4dP7PixkMt9SWEKFPBWg=="], + + "svelte-sonner": ["svelte-sonner@1.0.5", "", { "dependencies": { "runed": "^0.28.0" }, "peerDependencies": { "svelte": "^5.0.0" } }, "sha512-9dpGPFqKb/QWudYqGnEz93vuY+NgCEvyNvxoCLMVGw6sDN/3oVeKV1xiEirW2E1N3vJEyj5imSBNOGltQHA7mg=="], + + "tailwind-merge": ["tailwind-merge@3.3.1", "", {}, "sha512-gBXpgUm/3rp1lMZZrM/w7D8GKqshif0zAymAhbCyIt8KMe+0v9DQ7cdYLR4FHH/cKpdTXb+A/tKKU3eolfsI+g=="], + + "tailwindcss": ["tailwindcss@4.1.12", "", {}, "sha512-DzFtxOi+7NsFf7DBtI3BJsynR+0Yp6etH+nRPTbpWnS2pZBaSksv/JGctNwSWzbFjp0vxSqknaUylseZqMDGrA=="], + + "tapable": ["tapable@2.2.3", "", {}, "sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg=="], + + "tar": ["tar@7.4.3", "", { "dependencies": { "@isaacs/fs-minipass": "^4.0.0", "chownr": "^3.0.0", "minipass": "^7.1.2", "minizlib": "^3.0.1", "mkdirp": "^3.0.1", "yallist": "^5.0.0" } }, "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw=="], + + "theme-change": ["theme-change@2.5.0", "", {}, "sha512-B/UdsgdHAGhSKHTAQnxg/etN0RaMDpehuJmZIjLMDVJ6DGIliRHGD6pODi1CXLQAN9GV0GSyB3G6yCuK05PkPQ=="], + + "tinyglobby": ["tinyglobby@0.2.14", "", { "dependencies": { "fdir": "^6.4.4", "picomatch": "^4.0.2" } }, "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ=="], + + "typescript": ["typescript@5.7.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw=="], + + "util": ["util@0.10.4", "", { "dependencies": { "inherits": "2.0.3" } }, "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A=="], + + "util-deprecate": ["util-deprecate@1.0.2", "", {}, "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="], + + "vite": ["vite@6.3.5", "", { "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", "picomatch": "^4.0.2", "postcss": "^8.5.3", "rollup": "^4.34.9", "tinyglobby": "^0.2.13" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ=="], + + "vitefu": ["vitefu@1.1.1", "", { "peerDependencies": { "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0" }, "optionalPeers": ["vite"] }, "sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ=="], + + "yallist": ["yallist@5.0.0", "", {}, "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw=="], + + "zimmerframe": ["zimmerframe@1.1.2", "", {}, "sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w=="], + + "@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.5.0", "", { "dependencies": { "@emnapi/wasi-threads": "1.1.0", "tslib": "^2.4.0" }, "bundled": true }, "sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg=="], + + "@tailwindcss/oxide-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.5.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ=="], + + "@tailwindcss/oxide-wasm32-wasi/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.1.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ=="], + + "@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.12", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@tybys/wasm-util": "^0.10.0" }, "bundled": true }, "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ=="], + + "@tailwindcss/oxide-wasm32-wasi/@tybys/wasm-util": ["@tybys/wasm-util@0.10.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ=="], + + "@tailwindcss/oxide-wasm32-wasi/tslib": ["tslib@2.8.1", "", { "bundled": true }, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], + } +} diff --git a/front/index.html b/front/index.html new file mode 100644 index 0000000..9c04752 --- /dev/null +++ b/front/index.html @@ -0,0 +1,14 @@ + + + + + + + Eleakxir + + + +

+ + + diff --git a/front/package.json b/front/package.json new file mode 100644 index 0000000..05077cc --- /dev/null +++ b/front/package.json @@ -0,0 +1,34 @@ +{ + "name": "svelte-app", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-check", + "postinstall": "sv-router" + }, + "dependencies": { + "@lucide/svelte": "^0.542.0", + "@tailwindcss/vite": "^4.1.12", + "axios": "^1.12.1", + "clsx": "^2.1.1", + "marked": "^16.3.0", + "path": "^0.12.7", + "sv-router": "latest", + "svelte-sonner": "^1.0.5", + "tailwind-merge": "^3.3.1", + "tailwindcss": "^4.1.12", + "theme-change": "^2.5.0" + }, + "devDependencies": { + "@sveltejs/vite-plugin-svelte": "^5.0.3", + "@tailwindcss/typography": "^0.5.18", + "daisyui": "^5.1.6", + "svelte": "^5.20.2", + "svelte-check": "^4.1.4", + "typescript": "~5.7.2", + "vite": "^6.2.0" + } +} diff --git a/front/public/favicon.svg b/front/public/favicon.svg new file mode 100644 index 0000000..449b4ce --- /dev/null +++ b/front/public/favicon.svg @@ -0,0 +1,3 @@ + + + diff --git a/front/public/l.png b/front/public/l.png new file mode 100644 index 0000000000000000000000000000000000000000..14f3ca32406e4e3b8e82fbe300375024c173b2cb GIT binary patch literal 436161 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

92Ec(g~$LgS*>HD~*vr`=z37v2ob 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

{w&h@ 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

-hUW{yN==z`TYA@Y-q};hJ*Vc=%9>@5-)#Kz!)Wd2{%FO+M{K&q zjDFiFRy!vIyz!Y9zxilO=+QaBWqDnp`!)o7D2nPWRr=PXK7G!u`<=$x+ANkqb3$ga zT%C|U_0!p=Gn+OE|9ue~w&eN#y;X;Q*USw{s?}I=v5t4?m+885yo7?Bmg^px>AUCq zy@eNAwN5Pwo;UZ}pA9t+FRJ}ltGKe*{$}3>-doJxqICh4x9?5%zns~8 zt|8d(=9$?6ppAYvKAu>7Ontr4mpNTe6=g1h+&<=&D~eSFZNnV z2*-v7#bmlfZ&I`Uva&7f)!W|<+YfjOY|Lhnk@&LJDeQqIi^$odmn2hG2fkdg>q+@l z(Iwi)luQeSYUBJeD=e=pSv84ee{YOuziejW_529_^!b%$F?BbWCWOREe)?xId)KqR zv&H|;D22~$ELUraVE1@zY`eFIpG7VE%Ep_lY!;7`eJgUlFaFTTzi<9o50UKGKhIa| zJy*=V(j~e&p{!19tJvwE|1Jo#KX`V&p3hXmxZtC!_`%ZaHgoN>PPkNld0|-bATRJXp-(#U}D&iphh70yVvtt$g4j(u6$8ZvyE=)n*0o8 zslL^l;rl`4RpSfgV2!W*jpmoW1@2rs>*BeKe$ISZUCH}B6egLZJjq|yGv|%+fw;X{ zrrc>=g>DDEIj2NE+p_xskNwLz`l5X|d1`*1j!(|LQ)(WUzv#eXoq03lnm-40f4ww) zAIrW^UuQqu{r_idL_~znfvM#$f0&u(A9~K@R@uG(O4{;gLirPB%rV$_>%^VjTbK4$ z%ct)*3!m`m+QAuVx`DhAH=n=r`s6tEjojO=Pi8Y339Jk5*@%-26E%#9?`P7Dlp8>}!ox6_Mxdblxov{7CtaSci z@3>D%75_fZKmP2m`Tw)CA5NTW?fBhi-L9p|ar&S6j-1=^{`mL9@qdrbPGD-?b@Nf~ zs%7i9Yp>fOQui!9zLTkbj({Xm))-S=N~+@pETfEDGfPJZ<`F1)gaWC$;YUV;IkO zYpcTPw}*BmBy48baknMx@e-NI;y1L9u4J6jQ^xEt(e2Vy79Yoxspqe5*rK({>SIt( z&ON)IZa2lv<_dJ&($->Mvm+tbGMD?$C;h)ddTVkc_NM7BH@(%)`mFeOsvX1O$Jb&K z4;$ZTZkv6U%_MMk$sL1)3(cs|IEr`mI9iVi_JH&HLchD_E>4N?9=R(ntJUG5pK)&HX60x zx-$D%e3#Y=O*_AIp2iNtoimGtI5j5nUlE%5O(gT0n(qzPPbUw3yY^M$yQ+M|+1mTb z2TsRNwMc8e)gb%)B+Km=iz|y8p82IVb$z?I$KqbZG3D!5zimio@!G;XY4IU_r5`Up zrZL#%%wkab7;!)2#;*jXb(8i>Zk@ewf!RU7pFW2j_dYQ13t#%P+W7e%x%n&wKaWoT z)Oh#)zjNOc-oLXww$y3fgoDM=c~_klSePA4K03QQ!~I1NKjRsxikqk7d8GYfc+2n9 ziR&z2Js6T(w&9dzH0vg(%BXG2M7u*mrd1xBJ^w^{Yu_}hrzt=F-v4iF$NKQv?fmBY zKga9a7Pt3*m?NFBbG^@UPKMuF(_V6(e45%k$z)=LW=ir&RnrHD{5NZLFEK5xd>yi( zZpo<&OPLJS<4$j4_Q@)a{yAM}-!1Xqd=*Qsd0b>yvYG5XA@1&-l{%Hpw!2I3EUvT8 znYZERwml0pBE1q9oiojPaLw@fzjqbk?B`!H_uKKkNUnH&ZEeAm4}nwmPo7t{?w$Ut zh33J>{Q2Z9nc{!{x_+>x{TbuO6_+$vEhg{V^RayHh)IP0Iwu;{{!Oz(J zrE2K+i(ACcf8v|ul(fb-k=gGNYh_-dm|S(q_Mb{$DooSeWT&hMi3xqx$i*_bD6{S8 zZ?D*_6MJiy9hK=?@??Y677wkq!#^uluF$IvFOaNLSrfgPFYZT^_~x<(C9k3x%m!&v z+awH|`MR7wB|kf(F)`Tkp1+UpLCfcJSZAB%HJN5#+u+uils56%^i#Q4stdke4L`X5 z?``%U7F?HZO!!uD{@&h#A1@RwK0e_sI2O75ph}&ouHL!B+j5s5{{MG>ek$*+RiUdb zLYmzs6dq)~{cusY{vlVftv3rN!rEi!eT%@kSezR%%pPnnKiL7h?hB!;}J z;hW5QAN6eP7cLy zU<$DPTJux%jA3fh?1`L{Wxkl_-Z~+FPh?v1fq(UUTQWW>X2_j5dVTs@tsk$O_qFhB zckNzuDAo3=$NFnWs%00>DB=*Y|FG6#+A^nfr6&ut{hPCwzZY28)bEkXDe`IGgznVo zUQ?w1njaKD%AEPDl)K}cHs9x!TJ;YWWN6${p0p}ul?&7L%|*6b_sg_|+}o6W`O2GT zsx=#4Z;V~x`cF%K4JJfrvU!|d~&vt$f@SI+oTHTjQf#_~yy zrAH5~y?f+C&ZbTLLfvUhVHMw__FO!CV6uSJn_%H-D_NAplM_w{e5#z9BAAo+{&a=; z&657`E$+>-?EPX-BmO_pRX_Our~QBZIVG3Uemr2e=g9wid%KiyGanaQCrzLd4B!-vUyv-&E1vKYti6x82wFc{+P*s?bo@DSgGXLliKK0E(mZzoT z%4e}X_{@0xmhY4Is&V(8iCY=iTc3U?@glkDeE(*{bzK2G>-4M||Eb6Q68>LJa0Q-^h5R)ZJ~Hd-wfALgXM9Z5GTkQE(y57C`(&>VOw+|Rj-4!8bdCy$>+3R(;-#?cUx^nCa+fL?f zkM{hv%3PQw^HJujr%l3=lZ$!{Oij=JwY~~I#g1)p zp7iI$nV+p{ReKi&h;lqITNBGJ{Zam_F=K4;p9!%uO?LR|wtdgv|F!JL+xtIq`67P5 z3g6F_^_J~(-2TOhKc8?_9OFIT!p#0%QT`9dw|A9y&Q5i>E3?)=tnSu*hKbtl6YtGl zp0rRvzhvLjZaX%)+k0mx?~^^mUvVue@@L}aEN$keW;*c_E?<`A-`zXKcx8+8x`L&h zkJwkevQgae$=v7Z5zYM)JIzEtG+b`iUifBpf`iJZi(*b1AN{O-#T-=b2Yo&fAjy?J8^~i z3swD$Wec?5c!zJAB*XrXW%~KpUZu_P6|;`KSh`@H)ohJ@pR{Jnt1i9ZRCQ>X@Pj47 z{wbFybq1=OKK0vW+GJ#i|9piVX_!6+OSxr2OC9KT;n?zPG-$5&ufRY); zKfMe8EIO)J^D210%iE(8bN0RUv3Pvu@=cj-J2o(QbGwv_>+P$sUY2`k(@RmC{TYd> z1&)0$S(aq)wQAmxY`nSP#RbQEFFht6*1RSr`}Fg@@B7&6KKy-u@LI5ctNH)4D>D|^ zFpBSFJ0lmJ@JnOc_0aHmP8Rt!T#%llD!I(DocUdtl%|`ixL*G zOy>~TcwUTAva83BU32lXV=|}iJWg09^J}5q$T2}9X|ir#NK?$_Fq?w^e?Q#1zNhc(kz(%8H5nV^^VC`R z7WIhOK5TyQ@5c*%heV@%jRh?ZmVKv6zBo^_>k{}PuJbl?gzl4{WPM%q z&zal9%WrquzbDPPLM=PJ-d!$G-B(;I+{|z>|Iz6)w|6R@NjduC)eI?aCEEa*i81F6 zOnUp&c&76*&x=Ay(wYri2N$1Nvgom+-M>!%1DjG$KX|wMozXwpO)9F@=EZ)S9|<4K zU;NhO>D^x~HALZ3;;|)$x2_()Y2GPjXH>j3!1>FC!~BP2x8FaRyr@EbLFeWpzmF7rT>J8mhwML{ zL;5pkb-r|Q^t4=5o_}CLw~41nT7%f}-|zQ|hpmg^tp7c2`@vsZvoElOCx89C-0o-O zj!&z!AGD?0OfEOPSM~aC!TZ|p2SWXKcFDF*7qkBG!MXoHE&rWv?vHkHd*=PV^Za0| zhxN}dXU?AeY;i4s`SRP$b+h%Xrlt4&<=CaRhO0@POVUB!_s>F?^pCna8_Rmmc`ZqQ zB6i{Jmjg8)Q)SXunLjwOB!};fBF8BU3C+e+eAb(UubUY^o}B8_p_{SrS$d(vxsRV$ zT%G0c;iB8x3rg0r{I956Bw5X5*0fM}cYnT5W`n)x@uNY<*n77G@?@QGpUhW#?LhZ7 zPSdDldA%xk`AbV;AD#G^qP2u!5r>^-hSpN$%bJ;UUPLUga;;rIvwzCZcZPkXrhN{R zlBxv@oTjwh+9<{BHOqO+=}BjHUSTtmEPGl1q`5VrZ_)M1GYdA__kYNm^ICD90vD%` zZff@#r6(5i3vJfQN$_T|Ezh$Qt$Qe5&zQISZ&=0k-S^J!c6;mcpg%%ee2QV{E3ux9TOQ4?4F$+Jh-6rC*7A=zRI(qC9&%8BXSDy9H zIC;G|xWBDpd)2=jg_nFw)_v1W-1IBs;N~7Ri=`jpwcaW2OPQ~JDNAFgQd^n&DG~R@ zm4DZ>{&lowZaW=P@FH;DdG-h^4Hto=qSqaMw;fd&B4g*SOuE>#Bx?Xu2LR4?Xig!r_I&-cO7TOJ@JG+gGl?=WG7G zV}Jea^q$-g_PLd`sUwbuQOM-IsW&1^8-h~G$9u8BY7 zTn}4k&GB1HPF^}-&35y-X7Fhv@Rz#q z@tKNz)7{l)iz9fLW;8V97S@S{#2R`m_RHMU=-rgBci-1YzuWVdFJf<%<(`kd_2(E)Z~AUzqC3Cl)5$dpH%Ha+<~2?|uxdsy zQ+rGBN#ErW5latD{l0bTY1Oq`eiv*xf1q=2f#2%|D*~5nF#r0tSKZrv>Ql1~=^FCE znNuA^EA`tm_ns@=WZ5gH_>FzqrjiG8V(*(5%ynd)*0c$+W;zB=5!j}GPfcLjk0rBLuJ(SjAhMmG zlTCfYo(K86jD8miEIehbrdF6bYvLsL5S}>8-v0h{Uyhq%|-*c4>8ol^f z+alzZm^V%G;+3tNTfA0{?rT5}2 zPu)N9c+T18^G{hHuKUp}f9UP@yN50wi2t!?`hm>lbGd|tC)bEQdNuX5fX&ti*X!P1 zfAG})t8qr1P4nNSa`(Tp+^PATp7{D&Zo$8ww*_CAR)qVAXC_@1+V*kw{U26$N{_$Y zkaaa{#>`lUT#2K5PAy)iJl9+H@$}Gq9*F}N+{Ck_GZ&t?<9cB6MTzA7K1|jk<~@t{ zTxMtZnGo0zcV;ASKb^g z8g*53opdu;kIl$9r>AmOhSe^2(a*qSyG7jv(VOq39XK4n;faR5#FNi5XBT+Lx3@X? zO54uL@ZS_Rsodq2>otdo>m^T%UQLg;W$LOC6L?$o=DWlMQ|aIuzo$$y)k}MCUsZl9 z-kS2_Qr{W7=koc!8}(`d^Y1sX4 z=kd%H+&@>($nW$&8Dr7*(<oNX4<=~F*N&PmIj zJ&^QkN^B4_>qRD2#sY^+u6rkww-z{wp3@vmIDUw9X#huGml$& z+|iTCHB(|IW2))vg*%0e!|G-(wX$Q07g|1b!xRy@Ey|PoW+l#Fe&&nj%&#wQsDGLt z)GEAZHn&J#!%utTri`jArhh-a)-y?)txK)fD0;K3b@HDl@2WopR(!9%$6NjVP22T7 z-?kQfo0+~*?8&Xy>smqUa9`IR<264Z{qIZvL)rHg>NO8P$EPrSzVqBpI_}paap&|z zhT_kk3$Dj*S6+~H`2F91??F2XTfV*yKX5U5bHSS%HceYHCFbWGe714&gDGcCmt-EW z^O^tmjrzm8?|-FRe7{rt@X6$R4GaaM*;jfPmLB7Iu+o1oTiN?ttm1JMidn(4_H5p; z@|BG2oEIvaMY79w*}l6i*VMkg_UY;md*9bfuiNv;YsbG|(ms)q_w;`%OziAx;K{7i zkk8B!sG4b@Y+_a-VDfK8G0)y@oPSO(v*Y@2aIDU|?YYVClt9BThK{$?yEb2aFTK3r z)5JwmmF@~n@?Ed|JZ3a4D@wRt$DSD!BT% zKrELnYspn5h12qDL)4fSPyc(x|Ipv>_ANCZ_!wl{gf|+U`(ilLA^lnZLFVta9Pa&R zK3I0LyvfX&Uv@S)A!iZmcl!?te~#DJ2$Vhi@vLd_gWrilP9f1%njUKzJ0~?)F}8Uu zb~*a$B*&d2PY=(#GJOt1f1F-u&R7Wr`LrM|i?i}lxQ&alO52fJ3r-9&^JJ`lJIo`iKMJi+Eov=6` zIo8(wqP262ro8Y`O5J$CIU;4x;tP+}FBZm4iI=@3^`E8QqWjye%-}VrZ~3aohDgV1 ztyBNFLSa{q%s=hvGbb;TfAfdsqW(m#>*qP=`Pv4}_3F^rl*w!OM?|plP$m1vP#gZ2 zLUs{Pi&K)H0b) ziTcyZUwja>sQmn^hF$8wp+y%TTv&JLxcvR;%t!U!-!OK(yg5l-{B6u`p3^qz=}_nQL}#6VL+Oo_6&74J@(-70n8zP~ zW2ds;DCf3Q{=C}v8fzFDEt%Xtujsw(@j9h=R--mOJeu)+V*aihe0FW@#gk7? z$yu}e(0k{Z|39=hq!z!qEO{m2+&SF^k+T-vxxRznZ0-)hd1fC&{#7hcxTyBwoWiW6 zm!b-_Q}vG*9h&aDZ1U5htx}wH^bo}v@Q*Zm76`e|NMv1QZZ5c3S#;JGnrY!8aQ}woJRZ3^( zKd$NQ7d|?lf2(yy=E>%@-PgQ!?FnF7RrPSu{z%sUDw1aeqWalvb&h2x+*{mqm@{JQ zg(VIfOK$9MJl_pF^*KJ%vvH!e! zC#+EV-7#I%>=tvIqFm8|L!}uHHKGzUSUu~lBPVMu-nVD}lK-=1J=TlKURl(?IlSvo z(?|bPN^>j13N>%ryQ&w4MJ>qu7#kIpv^nC~!Sy8%Mdt0YxS{bg`Ri}BfQ-W|byqTO zMMu2Z;C67wVg4JObDi{MZL3;jPdyiZesRfl*WN1@v-*!EG)ucK&`|zk5YqbuUWdzo=~pQ%knr%4mH?*kN^H1l!Sv zQWi5b-hMgVb3bhT{u5uf%x3BPbtY=b+l6*%XQvz0<*~SQs9o|4)Znn1Ua;V7q3BsQ zrXzXw{1aA1FuN_YEBX|k6ZU4)=DO}hTPKUnJ16H-b+U5aGs)wh7Bw%>jL?*=Kg@U3 z_uEe80#|WX=dHz)w}d@0IA0f=@o91Yxu5T3+$ZEK=sr<6|1Y*?+m_Ch`G!AU&6I81 z!fjyu+*0Vm(iNe+EFR)9RfaL&dtN`BSN;Ahvz>H&_|B45HCvT=rC5VwU+H}MG3mbO z$2WiO2z}=InLIH*Av7ShGJc!GH1CNanV-6zZjCv=W{bD#_lJivOxqh)+w^xmXzkp; z=us0_64U0HA6{#wbcwoq*_;>N8C%^r$JgZCZ4-`F67Ly8kK8|cFe_45+|)tREK9ilhyzy5H)y4PrC|Nl!r!&~~~+}++Y-I($JnbCoz-;JG%E^O6WtaMjxs$a;g zF!}4Xb4U{9}~G{!lp{r|GX#mwAcTPu{L}BW!1^2yz&QT$qVh%jX85N zKf7?ESn*MLmFe+il6#)teV^?9&HDW=?znH4?K#=`?HZpQHv9ANbv*y_96QN_r|y1O z>0i%Q_eedSMSJ>up7eROV)Ef%*OmX({vEsbk*GcI|9_4AMLw%Vf4rBQ)16;;d3MBa z=YJOO>+k=5ctqIz@TsY%7dAfqwp;d^-P~4(j=rGGE1oQ0EN59adRqNzl)CD+mR-KU zSMZYH9D#};-lP9qm(?5H=zO+x=FGzdzhcg=*Q2mQ$G;g64|+?pk~^_`$_Id-KcJcE*0GW-@ht z#_-Ord8%QNh`X=A%o{|{@$hOFv}t}fWD79kz%tD{WjI$|PW6F=x%glf1XW?2~4Ppuk4-8hhDJ0~oeyQcsZ%_XU-G8s`i|0Jr<+*Hw z?vv`Dor`+>71ypxQBY|xtj>{px8pfq#EfW{ef1twp8pUITmKcQ_8b$#;Up0k15Zf;8sl_vJ6Db*s2 z6yLjaz1&*=-_GLim(3L$^Au;ix^9{?XHG)A;pWpD@(-zg;asAlxaOkFzJ_Bh43YNC zY;r6L=2=mFo{o zPfFb?fB&mWkr%J`!>Wn)-Xh^!K({Pdi0KI*FV&p-g2yt+f0_FsQ?eCmYhobZdEadX@%lFzSBXfKR>SeE$DFQ(wuLHS=lD97ky)2z_9P% z*L;z4?^U+kStUJPS~u%xyrlY(%(XhAVyRl|O)}#}Hz@qqGUl6adDp6sZH~mMhBqPS zyPluqd{||2cGBY5hu0V1R*__h-THFt*{3T$FiyF0Yh}&9)pHIeeVm#fD{*S^Vs8sp z0j9)rv#rgh*SxG$47b^+wQ!l~>p!Hs{T`=!PE3EQPJ8~}=i495{r{zG$DdEy59|LNT7Tf;%;XO< z{p;n4L{; zS9W}SdF9!iy;9Z(uHW3_;m~^Qh{ZPZ$~hjZU3Y(du|js5u*J6}f0Y@`3(N~+fsU2U1 z0~Q)(ELWZ>z4DCPWtkk`fAPLu4Oizp_?Z6L@NG&+M4Eh~%%wZ$c?_6i^_8||=lX06 zF`xO}Bir+G`tP5&AD;jB=X~PzcY8sTENwq8$X!jj{%e-egVM4(wyn!}Z|u$2FAJD^ z_Q2LK*(i&7+}%$OUwiB;vw3f1zTb-nv(*hZA9((4)# zd8p`=pG8YwZPFH~I32wub(P10WJSJ5%ZroFb^0_e*&zDS>ap$h)RN`5nTpPG9EjXg zm&wR=F#fyE@fDM-xD6f$zfCEqn)1ju^I<~v2j!jJ+iuz~IS5o|Fz)`Ee&0*7M4}Tvpml>sRWs}YpqJMHk|UI`P;v?_c9BL7AUgvPMvgm z-M6In6_-A_%Jsk5RBI#hBr|72%k`Lp9WyU&p6xi`@hfxVRI@<;FGu!XoNBwOR#9QT_H~YY^#w(D3{No1GivuG zUs+K&|LplQhaImNRW{j8n7?Jm{gT7R58nTOCm$gkxP7^_Mp2o3vuyvnmi<3Yn;$%L z$MDBN{`vz9nLoQk*?1O3rF?&P{6To!U+p(7b)PiV59R-Pm47h%{{zzk0mmCFqqlER z%Moo_Gq?ZEgS9{01F~(}6#B}31qxhT`O@=BkZyDDY_o$;Hfdgab4KUP#GIc$BeG2xxxl?56P_@<6YKPQ5kEi;|q1pT+n8lY+5$M{et6jzOpolgbB*ljjLI0PpfS?nPZv# z>seu=yt}Vx=3KE0As*Im)v|*39PZ-_S4;o$@tQ@?MaE0b^EeMTlm^u3Slw%5nx@Am z_Q_$s?~J7n7OXn_-b174*FB*vUnH`Zzxd;HDeR)&(T&fxTx`+R6=`(m)F_LbZEA4w z8~d^Hu0xt7o|l)2N&F11vJ)0$V|y_1e^mMb!yPXcq+3;QnEZRf)ofk1ccT8FQ>^?klN+7wq%)NBnzoMP*L)JzW-Zl#jmgDTg3OiaJ9LwXY=0a$7lQB_dm4%|IGjJ_x;}o zGY)Ca@?5+-vWGA6PX0`NCd1J0TsHd`MD(?s57Kl>3i(&h>8HSPQlLR>`pzXeZ^L65 zSSsI7fBef;++^vk2P$2b8t#c>fJoK ze9Aq~C#!dzdLwu5$;H0A+zUHzO)Z=4ua>Z1n??7DxvLaw-`bQQM@il<%UToCH#T!` zR5F&Bbt1rc%axah?!2+F+4frS#}RdVM()p_bG(#`?_3SHV_ml|$+G6-GyRQ~Ica5m z&#&Zezt3pD>uvjow*Nnuzd3x>b%BBXeun*D?EkU9=Ue=NFTd*Z?1#(a|6P9b-{nvf z-=bv)R+P9seDsLv+3Ul>>vjoUTOY^%e39iuAEzfOwPOF4T@YjmJHff%FwQ+URQlSQ zSl-JVKf=~Vos9KZcJTY&_xB$t%l|B|_*Xoi8+0-4QAOFX_0i{~wltm#{cpL!?0LyW zNrT#Jw*mtEs{G`WN(3t|q-D!`PfXj(>DGSvxyIWP6#?tr#^+O>osiNBF0JI@STQMH z_z?%+H_v5zJRh@rxN}0W^&wrX}@5@Q2U(e+DxWdt> z@87KC(!dMBM$<3pdDtBmsBCnQV?2;oesac*5BHPG1sU(j%`?(LccB?lWbLSB}aPC4+)}Lc)$HNqSXLh!oe|uubT*++9Y?-P1 zuI4=T`?u`nYp=%62toG0sz4$jHyKj5W^tH>=9QCpvU08OS?dH)4hHWm+ zf2W3tn=E;CcE4n7o$R42tF&XjyL-N``=y;-S-11qs}1|zcZBqKxS!TAZDnXZy0%86 zm1$Aej*#s))3+4gP&btD2s+(f=(Q!;$TKGK$mK;#5*~P)$}RG=yUO6XAayI>gjb58 zIi}mEa~7?+6T9zlVCVm7!eM(Syb78SJa73Lv-sW1n>^Ruofh%d-%4H1>E&a!CGs7I z=I`q>i&xb4?$Xl@?nuAHeo#(KFV*Y7i#(2C)9JBxU;EBA%vOEB>XE%d=&gz8ZJsHv zJvTKxj#GVJ1(W<5n+3!S~qh z${w>?-%T=Hy|r-SzK3ngKOa1M`@FR{pPU_o{I3tkA6}emop|;YuZ+YbCV#z$PJU`C zOp@JmU2FPEA1taoZ)@M?U-#;9!O^GT3NIp$OBwTRZBR)3c0=j=l}#%-Z*0qz{@wEO zTtlNbv#HD8rTcC+op~tMz`Xcg!C&5jbC%B!vWn-NkDmPT;H4)SzK+hB+m*6E3n=`1 zP;Gz6>iP%2t+mzs2d?EVKh*V9Tflq9$A_`Uwr1YT^?1nZ@!I8?Ly=kh74AEQ$zM6y z6j-L6_~X7%&Ev3(nmO0n3(Erdm$W;*<-6$nFKo(u2mYDzna5>+x&|r)TvG47>a#|t zYn7kq2gWN~CJUcdZtx0xzA|Q2|GbI)mtC^Ewq}aNHJ+KDlC`9O_n4xrX$*(Q$%(e7 zrSAOSvwKQeRFdno{F6Q&j!xAP`i+|mTcwPz+?qJAt9iXrgS7ft8Ror=%_r3|uXZfg zI43sEHC^LdcI-D^Wd*NUT4&p%v+qqjrRIOdEBDS8xpNkeOEMm{AGl{*ZE?yjLc3{h zI?Eo9$uly)om^!2?)hwyA8!s@F}?b>W2WWIn`P${bT=xUI6a+v((l#JbFW4%ZZ2V% zU>4eS>hu&_w`)hFn@&BQS>nqX#KOH??0mP?R9wTz zpLpzB0**~HMaLZe?=SU}av{76YX&(45x@Q(y6qm4tt&d?mUwLlxg9F0t58b!lVRP@7 zZ4Li>YV`w6|5~oBg=Z8`be%hyy(MC|o1>e*?N<{M>%L;i6uu<;6?eXPa&PPO0G$OD z`Qz91{hhaZ?tVBkJ1-^p@k3_Ng)IM6)J9sm6#|=NHy@Bo8>vlBtf7aY!z_mzx z--Ff-Z@1)b5dA#Uy`J#E!CHzFD^W_By&;snf?RI z4)pLBK673u+InKe=XbW*MQ;^2R$sN)-g)Pqa_wRlN$@XN0Vii`MqxB-&yFUl~*A`yhT_?Qb@n)`z zB_58!x3ikg+sC{*n=IYaIl0{W8qW=rb8ipqt2TX8ZpR^Y+dJ)6_}^FS4>4QIwUz(5 zd;8*=J?&fb$}Uv2rA*uZk+1QpZTWrH{OZ^D4;-By$8vt(OI8ar=EWfGqeQF~b ztjrR$a1U$$@6*o34y|{1Z0qh;|KiV7dirzMH|DtNg_166 zv2Ih>gjilsD{p$ny)$>os#mNpg{QK#Zk*GrnsP(C$*fUn>emIEIa{4$Upy2HmU+xk z&+7aBzR$hl*^jsOoW77KefH0H?(aKT{wV*w6Qz0m&Z2o7AwOGg6`RF+dI~50`otm5 zJ%vkf`~Bi=k~(jK-b`xKe;9J*qRMqoMTOG^Hc1TAfBm2Fo4dlh?{SU9I=h1NPj{c$ z6Ln=$S$L1O8@G?~Kc+@JsEs;%+m%O-bY&xeHCi`p!iqds}Q|0>a=Z0Vnsx$@agPdp*}$*^Hk z)aE5CFBg3Be7$%{)C$Edx;n?to!<41zttnmaRuw09Fr9%XD@!TOZ9N{Nxez4@7FK6 z`_1~Z@9pGMJZ};Yw_UtpxL9?XyiY8Hv%>8u0Xp~iZVIUXdM82jAW>Z6ebof%*LV#OF%(mwWAbE;;3yHS3v!<(zgtxr_d4cC)Rpy?xT7=OAa3 za=KvJio}S!(Gpiex+k%}5Ka)%3H^OkhjYK)gzRY#YS!^?56RAMZ&1nDymkGaVUzzg z>q{K?y^<#>`nGkY4e#Q!v$xG+jhiVs|6|*-9aot%KEJ=Jzu)I|*#1NBw;XZ!7xYoo z=H(LMOta>ajEMR_m*-#DeBRc-PT@ttI+e8{fgh&U+;|;-DQfzh_|K-6Rrwj(g++HK zoj)TbTJx-$HEE5OzlQd0&ASVhY*?~jqh{?h`{#^X9W)c0wNJXc%7r}4|KG0E&TwUC z`c`ktw?31SJ@ZdYnsVxL&M$_g3zM_!*Kpmtns#rK)+d)7AD1JJA`Ux~6{pO2C|S8) zebdXcyVogA6A{mPy&+)tA*-&dd!kf%ZnOkgew)G}-!IGgPxoF0XM*>oBVO-LJ!za# z!t?L0@cRDRdDGr~;CJ2i@_~u_twlnzQ@+{WHEB;XUF67Cbm`%~iQ(79IiDU?+ZD_2 z`!0jW-Rs8ckJo0Hs;O-2zGi-Jde@vavl1=quYK5I<~YN4o(h}Urm3;7)*LqVbKh*F zHpg3U@032vUm8|bH;q1CKKO254xeJ#Dxtn-i{<|s0?c zkB@hzFDYBWJ3HV1dhB<(Yge{j zUJ#oky_HEsjTJsGP1iS;(v}+;~mdnqTcD1#&{qpX6jQXtEH#etU zxS2j*Q_3vBJ|r?bbR7?ehk#m%SkO_oz!zLxLbu!`?`aq{aQ40XaCMat$K==+E)&)Z z45F^p?1%iPFdr+f2z(k*9D1nwWK~-IT*aqHFEMU#ott>8C0_Vd&y0Eoa|?E*u_ZJz$$`_;QxJ#%$4gqZx9AveE)Pj+t&gGYp!y znMA29FisLYw9xLfX?x_RbIa^!xE*}OSHCr@&3D;?N`}pQuI$&^7xv(u)6YXT^G#XS zOYnc_ef`ep;Niay9;M~96(1=$n8jHAY~I5gN?ZEtV=5l9emYnF?#9W4-_xeJrWiC# z+UNGtF_`CV-Dc(7D);y9>zAr+Tfp>d$Kuu9Ruz2@4zt%y{(F>Ba`uzPNO2XOeNAkd zwI*Um13f#FOMOm+>kkeM;vM)*4?2_u2z5A!NKiBG;^rUO|<|&VMy6g&F{?)xn zqwLu7dR@;4T3xlA8ulBvt&5&%ef5IiD^7VSO)u_mb8I|vHpg&WU2CQx&wNWX;N0eu z3skNgTybOX1`E@a3eja;(N7rd>J=~bURgd_JzFZ|l5f_+q|A`XMj=UB-(w=1%{kZH z@{fAlI;kv1?fUkgNh_5+Lk=l7>zUsAqkgY#$NGphby4omoxGyg)cn;KwJ!|V@ZECp zTIr%&1~y?IIyF;{zG+*^AQDgz(k~}@{@{+*tyah7t7T%VG`BF9PPUclUEOw8CaURi zpLL&@{;G?%-|u+$ua8m9b&9+laX|3DuvwAVD%rWRCPiN~9v*s?&d?^?VqKoQ*svz| z=*#7omUupH75%qv_q)`CaSN0CV$VH0b8$=2Q?IHQ6WcRRE>hi6aAJlkQTgwu>HC-b{QT_V%=EcOb5C_9 zXii_vG-E;U%cO;Isb|BM#)#%hZprQz*I!Wo^Lf3Os}*GQq#GPs<@B65QyJr! zndBGyv}|Ea6BclfI#aLm;bKPHgZ3-a-V3Q0STsL3x?wpZ^{JoRft1jxEE5#%XGlKG z;464MU-^JZT>k2`x6{v^>T`)TOUyWu?p^lwDvN}2n}SK;riF}ZhoyX0hd#X1bW^bJ znQ7hk3rz=S$}T%tv{q?O_@UFTYAXD5o^Cbk`Ph(p!H?r>6T3?G*G&bniuV*9WaqqN zJog~_8k4-fQJUKmc4HNWEiOkL0y2MiHnw+f?S7!_d?xdP4$td1V)c9O?Tcgl@~>h` zy5x=>24@(LFy1-X&3b@$S;dUj+HG}NFHXqtX%=au&NCIAFfrTnvuUnw&-!@}ZKb|M zNnP<+UHIebv-)QX-_E^zx8$a1{uBOXPi@${zI>klx9RzX;7jM1l)9YS5xFyUmUQ3l zre2c_j%i%E7q8vuXR|c>{UU$f_U2h8teRh&C+41k<|GU(gnEGFrb=MSD*>Uu}X5T$AW>2fw z!M=m(p((`)+11@SH{B&aSk`}NWWQN+&HeIn-*kpcN1fK0Kd1;wDhgVp*{HMD`Nby9 zS6@VzUoKRaIsPC^zxM6w|Gxd}t3u|TelCz;;eX!duSD(F?EiXqLa*=tzPIF?rTB&Q zb(PF_OTWi%`E}!Q=DRhPCPh~atd2B^zuoy{(rF2kxyn-NKLR^<2G4%`|H2=hFXAt6 zrq5q$|Nm$ImcqkqRu6wn);O=`wqav)W8GQp^Ov{03~rh2U1l;Zn`eat%a$1qhdzV{ zFJfeQanftAz;yld4QzbBmU_u&U%GYk&UHP-atWrB0a<6aR5P3|2v&UHJNuQ$+9@qf zDW4;%x81f_YBnWf=BAx`7e6F)<^<|KC|=H1R@?QEFYY&kWt+XXPhF&O`NNKR$MxLo z)?aF9uzn-f@=Tya(CRRQ&h5jMS6qIp*(G*ZaNN_%b^6uubHlukFLd`zu;qB$9J}ns z(ix^wo0yoFh)w-|=D3%{+tddsXCl}mw1e%LH`kddmT@O)WypB(@K}F7+|qcDz3alh ztxux&zISrwW&HenN8#fa@Bcka{&M89|3<|9o$4sr1g!;x}yme!lv8iqHH*0sTKF z9{DU`LIVmx!wkrb(#z$+{=uA44SWHH?D>1}3t?s&@e*+E&8 z=9%rfwCMiFi(jT?uY1NnC${AG+wvK6*94kYE!tn?v{T{&uk5}B3+{5h6XL90v_@FA z*2z7*?)OTMw7}1cQ!?tO{o3T9s( zzU}iIro@CL$+Z_pG+A6)StqM>a#EWtZ&=wM?t^C!<^|4b51cXmcg_XnuBLlg%UHeF z&9`I=-n;C6Cf|dmlM*%;WnxULPaixrGcF)$-?C}VwI3ya2nQdwKJ38ymhnczhO-V4 zN)h_AZ{4zrxO{Lwdspq3yYK66&-h{!_RVccT4bS4`olhjGrEfcZCOvUVZX=kktwJ@Jb%Y4!?@yfMZ=g#|1_+Tw7%W9}? z`}NA=FFViIPSV@=!>H$2* zA#pqUR%@;7v!nlR+5Nn$cAz(-p>gg7=_g#DPHkis4&ko2{@^In*`{eXT2*ct&M14$ zC3;tT%XCu^PY_t@7@h0L3-t=QcAcJs77_aehxr8Ad) zyK3OcXS2)GPDIz;J!)DS?*?&)xs&#nT~-S{yjwnP^1rsb^LW>ExqR~cy?w@$WmLeR{k5B&7S;U=AE6n_Rzx2 zqt$Aq8;+l~`uBDJKf&6_kB(DqejZY;tH1D6X=BOmzgjykJvn&A1OH$I_#rdeMyq>e2UYY<>i$e8lr%-hOM9mh_Zo4)e! zRXFnCIZG5fM>0q1n`-TilI!DgPuORaBs3jTkvCj4``Cf^ozJhHySw|Q)s9#P_L>FL zH(Ne>GTBeeZq>E0&C-IO*F|V?y@=eDqSz~EJ1On_T<6!<)-QJD7TbKXKr4H4)QdNp z&n-!hoXz;*%LC{B%bv^UoI9}E{Y>@RP`2WyMz%kHOfI=CTfgk<>}#Bxf6a;9{M1h7 z)AMsPo!?ho-<|PH(A^{Y^wU`!@fk}6xY+k;c*ztSZ>j&!7`644A*a;dl$(J{D+F&y zHLxpO%Gf6L=nnt>4Sn1A7{!iy?PrM-+bq-J%;>PG^kq0l&5ykdDhq0kFim-3Id3QL zpU?{uogbWMNHs9`zl?1PXs&B84O(L&o z*A9Q-C{{mUa%QGvUUc?4=VNg@1E<6;V^~-)seQ8bnI#hPm5Q;dC!Ou29hNID?8%Y~ zIJHT0=VZ4YnZ#e7t$q7WNk6yanDC?Z#@mRz0Q>#zW@ay)q}!iwcwNjhyZ8J1`}+H; zJ_@A%|K7e|NakNmy=W^-JD-o+U*_5`uchle%kQO`gwM#|6<9v6FtPc+`7g&e+Z8xH zj;cCWxeEIUAIzL}N8*i#lc;8g+DprLX^~2uzdIGZcwJxKe^e&fY!axt=k=8>BDLLC zij7^%H%xjq$#`1}`+t`oeKU=hduQ;x(Xpy{!H^rVf8zcxS_`!&E9EawusE}*V(Ogt zEVoZQy5BG7Ec(OKYVwP?=8Rnir6$Wu_|?CAxx}bn(YiZFLY_Np=B;|GPb;6<%$*Zn z<^48l;`e=juFUkXym(Ng_4vfAuFLoD-4OS$N&cJ1u4!k5+eBIen-9jciymF#;j}$v zJ@c&$?jP5uhR1mx*NH!ukhwe$Fpyl_FAn*5ACT~CGdPq?lM ziO9a3?wYK5f`e^^h>OIRPFE86Dmcuo7R}$;lTV}JLotvxw^`mKa zY;0`F!B%kzhik7aD~ugxlpfKkdcJ$z@}u2ifvb<-`gcUw|3ZJ=kJ^VXf8BUdzhI_u znnVIu!Af5qrv|f|ChVId+)nQ~-|)mZnT>Z#;1BN28EzJvZauv#a?tw=tMUI!y2SpqF7o{65P{3t zhdyCJshA!Eo@^S*#ffBE|C*|DZ>NsnK>=rmbNxI)>VpMp4%3tfS!q>Ih zZ=XDUJTt+??NkuwU)j@Ab`gb+ujV~ky>acd@`F5u<_(%y<6<-y)C{hKEGeF zTJr4pEd_#eOTSqv$@IPtjcs7}(PXgQ_rXVtUwGZ}&CSR9rPEJ%n08M7^y+H%%i{U} zZE|mI@Vw+`%#`gDU9EjKv4HtP@qcE1smgPuGptIb=AKw~@ayaAm$&cxtXt^O7SJO6 z^M37@{Ff(Kxo#j-@J0A5(CF>nbT`-HgyU;bNLdu@x=EmQ$f2{r?{x9 zbC%D&qB5RGZE`!!a_r|Lhfcl?*O;ZWFIZ))kN^JWp8M--Yg5lY&{#N4BQUbeyz8+U zgFv%JMz+8$)&|b4tj9$q&M_K9F{+4^-Bz4)u0f!W$)V%FSa!M5AHL0@n_mZLZ+^^u zeZsx+kZYSJUzowfur6y2YgTTi@LACg!3WaQnj_6`D=l*t@{SCf^L*oHVfHh{8TMOz zB*YmiEzQjNHn4d_JX~1%=vLBnc@MXTH}11ValUgm*t~enx0?PpVJ;E!Q?5H6TfXL& zhF5%PiuIB8d{<;tuXQ|(46x?lpSH?7+M!NMO!fSqRkoXT&dk4%p=VvS@=i;=%nLET zPct}#NU~eMV(5uWE0@pF%6xFV)R; zm}^T<>^(8Z$L@`&o2u;20ACgYKP&E-EB?|JCooNVc67uM@+ z;6Ck4*SgOO*KhuNaz)dws8m+|R~5EGpUO`8vC4(bikNpVxl6`=?~!(4z2CLD&82fA zyp|ZOH@aA`t?#UX8HX;5yJxBAhl6ELX7z4UI-ga}^rGTf(0UQ!#2ZCRCa-<=XRB$> z4UV{++bj02y<9T+su`C+^=Dh) zz$wc;izOFWojD%NH+9mTe?pti-(7CvIz6lYVneYR4m^x&TtFJ3Kqc(__6FL7(0Pt;!?yKOnQe5M9z#^_icmc3o> zDKTd+JKv^fnTxM5?{l}cjWwxzQ}L=f*=jc1>d?iWGp#C(eCJpMHq86cDd^)O8nri7 z`}$7j8_xsF>gzk-?Rgz{Ye!-81@nfk#A9DxmK?nrzG>Sl4#g!$@{SoM9}lQbU;T!~ zmC9@ZVZ8;oAuZ z#$_93^IQK*xVOeTL-w5deXV7_m4=bdrHl-07usWcLpggxKG#f{vi+Xq^Ylp;EeatG zWybnBpFdnY6meo@*uqIK)_?7MA3FP8TVF3@nEck%T|55CF4`)!LUzjB4q4s95zMJ3 zm4}#@1*{K~bN49rcy;IECFRGwQ$!OkvM(2xdH?Wz>)qM)pZ|Rio@u%wp}hX~?fYK* zcm6LpenyV3?sFpVq#Ih#1D84PeQ-*D$5O3);m8X%=wjIbk~x%pSFeD{jS=yL}E{Uh|bPlk4p;0 zd-gbf$CXb6Nbb>@?fn50ARP z9G3qVurBZBCRLU;&W7R*kH5}V6AY1+>^tdqp*?()m&WqQTQ9tG+14%EAA0KN1J!-g z?$zwQ*AltzQGC> z?A+=wJ3syXe-;HO%h(h+IQVrQJjcf77XN?#f1zn587a$rW@_y7HcmSueC+w$>at*S z=AGxx8LP`eVQSU&FPjlND+Xt=subYS)8B+?i^#e390w0-`9TWmag+rpIf4J_Rojo5*AkvDhbS( zsls67oq9ye<&U#WtC77dBEMkys$yzu+-9;_C4kTg@;PmbiX!ej+~cd3V$p= zb-HX%l3hqDW0<7hWYxomTNx*Po^#@?yM@z3iGNyOlpB;xDh#rfDqW@bFaPGW{fL%` zuKl8~SBl#fT#?@}M|_29OCMw3#~X7Le{N>mwA|Sv@aUG8Gq>afZ__Q>OHD%?q zzfRVfk7ow_&Of~J+40xg7wxEA6+UzGUOo4xDR)jh|1L05{%hkRYqq&Dhwr~!9lpcw z_g)D**=G~^P9OTZuJZ9B`Nrnl2&pyp?9&}S?rJ$T^NW8D*Hq*7zh2HN%BMGYc_#l4 znJB!v%Q-jE>3fv9#@D?|1$uY2CSN}_xBQ;x_j{%NHBXfS*1TEP@!)^K6_wH)4*52w zu(-2^TmCFEY%XxAEuZ!DwVqkmox4q*_k6xhF01o=?CpN(cBQ(0@u^)evtCQ(b*Z_3 zo+ww_ocaB1k*MC2ymKd0UBsn&`gmLwCl!4%4S&?V=)XJL-d!uvvi~IY2TzQHqH`R{r2eVQ^h z?(%!**nOJV-#Pj7yScYlhP+w4HT!y3+s|{>??hIy3RH(#=3mg*vURJ6&cSu>_@Z`| zXuiF(HTcJ59!st1@n*NrvC2HYM`_Z|W)eHt#q|ZGUTIBX;9gp|E zjDsP^3Q7)6_qxs!u)T>>E|cMeLrqtK<01E`=QXEz+7b?(<`igFTi4qdH|=2HN;`#x z`3oGipIEV|Ognh0PojNQ^nu$Be;51++M2TKs7X|wj8J;*k8aIV-Osq+e3GbHd(+I& zd+MpZLMx&i6t=V4rL~DIa%E8WxqkFj!;h1WvsDWw%|E>@U`c`}qP z-oNpat9a@Ae2G7$H9lwDTQ`SQ^*xAMePpLhyTVKNTemX)t7@MOU|sAf|1@$*gyz3m z`4g-McL)MljroY#1tGadCH~PHQkAtfUO|-j%99f@RZ9G=@px8KP>emUeZGZnA zKAsz2yIi|}bT+Y=*c>aF*1x;#&60QL{ASq{a?SqxZqfcfKmD(q zX2`j7Gl9cq5F9NwboMW+rTQj5ctk>4IhRH&+xi024 zxVH$dy2fpED=MluXOWiYT&vbZo8wXI9y+~0*8R~AIVc&7v7oi zw$HS~ zI3BP*^L%iWt6%ksql3l?f7>js>^EaNlQHEfwW{A&CTo7;5r zx5PW{kT~5VGC`xNc*V__yfXbcldt8=A7)*;vtIM5&8+ZGcbCL}J0NhmR&NQyaDS&*0c`?d-0DvxIMj7*^*P-|EjO;rdQ|Igj`;JWkF_J)bb_aB72v;xGEnwA>qHNd5FRLyXu#U zyw)kJ-t*la&3|p#iz{2#?+)HCnc$t)YZk91DP^2yQu@85E5N?ufkJi=U!^?XLO~bR zDT&W@S5Apu_GkKU(Ztk{V;PB?41_&BL}Y8G?%>|o`E7;GgX=eMo>N#od27&`vn#Hh zeYd-2u1)wffrcvk2k%QCajIWj!a4b6xcR@JTg}k|7i4wUnpD5@iQ1DP*(~h3yZn9H zgzeEXC%ALpPD(rc>#Ea(%0HaPFQ0k2dB>ZFIfwppp0!F6s(lKA z|LJo3xnAG@es9UUn*~AVgT=3lKHv}$;@HWQUg>x&VSV~To16;%UMXX*KP6`Q_gsG8 z(5alz7(4gi{XlPVk2|(|`lahWa##I&ss3_Dvj2i^yaevaeeRFdqWAdSt za}3*7)ohqF-N6bz8XCqG&1ENN zutrv&I3OTp@Zoy%L)pjtiA_gBZe7xBkbdUVAjc4NQ>5X*&98MqHfEnz`PQ%s^2i*J zObb#CWY6MElPEVmXjAp$p?k*hZ*PU1KhH?+UbJ&3zs@C@sOrKdzbxF&Sn=W?GH?kRliwkTrm?5XpnIq^T;$~Q}GdR)$C zt;+phUR!hWJ>#7(xYukctUi;)%p1;ulqojVTyGV}f zbVJvd3g=oY9_GKv+x=rw_sb)~{nO{J*}waxTB3V<^ZI2!Dm>x?_6C*wD1FR6ziq*x zaGOs$&diIZJpauUyPz;A@LKhUsehfsPCa1U=UHLK9pq)E-&i2BZ21zYgFM%&SM+a7 z+t$Hp_lCvyuv^LH%IEXF!(%IXn^{~}&x<+AkZ#{AWf{eAu*xW@#wBoS(ns`Mi3!YunzPo0zk0j(hIgNXCeM zn@<9J|6J-esk`IyQk+qYqiT-%o2Q>#PbM(zNs#1B>b1-1*v4~U;VNfcVGg^a2GbAw z9a{4to-yWO{iE9|w-)X?{w=R!N6+DM&$6_w&#hdIO#eKjSC^P7eE4fSuyF1MH2FOOdG_qY8mv-iUvZb9$JTk20AuC>sL)BNrK%Xxk1GWlx{S3B2eEM4=z z?X}-7lR!=>rPSwd?sV79S$0i*()Dbsr1<@5wju4e&u7M8Tz_0JW3AH+}kiId8sxqu&YBs341%moCe_dw4~wut8({hbf2OPJfmks5&iMe|=(? zO23)3%hFozndy(;A3f*DS~**2`Pmtc*JJ*wMeR?ty?a*8c=KPon%$l9uQxhdbMM>~ zH|^V>B@0%5FfacxwLPu9DN0lL#r4UFFQhKW9N51+ZgurX7UQH-Lh?GYtLJ9y3bWlf zX{%!;W5k1PO&eO&-WbpS#iARxDW>JeGhOKy+VMZN-X;`3ymB)5#j5OkC#2RgZ>f9B z#um%IV)ttAd;aC&(z>zRX81)Hc1>ZnU&*{ibh1U)o`iRax*|U1TURY}myh?n|MOt^ zkv}`0tVrfrY|gx3PP){p?K5taTqwx7xoaltn{JcJS1P+6{PDiA=BDZb!QIm9_q~#e z+Fiywx9Anu$Mv7uxftBz?=#%3`TSmW-u9?mFgW3M)SSyESXXz-O3BX-%8xUp7dEm)hi(gH zn0djmVCDs>)EjTwJ{T8lJD(bz@?6csEj3-uBzKh}-(%jXQ@Yn|-%jn5F2JtZh;pbCE0J@lKlt7tVKQ&o_3TnZNm#)Yfl54(Hlz z&;MU{Yy0^bJHEfUsXuE&>gj107qxarc3*X}|8bH3$6tH-nP;>*CMZ-Z{}Fv?ApTcl zdO*S6o6ef4Jf&;5&Yl<+dtdleo1fM~rn9LNH~q`@4hUy(7mHHPUCh0F+xxcflW!Yv zoZ{4r{QgE|-(O#K+mvvxqn|(Ju|JH}40^vsd8OjTY^y&%zI{G4%OLBCM%2b6*0*;y zHrIWbEMM)pciy*S)4M*^vR>s~+IOBMaW>Q2{;mL)TlY$ygk7i)Xun?M)t+xC6EM;I zHIJ$J;U)Vl&s0vUdGTVUolimX_q4+^6*8IP-9P!Po|aXVzv21H%zN+jY_{hwR&}4o zxmM%Xy+!$kb<^&w-uQj_U8|dq6{W-j)Tarx?!IW^srUNUr}SW^V**-f(yJT0k1nby zOlFVS8dNyX+s@Pez+_>2O1TQ%~7AT#qohAW1nJ7YLlst?Q5|kSKI;`E(kI0 zUaGFHz+LCQ<0glP=ijWE>b;N4nthGd7|yVDpL6B=<}|(s4_-V~-*9r->y^mICZ&&3cD?$fo%wv--Z}nri`J;#KJUQgvN(N>#auN%3FSW_KgCpA z7H+@$FWt;uZc*y#>6^c0X?^7}Pdl@3U!7IaKc~dDcKz_`=y|W-9`p*lmT4w0_F`B0 zzV5RV)IC2uul)R+bApNAPhP9PJ(n|&zFh7d{Up}mcJl-i-N;+pri$;8|Ks5B{8Q?2 zj{fOCRu|qEi99_eaRJlk*liOUQ{|bt^1Gto%c)p zUVi^qCI3-7xj1XO#nSKB`8v(Gj?7_DWJovIsOXlk*U;gs%=5DkcHyfQ_9mDHP2@pWUzB=X57FQtnr51X>$Xw@PU((lghJe z&LnW1;XEFuc06H=k-`E&#fek+mN2qzd@@BhU`;>Idu7)8*N^lw!W0?)PMg*=V?wRs zsy)w_xYuMZncXb}&a9O>%5-t{zL?O7vu~|*+9PHa<~1XRHCZDpVNF?Ajb`WKR@3*< z+wvC9|NAC=&B0gVXZJ*_Za+3_(JzqYhNZLOf?xXIymYT|(tq=Iub*$P zDaz{c?c2$)$2PUCvau-m5+)ZUq*{jSHI2J^g%8duMkOhNOJHqicTODfw9Mvi*1dSw|f|uzL04$>Nh`N=r+F zcU}@GezHn^-lFt*m9zBr|1pv}fBya5-Lu2&zKQfom^Jy@xOWu){4nq2m-q3%{1sJm z^Ir?7eev4qp)OM|Q@XAE!V=HPE!o^MvA4gyU;Ng(tTTaieVBOm_5+5domct6maX_HNEp(0;vX9!mV6lbMNxB zSsiI#x#aiCssFFvHS!5?@eNJg?7*I#EAnTGM2^E{7WMKOVvbW8e1-n3Qz?^Y-XxRV z)gr{Wn^~p8xO21RkDJyG)e6g;SlZ8V-)*v(@c6FQ;+IX!&eU|wjA#fws?gh*;1_Xa zYs*SSwkBPt!xO}Fqc+~sp0!x!y0@}J`C*G~&XZZcl`Gq4GwoXN_E51X1EQy5eHq;unJlYeYmP&xV2&iDZHhXUCP?iox^J7N>L`ooV? zvp-nwt6v~@XqC#W(`^egIBH(*uy-`l-N=)Ba^GjrY*~=ck$N_wJvpFH;qFw{*{nG$S3Km259pR=5^#n`L&> zMM9qG)~~C70-l&XTyGqCshy?r!bS1+l)0+ib<-R4EYD}$Eb}wF+nhDe;$fK4g@Ba* z$Bmm$_|`wu+*Drt!*j84ob}e4-1kn$we3BsswW+j=iS`#@6w|Ro(G?P9PXdBXA6JP znyJTYO@4ChQ}W$c@XYqti{uxZ=l|5{l{0PHRkbT+(xDKx&5@#ZW>;q^KKi1rslhXa zF~&m7z+=~sN9GqMety=G<~Xm>&E08ci{INoUfDh~Ho3>g{g)&jcIWWa+#*si<=?66 z`;(ztFZU0wO&&u9H4gHqLADeF$T*qxL1{r~&^Lbv`tpXB4c3%2k78>PqZH$P{Y zkQM6;S?@;&Y%(vIMD58?Y+f+wf`-Fomf{P0b`~#{<5pHv0V?J?_ap{bK2!D zhw`9?*DT>_#FJs_uhI5zsJfiXaCClXNiNutrO-huUX#4%w!ZgY|dC_z|D8%7fX(4$m};# zE53d)mr#Z*>0X3w$sv!_knQbg9i&29Bz`Bvo9^cy~_U5&a#-u`Id@rxVO6m z`~IJIH@j@@qE^ELpI#?f)V_J6bW{6sK(&`DXVLSO58_fj@x08i+nJ-18Sg#ML-C_a z^CIDc-ySG#YL5w;>A5w;Wusm{Us&qg7guU(l3IVHn6h--k`~a4Sn0Iwaa;6zkK-B3 zYh+K_-s^X^oDw_j|J8)6jQb})=KbaEl)=XH+jDoV*qS3xdL8qp{7NYn$@cmsDA`o- z;@yjkrG|^$xtgu^UD{LB7*vi+>~{uj$G z`&&=;vwNz;R_vYm{9NvrxB2z%K3#LyWL7 zms8s7FR144@nPb0KHR+TfJEy|ey`qXdlXaFZn~y&f6_z~h9w0L*hCL~T0DI-+mhDz zsjjv6Gp6vEy6%fTQ}>t0;Xu;7%W2_ChfXlGl&q3F&5g&qyG)&F`ZH>2{%{GLX^CeOwG56|$&Yu;z~R`WgE^5)>*U2mpcRx8-jvvJoC z+tiya5uY=(Shg74FsunRSb9(jft4}!nX}`*49*Ec ze!pGKjJXc9ybOH4H0rC*)i)(iHvL@HqiNF1d+pfv?$hFzGq?F3%UpTq{MYpzD@D_I zCoI;QA+@>f&6Ve>+}pRc8~X(BNb8!$o4BxuZO_TgJS>i7Ljz~SchZR2EBFba}7T1xzD(* zFU)!O){c82x3V-`wI9rnK5)tScc2RA&%LigovO3g{NK)(JtiR<23eV&c zf4T9@X#Fm&w4+H-%3`D1RgHxo9Qj<^%a4e8JhOp%a zqULpRJmKNKwfcUMXl{aW+S;TfsbBGl$6gvKD|(i_z2{l~zq3Cm|9wM>W%e_lU5|Rh zJJMd5=jh$pk!h?Oy{qTnXYKffvexCrwRMjC_GR*WznnU~rQ&0f)zc-DU#Q#fZM6G- zvwmUa=QOTbrbj|a84lH3Gf%tS+Ei&Qd&}P8=AK38|9^h|vQs_$(o*qwFZrJz+%t}R zc=%=W{QD03cfWMA`hTbR#iY~g7X;=+-Pv5Nf49_}!+ZY1$9?wmp2=Iz-)bs(afR)- z7tSUV9dG!o%MKTxEmUpg`k7r=uE9n2$-IOR_KbvJ(JgVQfp@hZPw?AkKU>UKV2eGI z4x>j&T!-^T{~L+y6O46?o$g(2IPxLcH_Utc8r2(x?TdFCG?`i$ESQ?w_(qFI_@3sD zBeU-|nwlMyT@vHXzSZbPqOmD0A-_r|yUmI#Hpxl%ljQ-SvhQD~ zS0A-$uWAxn81p{0p>@HfHRZu~7u{TS=*aQ+dwb7TMm8A48kunMvQ4k)i)}DnI8P&> zdS7%$sOy2JSw^#>jOQ+DeD%0WNw?aviz@yU?)Hx^6!M*IH&w3YgJ9LGm&<$Chc-Fzgn87gN$qVD`Vr6+uk4n5PvFF_ zeNhixuI)Qi^P*kd^YwVx~UZ_KVpVhda< z`$6=|$+doOWM|YF|7`o~?s98gw{3${!s;nk)wCb~=sV}}(~70J_e61Gr&UIJ%(r8z zdz>#nC=blp?!3mUUA-@UwZfNv6Gxkho9*g7i{tg0d0(a33cdgIO6!GY#A;way%UOB2Bqq$MeKs>m>CT2a=DYtN zG*3Ez(OupPm}jeKGrA1U{HEWzlJ%9H*6P_Pr zf4BJmuUqvORxV$+pnTu&S|{g5JAt|tS#wP@q9b=aS84IHZuVnfE@*Q6%<90|8{TRf zV^DsOePyp{WYn1kRmKR`EMW!a2IjQ_E5tosNcJR~&)M-hXPNM3sRoz3HSSKkL$gF$ zZ!zxkyOGPT>)$((X-jnF$4(q(IVe6!AFEz3DG zsZ{svVZEzte~vwQyYBw8|F&w{ z7C(3UcYNPB*sEQho#(t@N|!4OXC0rkSqMb z3^>HT_G`$YY;Jqm+3T-fyRb2#O}BeZ+=X|W4KtT7I&gN~O0MJXOXl*u=-P6*F8S;e zGu7#0F{Rt*{LJO9Z?C^xt@WHQ>-)kljX!^NSpMD+zshfqq&#RPx3jix+_tPqL8><1 z6Vs<`Wz&2;>)J=5*;lXL)5`HT{H?pR+3)w3Ob8 zp7(F~f@kR{Jq(xeX}wUk_jm03MIVLLF0Gqu{UY{#t$yyU9f2Bx^J@QDvZcA++L*k1 z%H`YD9iT0@$;WyY6`!;2&f1=J(=A?R#ihgiYnO1Jv-dA^u={jj@s}^c`WLU|T1)PD z`tlI>`Nfu-pI6u!7R8#orSBIU?H0RicwELi`FQWLI<~xmC+!BZ_JuaR5|%zJ zRxGbQ)#rKq{ri{6;z0Y=Q)&lft;>V*Zbm$zQu zJDGZ3h?nC`%7Mind?(MSUpRc5@_o(SY>a;r*xHgSMeU-t#znSA9o)(KDCk;H<59))-*0c?VcX0rY0org z!Q9i?j2~GuK1)?HCmlGzm#58g(rtyT+1sf%&vgD_X%U+9&{#;q!;JfYxNfj;@S+*B z9v-=Guq^84gv2*z?{VaJ+@GIy(C^%w4>5rS_eIwnlsO~8z*@lStKFdLAh$x!CHpli zqqw|@d+@{cr60epSQ*f*7gcvvVxg+S|6>A&A2UqutO_QCX zY+s@wzk|7dhH1Cm*OmTVk#%QhUH!7LzwXTL{J2T-+(t~%du(P~Ui|$&%6fWDYrnJO zgTGx(TN~<{CmqcHvNPpqPnYfUnClNWpIS8~Ib_S3+HL=5tZY$@nfh{a+qET13Ys$O z{hlg4KD%<}WGB}w(OR{-8Hb8qI!9F7xVBrLdHW`QxikC!PT!>MTMn1sGjmYu3q4%3 z*ula5RL_!YoB<}&wk}(8`rc4Pxl3A{m?3%-@^aQfQ|Vtb8S&9 zlZ|r4#tFUGTxUP9UYfQ0_=DGrJU6Qe;WUHE^Z1f= zQ_O3Bnar|FUZ!LA!I4Su{*{%%8Naqj@~r9+Xk~k~BGvn5&yL<_=jQq^Z8Um&XXnIQ zx1)C43D3BCDzxO|()y96Jnr;8eoWLl0IlO)G!%#@WVc!)N0N=G80>d|PZkND99VKFq-X zkiB4;j%S4Y5wo1@u|{g%y><&1W(2OeoV;QBMcqR>{O$j} zmZ|JZkzIS(0A`_6M~?~DasTT4&zc-y>jJ=C{aG&-#G^3K_1=^5@jx=eTH%b&ZIR;zl; zK*hJi+W&Pyv(P_wtqDuL`;#{Rc5z;?+Ub1A(!)lfOgWv*i%!gB{r1Ob>imtZfla?t zw#QgkzPvI?Bgpwq_Pa{yw@TNGR-L@hI+3L^M?}H)KF92rzr8iN`G5R;t&+G}cjtTC zN9x{rjejeStk=mj(VUv1w8ePCdii-jtYaKsay>tISuJ*Be9b3;j>87CPh6U(_i}0L z1Er|vOFkd$OY6Rzz#YEXE<0*lUwyC1Y2|xr)t`>4r(d2sg|pJ_wDc!I*-2Fzooh2s zZ{}cZkm4Dbl2~B>={>9h-ZA&*1xECZQ4UQma6!Cd0DFq>Iw{uQ_A1n z^8Nq2TmI5E+1D%HC$t{(o#UhJXWuzr*6+Ms?4qDfR;$@pkNM7UnI3OASM1De@837R zuqSLtzAjhw>7=@3j<4u})`s)5&GVP$*L=3#Qv2I%*RNNrUx2q)9+&e^cH>X)4Gr|E zxV+qdNn?_H_A0(j%d*!r2yondnv?hE-1mBq!&Ox(4JI5xsqTvYi@Npq%{Z88eRhUj z@RsleJU8~&H<;!!2fcfDw_5d%_q46A4u`B0W3_2m&UNMs!||t5@#{q*v#+Wt<}!$!ddhq# zl1*OQr?oL?J!3+SSIe}O^Uvlph_BUED^u9wsc`qz8UD%7Bg<8nEHlVdk}#e(@kYa; z?4xXlr2Q0Ir%AKI>$}_Y`&+66!&$kPvi{7JUERAa zYxRk*B3$oQeDLS^bYiVB@4aZx_ey6jwx+I&a#MXKZgy0@=VYdDn_dLZ`^X8t$6t#y z=*sRh-Y)d<`!j9XHx?5U?Qj3#G*j}LT(ojw(VHq2|Ai}Zymyyb9M7&a`&;?_sky)T z7MaDGAzt^^Z?$LBF5ZysZ24$|a$Ww0T`uz_Pkp@pV*0}AIr=7EEz`q}SqdH7XZ?QH z+^x>5nb(Fs_~z!dCCK9Ki=5=(yG2swb$fDt>QC27QabbFnZ)Um$M)Uz7eZt$3L5_X zz5n00rAUx*`rZ?JPVMez{-2xr@W(N4{e_vAmtB%Q-fl)mU&|L603 zi}kZt-Uwgv^K)OySy89^TfCLoBbu)sx@B-gdyaj*+}XM2{Rzz0M-~Y0);$_>B1$NS z#X)xPR;{z zO^V7Vav0xV+~6&=8+@(0yK;-HMm~Q0FsR zos{j6vvw0p zBsJs9#d3F(E&ncr+!_7SzYm~Ui@#XkHNJ=%imP- zc_~yyFzW?%86DvIXD8IGpWVT9@KK!0joDSUD>~VBE;ZlyCtoVV>=cg@!@48Wy&wI^ zO!mtB;qx|S?c{m#Vt*ok#Mx(;{V5FF{(U>!u1wuq3$@qnn6#Cn_{CIH{mnl=NJbs5 z|Ns2;{UqPu&^hPx|NT8{lJ~~K>f4XUDtDP{f>RYDPxA%)(xy3KM2+Vn9{ZFFl+L92xAaUkn=id2cy31#8+GHvG<<^G_ zCNA06xz>gr&6u9`X!+vS3=syNXKrtgzB9i4hq2&B$@R7xYn2^ezv=$oSyz71#>{kH z$tBNAZP9sqTmStz9-VP%$@)u9>!!~LczBhSJ^SNFqjL{9*6}o`{!6*@y>$*}053<- zny;syF>Tm*x+2MeW%axnuTQ+`IQ%=uz<|k7%cu1QSO0H@?YX*dFa0i9)?P31>DtUT z2AM6QFBeW^vS?bVuO79fZJ|lS%Yg7DXIsUB)fr?NPg$mNxE=M06yDIXOTqs`oMX3Y zgRD%*fl5o^f?F4wM3&rTNKI-JsXw@4<^%Fm29+ctKo&AN^XLDCm?hm^J^Y|Bv zJHE8fe#mDOwc&Q&{^of#uQaVbpSk?9S^kee>O$4W{}0x%8ke1UuCnRE&&yk9T5MI` zcw`Hg$a%Y}-&<>9_%dVt;?JG&e_wtp>V3BVA=xj1m*;XZiu||U@tBSw?8-mU-GD4($_#lJcJ;>a5o&nEdVamfz0SZyqjIuDop; zp!qz{?xlN4kgK@4sPCUy{VRHJ?R(67rDge?onNi4D$m<&e^UCIEm^_KGv!9k4gFcG#N%sP&DPv=ahER_ z>6I~_+m6RAQpum6 zoxO7Vy8F^3&$4R^k6$$7_?NU*<)7z=n@#*;4qWR*B_3=^DZ1CSK!RcGhM5NHTi8C> zHf`f**lDc4dX)37!H&rRCMHJ5%GXSIKS|+I>II((oI0_qBza@KmpLC3 z{;?rp)$0=_fy){%n5$SbGM+G6^XgUB%V{4u9)vx!O2{dBQtcw)tlg1*k*#5ERIh0Y z&!6aw7;A+F>nsoQwf7ps9TlC(V zJKxIau+ru;b9<{kn0)(t2&$4HNunC7}jq2>VKiHQQh&s>7kqN zH$IcL-|6P{E|1g9pop=L>;6Q(_p8-{c1Oy)rUw1VlPPe0e>B5#O23ki)zuAAizXFI ze<^54+4H{X>CII=*Yb9M*zGv&c3r{cdw;}F8kem&=-cw}@vqQ3)pPk?uTIpEox5eP z(Vlq>u_YpP0iR~5eZG~m;d7NtS#Mj>o+^duciNrbUSBxWyk~nQ-o}MFRdou_arttiUTJeTA8&UV!?{*BMJ%eGL~t%=E(&hgUHxw7^mjWy z$FX@XzVXLm{=5Cp86O_p_3Ui;}`@ZYe#@SM_e@ z^UQmPB25;i?m4rX`8WT?`r5zRk2va2om{@DAzxg60Uuj~z_lA2J7n{e-FhZkRK0iCV^k(t1il}96SHcgla`11;ZCJL@tdmiA&XI>!e7XV}B2gi;_iSJE z&bTHd<%K-Ml}$pAj$aV(IBa$1V9FtR(W13#Py7!DWFA=JA#`rJV$0HJr4sDr_ACN5 z>rZrZMkM-5=F~pr>cD4 zKioXs=$3Tgh**koY9xPvr})tn&UZRBy~*rK4hsc#irrdrE=f#9xAgetoomdj|2eQX z7Dld(ZqPb-{7Q`~+pOP4%~=hxGk6?VH|{&#yx-@~4iVGn_wo6fAEK@=RlL5u^QzLk zZIRE`J@MS)T;X8OWir{=_n%4WWwrV>uO95z3XQv&U-aSH?)gX8KfSx-{H&P68=tCO z(ONl2V9HU3)XlS8^UU4#wq4%0x%Z$}{siZxzY<=yoVtBf?ppc5Yv=TQYWFoZ1ADR znwfvb`H~a`h53cT?iVkfp0+VF%}Ca=-mLcX?fc1VFKxcJy+Q2S&+U7^zAd@8^Z7+7 zwygVq-+gzLw$47sv+LO`?aaHkd`sT_eBPm%cet%rNaFW}g>kD4IPUB$7GE2?-R+T7 zpM+u0vvc#^v*Y5l_a)Tt`Ke#>T6eoZ%D;)+eM>ln)x7t<+xcAX*F*k#1-}c*?tRPN zCE8wzw>lD~v&p!k)zp;1Wi8JR9tJJ$2@TEr zYqCEX>+T9YbhBX><0qkKmNULCIN3DWdd|t!PS*p3a{1pmbF)ewZK9RSx+uY8wWVcBMmE_;5@pj&>-uG!Rv`R6A5nEj{zO&4oG-usN{v8ztab1(VPzIUD6 zyQnX#uD2fKd&?zp-~G%_jnKSLAL4Gvd$xCR)y-9ij#(q3Cw6k`)=9fA<-GX2a_xV) zdk?*XOrKoRX>I*>KG@3m+Z?a+{fi3J8CqlmGXM5MKepDJXvFk|u zg2)4ZER)XPy>Pti(2X)bUH17Z7k6enH@xw1$@W*%L|z@xSIC{wUdd<27xca=+Wb(& z49%Cq2Qz}|>YPN+8RrLnUjKWt*PrT^lXr!uvE({9w}{Fdy_=Yke>6<)a*^AsdmrX= zw~3$n%;XZ?`$_hh{Eq)|o}UkOpTF?=yj`}B-Zs^S%ev83B71+^UhghTefH&L$@#tf zmoA^TOTN|m_SYK0rq31W)#|;HwzEE0O*6~C<)eIjU#H#Im;RTxt+ke%(<{!mw!h{_ zaMGjQuU=`tXqNwFur_-CtbM<(uJ7Ei@7>(|#h=gHPJec0j&t(y{zdKbHFMhd<&{73 zF87;#%4uupEB1#`>m-hUv@A~l{I_t;!K%J6yMH{{`_wk>+&Foeyy4V!J058j&XKpw z>Ty@Rz;H@XSLoKIV`&BiS=FX$zzD@#1ye2Uwf z_0xrzxHz+h+20ONT+zc|m$7PrXmcCa6hYHD%|AjO{Z4f$W;vi{?Vg$=QLHTUl(#&@ z*(qkBt%3KU`*{qGOZM(+cGw!E?UmzZa8$Z(-K4@*=gX_2HZ1Zye1O+l-k3{7eD5Rn z2nI=QldL&x`(m7?ajg~JzH^dswE*Lu4bc~WBuk!MeO5K4ZOyl1+r`d`|G0R@j`uL@ z^$$!A%CVO#XKbot&-U*M@rp_hd6Hugk+42L&rs{@P8G&CGrsRpJzB_7S{Lg@|hUR7_p7MK5$ODpZ_g#&L4rbom_C{~HI=60+Bo~!t@-Npd*2!>mvx4bt92@U-f@4rJb8I(uF44={>?ubcl_09+P0KOQPz61&vZvV z#eEmzW;ZdF#H@HeiOW-X#jT%jxm=|V89VP<-acbprqtAetH0NZT5jdLSD$j?ma;C_ zia+8n{q26sy?pYhQ>Of=LG7L$OQxyJ<-hiQku=MHzyU3yq@$={dx%fE|hXS+FlW;mX9)79gNyj{j&lbtWw% z{>f>1n~15aCiF8U{P-8LPuS+)y~5{jOaA}m?`W=Bn{~!|6RW(`#vHdTR!bi-MgSW_p$%War-|L&(`feBL7DAdhF?EJ8wQ>sJrv=^o^YB zno^rQh1I+KuU4?dsn0D@`pRDuAamZ|_N~am{uNi(O{-|utyFcYee&Vqmx=tfAwLeN zeCah?7N)qq<>!^lFHWx8v5%24c80xELF896E`y9yA<~cd*=I4nacSWf)Zl(l-fGh| zby3ERo}K#Ie(xCKZ|+G8aa=2wkzfpE~ExLB{h6 zTnrlzL>YY1WeDPvGH%K&a41VsVpIOq_^nGKA+@w|b^O!izgZQ2EnsJt`QIuMKJ%ZW zLH5O%jcNQ_mL2Lk-x^-|hI3)Ip0>5qbp3d*+uL#`Zt%XnEl)gPb*ZwEuFXHy^X~;3 z#2hv$rd`{!{N_@J2vggVNB-4ZOPe+vG`iNjB-k%Y>dTpFER)I$oUQlW_++g6)mpgHBtS)f>ccfy&8)x-x8zOfp%DkJMSNG3K=3%x!Lx`i)>4~~)nJ(&e{Oh&J zJHJ2etkkDT# zerQWz+bhtdID1B;)Ae~1DtAO=#ydX?G~2Rmd(hI5X`H-or~BkAXy~!-+?W?~>H^=F z%4O0|AM>$=MOuA-Q~Ywp;=V<_(&iWH|9=n9xcuy_&I<2)=WK(USwBC&EWZEC{F;2_ zzqiHzwU%u-`To=C^-K6`egLHBF5(ZU`5q~f5&f3S&^||yUXQtpJket)i+IBGymIrdySSA z;qkRw8!qlTu2y%((0k|e4*50&YTu_{L zeraEypW)fGJ+YlvyAoU0hu&;C@pOgU;z$UrpV!HU2My?!}x>KZ0?z6hM7q@hy1yJZtZ&3buepd|AD3P8JW|q zgc+jOsxe6Ge48Fq)G2T!@7|`Vb{{+aFKk|8x;6PqYx3>iQCAiw1m0ugTkLp*-Ffb; zSL+vXpA)#|Zv8Xic)%r|uN;jWtiIp#Z+zvPlo8+NHqmMFpSdkspS)dLY$qm%UOc&T z)s3?(oQs)HOba@CuqAi%Rx7==v-aEnPmO-LwOC5Ck|Y17ynCmr`#Q@V=hyDe3yPYw zIIu#0ifW?xPmPPR9y_<3dAoW4sgL0&uGK!BSZsQu`|>;eN|*L{HL<8o{*yO(3cmIA z^08~%wSdPgb`qBlQ>^c2$s)y&9lr>hE^mNP73eQ<`qlxg9A z|L1VOEZ_cbT3qDbTg>t)GmEEKY-3jOooO@kob`X3Uq|)x5+3e!?QmYm$h`4|Lw(>2 z8NHoPl79WJ|1rhn?}0|=E!~Y*Jk0jTRz4NoQvEzG>$MJt#f{D7;STr- zyX#6(S|87T`o;TX{sk{Z5y34%48E6E8`zrgELdsMwTY42=S9Vt3l>i#r)=e%Aej)r zwEVl+$Ad->%Rk6iER~A97PIjiXOx4YTx+uBC+5$#+3Qq}B`(gI^Ymdw-;559p2OcA z)^Rbk+-+KWlh2d=zkY+*gqwT@8}tsycl$Qp_#3|FYoTQBm3c1(jh{ID705nwpz&(1 zS*$^V$bW;2Q=X=#FJ7m$@NmO2?gN3pIAUV{*c?miyB+DAZ`w0WRAT?`-OX-&5{lN` zwZ;p7XUa8c*-S}IV0)`F&oyLm&y2I7J-0P$jLv8k&bqZgHMRE7ew!-^=6g=L*;~xL z9p)Sw)GREf?VI^B#3`!SmT$!z*ONDozI%4_jn|edOR7|!KXf{}Q0A<+JkK)LaONYc z*Yal;G4_cpoogs{zU;-~vy~yAcwWCbte?A|S>MWuL4iY1U8AdgwxE8?x5pw4b8o%h z810$)Hrw};m-fMpwc6zyZbVPcU8lYK^qqB!6Vz6A(pbtXE$A3 zDd79~kKZiwYfM6K%d&ojPN~^(zWup#WozbnEAh#ES8X8w)?PRed}vo_S`*#w$1PomB`lUJ>Ow|K}O| z3D54c^M4JNvrExg;NB~dx?|RXb9XPMok?Q;vpz;BeudQZpRc9!7X5y=ubnm1)!}MK z;9}LBGr9FU{r@bqy0!br8&96DxT=S)zYg~A)0bvGXZ=3r*6!B}GUlbp7>1VdzDqdp zb-Dc?M-Jih7N32jj-?&;&6#y;SL*IJWw-YhFJ}<_a<}-rtvkPMiTvEkXOT(!SQ1Vf zD@?u7v7jWO;qtv@De2Gk>x!A1cjlHH4Gq6^<>ch0@()?~6&NN2CoKp%vAwHas3B#6FA2KF=Cept^e&th93FvrU?lCk7ML6Ws9Lus}5^vFQtV_R;{ zdT(&pNvYfXNcWi^Yb5Lp?l5zxWPH9*m*?&6?f8m4taihx=btP)`&Vp^I#xKhan75B zB?ea}pMCnIKe0Y``Uk%SdYKvii&r0U=ZkXp&STj>*=6~EWr0(^*S@^C(=UH-mQJx{ zVQWX~yd8e7*Q|Hzm2E9?>RWd|g5?X#rX$~6d)He&tpEE<^~$ABi@7fEo-1zK-Mp{G zEigleXWsWeA4F6+*~Qs;-mzVZF}h*9ID}BC?Oz1Wi3WaVx@=q^ zd)HSWu0V9*UtUiA!0jRX@)92=6tI@?yx|cn*)vU9_x}$Ce~UvKCA>vagUaTdc-ydK zN{pNF0dd>>Tl^C@vCFFazTe4PdgjqV@ea?+H*b0#cK^oFFXD7CWFznVDTdEq{P5Vm zKc(lAC-=q`iDln?Y6T7%Sa0HyvCR_M`|y!=#+4O@La&bXS86WW{P1UmhCYw~;UkB3 ze_pryCEvgB6Vm^cmh!x9W-#;@XySi;_kEpqw%IGEb)6g3re@9bt&?`)Zprbtd@2Io z9(8NW%P%~$Tli$(Jg=_ZQhnX*n#Ntv+uPqP=+?8E?`QouBtuQ z#{8Lzb}9UK+1tN|S>+z}yc2F~5};qaNEVm^m&S(`F_^F60TQ&uzI>_()-Hy zzgMJJY;Ope5s)2cG1E!${H>j5zs$|A?{>`IpK;>e|Hl2C9{P;28#+8WB!d=R49fYI zY%6iF$NYc;cj51-(B%x9q~?o9Fkicw zk?{DBe|qobJ@0F>Yi{32IrZ%JHmATHYlObrC)#M=HxE2{W7Pqj8wN^}&r5HfSjeXS zzxRx|=*|Z^*83PjAI9{`Td|Zm$MD$Xyv|x6^y&J=uYtR>s}<(U24u3As;!=|P(S3< zF1d9ZZ!y(qdED6YmUEM>*6c$;O8i-?WA-nMa(yLPe#771X@~G3&+vJ(tZtpS##|Y8 zbKzvWle;7s+;>mB_{-vfPG7vt0nxP^!)0Y>iwW8+TzvC4|B{|tZJPSi1LiI~GynhW z#~ZXB)xNy(JT94G-Lc;J4#(#g$ds0qUfi}e`o+B6@0J?XA2iqXQJ=4-6L?mx`^tx} zmTb(Wau>=@UprZuF?SMY4thw&B^2Q^fFRQoT;I!1du{W~gp#9O{qK*x#MOJTG{hs^(w@9`qWl5PY8&9tB zK4G;`bdrEt+%n$zDFM|?>`d#pz7-iXZ{MJx+x?AU)>bL*heezlpRq+4T$hj$d3mW@ zZ>g}KRb$xNs-}M*mfLeERNTIO-_Lux-t?mX-xkX+ZkMl}a@OVTrd;`1n+g{n_mW-k z(CV|yHIrV6W4D$iUa4MjB5GxA)30xDZ=aW1Eo<`rMCFx>7j@Ovv384fyuZF><>ePI z7Eix?W##0To$B+J{eEBDBBmF4B<%=i$(=&=ONWkfyJmm>q1+!l@%Eqd|39&s`Syuy zPMlWyY^$4_iN1ohtbJnBORlxH7fv-aI3_R7;z&^Uo#i1OS7K=U|ITM2HI7=wV$qtJ z3ywO z6p3Rn`%vHH=H+2ioMxWd+?C`cwu|MT*;>Z?f^&{-z7qGsze03 zU96$aP{}Sa#-Fp7xqjWQhqs)5?z<=SmD6{D8sEa39*&>*1UCz1ZZtMNo_5G5+R;Jj z*!&D#X_ei+2kZJ}4({v#HRi&ha&EsLixi(cZ}BnBUg5dOSoiIQ>x$2vf)*X= zIV5!HI{VaF2PgdTEd8_mv!E@9gY+%Irp_f^uJ$gWhZg%5l`?9}{uA70{WCLqagDbDljuEtGj}(0jF10qN_U;eTH5c*IscZLQLe zr*EW}r;ae(C=Z5f4 zw)*q?mRsnr>(ge~?crlT{PjntaK^($t&N_m!q#}avF8YwTKM@>aY$G`i(};8Cazpv zrV9)%3U~PBUL_lBnwoZgmS_FM?TkX{6 z)-d_bw(E_nOf|h*egE&3dJe_1h}DOlojCW7DYoRJbcP~x|I^dcFW=j{`^CfKa!ae< z?~OKU*5vQIne5j8=#3Q5tg;O!i^TrEyV1Chf2R~nx(FN8Ry?$)6Fkk-}mYM zqma5cACF(0wA6j$%X}%>N1wLk-c^0J{PQ{M{%7ZAo}RUGBG0B}-3Ir!|5wP3+TWRW zey;E22-tb1b*8;3w~tF*1j=%_44IJe%S`*H@|*AXtz6*w*PI(x0~sl zy(~UKYh_vU;x8WHTqn&Gc{u#l-S>61-L|3|}6|FMTNArf}&_ z|610JZADHRUB8qZidlC{i848FR@)dScz=}{TeR#PyII9eCY&1uZ_*fG0p!&&2mQ_}PGK2%Jcut>}%PtEnb%~ze;@9p=Kg$vpD zKGn@%Xj%MxmalZ9mk-w;=_&ebslVH5VXYFk85Q5mN{NeczP_o;MdtLrKjR1*SLCD$sARizIFGc zU8y(Zi@w?It>D;}aq$Vmg0%LchAsII17Dt0U3vT66FJ_6yY4PCX!Y8$*tS5p?n%4D zmH!=~jG``R)yHJ2 zo?G8ny}}>8J$LEtyxqky=2~aopVz!)#@1lv2x->o3MS>x&S>&HF>-s{XnF0XVr{2vllq*BCI*!m zTT-US9d<0S4yA4%bC^8YmFT6WETE??2?wE}+ZDjaRWt6F_4)&`Yr zy~m!Wo0aS<@a>f18a}6MBAav{$+KT*;orKgrafb&Lob8-axu0*x7(?IwlE}ZG@fX) zUvrCWt&#%gxyK5wpmrOpO*-2C zbMMQKu%BwaEdBgE-{*7d?XrdDFLsx&?m6zAe@Mn>UjM)RMJf#mbJ@99ZeLOLdK$0q zp_(fRn>PN8dbhrD%7#4c?OZ9GHzaiX`=+g!yXj5orS;`IqIT_lbpPZ10G;ru7dTEI z)O~4e!Lsg~=pvPjr)wSuMlQ;&5L5XmccpQ6@0kx0b{k^9y}if59ah%PTKmF2aq6qZ zwyVu5Bef46Rll~pP?;3;HqiJo!Ib>qZ!Z??>u-%`|svk`(|8t?)g-B=hKX}ZGWnQ zjWVmwW-eo$HHTNVNHJ!@UN!b&B?-w#>Qg7LuU?W{qU{RI)=Izbh;b&TZTi?pK+g2K)8+zo*1TCeCBe< ziS3scGS_aYe{W~C;Xgy{|9{^v+_*S7;`5e?9}p>m?OA&R|NOABN@pH-d<)f;$>`OJ-0t(mGoux{p>S%x98sU z77Ci<+x@*pqvPq=3N9uoptPfh+Inf6Zl{FY0sP z!^=mz%2RskBMvXtba>_hQ}C(70PIb}gAA4{Bdt^nQ72^?I=e)8b=3 zjNUJ<=P2qYuZq#CV$j!qzCht)<;g=1=e4%gNnEPXwJZ9~C%0tV-dv}P3$-H+pVoaz zmY*syE5GveY>A5Rv%cNtoANJTJHFlDE1JpM{b0M=rF925-n*v9|Jo(uo1QM{{l46B z$+>?)lgdSR%eNQ@7(Y=iBIh=`xq~I!^5lR z+1I~R8%3=HQ zh}W*~jk{kuvW5SxtzFdG^kKeD<)Vhky|c|PmGA$Z%Vuw!X=op=_x19;ySpV;yj{+l zb8Yv7Lz^Qr^aame|6%wz;;`AYgAdfsRm<~kaO1o+VQqA|m(3B-IoX!a=V{Nn|8Jj? zXjF6xU+%3!|%5Y?rQ*EGvM%O}?m0_$v~izA(L1Kf~C=aWhlf=0&Ef zHtiHJ;jp}x(wWxnC?QrjBi~l8>|z>|!z7D!(^YR6op4)tQnNWA#3b@9i$kpVDRyVZ ziRr>BNjzECI=E6du<9o^f~mw>qUZFWV@5w zJAE1~X2$>gG+pvQZ-T(Tyje$YX(yj-xVBB}mVthy3}-~Q$E}!cj$*F+=l%KlQrG6x zt)Z@P4xf}Yp7-K~CteUb*CH#g^NZG9; zn?D4em@!A$;BUSE(y|bXU`upeowT^Fj z&j&I+T%j&|#AQ0?YraHoyH)wMzoWmL@?L$Ehx788h0cF-!YVue%oCedtRKzcY*8g| z_?RQA>`T!#CtElDy?-`kL{Aixnms+Pa^|&l@yDf>FkZ~kjo&rp-k)pRxg9Tl-}gPY z>RoI2iuu0fX~N0QWoG+6&wamS^Le}ed3C=yf3^G9%=x$FyO~wdznWcdy1HL%5!KGH z&Aznl{S80!yI-u?YW{91V9f45*1x=bvqA08CBm5(A06Ffy8nd3i|PCSi2i-4zn!bX z^6eJUoV5JqMf;SNES|gO?v59SxL3sJ7)wZLmgXfFglKHY+_+z5Pvni892dG`3ore) zY221`+pql2KlNR2E}hPd@aNyU;aTdZE1g?Peg;)dJiFj>x=-rl2Ojy)r2?gAOMm9E zW5_#jcds{x|HXbL&;ExaW5Ub=v(irc6R#8vcQ1_JFk9d~<1B54CD(kG z{|MvUY$b71?!b}R3H^V8ylRmQOf)2VMbb9Wn6)OA$sud}Q8e=GV< z+ncZjCoe9V`B|XnhLN$>wk9j9^OLTgIk9Zjjl`!S8F3=2@3evv>u;pG8_u~Ld*A}^ z81)_7m?m9c za%;tnRM9mT6GMfz#5`I1StL{Z=HJ9bmiu0dZ7g1dUthJVYmfDx(>HrV4*Jg4xqr({ zQuJtMbIkHTyvAPjW)Iy&{-{UKemiStA}dekHq&2C;tL-yUMAme1Y&&1iw7v;O+plRs26nSZ>xw=M0BQ%i!~*DJvp|NbbyoaipU zTypdC3tgAbCq208wY&W7qWs#=vrCT8E#Fl3CbH`H?fXX(o@-hCyYcwNj^t@vGfr=B zlGuF2A!qi6Y4giIam_NSTy=%{+}oo`ox673&Nw;gsL?!zC2T(|ADd52TpQe)xBu;V zli8=|+Gg`@-M+n}ZPl4&2kr0tvEKDC{J-|H)vxb;)l;n073(%hKWC#D$a+&_&K<{_ z47yR-=UO^%Ru|aUKD__0bzW7H=-%hQ_AfNw_pzw|7UQhdZ33BTk_;xNN|WYJ`r&X@ zb&8*>PyU6t&x-2op*;nf5`XF%=Nn0HFq;UWN+(bWXP*{-a99;yxonb{v@+?DO+Tv-e%L=zNxW~ z%EKqIa)$_Ruvh-W|7Y{3MUAIAwrz=6^TGO#`{A}yt{aXXbE-nQEwjQ*QcG`gJZP8w zc-Vg8rdY{CThGroUbwT)xw?w(V7<6y+exKoE%kEA4C zd*3Onet}hd?)kULmy6#kvi;sK`eFJp(M0{;%+i2;2fiL{^sBh$z2c2s*0zY>g)K}o zFR2thnb#F&SLA%N-(~jQ5BJu8-{Z%UfAQ1ht7?HKr_O8tYkbA7b+(Af&)Db7zlUea z7tFk1ck1L({}oEfUgm2(Hp~k8VfxPgVJ+k8io-&8lmA?>7IW*E8K-yAl zIR+kBs`R@21FMutkouI>YyYoGDR>nc>vZeMrcFopt8M(C<)?J~yn%#DUfe;RfVQi5 z8TwZhYPgBM-Y2Ol6JhmX&ewk*Y&o1}tY7Xo)6aOhyrc25vkRWjt38>qc#oO)8kb5t z_w)OI2UAO<=v^``AJ9!fCYwVr(AS*VZm?{AXwNZ^zRw_rC9G zzIFRn=7RN3!s@<@ElVLZEUmF)p%=%N*c_((R<{pu2F#&M*;JM zSMQ}KoV&fbdb>?BuRin?aMYN=|)*@yQmfA?9Gxh z-mzu1M|2QzNy258?PqZ?V0MNYj z?QoCcl*p&zcP`#klUla7`um0dHJ?wHXf{7u+!y6G)hpCasO6(wvXiLfr7LR;MXQ8a z_qDrutY8Tc{&#F{|~HL9(w89pAW~YW;J|giFh+np^>k3)&mjO z!)^Tw_V4^xbyM~C17`jU=j;Ay7o`U8={VvXedzxFDQs*0?AcnT?=o-m(*@sI-~YWf zMaN~){>%LGA*x-MSr~;%k6cg8)%oDextrlKzpck#ri90$a=#*W%C9(B``h=m!6es= zYgYslllCrn;2hQZcU_HS8l#Q>ht|3_tCf!)=Kl^gU3Bu1?StzM@2ayb<`+y^lfEZQ z!v4e($C)NC;;tHg`EI%8alwU?0h8QXSNxx?wEwU8#17dKo$l+OJ)%5xHoSjuNaI{# zVnC5xd#Ijj`s7*bw<^8ZVlpczRFW&i&eYPF$${{{IsxAtDX z&~0+&xt&kMzeR}_TOw8m+{xN8`-Fh+ueVJn1*0an%U5-Ldw0|Qwb{Cb$K~pq(u{6I z>`zpl{q9yofUVc+@cka&?JMR#;hubLVRJ3doUSd^=lxz~jzFpFKYudg%KhPMrQ1ry+p8^g7E*l=as`}4v zcYxt7Yt+6!5*N=*kt|vG_QHz0C69Yc-rJU6JoonYi^K9iS1i;Em|0LLo~racHLUyP zh6%Y-cQM7Jw%YFV{w4e;;)2&!#WaP9Z-RKrJ{bxedS@@t;B@q_c2q<-OM zQ!UFn6waH=wETv&WK5%o*n`;#)6S$Xox8Q|rTvB6j{j23{+<1r``Xe3KNki(Sde|b zEVn^+9m5tSKD8}N7(PX&p1EelIX7dGqk8|=yqlYykJine$)o#X+S=PUT<-W;m%TOI zeL3!_;MC>cw*Hv))Xw_K)(>B8-q>-zdbqy*ny>WjU-I+(AGNAJ+f8 z$e5ti6L^_j|3rNFnOcs|THGgeqqkl7zW;ZvVh@Xgqx}IH7KX+N`k|bqi(CSv9G3F< zHchZkYpqH-IMMymjg7)AGIzfpsNFPGPKx`-n*-@Dx9|UHT3XJ#Ts*F(@7ns?2cCvy z9=noR^68{{(eJ4lEBxXMXEAIMtIJDRFum-}J-@%qe}yU}Kk_ObdC0)O_V$lL;TIR( zuv8BTugSmXu%eDL$gD+@`6ij%}3Re zdzH_-i}`1x7UdZYMsg@mU0nNRJa z_Wj8)d?{P~=A%*%_oLraP5B+fP0$E=a-)D`*!9~loJnU zwzWgeJ@NNK%3_&}rNL~)K1{cxT^3JJV`7-} zD&cnnYphdy<%=cWRURkbvN|q}*{)t+vhK9W#fJ>NyiYX(GB54Wknoc33{w;7WnZvH^`Zrv`71R(#YgKJEo(IFcCKa^ z*~iYG@_zoW{Z9O{JO&+Uv%E>aoK71TKB{1}Ry8~R_ox2$!21r7EUDg#-rUdiCmq<^ zzb?kJy^1|zcE|!_zj(*@d;jG}?7pIxwzig?|H9q!yUw4V>n`BFU%<#bckY+v_J13< z<=)ogdvRl}Md>Y(U(4(NrOz_|@A0u)%DAj0qww0=`wnY$E~K5G={Vbb{qn-c?!o-b ziUnGZ0ro$yd=?UVe(Cf*hvZ{DV!D?bn}6TDQ|=HGc))nt^Ah7UzvcZkZx$PcG4v>0 z*l4_Q@7}4OUr(`HA98Bheu>_ikKX^?^liSI?0x(8{Q~3jR_?D9&OCLhP4t<-z`rTE zpV4(^$mF>V7rs5z6}R{+nLbC;TDElWvzc0+G8eoxl$diD8$R9CcVfoxkkB)=vTIff zz3tcQzPy8pmHqMLqNVc>`f$(wxXZ)o{RYp8QaMp+!SV|PXWX!k+LikKfy3JHh`YBB zPQ7}fOO5;Mdz~*FGngHgta%u5S#+Ir_L2veLRW3f+!P|%#r{WoYS$)f;lI1;|10kL zdTn-O@=gEa^7TqvOG_@EUbFXg@`J)tnaeM|2wbemJb#0m+Jp6{isc=vS^t|VinH2F z&bb#U{NvyE`U&?cewvoNEzMs%J+9)WSo6eKFrudQ~ zGPd02zL&fEP~)7lmZBGZwZ3LKhV3zr`)v5bpm*8zm*;sG##ME^oU_V=SyQv$B9rZ< z`P#YfS;Dg=c??oxH-$HDXi}U$gxj~ zjO5&F24*WoT&zoOicY`yG=ERj3Q4n^sN=IXtqqc!B6PT&clpW5%eihaF=`qnMC?i7 z^i5rRZN|mJ5vL8Cd^=~a*!-9?%AkH_0P~kEo5WJ?2~ILUbWbOGSI@oA^Im7Z-DUb^ zn)&{jQ9J8I8C{|n66FddcWz+*{rw`h{+ea$*74QViItX=1S|~^J{TI?HduPycxnz7CyOiM+$V`s;M z3zqfAR~d5tS~!bO=FL*+{9m%Uw>Qnaf7I&Li&x8{^Y=x*aIpJ5^ZcdR_kW3HTHmE`>ti0L7`StP#w*F7$ z-;Szn(O-CSrc>u6Wu+f~d)XXs-pgd&mw)T~YEP%4i$}v;)n`Rdd||1YviS1m0%3K> zt~7Tc^U9*DP3k&VuH?+^`ITrY*#6R;tHRq$BDVH%tfbQ^hC6H=dMsL2H4f{RYi_>N zIC;mZXw~H=b{jU{5;{_8GA}%3hNioo_W%FWth=Jij<9?0z8V}>%=G+`;=Y|OnNlL3 zwfabyL{MN}i~{;aB&0Y;)by6;9X_pWGA-o@Ki7eUFK$)hI2AQ9aB=mE z|Fut?OJ1GScA50=-S_>=XXpPE=9RwZx;j4caMT1L+l`+%XBlV9ZQrb86KQd3sui!i z;heVbJt@Wa9jl&P{QYwF{ahxGg|FuykXYIZm={?odE=^Lnk#Uyw=EX%0XHst*?3Ac+ zWjnrtUFL496!-2=KjhA|UDzaXt@N<)Qt4wo?VqG}J+oXO#$u!3!E2IO;2^Fmlf+=O zB1_zg^@r)yr*+lK+#Ld&&-N~e%sB6~`Dpqs57r4SX(-17mhm}y6MUs5 zh1s+|Oz-S{e|^J;o2DOFB6qmll<#_S=3<5RA`QicoRs%mUyO^lT~j~%SE4R>%A3am zu_IcK_l3Z1zBqwwmt|91NMJr|q3ElK@${UrX~xeG=7gw*SfCasGX>o8h=E!Zl~ zYso5S>q!S97+zhH`|#TNWcGg5&r@p^KmK)1(Q|cv>e6-9D(FMPWQ~Z$ zZNu-R!@F;-Z2EmD)Sx(7b=8txt=G?ftIt)8=$2AA^DR{VRHpNf>)$qBx@eLan|||s z(jJvM4zb)n8{e#W*4P@i)3lR!m1EzLla41<)*OtN-Tz#@;I+%SMOo)(-q`c$6PHp} zl~%@m?Zvy7cdKoXJXgRi`8>X`rafV`x_*O5$y%Z1NgQcEI6Bk2!cRUt+v_FnUoujM=JZhsN_x95;(!|dJfclL|vShacO1l`_{xcJWDb94tvwf6a`Nc(3q6s+FZZ$Mi5IZGJw4;%;-%}i<=j)Z~rWDbk@wU zSFai`SG4&y>TgJU7Jld|YkFykt%kVXt`EFdRO=!wwKj#lzL`F6S>wODs9iZb1N0Qs zt)Mh@Pa)TWuDNqFb~8jN7I2HP zbUBKwwe6i+vbe!C-N2$*7ark`HF>?jQXu+Sbr~-xw>*gnBTHSo&INw z*NXkJR&|yXI;D`xtG&K_&GacBD>fG`RJitJf8D14ufH~gSp|IDX{SGt%Z+_SaOLl~ z5-~nIGt2d zzC5#hcFbfD3FOF7=y+iBj(v-6XjaJjYnoS{1nxO`@u-u;o!6hFpGk6f9%=b~Cf)vc z)8VafxrnvW`;*rsxiwM}_g0;a`gQ03_spiWR|o#ZeH3?=IqSrzw$Uc{ z-kyn$EM+WqF6r}2<(PNXGP(KqxX6ky?^i!!%d+^Fr}|un)6?XA`|ZE+yuDxE@$Kz> z=iOy}DY}|3SZNeiMapk8Gq)-N5@}G3HBHL zK4qn5>3R3Jb(`hhay&gvcZp%L+r>*uy%`{kQM; zyTlLW*0UL{Ganvu&DoZ<*w0KpD1CPcFT?3q;bE7j@Bia^Yilxl?ZfW>p6c@o_B3!> zoJ_a9uk)k0bVD1@zvA25auXAF%uG8!_cX(nt4Ew$Zt^hBluTJz94+}I@w)7ms2hUp z?q6mddGWYDGI`PIE5>m>PJZf!d<*}+oYcBxl{ZsN)Xg;KO-n3J%--Ih_#^gd3Ul)^clpX0`~Ek-@3#Is zW##3}kBeN5%oj?s-iY0jq1e3k@ylhi^OpJ7{dx@Q;$OC2UoF0MLs`Iyh=b4Ooj<)I zD@6KIU5!A9wrFBS`!w$rwnyHGNj}kH`nR{#IYV-a{p~I8c{4Zl$bXxau~zaHtNp>h zEk`d-4?DQ%;pfX5UQrr4B z{Pi(OcfG~Ru#NZJzXh9(KIX4p_FlL5)X8b`iBa2~|LSpc#;UGW-Sft`&Twhp-)Q$! zyqBu4FS@mAiP_Ef*U$UAF74YXXZ8E{TaIMo-M5_iH@F_-(|fM*(qqcni+b0tyeT>H zolpPb0{<5$WaoyQb-d?TV4?r*t96`j**Tjp`&st9ewfy>guT@0K=0ni0Vmo$7p<^- z`Orgm@#;poCAMcbZO&I&_VM79-`Cz&z3y17cByQGSo)(SA442Ere@uJGvU)2qt3X+ zWrb?t{N0jg#XHOuTORQ6u;)yOIK(sa(xV9J8uoz4N)rT?PRc&LdueJxjGLvvx94+e z8TbD5&0jqK&lC4A$8Z1hiU0Lo|H9h(J&}+2@{-<$E)C-T6Dl?DztAe1yf+b5hh3*% zTC`Z~;=0(~FP`t;(I{8@M{(D$RoO3M-`A+?{(0~_^YOB?UslK8bE*G%dVXsA{Z4f` zZ{ua>mq;3?Us|OezH!-W##xrNe6gihmwx$g_s{U-_E#@orRfIEbnBOOV>R==8gZJf zvF>1{c*o5z+s*$?i>vzST6KB$JtyPza}&Nb%;q}x?M2_bc@Kk*&zce1>o48moVd+3 zUWDCi(bGmtp1QmWQ)%;@g}3v53(M~P6EVv;e_exa!w&sFulHZly7p&I^*h!tJL~_s zKNe^06>1h|$l|;ntlu3Uq@6t}p^8O7=)koM@%b77S|UbouPn3vSw5eo_T8CHk-?iQ z`yGQ=XKBYKoDFTaI3k|izCxJi&Dyw2dop0P12C#vO} zN6n!lPa*~13VDP+om)8n>73*#8Z{RV#J!i7j zRCe1SvD+;_#ku~RhzaGqsrvNu|MTsk{>v@*P57Q?k{Z82OyCdcfQyq%gUe#b;UVxkq#)4j`|JWo8RFj2Nn}D(umPM$e>QY|hYmW;igvPWb^tdGQkqyxKi&z7D#y>eq3_rGWZ z@xy|0Ur%OiI1zqir;TzUr|8txdtlF=$QA`SSzN7 zcbBkC{ZzeS^~cAi95YU|Z}9S5+!j!@Xsm&G)oI)EgQvq~G;lkTk)XWBTKo(g2-x z5dl*cPxX?TyO7^0cw2(+OX;AgwehT3ssAlM+1-^fOM4zz-T3WxuUji4^VXKbCpS1` zr56Xsu~=3rc$h>O#@g)sd)Gi$wOda<{<}b$rC1GzWASs@?ZNL4+EqQd*xuavvZSGO zmCefXqoVmK#&?n!UCr;7DBJ$|u=w8Zsl2b2@#;v#SA106_5R>))(b$qGNxM8bgzEi-d>os|1GaMc+R@)-}uZ=UE zCn`CnGWpJIZ{C}I9!!@S=Cv|xeb>A`LCWQs_vfpYyY}ro{tA=9FCYY_YEky>r6fxUk2rRQfA@?PAZu zw#kR8PTra-mslIB@H?i}S?z?eOzSDRdDCLNR_^^)v*AptdeouS_kXc8 zJ#n$dNlmoS!c}#~S$16ot{s=^yfV)XePp}(%!@6(OD}%3xpP!cCT8E;8~c}q z6g0o#Ok(KU|3HiDc)Z9Sm+M!)tlgMr<@GjTwvwub=A{Zz$wsxxUxyZM*`4s1p+n;v ze?Wcy{)<+g3*vNT!VI)ut~hn=|J@Cr&z@*G)8W2sQgy1>B7K|xO0_>v|4;NuXqMY| zcxBo_`zF2Je~QdRpJraZ*8And;{L9*!^ie_m~PK{D!k=Yr+Upy83yl*eN#^J$XKgp zeBQIO_~p#>dBO}$5uNAve^IJ^;#{wsGCBKt?h@gC`+0U>Px^1R+}vyTZDaq1&FAg4 zUq9TMUoZXlw78u=^Iq4gS2LHt+-85@Q+-a2&f4g`e)sfSUY|9;@6~VnO=b47T^XOJ zolSby>|DKe(aVLQ{g=}1e{qz4!X2iN#z~b5+i&x$JA5s=0k7CIl`>mZ=R9o z3(f=g>;kkplm9F_%H3lxyIt}>!-h6qX~)UxeoL2nPm_9H$=14SmZD-wfY+Az54lEt zYutX{n3gZTS!zr4g*z$ImHj{Ezi^u-Mz!;coyjw8i)N^;WQ$f%WR+lhz_y|38uxi| zZB;YXZ=1KR?sW|BpDkPsyU)jx##- zRSti>W-Oz$+hfkRCtG))TzL6XR#CaMTeyX9-no~D)ZWy~&WkoUaIa&@WG|1%RZN=i zDn7Wsc6H3W7_&%E<7LT>GP^|2w6#2qyYE^lCvPc_RedICy~VVyW6rW02R1BBwoM3c zU^=nFIY6xLqx(~j6o#8q6}<|Ngm1LkWfPGn=cyi6%oiUzr*6-;8X?BhiK+#Yg^sf4 ze6iW4VUc9N_r@~e>Iu6nTrWQej#RzYe@F09>XoRBr5|%jj2Jp3bMr!>`2gz*PQ){KgJ zyMQ*ghwrN2rF~A&XPzqjVn%YGSnlPu+yBkn>Lx1op!C+ZTJ>z}9{qFg?p9~M{pFiv zwWe8q<=W=6lT$g@Z>~S@Xt;H4^zLbO)sNS|I5xY^_qg2VIsg7Wu6Ms(_GZcdzbF4+ zdU5ga%QKt(mmBu?FOS@uc4_DHIoiALILJ51c0NejHFvA~^nD+_q)yHf=lD8ro!-jl z*K~JBRC_Es>-b`RyL{CIxvC$IjA6^?7xKOC@i{Twwz_Py+IvQ;pHqTcHzghMkkvU; z`f+x!liRHiwdZU$aGhJ@%>H|2tEt2C`5T-3tbU4QX^XIYNVu-p;F<2;-syO<;o^j& zW-YFJ*Iw{j%kqEKtO;FW5)9i?cc-osF>R8&o>HDTEjuz)m2=_ciQlFN`&5a4J;LdFxWAkUwGmGgTSBi+{0&d_ z`7YJv@0SQJcJqiYGdSV0L**%_$W6mjxlGd~97NBoS(+92PSIpiV*L7()nTT>Um}_8 zPe1wKx@&*Z&c|`t!e{RMU^JUmvvqk-zSJZQNgLr{$xY#0>A~IGuB-ZI$enBYze_f( z(s8fwuc=NASH2W{Yz%Ii@6NM1Xpi5lStsX+7~I+8b&d7@@vH4S3OzKg%j{g3RJk&3 zDeo;0-@J2H55uc8&u-27_`_40& zc`ZN2J^uIk^_SM&t=_}=$XDg=l4}zeT~eFi>nO=7(i@zEBzLjj#dHke#oxUZ@Gpni>Dvx2-q7>G|LceSao6@8Jb3f@`A@8J5trWYejg{c%=Oo+`nuVTA=0)# z9xR^cT-j#od)K7?oX)LtYJ1m4Z@+N9{-g27+qX7VYL{*XjKx zYTd=v^K2emobaRTMr`}_Dmvd#` zyKQ1xc0PNh@3FUVwk~*5X`EIX+-PzmX#Nf}EB?p}in)TkmsW4sRkwGJ>!G#2RWsWw zUnnjMJo!|^dg7*~>_?Ly9{m%2sb8hQbc)uoAoptpiz@D|`#uW3BF@KEQ_zptpKB3!XUE;D_Ju3SMU)7}If z_h0vSrr!SO*g2S+V=i*-tza;l~j7~&6;p>!uHiXOec)yuUN2p z&8yW4FV?Jg6=*e!8vqEoesoeZ{e}ciRli?j^k{xquPHBP;|L!XI z`@Q~u`73!1R_>WElP|w}8y)%i^M%D*hq5b8T%jXg{-{Z(XK3lA+ac}jv3;A`W z%`^5b^Retd{VJtc@e!MxZbIUj8G@UB=RUa5@MF{8kNow|_GzB9u*o`Eq_sh8^??I? zb}_t#bB(VsGw@#6@%H|8?Y>8IcZT)5Y*S2(D|&m=fQPMIgu#6$*P-*XSe~D2OfZ=~ zU83Q`Rw)hnCEup`Jv?z}23tXpl{c%|$Ag`FW7vOYM_OzZm~!(BCtInd-T5sNRcv`> z-Fc=h%Tn&8Gap&B%j0Jix2O?oVTAtG?qfEw>w>tm1?4NBIG)?>bhzz1N2we4nFgLs zV!DwEE%Rqf@YMgezMm-kR{2Y-{y%Hom<ymNs)uYoCZ)Qet?gW<=mioa;?%RF}3 zX_EeozjxDJmgJtD`u_G}Uyd~ihdXY(KAGLJ_k{-6k7;Y>np_i-xMsL(!OhnlrS8F- zj5mia`aOZ`^XAWH_RcE>uf?+O(9Wp8RF#x&e4=Ub94WU~GYd4l*y6RO&7XQNUi)u( zrv3sgC1I1+cL(cs|2^i?+H<#b<<_r4)|nrbCtpaD?c;p9PkjF4OWWmI9y>+;Yx6wR zb7-53p0%3OTf^f&|EPadd{$OHNj@N}-DUkztyS!`DJR*;o6-%7h@y)Ih#V=A`V|)Tj@Hd(LDdA%JWCJ z1tobe#(BJ)wjrpD^>68UugAYy0&~vYxM?b_nm0c}rSP5-A18wVYa_FI`Hl&PT{;Z3 zOF1vy;iz3J6s91`Blfs^l4x!t=OOO3 z{?5(M8CN<2bM&O$jy~c`RKG45te?bL_d@x-@$Rz=u0BY2-*CY0-3{RzCf8hxE&3xj zrx`L-$DIjIaEaeiVCXyFu6tg^Bgku{aU}izIki%-I9N;&jZ9~ zbF8mDZk>7Uj3kdj+r@p%?5+E~kI6PkIR8Gu}^Y3)t31s-Hay!J4hd}u#61OJniDrtTe6RyAb`~LTWp5-@- zpL^WpmwjdY_{eS9h-YO^i|<^&?!B~e(w*j;g1HUvLw9y0-1Ms0w`#|^_kKGzzACMh zd%zXtyttRkedhZ;uk(8fp9yZ+d}zgdQF-&9@oF`8e-3=EU3SP-A!c&UPeCT@_)l7E zPsGOD`KmT2;8wJn$xZn~QLZ732b~rkZoRjvt?$hFA0gL8t||SDyOen8chARDD>u(x zxVK~Wwi)vmc9%`kpS|sRfc5+(*&?Mu{P$g1o=u9K)b+>L$|+Lx+x{on;oBYkjHiCx z5d4*AY0@;6gJKQFUE8&_I%=xjcm%2~)Gr+SWtaGE#|6ELq6WL4?{BVZiA`Ufw5~Hi z-M=HPUGB@F)z*{Pzh|FNxx{(!hp&`pv#3o^#3jzsdPU;o8{UJHq+q zEbe8l@HOGMV5gWiduC2=#X&KRFX|Tm9!6eNU`PoSXj64R`}XI=!>6Ms?&o`bB$2g# z)$P3fzA~S}_kZGgduyllir}2jjo(?-q*Yucg!UhAE_s|^=lgSY@t059t6#3${cai8 z_WEmYBG)LsT(G|O>FPzMH+N*t{$R>0Z`QMJ-!rdWZ9Wt3&;S2Me9gjJZu)yZ*!0Sn zHl3}1{E~rLg<`6g|@7dx8Yt5CjM{=U{}LREwBtm}Ke zN*VGl`v2f}OIGt`uC#qj{oB*$M=LK#`n84g(e{$Rzwf!fmei4}JyZ1YXVbFG>;IU) zTwVW9ym<+G=A|Q^UpDsF&T;FHQurwCsKxd9@nnA+xBMMXivE>%W*lMg)4n=u&65}R z-Q}ug$W?zaH0x(7nWteW`Y>H%i^Ly2_bq+X%(z9F|F74*uGp>nXVwSDJ4{@CyDEbj z+!SnFA7s2yaM}Mn(ppve#+Jwj3q_mN_-tN8nki<5CI&xj;Mwf7FZRG>&WgJU#V>_8 znOWrZjNk6zU`~-acf3c+b$U#drfl(>BD34)1R8W=;-9X%BAOObe|>?)zR8`OnHid| z+H&_@G~oMi&PK6oE&nZsVByyn{!EqV;^p$uI_FS&ZDzrbs%DeKy<1N4Je#rUT3d_h z)u`W2De0cBxli90>sNk0<-hpqg|OEq7Y%MKT(r~T*31`oJJzq;cFH%Re3JIMyJf$x z3%xcqu{0Ig_##8gbmDHoQ*{o(SN14n&%L@WVe$;Qnx9+ZH%le;CYR4`Q~5IWx|}$N z`qQ;+d*^Jnw%wUK@ub7H>8Io0SLjx<>vnOSJdvNeT(Q1Sd->(u`h^c9pHDa59DjAm z7XIaPBsez8%om=|_gds#-k1Bcz4Dv4@A&%l+a+)P@00Ym^(vcJmN4dNT5Wu16_?M| z?NM#Uc4bYNi8SZMUa@!6qU?_}ZtZYRsLU05r`p2!@c)7J?%U>>zxvqameL>@-n${c zL*?JxZ!+0m1=#bh#GlV!e_820dxK0F>%I?{PUmQ?>b!aU{}=A#ITmSu?slH?4%P{M zpm>JGvWtoY0w}o6EeH`Ov)Z#I zTSscMKKs_{t~cekn|Fk8-}=(m*SQ|5&AG4cH{$?9m!n>G!GmP8^mh~GS{WQdJ8#|Q zI#$CLpcti~dneNU%&fEZ&)FY4?2_Vpd{6oqpMAqh86gv+M_>4gF7Cj_98$?RvR!jkl3lLKKU;*sG8{5!MOG%azJzS$S7Pe~rtnp1d=Bg~Ld^rD)@rI6_BCYJv~ z%A(TiUOk!HGlhjob4HHlB11#@*Bc*{>l|LPe9By_DbwFwliu$8@R-=@`mNjM`9|~4 zz1rzyA?mw6+5gA>P!)48&7-R`mK6KsDW2Gr8$Z$C;cbHZ;TQ&9l{2@0L~Lw#oUmW* zcEpkN_AX2tl=OXW2D`d$dv_~T;*@~w zuZenIm)|d0dg0~cQ^z_to-^K7@b=jX;kKnym(BE@7qlwjx!B$XmtMW)-Lg#BaX0_% zPtgCTaI^$mYRBjdxE15Z5H?MZ+s2YBlFl}m|ir2e`KOQZc zwdBKdExjicxl5*t-?>&0_X1h-(zO@l7T_+OSy3NiX$?I8x}|C zUAm?leMBUD`de7e4Es=-tS}HlKkAy z>iZqzjAv(dnj{^OxV0-+dTrcirnUFC%!-SOUGnm>+U1YO<^8+GMsj_AMJnf=kxi+kNYh9tZv_2bFB8p#d}`4YZ`Bz`FeAAdH<0vmHZV+*VTV4m{;?t z@><4Tr{i-Ac)rR-I4qyLt;wxNO6~l2IVpkT--P|GrcKjJ{rt2sj+325UTwx^EuLFN zKf@TKyr=0b)UWyIy=dv{7dhezN>65|a3pGfH4@ckc3L>$?13*~Vr)Np&h+*uYNTGS zoa!j?$UN;wyzIj~i3?kwCaPsl{@!RJp}h8{nP+g;m&*=Y=Uc4^{-86FC_v8mMf@27D4<*)Dmu9LFPoAc(!lpEa_>QZ?+HGXlV zopCB}{JlgeCQ`Q}utTE#)aTDxxrPbakDIiOnRFY4^=c3P2))O;cOQB(D6SwgEP&6Iih)j#WXK%DobqKi7U zpLTMIZ+>CL=j5JYR>a_WtN4uSanJey8T$#*8f6~p~cQYW5L(g+b&7#@9${LVV}x&s%G!>+t=07^e=EWC^0|Cd3tL3 zi<`^i7Io{{&VHslLwlLihYZD@^BLEc^vc;f{bIkq`su76&q9CbAK< zxsxmJD#=8CZTomR`|S2W$L(CkT20o>4qvzMn9thg7MUc|)Ny5dE5~xN|Lb`ZxTQ9@ zMVicGJ?E~(WilmWK9?@*&7GWY6&l{0i?xoNY~i#b_}=e#-!E=idAa4KoZ`d?UA5Bl z&wAw*7}R_kckm16c<&Ps>SYRk%45-zA9w8cgiU{L?qz&@u5ryN7QWMU7t$Hx{&0>`l?1tK~mt{<^MXSsUo#_vCxKl-DE2b<3VltYK+Z zwwkXYd1dE;BXN8ubZvI55n4BK^9xtuB@ezv> z+41l0-Me3IGLKW6!fyZP-u9Qk{ROO#L#^M7f3XeL~57rm!l=aKiYt3dAzg(Q-wdd=#*{VB?eZmznIv zT&`N?ZuxuWlH2p&FVLL4{L<$0>lW$WHox#9aPdps{3>Hz+g}-m-i{o}?TI_5EEV>% zX-hjdOKpn4<49&^_3Dg}2h~@$zgNiq+r}9%*Pv3!cfMU~T*W`jSFiOiZagk~_U{eN zuhykUJ-6iCG`hB`})+Cve!7-&JLh+?}z|R%>I}`lxlA(|Ubt6kfFmTmIP) zGM6!;TcG=pPejsX1)tX3RnA)`F@JTQlA3UHqP&{*uLH|NlN+v{Wzg|on-inMeOzY8 zmJOW_JleO8#J4Q2YU{Cl-zq+Tx%}S;ze_%yTzBYFs5h;DfRCss-8Wbl@NEd|5^HmgmIVV1oan(@vp{P>bz{HduvtJ6PEHC?mnZhv6qgaVZgx##o#-`n_6DSW}r z&CfYvy`r8G83Q)HbdrFtfu-#yR!^qH7|gVQ%M_SgCC^8A>o zulLqfjlb4>Im`1*u8ZZbvOgGQS_v!?iZQQWo2NZVQ{vLm%+Cj9bla6GyY8P?c(rrG z`8`LCb3;yKtvP)E+w+_?ffvn|YWJ0||vduE2^Tru6qGY^tQ0xxNNw$j^n+oQTrG*FNGnDKeL>E|q7*HnF6n*L&9 zySyml>)GuaP76riSfx|&e$V6cIZ4doq1N`{Uw5qDbZ45<-Rk$YCgtxYn$$e;h}xdl z{KHf6$hkmwT_NKuEuF$IW%SY?E_%Ai^5&Lg?z?~fM!yVr&nR`xxM$tYXI`AsjnlqV zoWH(8@#+1V&+lKn+x_lIk^iFXb#4z{mKzk@a-RSD&hw1N%X~{-rcOU;KjZU)Hc9)1 z?pxXzTwhEQkFRm9nYhenzRUJM|J-(c+`j*DYn9dC*Zco+XK!-zoa3tScx%k_`+vTP zmpu8yTJmdUdQf_K^n;AHy|KBB-tovw+rm*TAfwI&?7v*zvGYubB z98lLb+u zeOYdQx?R|=?T%3>)0U1sp|_LgIprq5IjdQesaO&c)~>yg>saI6Wh^z1d+Jxm@3r$# zkt%JUW}9&M&|(GW<*bs+KWuF@|r&)0NaTNimgZEx)oPxU=o+eJOUKYUaB+1LEC^P0k_%~ib|rWTd% z^UbnX@zreF(k|7Lq^-P#-Tu$N?U`q_^)KBmzyI>1`^U3up6@xMz_@Jb;_33P$7Q$o zD*7tj#xxu{s$$3m@-auDx#8BwvQg$2NLW3$<(u{@3zk zgPq~Z>EGGs8SU9pYLmC`|K0p<&mX(W_qPB0IRC%vy5|3@ z*RMbEk}HVKY_Ujp?V69Px~2&!_?~Ix;aTYW_3$%=_iSbVQ#BVvANYLJ=hCUwG4V-C z{dP+p?#z+&oy{ro_N<|Nhs7ivrIuN~37eMB;S;xucc}hsYGHKEO4fMq&DY(A=31{S zgG1*Al|AuUzTD%B-L^k_HD1PDHjP$||LD6YF8;K>>~!^qLi3)ywww~W<>tfmG& zi*3Kwn`Y{IzRG5giDb6@xc9}4mD?FL4YO0vij?0}Uvwh*W4Z8Np~}s1_l&&u9*zD} zvdg_ADk?*)$g8FH(WBK(|7Yw8wOILQZU}?rTAiMSiZ`~W>%YCTt@+!gZ(ioFHvUrI zu5_zT*yh*Ass0_B%P-s$YFPc^vIl?goimcg8MnTyJaqW$8{_jq_Z?0qSEUDE=GMPl ze15+Q)AlgqS<23Bt6ZYl+J2Pp`)phC>t*`Iwe>%2Yrj|9FWl8qlzAaCeV*U-*zb8! zd((JpAJ6{pTwR{Ou=QAmv7nko!-8!eDzjZVDmlu zzn7o4%;r&GpS7m+^|i}F*L1d)Y!i5-_}y>;>xR7_c*QTQxw-l17xThTELQ&y$zA(m z!0`Cn;-0Om!!PI6sh^&vzudq6oBYu=-Eoa>98uOY{$0?2KDSuz>}=!yG#SI@Pr3=Z z`GTMI86uX3r1XX_|F~87AFJ8QNA+6j$;%JA*}pMq=@(m};^QHiW7m+jSxoQIA5 z&diqtdZ!fxfBgTU?(|ZvUJ1)NYDPD7K2^`LDHJL-{;;~kY$6Ls^I8+P)4`OY2SdP80@bnTQ>ohO?mA4(lQ)-x+ziRW5Dyo6hUlk<$v zzHgjZc+Y#@@#8Yjb1}Qhvx`ez_r|yK-aZ@Ar}HjO40UupwZZJ;jR&W6tuh0zx^znA z_AxGZe`bWLhn-V##{x%;z7sUide0o5JMlOHQzFWi{csVcgmK z)Z)zL%)}+Dlk*QVr|+%Z`{{fPSLy0yJo(1cwgwxXa9ytHd}#H%+S@!U*7kP_+`my8 z?sD?<)~WkmF1+mY)Z&%n?bKWAvJ6<1%Gsuk?Fhk+{O)OAMW>%uW@19xj#95gYvGNn>W?ACrv2h-6+EG zVPo>~0C)G<98oh_9@$ULoz!ma^`}$)+|{dX76Q*rxg!j!op+?!eD0Uas*UxVxr%|Y zILJ0+>dzG=HB-EHh>6u4pI@L8Tm9DBHDLey+V{)s-iU>?EsRUj>oPlh#>QD~=ER;B ze$LDd&J%ANPBZnLJ9ll#g9i;)>VJM(%zC3o&Uo6v>ua4v8(!D8|B8$dzhQFKvwv+( zPu|X_YS(V9O6a#c7VDb%>SL((%ld!6UpsBRaP8K~O8tor zM?Ngw_4?dyNe!RnFO8RT+J}aJFOag^(=J#2rtsIh@_h#@-z_`;|FU?-zb0kXc?xC{ zC0j}_z7RZ|dF;!~MY=W5RzA=8b|=!L=!(Y6)3LkDI-UO&pSL^w-~+o!@~sk1S!UxS z4lC1~UTqO?*}rD*=DA|>TO+o_X2{Qw?mBAJd@TOrvfkG(Wv}n;Zd`CN?`!CTI`g0J zd1zPt`}X?9V%I_xZ7w=&Jn{Fc`ZB+UInM3hHt*ch?Pu}O;$qsv+VIt)KOGoq+0R`4 z;Q9Huz_0K#HA|k<)jXHqnS5)m)*@Nv2}k#5Nw%ykW&F=uy?iTcR#3l+%!Em2Yy+F^ zr(Bv~aA5D88I>1Mi=VV?yRG^1 zCFQTn_EjGbGm-ly$Yb<$ZRo$}jyozWRdO!gvUCWv{<}m-t<^i@jm@1J#x3bC8#pqv z4Wj<86y9_xFRjj^Z$tdnsijBwRo2uVTAyKB`o#CvSF=3<0s>QuuC_2VF;5aO)JoRs zk((&~+C7_nLsOZjhu6U=cMW*Fa(QmKZMa}xkg$Koh6P8A_W0DLnJk%Q-gHCn-Qv9c zRfjI$&|#JM^6l$J&b2Z*AKlEP7S=CFoVfCxp>5`S?TMyF39R)sS05)WtNOI^_>GVX zoow%_7p>{@7p;vp-zd3yx^JK;Z`gZO1d7_q{bq|0W2U ztU3SeZ1b1bv+LZY%|2}A+48H3{f5r;rLorKm%hpFUa?l!{r2|UCb2?w2KRUQ#Bye`VFwWzoH)ymK>f4I+II5BbY$>(33_9stITe!3}Y<-+|)cT;8 z0=56y?=N@l7QbkH|F7PwS8pDD+j5%EhNY_Q+Sxt#don(LGvZ*`m{q+uv}}@-G0TFW zln0>+xd98;PW|@ww)^(`|HQSve!uwdFZ&G^D_5P6r>ka07kK4gnYw*)@a(x&Q#i#G z?x$~6WLzrAarLv48P^8Y3GKH(zfkVKxUl*6OOHJ38Se^p>|SY9iqD!K{r8mAudD0p zebwicFzLqZ&=5G|bt3p+W9umfyQ@q8Nt#7ARrB0B#8~IQ)9K!i;*GtV?tJ*OzhY0) z<%Y+NPv3fNyZJ69qB1HfMs%IUe7Plw?hMq1x>r;PsdD*;~?b$tz zPs}p4)zdJt`uwYsmBJj)8BA`;_Xo~&6v>zPXEx``DZl6Ho;NrppRHZYT`FQ5kR^ZP zfVst#t#$6=&v*22gePvFdoiR@UR3k;(#|(hEJdfqOedP^Zkrk!XyUje@0~)?u~~OT zCqBCw`{3E@%uPq`pM4cMH=smkPy1AjTW{}0czip!Y0j}fT{G|MX@yyuAO0{)m+$bp zpici?%z=^qs>}OiyP6!1I7VKJ?przUasTmUd0#x%HTwDH+g~o(tC0VRy;b}9KBcMi zJU6VJE;MKE-}Xb_C$5O}lJaoj%xO`{}Mc3kAt3LEUrgg>4;-!UFm9Te%w70UbEU{b;E+aYG?RZ_%rwpOtH;==JV^C`F>?XhWESQ z=lwbrzW-Fz+&Hhthq_YdR9PlA9u_?(rZRQ=-Lm!{*;BPeZ`D6o@LXnfvt@TU`&;KW z*6e6LzSEL^(c+t*Ep&GMb&uIfYM@gpW~yWFP7mTAr{c+*+3pmB1o z7o+y)88^=sG^stNGOPYc%&!l}?aoN;=UN-TyU{G?j?SzF+UxA5J4Q~mx@~>L@ptAm z7sfkhQgg37I_mu*-~JmXoB8F;Q&Ub}y05!tA)~{A3g-v~i*4y4Q?IS5oayzH(dzr2 z&ylN5V@;;Y|KIIzxZ$>&uzH{Hy%kZm>LMcM_rFA&>F;a2_i5U8&aX@vh71afIj`k9 z-$-05+V@!Y{i3rui{{uR@46_)v}VIJp+nL&kqp<~>e_DF{XQU7{(G);;-1u_Wu2G{QmN}G5d?pS&-Z8`~M=tydR%*R$N;ygMrMO4>ea zW2u{4EnM6BL*CsvGU?4i_QT#5XP&H+_E)@T9k^NPpj4~b*4+oi)&$h_Q zJ+IdC+my(ATV4CJZ@VyisK3ig8?H{?G@}xh|2FS;`2_BmbEz#aG5++5tj!Vir}u%;{C?GD~<<(j2gIzPmXBi@=fs^n{UbBg6G+4?f>X6yOgi!FRo zlyb5%9~A$4mGxR7`c;B&y6+c7mpb#`-`<9&PW)V}mOIl)!ojJnoFypb^F@xBs*tdQ z-(+_u-2KIy<7CsNwtsO(m)CaBh|O8LW!{WT({eXRZVj-0SIzM`fYQ=E8qmg$Foe^?DNFQvSQx;D38KWbZ!=AFXh@&U!$q}T2HrM2VbGXKMz z>OPOpa!8g{t#4C3ZMWoadBLSl^@ZDVrGES7-r2$E=*;HUFUMM2_4QG5@d|y86j3q0 zqy-M__V3-!-n{H@*ZDYM*U$0yiP|0&X zP%hy+vwfkr_?4=uQw)A6@(Ot$o}(}$$BpH4)1TQQ9fBMlDSYpB9{dZBj=ZWDIIDj7 z+$yUz(c9VF`lQabTZu0`X~e!YbGBJtd-=UOY2PL9l{`*6_Qr6|{y%H>ZHtIE>+3#q z^Zoj@-~OlMoPtLodfHR960BZCsD7Hd=s9YJ@`-QKy_)*QclW-4^$$xz za$;2iCYapF+rK*@K`EGZE21~{oSnU0A>uYyzs)a;^|8zaq4LkZ@s{U8GByzEG#+JkVXVS8-uWOC} z^C;b;*!a%3owpwz;?_@F`|vIx^ccT}UW8ColiOrrly+4}7}4Ak@rh-HGOPM@83|uF1DMHEYeEJ4|BNOw?Db ze_8O#viN*Uao}XPjYb)A@9YaC_+;+zzu*5~&Zgi!v&@vz7Z)ZPWLyY%^WKSNh3k*) z4bJ5OQ+_eM5x%x3HN-}r&3UGS{^{gtfxFpu_GYr2T$`~gY`3~(&+O=Lw!(o+uINP` z^$Tf;mYl^d+bF7MHSrv69f*dFN#+=l8u9whpdMW64D%?iw%cjow^ zlP2au8+X}BF~6wsIrQZD+?5uN0V=0ri>qIlW=U zzBisT^i!Dc3Np3b5xB=;V8UNDO}pSJi`j?3w=3QDiz-%FFK>Kz*i-*-UvE<{gD#;@CUB$v*FRrd>^0;y7&Yj)W@^9{L zmo9sMi~H{{-X{0|9}U{0Ici@xwI!T=Kffe&c`#Sr`ctdvGK~WG_&)yPF+3i;JLfiHyP(N z+&|>XooJnP+i#W~@2|z06X%?JDSK5S)!t~-}c z5I8+;ebe)K)l%zreR^zA^Fx3wc1i22OKW?W_lb#$Z~WQEH)Glz*@KMtGu}O!5wIXB zdF!&-p??fk9-hjVmWM z-VEBQHA7Ff`pbjE{D;`N#S98U_^Jf5tk+h`ozeazp8UM*3g4xQ&lhdpRL^KLSi|HZ z6wL8F__*QcBRvZ5Qp(JsM zts_|GYeVv6&WUbQ=H|El75-2;v$uKH_Qf~C?eZ4+9$4m|e??QxzJI#>*S!qa*^fMZ z&LCLNooyzu_k-s7Eujod^J8LXnaZYKx$n0+N4PxZ*siOt8ZJ`T=f%7I-MDz>n!HQ3 zQn53OW6MkPES{g`T>5|NGuhcbrKx7hb`I|rakOewgiE~OyJlp1Mm2Sf80Se%&lA7b z)jsl7nIf!hE-mO6d2G(p2eCg?<_kXne(nWKPHqj^WLs|#||mqNM6&DUa&js;f3kyK?5_4XId{&ybR&jH zO_45B_pFEN_J8D4=bG(ZsqC3m} zhK8?Ca|jF#WZj%L@6bV?-HH;G|9(D~EVxr}_-nw`&E|iEx7z>af79F_TW9#?)!pfg zw{C1)ym5cm!y}XZTzDgud!$Uc`lQXLnHr0z)?ImVQD%4M;kL6p$J%%#Swd~A4h6ET zKI(e3;PLXjrsno<$`aDO2NnyIy}ifiZ~sx`_rb4k@A9*KlRv<2zj?Fyw(9HWYAyC< z@=XlramYMzLGg{uyptN~;+HO+t$&_7#Sxf)jp^q!2q*e!>4q0(7I%lc#oZE`}_U1PP zCLa2h+oC?dLgx1pLA@Ohg!(f4WS(Z6%*ISGkFwQ!r!Wl~UhiW~PfrKOB?J|72~G8pO0maC7fb?dAtH<@kQPYQY?p05fw zLtNtjq=YFly4?Qkxq7Ni;2TlL_nRMhuD%h(vcX06++Ck8)|V4!NquX*R2)&(bt>6c zDe8sV8@4Uu zi>r88nG+=)Q*bfTAoo{_8RxpFt!)Qoeop@X`lh(x4ADbNr^k2Qn$IQ5-Zf{BV2{b9 zZ|nyJf1V9|Qqnca@4@Uj*NTfi?a=mgUil~d(w%R|s;(%7mOZzKUh`0KL)&>T0gs74 zd&+nwB`mbaelmaBv)C4{1xqfKhQ<)^>}FxlSIOe^2p%>*r~Gc1h~xcG?s9UgbS25ZKZ@;m<}6?!rGhR~BvE zqLnM&n2?>DK694H|E_0NxgH7XN+-Ikt$kJkm%?iMpfxiXmT~%TRMUKDe~f># z)Jyf&`Q8jKHRE@=vOSi++t0arjpo0;$vje~3f;Dw>rV5X=HjpJW1h4`^3~Cq=XU>_ zGfnPLKyk*D_@J0WKAm$krTfg)LdG1@5UvC%>kDf!dE!rT{qv(sra{4Trwdr>8!lQWvjOy(Ytaqb8c&r>+S?g?A z0z?iqzFRK1A@KhEvR9b_Q{oveFY`@b{xdG)-S0=!_c6tu-mTOjbCiA3`y-YAE*$1x zkhwu{-TrTE60K?>_g>BjlV7l;bm`A2jsYHmA2Qcu&RQDG@#)g5Ii8@1xGIZ*DU0DtUWo^@KAmEJjOr3+pz{KK5R1p={z`q0an{AFE}j>Ra!4 z_agF;dA1BgnM$D5itDUueCglR#bb_s{IK;NUU1w0I(a_f`#swak3RozN}pHBmeqId(5i45(0c7jXv9fQZ>kmC$Hg&HMh3cP-mo$&nK+YQOL`L5hBJ+R}k`{5&;mjfo7 zHSE?> z{#_F&WAbfr;{ut)nmXxy3pVnWzccAGbVxj#`FZE*rF);=+$^NyrlsKhs^h(d`JsN1 z&!Mv=-49(aJ1Y>G-Irc)XYL&HGjWBLl{Nkg|M!SAe?FCS=CaQ5n&9oiNq1%2)fp?y zeCGZ8w%f?%@(byL%}YNzPMg59*k}H;7qyG+eKv1&-!^mF?T9UI#d~_Zir;d`?h^iT z;YV1zcUjE>#!1h%->%^(UvZ&cJf_0#%q&ykuyrxK{x&~TOc&-IGG&Ti_lnQe9H zgUD?U>W;gH96J~qVXw0O>y1TR$4;7G-TPO>VqxoRZGjIpS$kG`U-i3xZPI4(x|+GC zbacCeRo7Y@vD9CC)wNa2D=$L)~E*c$!GlLlXiPAx3ieNpF8N_FM(G!PM3CEy7psUXsAKj7mbXp+$P%< zwF`b$ADW{1;bwH6v%qHgRj*eip5M1O^3};Y^KT~8bUWHrLKVEq z7xoDT^%}XddpXm5=AT=(kzH%+B`{Y(X;gT_x1)v#qc~n-rsubm6gT+J>3hJY!Nv-Ns}eLc0pGe z|F;z_ACJrP@Ba3t$+o)e(92@~=A-g89L&G?Tm0`AF@Je=d48jZ)bW*jm(G2D?xA!0 z4V{>nupF3A41GYw?5vu6v3~>kkwVY z??p)C9uXEr8J6w6=f%F9$tifkm3ima*SD>IuTQ^Tt@h#l6OZqI7zK|^DwbGzT7I+N z0}J84)K1@mn}G{=={!7}v(s#6#hIgqZ8j|j{$JfKcxGo2zbNX{;&LbUMTr7HS%rR_DM(`t9{?B8{wu+)6M z^fJf3Gq+6VdY}B-Y-;#O`uE+;y!Tc;+mAYDGi|&nIg#Ogo{)UM`3%&Dm*2XVPR1~arANw^sVw(CqjvcE)CmW8eA1FGw`~6roKnIfRq}=FX|}@x zXX|$w&RRD*uPzQ}WjgA)B63~ZS81~a-#jyWSLiO0UC1y;I`Ha{J$w;hqi2XI>ZC(HKaB_m- z!Z{}s;bj6V#Kfm+d{$sASTgfm_nv33UMK1|-TKGOUbIH<6T5P-g60%4ywSR|i&nR8D?!=rHDi6fp0 zGafYx&NzEoeb?HfBw%`)j;^u(gLV;g64uagl`Yxb!sS4vrWMdMWU#hp)>gWgT< zIMk=IX}(+iC+?Z&K9@vC-N)=N~uO z?28XNJhhr^;%ywK6k1+zgU#jkxwnVz=Dtkh2;{UXDsTDOWShHVLiB_D^8dX1E99Rj z)ZUt+WOFEvQ&=##@KnovhLbf1{@HbGzj<%-1MQnE!ey@`vl))haQVUC($J-ySjZ-J zVp5^h+Ex{wl)TUf@3`M4oMPLU*u%BB+@_52W#k;S;tT%40=YX{Kg|1mRqe;=+2y%` zdnK#eM( z>E~p2{JZ5Jl&=`^i*e8Af9zSZm)Dt2c=IAY{60(hokI4k#93Dwk8-4NT`ak_JingB zGWKTU9&@HC#pkW1s}w2}FW)itw`V^cwx*@Iz1(@d++TqWA_qPSyE`+^ih9{G&*T%! ztyqhS4+SUAYc`&mcl5(K>-Ps9_y2W%JIQ&WecG48ngr9C8@&RhL*wj3R%umzn%T^v z!|~(It<9oxJKi%&^rr0%em3WnqI?^lJlEbpW;X_nsi)EpR*KyIaQprrnJB?EcWXYc zHAwlO@bt#~a~nAOAJyG0c(UoY&pd7LqHdomaGUp_ zR%`6ef4^SeymOmPH_F}Zg_l!KEI3&OY{fk#M|3)3pnbd|J8n*Ur_hcNwLM#{}{u{pC$~4&akiR z@R?APm@z%0_XYpPj!;Xd^N}fr+#MYZ({IJ<>n7!Vj;T4y^}IagUjO0a8~!|~oDuI< z=_5C9uJA0ET@22<-W>jKePVUCh^!Y+bG~zn(4nFo`mHxp(jP^LIO&{mb;|w6{duY1 zmx)I|^cHdyTh4G!(d^D#*kExmW#Y-)57+X`7Dac?JF+aVhgF^3`AV&n&Ew5`rrhUZ zRh`ndIFI9Dib-$MT)8J39R({gidGuk_X*oLN#SCeUipa}iG=HV$=^4BU#n%XO4a0& z*XP{xN{oX4HmP@SIb9mETK3YTu*ZLy=M$Jk*ovd_k zP3YC>)58z&o!c^Xer34ZCT64amRug5=k6W6S>C0|vgJgBC%fUoe?N}fJ51k{^y5pq z-SOi)CoEWM;r>@J;mfA zai3EAuVu^F?ARxmWL)A9eb`s0IqTLryYDh4r_Vnq`8CUhYBww zWJS+x>79G_s^aM_zbD8&XDeL(?d{!msm(^;&OY7|7$L^WtvdPBz1ZI$);k2JD^8o< zEp;&K#?D&nFVYqq&x6fZI0kEEM(mz4-AVGBqxJmhGZT%q=88G=eebvX#K9wD#NoSK zSVG2mgY`7GX4q@rRv+V z_1!1>&wRGb;m7HOvl_*-+!xHyIg^xX6(<}aedp27Ihz)-N$g+xxvyuDbIa^?-UJ=XLHN{iO#Ee zG=D-r)B8`S*EP&EPTQC-@bmx0&wGD=JKV_3-V|GU=$@shPqfgf-DQg{*Q{Y_be+Zj zN3~dS>ug`0*4BX5roW%J-{Uh*JJ;4Lef@B;{vYns`3x@?zP6vpaYW}=fo4qY)zAw8 z_c`9?yz*YrX(IVnr17tA+RpY*G=J&dWDljyG`nmPB9hvHCyvr$O2qi65WB_aABue7Wc7 zp+8P@!r$(BJmJ>H!pCMSR;_w);@$o~XJu`~wIWVm`e-j9dYhZb!8{QBmV+mVm%z0{U{?=5wGq06-; zEG8c9Pd2=m@Ju22!E3m22O~ccQsJCmg(#7I}Q{GM!E8WBM)99_k<_8KQKEE$M@oh4mr}Rwm!T$@79;jMn zx%IoLb+78bCYo6)rW4W7u*mw1%jD;aTDt=+%%gvDq+Gdb?(nwFHy|d6V{+eomgS31 z7Ch~G`r%df`jrzHgEG(M?RYqu$LHOz+wqbTCX251y^^%g(}}4%c{Jx&RsO;1g75eL zAA2Z$ujaEXn^dM~NY7&v!H(5V!AXIMk|E*O4@iH0mKb?H+1~u{$<2PPkJWt~R(+DV z@a6S={e(_<+E z$34bB%cEzvh{snj%GH08FZk#xemGSAKTG?&1^X5~E_CCO=QOW>_L<{Z)q&ahds+4O z{$P4@do%koKikH$Yb9A4v#;egmYO{4s z?DD^?v+ew6)^dG$w)FuZQGODnfOvvUNE<<5xu9S7NOU4Dy?jX_`J#^`6r%qo;0<%)%amq|3hv^lCifay?WKZ(!i#x8#zx-w4B%H$5*aq{Z3lYrO13; z@(shvW$IJ&%96f#N9=#wrm3L%=PHY^U)hFg1#8xS+ow1fi_Q<^&D-BlXwT_cenq+L zt`y_$zmm1GnxzFyTQ=t$IeFkzWq0tY)r!WQ+^77c>LkzS73se`Be*>ESpLIGrq1s{ zIT`0l^3GbDmBcF*`!Qx4vox*sy5dsOes6`V#HIv;`mevWgKjZ&s;NlHi%Ra3Z1j|# z?|8z_@@H0co$0Kg7e6M8$Nv#`_gQ{{MX<6eZne?kn^itBXFUWNwp8C;Cfjq3N^Xc@(C+4%)#Bo^MYpu8aFSF<8vDX|Q`ikaX{Ml%ne$Hj> z!@7t)8HPL(7ubJ&d4ITecjDuy9|C8~4!7|(KR(vu>~KX?Oh2wo?R1fZaT-s}*X(%5 zwb8;nawZO$mpAm)n4EsQ`ewI60V{J$?33SZ41H$GZ*FYmuKW6V{^J>@2mbwSPx$3& z{BX-VVBa{Vvv4kzpye*Ej!-^Zb!WS?_u7i->* zcWx3^ISQAiHy_v_=XLq$h98Gj3*O&<-xR~*VP5yiP2xtqf=3Wv0dbDc!ESd^0a({977y^hwUqeQh#zEoFj1HQQvKrfak&YD{^hb8bR?hk}ah zY^D?w-_I{k$SR6NFwZXEq4;@*J6HA5Xrs9E<HY5r9f^I( zmkwW9s{L}&t;a=|c65E6T(*U=!#lX+Kv{)+&C;gr9~%4~I=efyF6;cdf9mxm$`UEb zcMd-^d};E0cJL&gUr~==+{qC9;Zk`h=as?CyYjxqrS28pliD_K2@<~D{IlNo9aC_s z`umqfzbv9w&#Nhuo%?!WpSRDaQ;kRd$Ufy=ULf>AKz4#yO4rw!%wN{*$clV9De|4y z`M>AB>I5s*?o^JtAu@MS@hdKi6)LO?&S;-_s{3l^9%Y@WAJ(-wo(gX+D+ugartF@z zkjIo?MdfPZF3TA9#aw!X=U7Zxnwy7Z~k`SYy{3zZivSkN-}x#q@r{!4XVGK6Ox3tRAQ1y5Y% z&(d$gr%o?DFeg{Wa-NfkPW(QeX?lMrG{;}+bMX>c^svqUF3a`WM^;yE$uzkC|EXc~ z_fPO1?#7{uVUlT7^H@6G)i_x+q+2;>lCD<3 zfoWTkR8>`Lc=*qL?T;@t^_fv&Gn?<_ft0SceW`EDUR>U;e`cPo^rf{NDjYJ3Of@p5 z(?yniUNYIQK{HtG(DJ-}tXo}E*VMkcv~|k!s>H-D{B{=Qt0u z+^W?az85B|`?tyed2oEfAuD!%xt=uZQogjvNKJOrwf0f%%Z|serCFpV{JnK{g{F?f z+2>+6Hf3tpyt{V(&`n%BbNYeE^!X=?`+cV6T*_t66QAk9DIt2{ z;iZ~yDbnt@o(IUx^s%URm3ZVDyS!)S+@#5Qde*N_vze-2sb{#vx#y9+nD>w6b63VP zy00rcv0Lf>J%iny!E=&$_Lu1E8~8I8PY(&{=V@JO(m3HtJyU99$EVq1tsiFgRD_HC z2xq*w!_((;Kw` zHJI<*%O1Jz@yVGz3vcRA`lmRHb9qC@_kKC`>Y&M;0q<|V5_#^Yc45}Ef9nj3m+5dY z8_rqKx>+~Jo~!m|Q2Lbqx$Cb^Ki@KIqYWp6TWQ1Y6_eC$o`348JbqI0bIbR&7pHjE zswJh)(owfOTI~_BSwri61jDp1p^0~{#;<5mf3bRgO>~e`tL%c<yEaI@Beu0biwVn@h#8XuK(R(%==s8q)c%xSAe#z@>e~1Nf{eygP1?g zx7OKKe?NTp`ybw|hJPP?HII8}w|It!%Dm#heP&Ff7$o^dX;@)YqaK?`0Z@(_P@8=@u_RIVZ0^N&BGr~9OhR%5zV>1{v)?R z%7=g-2fyz>pLWwcu3r4z{_l(uW;GUH-kLM)`@A>*@FZ35pA|DT)qS4*i17U?veB0R zcotvCLbY|?m6o$7=kItYm2ueYl3v)Q6M`2O>@+NV=*ptQeL?3&*RmKUKbK&y+8-;QB8T~dr?WW zF7(oL`~2$k+#t1`8j>|H9S7`t(@iBV3qPq5);{4|D0WtlX6xzGrdpRxa;<=q@z+SOqLsj8u_=* z|IW)2)bGYRSw#tN%c^{+^x%k5x>bpKWuOua%fr^NBMfH^1!=Q)!DJbJ~>`fBx>XPJDc< zx2EqQfBhF_ldE4JKF*A*dTF}Cu0-P58C%h3d;jq@?T^~=YuD-<`#W!WU2f{zzi>b6 z8rGnR?_SP2|3!G^g_d0v7oC1wp8ubrnT@Z_fAO{MKPNagOzJc^8oN^YkoE#+wR6JD z=bmuhkbggprJet9Di zB370xLR4!~Pkg9c zSC>@3wqAry&V0wth02HjSjjYQ$u!+8Q{8>GJZIM%>p;sxKdvv87V>&EflJwW5@S$= z>B|MRN-hVd{j++bE~u??(B<9Ui!<*vH}Ea97Bz6n{B_3DU)l7q;kwi^2koAqMM00> z{mQ#^-rAJ!-gd<|(PC39EpvV;-IrtvVd1loo3_g&!_0E(uEWbrtiJP}&d&4QoX`7q z!{TKBTeoIEIHkS5rL8S&#{YM}Gniuf(snq%IpX`?%*^z_-12{%zEQ0K;o;(Wa&K!U z{hw%)b&oaMWNCw%E9-if&37IgY)<_Dk9kA#bG|D(Gz=UY9JgJb_TOg3n=r?+7FKGe%sThDJ^Qz} z?dFa*yIeumbwk3#q#qCd zet-C3A+yEx+Yi=OzF#EvMj@u+<L@mQa|+{th? zs5`!FI7jI8;ZLr5<*fq8(HF6Pc3#W>seC-pVLd z-^6sWGx{E@-rwm;^K=7F{B&WAP`v5uc=C0CRLN-pho2GiPcC*<`lxhg>&q1zdp7y{ z&FFeHH7!pvV^2$L>qPf94S%arh6ua7YZj6_=T6|vGg|4Nx4!bFtGt`2U~lIR%h@&; zKM73=*sNdw#p_1svEt%7_tNYGZ&#kKyw6mj;L96kQ~&J=v*9JCj7t?#jk@zg#%Xf9O~5?49+Vvx7n=@Za54-Y6Hk_r{j6fE9fTiyUUk z@BWg!A@{gh#oM#y3wRyHehN&~oahthZTE-aUhR6(ts(6*mn}QSW>>W$e?H@eFNdG5 zP>ebvEo4{tHFU%O2XTB)cBOxhW7+V&@c+7qja*S1&irGpdThN{VgHIL&H2y7o*i6x z_-f6*doM03FO0u$cVX)q9=Cp}?gKk|lgn(szwusiH}j!#N!F^@i5D7VG&FV9uAJQK z?9jTUXNjot1J{N&d_Vd=J0hVs0ktDz2$sW|wX(pp?t;=l*H*{!aF#=@BA`d zki&yhjl=L~o5`&SM*?G=Ofnc}&-<{G+s{YdT$R6M`>|L2vcFr8-+A#kaaQ|n|Hlo7 z=DW0)r$p>?U2ZnHtwME{a$~JkU*ut>SQh2CuO@L!Jt))gV}rZ1Hp86H>}wZ_9`Y zEwF6l^qtjnP2=n0*~$H?FTYiMS?S2!a&g9_M?z)`I}^g^m?JWY7+$#^U@E4nk|@q?br{>`&)EiU-^bh_jGy1z5dUG}qQ z^_y$l{CD%Sy&w5{B&~ZM2TYwZ&G_tWvm7VhFhif2Ml-KxJ39w6wA~KeedUa!*UJi( zt_yy40VP*1NT$y{dG4V|^y+QzG~V3ZEFPv4-8gHR)(n$Wt}iQIoKm}(rjz}BUhRh3 z-)T4YmfN?_`f)~g`=<9Hk(rvze_Ff64m|GvFU-ax!y&)>Nzszs;_@uM)?(7quLG06 zGs&NIu~yJr<7}LHNr2%}p_Ry+ZEN@TZf)6O9W;~ua#!$j1|@qhQ600^zmYAU|6jYk z?||RWCpET7H#pc*MCz2Lu0OZpiu^$@Gs$}s^%4vsX3X7my5avfp%;I&K3{lYds0e4 z?}O=&kK(CO>y&QJovYlenyCDM;b6s&$d1@$w?Ef~-Rr!!k)h-FZT20_@?rHgQ!Evd zB3&+V$ECt=buW;c=RM$FcKg<#ikGaGa}|@-sJF%$M=E-;~Q4DLF@)-%XMe z(c8S+tKQ_6^~6J-%GPJ5{qS+I4tSA0Wsgk7b^iNa&Mtd5Of;U+zbM`CtJaMuXLH%j zKc+o9BKnP4xPEth;h_pPv!4R>BA4cD>HfTbveFH|L(5mL6!dlF{&8npu%G4B^J_1& zKbo}C;I7}rJ)#>JCdmC-Y&LP*qJ43e1(Tf(7M+9#O_M<;;>c&$B6c8PxdH=gG(T%~is8YOnv@Q1Q{}nuYC;1B-cnX!MD+x~y2ApK$By zy7M(luX?Ti5o&4iBX?8pWd;(mU9fgvdocpy|c`@ebqz%`ajIG!nSXyzt;LZ{tTmY=JrQBpU>xQU&Vhw zng2htX^gwYt-b#k&L&=-*R@QKxxL0}mpj|6uxD#+rtoMEcI#Uv6E>3bfTXTBfL*ed?TrSg|zvE4en;CN{d`3R&sg~$8 z>9t;uzFX`*xTm+O*7Vr5)jdUCi+^dX@3&iQ5WJ1U+9PO>we`Wyl;hu9i;XR(iMafo zu{BCs>el?do-HaKM_im9rFeEc>y;|9o-%oUO6H%5X*1a518-W{NU4dtxmqe6PT)Fp zIDV1hGy&l=7x|1bFQ#0T`jfnR%|m6?`ze=YZ%@3x@x#6DX&rVEQ~xd1KVo>ixAoM! z&^h_%=gmEF=K88+lM@@GJkr)(x*H|Tv#v~Qf|A{qOFynJ@r^ovclm^XzKwc^-!L6u z-FNBb=7wWybi9w%|6*S1#PP-M(S~D_@5!pWK49`lKY#V`=kxacQa#rrjE&wdc{!n* zDfQPE$$-GXgH!kKe^6_7`U2mEieRNzFS7SW1}#|K4-V;%B|`G1n+|rE;`U3|D633mM0o%g&_k z{K*4? z$!h)&|0&elTxz&z5u$WswIf66tvQz$tO^(Xo*!~3LvtE!R|Mo6fzJ-!g z`~G>dyZ?Jpw4|rWy5;jJ6Gkp(g%%qfCiQ10%Mv>Ou{_iin&FGT&0Y2ihAFJExxu?;w!}q| z|GB|@400+D+%|Pdbm&^9-q^PyG0 zx0(T56COkzNtP-pIQaF68s|-wNy6NxXQ|JcSIEHB>5^rjs_ZH7wg2M9b4Wj9; zWzsg6Pb~~p+jg=pZ_S?>?%CT|vw|n=VfeG<_xxk8ZI*51o4GQ{>W^t(nif~kNx^l7 zfhI+ln0#iJDRJ%fteMZZtM=#9@GFUzBePWG=RP|YmSJ;?ZS7h21=6#cy-s^Q+;n=q z3&X_I>|FT~yJu~GKY6mn+ZRdKBsjFM2?d&`KdC=sqh-CL@7-yEj6#L*l`SR5ChHm2HvccJ4QK_OZ*k>PBfRGDoXFKR7BL z-*mqA-RFXPJD(qT)aqTSd+)=^*NNBGOn$%}zlZmn^?w_-n@{%a&%T~#mby%!M)dK0 zuPb$d9W0mLIB1>SmsaU`gEQ*<-sBzn_y&=0*y3xs zGBvNG@23?jz0FhkET6eOBPL^B&<#N@6ED4Dk#&v7G*fG)WEF3{Ww`2DoZcnBXAXih zL|NNwPaHU3|Fbw^M*^datHbO}ewUmV#*-Uo*s1V*WNc$~bBWLGyPl+i~lkmMD8rfz58@&>V@_B`QO+V7N5Q3ct?uyL4t7kLyiJ_zrI$p50|8U z&+u7?m*wf*NcWYq_WeIMu+KbTyIRV1C(b%C1E-@kN*i1sbooSUJib+)o@XAf z&C}26?D+U>_RTAegS2?X*pHJFK#TzId`(Y;{9s_OrvAs=vHAr>L-^Kf{>8@PqGcv%~wCnNIDVx@hO7Ik)}# zeu?P!)~w86vitC0?}uNj*B5kj&j0r(+(2k+_?E?!lVhHyN<5i3bAr$1ni@XWx$3>a zx7c(qN!%~sX*HS|tkD-D*R-}rh-5&_d^BC?CH6aRd0V%Z$`Vu2CoG~u1U z4}am_y2UTj-H6*?eD03Px|VN?bgYict-rkFnoRKHiOVglP8WZg;<@Kw%Nk+rY3mR0 zZ;4VaHfdXDV>ti$G3m7S%0KIiO15V;8*GkyxuK0Cm&rlryZh>E>~kicDtp+x^z9={ zDP1?&v(tSVx9t71uloJt_1|N6mlg8;>*D!S_edmFQ7Ln;`jX_?Pxh%;huUp_r0h34 zd7)wE9jj9-D>{3AXbO4z9V|H~m$}|ThOzeOuVf#b^K7%!?W=lLSI_xm%;R;G$ShD4W!t7w;OPD> zK;bOt1dFoww+_#m?8+^6@Mikl)7jm9GZz+%FrKPZmua19@%_%`#K+5g4GJzOut}cH zJsS`Z#PFAmk0B^vn~8bL#)TQ?N|}N$EtZ%t&FIN-PH>(0=Jw5$>jC!0A`<0-#%zOWSZ8p^6E-gxii);x!f1abl6!XGsQPN-7iz?!Mf?lb^#am z?J4e0tg?@N+FkUSYqzZI)cmx!8u35wDsQ7q_(sO%k zsCM`7x)`&-o?WVco17hZN-iG%PMdd}^+R{mzcUgS+Lqx*~HUv04|V3^hNYw_0) ze~QmP4*#*m`COTYt{$SI7uP9gb=RX`6j%k$JJeJ^C_;Q}i zi%M%7*N1M^|6b?s;kvy&x7qmlyxz3=bp~~ZQf}=0uljWQl*WKy*Pq;6T?s!r1Py*q z310Bf}t7GS6=(7ik$cUbf@VVdIr!u`Yk>lCWhu zs|m|9btaRg8EWtE@7K4x&+5J^o9W?t(`YR-;iJobz1zP3;OC6jeYt<8JF&^!*w6oN z=WoBh?yX5jjVwN&G2Y4n}u8FqX+dyd@jGf&3?aVW`SjsRl`Z)WsiT9Jiig9d-knC_OqNB zUC)l)+gr6kY}e^Kc>!T@hc+(z^hx!}#X@ga*DQ0btP8*R-!MD3^B%QXI-}iZ$(D_Y z_Ondn9Sh1Be(}EG7mq0r6nXSFcK7!O?AL8Sy!&JRaPs_LCh~4~yAEs+J)Pyhe8xWO zx_b6ExA#l?S!7zpl)V(auyqZ~?+Sx&D-(2OYu7woux!2UU9pylCqDQ&f2&kpUd=Q? z()9S$XMz?pc0V$dy7H{xNaZKv(=6&HnLrpD!shcncF)%&$TYnkU?zrw0CPt z(pPBjI-qy>#y@%QhayuI&l>J~thwp%6C>Nj)>mQ$*Uw+iyf1@c&WkH71u9z@UeA#E z8oG$Do$u7N1*$Ux*EO2N^z%);;Q7Zw_H&rzMmC}-lhKX{~GbbRf{G_e3|a^JJ^3lQ+9{lhAzkKs?xiLl}~=o&Gs+6KW|;~ zth#w&EUF&1bB+Z_%`30UoAE(!kwcZk19#t#3HGw?R>RJKbESa9#7`?8i@ zi%Tz7O}}`gXU@N~FQ$DvvE#3Ju9$&(*|#YsoM)!k^uB$5sAgSesap1*+UmO0*ZI?* z|LC-xc6Ys--%2LCXDod0pUiijxG|KYiRb;dB@(_D^lqG2pZoHOq1mi8JV(v5o@~1$ zSy^(SAk~%sN{!6J6Su0%-X}HA@wc-!aSzHgEjQ|Vd7;mlOS9l*>huK@w3|v_haFt_ zoxi+^rPwWfq5f-q+v!Ucd0d!w8y${gsQGPuza?_BUu*jOTB*8Em**=vEWDc|`R%o( z+BTNF)7n#+1D?W;{L>bS|j&CyZ5w%?A>CU z!d~9K|4XdqTXCj;jncUo~H!)PuaYq&|E&$DN1LLP2rWIMmq_V%V-Tcf92ZJVyR z!#7}}$z9e4{#sQx;SU#crae6Yyp4r9#EYF}rM!{bgr2(HhI_uqCw`CM_~dj@ zY0*Q$z}PbF(j5xDrA^s059GUs^lmRtlHYmh<#(N!D2I?B6^UlH8L6ESu|^Bos#Wgn z-pF&z^@E_&RmK;y&GVnlDE|HJZF;@iUQc(c_3o<=bl%il^Olf&AU$bA)^@L|PdP3>Cwg(h1Su3R(_Nm{tWPpgmO6Py)V_Dn2In63p7PfeQYR&5Qy}!RHy!~xiq5V^B z;>uo@nm9+slDD_!-u4eXo*L!e?(e>g=R$l(M${EXu~sYPjhtIOL->BCetmC0fq%j| zXJM_GXTDvPX{dg`S6Z&>fn#5UT|$8Ti`c8PoA(DDxV$y{nuBYS$8mt-6ZuaiFtmwx*@Z zsC=23KEFwQeg#h(j}+JR*gDasxi#06a&PToZMY7kB0@8gocJ6KH@37aLXD2 zzIXObe*@XXV@nigo17GJFPR|LX;Sz3*@ zOu)2xNorQs$q#z2wKC_=ilAxFjqDPl_HoRg z@@m4&lTUstR`{M!TD0ua@f+{!zgJ&-cd1v|y{}}ITK2M20tv1>Q_9w~q_4AnVR`O} zJ=1Hx#ua;gT%FP$b`<+|bNv>mPut2q=}2Hq@bmUWyRJ?4yp5qONpGcMs&|;o`^fv3 zRpQ4QiQt=GU4Oqgc`cM{x&B+XV~z7#FRe{d&G@FBn>WcOs;&3JpMs6|`_zT!sBKi_ zz9*UL%)oQQpY^|T@!R?T{-j52%#!SpuoLpLd}{LI(pK*5h>#6OW&SNX*)s2r(5AC2 zTob<>{QW+0+Dn6q3kmmZ-Psu?Cxq{d%(N4Gb~^qa8;^_u!@gfrqaV)Y7i)bVeC2KZ z-`A26zaA=`(ARjP95YEh_W0}fi_fOnK2uW6{<8NN-y4l1@)Zvhe|$f!e|TH&ZOc{G z_R7Wz=em7on;n>2|4*4m%7kNE&fRnG1$J;nPP(Ej95UUr{hCS^z6zCTxQ3my?Y*fmxA!Q1Wk+oJauXrGy3D66Hl zYoovL#n_vBtz(Klw)#Bpn;X4h4%;=WONnQHU)-`o{`Va7WmBdazPPuw+Wb!8@%I8> z-n9h#*|M7UgcrSF%{qT#qVmHl!OstHs{1_^W;{{zLniCvyqZUa%XYels@8nAzTc|Y z%>J-K>|>3Vlfu@luUS`mt{yHt-k*Fq(~hZ->$1bRZW0z|vzgH>FCvPY6>wD`TU$=*hFH6K5Ma0$q`%G4NPkG%m$_bzcy^n5MOlq{*vuKHk2wZ*m!-W*>g8n z&id+_ix1bXYWaGD=X3Hbnb7T)MX@eRf9MJst-KWR|7HsJ>Tcf;GP`DQ7(7a!`Iocv zq(1wk<5ur3>pS^)XU~5mp4PPX%8~!UZQfnh-Cr$sZGC#IMSI76^<@`I3|HU1b>r4& z)ywxarY%b5`qHOWYF;_>*W}l!OEa(Kmw7xjR1yBN!$N%!k z%iK*nvzp`YCD|?=J>!eN0-tj5{knDM79Y3W4~A*F(Wee{Ims5xZ(Q~K2j}s_Gt=iB zO*_7?w)(K~d7HD(RhL~}%b{>8a<%im#MIQ-4ex({UU>S6_|}@ISrXe-7m#;+GtZ-1AuZ8mH2@t(&!LQ|hUSw1l_ ztE{AUtLQIxU^*F$y^e6f4elGD8wMou~y(@oP zSDoK=ZSpati%afo&a>eO-G4mM!^bUmwj9&F)Ge!>?H?tqJHDxNfC3wLvzOykXC}wepE5j8=fz)4`nWSWvGAC|%J8Me zuMVY{rycvS{T`2?oS=Ggu=2GnEzc(LPh0)gFy{pu>!r*F{hvM(Oq-S#aJ4_qw&GmX zxtdY(Mp{k>yTaGb;`myt{r2fL{qI-qERfwMbb6uus;w&{8yT*j*Gdw0obSCj|3~?; zD4Dr;H)UPQxyzwHcZ1}#J5&D&)o#|xnQR(-P;O>RLvESo!{T`E&F5F1TlRq4=a+4}TX*|;0wfdG%ywDSe137&Vq@XU8C==!xs$p6%;Gwfa6yk% zY59^ZEPV?idur68ZbkpB+57Hp+aXr*m;?VxtjlxTpB+=XvS#b1X&JxEWV(MpGKhJXui<9}#<=RW#)(Ynm!$!oau zo!DnQfBLL>>!d^bdh$LRdT=~zZ?bUEA4oFU}Iy}6Y-b9t)beoTtm5jgkTlJ3;d`m;AB?zg3ITYR3bxvE#|?yA<0 z?l<1M7G05LS**r;=S=uj1;;gxv(|TYT#u@IeCXkVs+p-gne&)7G)#>will0jWg>C^FO8skDg>yEC~$w;nS2Ue@*CyOz>yk zzvg8(irY0`FwVEGSuVM+!S9M7kJo}}#oO;%oqeBkHte6@#E0HWN`Y1JLV^)f$~_ zBYxA%u(Ti^J&n9;-}n9YWeK&lSY(~aVPAatdE%odo*S~R7FE1>$o|7(L2gFSpZWiP z3NopfoP1~z$l!m=wCcfwx+?)|oAvH?1x&W=Y|PKDmX@FX`RMKaM`jr^#hFaw_2pgI zALJ+SbzXsC>oW~Ky~NEAZ#+Kcd|qy9&6gnQtovR99|Bvdxb&*Ns@ok*U3!7%`}*|x zt>W=DeCKT6J6U|c^VwkmTki3`xoZ}_zFyDJyhhe~+u_^!drwO3i?%DC{mQ&3EkBn( zWiiK6uRu>l6~0)3ig;J0(Bn1}BaLN`oLRMQU1M`QpV5vb3r;KyJ7n~KrZD58-*%l# zD#x69h*S_(NO@ND={^I_(p+X+H`d&~a4n0~^ksHcu`+Rg)77h|*aPF?H?`E{b` z;PejL)+cE{yuAF}qLcPq+S?(z>}5}j)$e4}?GE0-#XCN>vuJWFy)*ba-_A)b+WN-v zj`M4j8Rr~+CU)zS>c%zF`F~8Tuh#E);{4<8`+9cM($YU!ZnF$ST@3jC1&GX@xBmEq zP3shE6?<>y6bMVs3RtxLOY-L#I=aVOOn6-w6S~f>Ot{=#JtOkKbf=%Qxa5LwG+i^< z^Y@$eghO@9Kk%o

?Xp!nwWv46gfSL(DTowIv$cei;=;Z;$d3ny;=>97Bxyr;Qg zd$p_hk7wrlS%WX6_(&ODatcyivQepJQuBAOz-YJ2%}%NTYgTu4y$h({(s(|r=KJ04 z3pcro`nbOpo%t!Q_GjviU8UABg-=B6y0Eta7?Z{);7jv726TN^aSu9y?t+_u8ZIs}Y7PH4jU7*QNNhWtL>Dv7GzB z-kEK;5{t-QwUN|JiNl!jD=S&*&VOCuQ&(t|4f9B4RIv&@i zdg5(|gHlE_kHvn2fR1m=g^qP?TE_j~$FU-(+47aprf-dg-vp%n8TyUoU7RPf1X#V; zQ7}n0Ead{*@o8tuCrwkcFTTz4jp_Xhos%opUkOqy_Tip2FDv_11-pzZ*YXEbQmjt8 zJ9^w=lWgHzuqSSUsL1WELzyqzPglC%xbZPL@z4)Wn{7*8TIBsHlu7Pv`P$rXbHwkB zjef=I8Y`X~D~}z_=a|;H_T`GLoab3oBG)8;zhW}EN=mxl#pj0PnzMQV4G)j0C+i&7 ziLom;8ST%~A<>sg(* zNhZ0gr;i0zxdS+caPSX=H+WVq^` zQ!zgmZmm&!JW1fSe6=5!w+m;xiTy;*?KL(wY}c5q6qD}+E%Z5)B+74YxulLi$tULY zybb**G~#eb*!vvjhez>(Qv9Jdd7R{KQ1XB7xI42`YAmviz(#u(G`Do zWcSE@KhXBdF+OkgBTI!ZMGI^@>^rD0I(rbJUO&=6}PtLlk{orbN{4)vf<@4*rCOm8Yv-iZwT>@wOdU<&>)M7f* z*4#7TWc}5+w|e2sa~e}-9?@U)KVBtUN_z9H7w0VAzVq4C-F>Z-;q&KE_F$gpi!WHu zQ!J^we(rk}>nR1}Lj7L>{|jCQfto^r(wk-NichCMeAKP~Fe3T(wp_>DAl5mB$0FbC z@!QRFdiS)04-PgzygYxO+OH^m}gH3!v)jqaOKL}3)lM6j{Q-3ad9&{dxEOKj^x*A zR}`KeSQEKr@I%FhmIUe0Oqu@+!kXCe&X|SHO(do@|mN6(yoW0ZM;vS)6cP+$y{1!E5 zcg)C**y8DLFx|C_aj#u&ll_4ulP<0@ZZ#BRt1z0acW}cNhb3Px@$23{-gisGroMIg z`ptXQ=Tw<6TuE(IvwESFzDM{KN8=LLeUWN6ICND!-EueFD{k0zVe5)siFbd@X3Kv* zSTsFpTKilNqtp5E&pA56A2IN4xRac$`rGTpmEgyL$EW$utnmL@Y9PUOh)Y>Wx}{i`NXTp ztCPz+gX&H>Kiecezh2VRZTW!-iK;w(W$$mX`rCYzV4laVw}WNt#K%8pNHIA&U-=u zIy$pC$TqE>Yh7Nr;fl%ZDOVYv?5+OZw7&lHZJskH>Q^h+vtN0}zBH59^hD5Gwlfb6 zl&sQbTdjy@Ve*n#*1O_A%kD?%K0!1FE<5ndX$`|6bSAc=eByL^J=y zo}S{&$LZ~R!fs5LO)X#LQM1C@fNjl^cGX$$tGL%+*?(Q<(ko^0c#owBjA1#e%F6+qHm}O}D)cUM&jmOgFKO1+May~mIUh7|xeEn9J zYB)#6e7}y%GkMLutXBulR?ptDZcPs3rpv1|U$2-WaH6Vf+st`ePJLEmj0~CJm{OEo z#G$O$Zt%-_g|E)cjHca(Vvnr$Tj1ZODiN4?#(m@cJjsji?42LJ`qJI%w?xtB$2`Le zj0rsV3;*8#v27>A-H8*;T0NT|-Z4L0ZMffhLPAi^_q8ii-pw$qxiV!-$m2Af?`}aw z;t5W2Z+h5FZtKKt0k!!LpNTY%;4n2^`I%v*|EJH&j7q6Z^3yo}__A!^?D(@bgI)UP z-GDhul2WF9d1|@kwu8vGqZ=wei$(0q(Uh@Tk|Z`W-bHYCdxZ3%#b$@Zc0~LC(Y|6d zx9o!IwVEmW%6p{FzB8yjzT{^5DRph(y>e?_^c*yPQz{Tul5}^0)S`neU7>E0!3U@B zb$H+y|Cb}6K<1^6y-3GumT^yWH!!ZakYMumY~oshw|A5q_SF71 ztN8u4vPOh2b5fsmp3ala@nL!)VPQ%f_N|A5Ow3FjzfP1g*+2Erj*Z6)Q_4TBKYe`D zu2TKyKeBe0y>0(~Z+8EZr3)86)X2HJiMMf91GoOd88Hn}Th`^QQckaU6?rM@4P~cuP^WW%l>1A zY!~yfe@#*wDnB-9Zn&c0YGXU)^ELy1M&Az;bI!zvOD|mYv7k{vnzNd3_L~b{+j=_R zHL6}Q;jQ}DX`#F=GWWo@yIUXlM{PLe5R)O0_@QRr`gLwLj}Dn!6OS)3lo#Audb{k$ z+x$9aYr%xnrt;h<7ZxQRaXrZsi`En!V&I&$-7WcHGFzJT!8K=gY?*&EU;6wK|8+0= z_~x-bpTo5{BlVo9VciQg@AnUVI92)Io)kWpXmGuuDzc^6au&B?po*nW^TynJ2Uy>^ zh=$n~Zj<+Rd>-*8UMhb1F29aB`wqvmeHOWRzQb~c3G3th|i+`YJ4R`vdFCt=A; zFW>lWUcwFXYu^HUyoh7-u&!Y zzG!i^S$>gGc^b>vNq;rxoMkLlJ$Sh({!_`c*kbSQQ_agJ^Kk7m`MrP1CUajlrXDUg z#=XVY3+rH;nmwIW^+!ezA<2#?- zUi9a|3&lVEN|PpQwlWya%$AmV!SK9>Z=z#SkCULt^C=rN*Y-ALCq;^6EsVaNSMad) z`6oeRU*5B4Y(SfXpY2;6xVuu|*_=YPtm>l5J7#$i>`PNsFYFH2Ul4XNZ_lMoNfH(r z3`{R$*eaJUJ({y@^~!aQ4C)W|d_LcN`T4oT_&vTHYp$=q%`;ieuVLb0_eGTvts65k za@+#8Pdj8qN1o}=a{GU*ZhbPxHZRz^bnf5HY`ibeKRbS{gu6Xw#kzH^FJ1>Wlq}`1 zcpC1p|Ep@oo>lw4B?-U!Kdt2EyLAo=n>Ab(Xje#ZXcvc1{xrMm{WKB52j;ULhxyM2 zojM$~<3&^V0!c@$tDylACz9RH-C>C_&%49Xd{HGlEUsn2PTdE}T}fO@r~fZ4vS?wP z+qba7coyU5Aeq#^zh19*&Gnz;EceFUkA&B|Y)mo5_+NZ2liA{&2AAr@^}&j~~8Ty*^o2?Cq<}H~Pmy|@C z@PeC3%5nk(er z{J*Z^~qtf9HLd{#oYuLBO4J|BhSHs#li3{+Y8| zH+uVl3k#c>?WIl@ZaeiEbe!0^WP=SgH;e2p`&;gEzoju^!+? zY0-qYIs)%jG`B|f7v^SOSh7}fxqVQW zA3R``x!yH*^U_PtM8rfEw5^(3JImxn@>`*A_HSj*Xa}&Xf6lXHeDlP&@5mO}#yRIs z+PGglyK;?4yG(%E4&B-2j=pCTUtA42`d&LwA>sVHy&s-T_CGX9RsPVdtws^X@Qt{%tjRJPdly#r_8M%;JKdbyB{kh&5Uat8h< zLS20J{l?MHr=(^sIq)xAW%cqy`@(1M*RZ>v-2YFwvh&h`ZHv-uCr{k=Mx5_mbB3(z z_m=5J-CcY)m-_rzo1dBFa?MER*4a-@>#aUq@be>p0@mP{>{ zd}i`|@x()mi(W)Z98w9}5uJHRcJW%H#5z~I2}}+VfeRTF9{UKSv(DV?kruzh@Rrq% zbiYeWR2E;Al3k!VxAKYPl@!Np4IJ>5H7-GC1UT{qw3?-XwIfyGjA@BLkioMb?EyfIAwu zSUnm|e{v{suGy=2U}5d^8#m{aO)%nEXc78#LgtwVzr7B-{w=#x_&DL6WcuMFos$=C zTGVvg>$$`wLwC~^i3s}ZCgx@UpmPyX}f;{(rxv3MnzltfIZ4QXOwm#l|$D2>up$ai?oVnB&9WycE2F$jca;Q~u|7*Rmb~P_o|m5TV0ng;&e#|#bW|XR%R#ask3$K zY2N%XQ#Vz4@1&nPcGs_5;Fz61<1^QR%I9eaTh~+ljO~{_uZ@y{#ealu=RQYgNe!7 zIp=i(qTZVApHO@CcK*?NYu;BDiw)#cUZNSZc_~YMf0^FV^xnX2CujF$yRsko?PvUL#Rm=jhVng|Hg=v<6EZQq zdNm+An7Pzc_|VT2eFtCq6sf+OHNl99g`?`!Y46Bpr;i(3PHecKu=e2V&vA~IFE~k< zrm0MsR?=MleE;G2wae!fNpam4+)!|leM8<~tG>V^v$z&_OU(2yqFSzV7aV`uTMRsjo!JJi;el3AJE04da?KNpj+!jV1w0LzZNr*`)VZ zcbmu5oK)qxr12r6F41n!pHtcfGPg~OkNKDwZ!6xTYm|7->Sv0EmS)<4)6aF3DijzT zp9&txN}j*pq~G$Q-?{JVb1HABMZML#!FTZ@!SVC>S&^`9K-XHnJw+kK*TVc>`aZTkw zzFGP6R_}ZDiiM^|1&7#Jr*J4un7mnetAg3eQbx9&Dr@XxHgWjPs8ZsQH#A9D^XkQ% z)B5|Fj`dpdwed^$9ojCDxBqW3$BJtQp4-=J_sANH#Z~>R{Bd=C9p`STZ#!(7TOYHS zn9i;JW@+%e$8tl($)p<_5*NFAIR@JO`80jML+?qBif=p9AN1M(Yg8_sovhEaU*&!K zntpjn`;+b|cRoITaB8()bN&7gN_+ktyZy#t-Ko&szdVXnx0p0MP*&(L&=ur(x~THq zlSt!-r{n)}<+wlieEa@izHe`D^M=QkT7J8(p`oJCEVXx<+NaP(&3#iPCop%<^9S=(moBYwD9X0}mTYx6>Uh_wcLlFj zEsMI`zj`7Ka&8#p{ePl4dB(9`>Fvdm&FuVbZY=#v zELZ1eBz$m=I(e+kOm6n7dA5Qo!4<6{Cc+om7+9D#@JEU)J1Do^qebgr!R@u%5C7zd zdJ&Mx_21#G$_2k$R-cX+ac@W|`e69nk0*0OYWM9(ee2I|PBGcZHp@4zdJ)F>d~Pux z(|f@WC+z=qmcO@rwp6~zSn_MDZ-R~ekrPEGKa9N7Ub{+iJUAC5Q`*(otH9S+@^K== ztCrmp9k;X`VV&zSle;bH#Kjp5N?KHe&`sV->F;ueE!?kICrLUz3%t!e|6a* zT=k&ViCrbL*55z7^@7n2tyF8D?U9?ea6Mm{9-J^$O4+K6eNCgWvd!)PfvOr+*=cgW<9i2kh<+qmqOVQN+;Jk?AQT`r7e!p3E(r!I6%W9Tg zDyfT|)p)hzq4I*YOJ%>kxyft0s_MYG*wi=LQzqud#Ap2D)bL@Qc>iSLtiD7+kNXF0 z+XEhlowoEi5PV1GQbVA?$;M_j=lT2o3W_}0bf2%`;D(mXk1ssu&M@5Y<8fEs-3Mzn zpKEpg&3E|G(bEfdJ?k(kZu)iPvY7AFa8^NOzB6mD%=^{0cuqTC?7nBSvIDzI8BD8E z*X+#73r@2&>s@;J)E4);kk-mO+ppM)@HLx6T+j%-eT7T)sOy@I%E40Ef~qZPab1eXv~ExvY%)Vp1;*ME5XzJ}k=`fJDvyPB5fNoHnd2S8W1 z@0QvBW9jXM)!X&%$X|7THKR@F%ABpr6}fBGb!XlB>;63H(nNq*Wg= zKUTT4>tc<{E4CGyK^7YdSi+o;SH}cs|*(GkNRHg*}rLIzR3dDqS=$>Q}yuf=lm4EyMY{HXWbg zE_Q}{_4Ipg7NYFo-~77Yc%~iq{-^cmy5GKlmuV;F9Js17E96((PLD;Re0s{pt5fTv zwimFca3(Jgvk2|^QzgB=;LolzyP8y!uIdUoh6GIttmOM|5_)~(q9x7C&-{FJIzO)X zFl)tghZAe8%$;jIrR)zCa+yS`u$;I5A9HWxwvv}dER5~BXB)L2OUSM~c8PC+5Z`46 zo+6LgPEkC!)=u-}&S(zP(9>->y?zfD>&F;27uTal1FkKVIpx*8ApU;bnxzYqeM;&l zTE1##eZO$o6FUtpjke3@XK+iK=ep=#%bHxnyM0RTr7qFa55Cv`kX;kAO=y<% ztQ$J+TP_(Iyoq+%*zYiN=9X>FTiuU7RQ#_{v`Mu%)OePDDF=7nVivZpm)pW5?B7}Z zICIwg@Gsrj51xw0I~|PZkCHSAT*Q`kVF6=}$eD}3+{*qeo4~x}?#o+CrDr!D>z6;j zFX(8*{Z93H2T~_5>#AwH(zjh?%cnro1C3G98{bE0x7LeFoOMXdv$I|ztgwvZ%^UyL z1uYGR@^!PrX31xrZxxR_u|-rNVqwVD-9nevO4{-K>M#EznAI=W82o$=*WF#^>B4bw zae`}{&OTbbejkf)-+YerIfZOXf=l-JXxsezVgK;z^?AoPu5{h}Y-+(-^>v{0P#ZR% zo5Q_+&mW^Vx3;pE<=j8^_hN(Em07c_D!#wn{^0BN_{6uj7dEpO?D>806aVzXuh*Y# zX8g;3;LYT8$I9z^H5Hq?Zp?dlV8N?94vfAx#92pgIWlOTrqlfS2gngg2@!g(3 zBHv~{n9OX!7vU{ETRrqkS+&q@2Gv>Oc?=$jCtEvGU0=sb2wl3`CNZ_p?Bqc|^L6(b z?El|9FQ_s7&^g=P70Xkf803ZKRra-fb!0I)#9yYFRKo6k`?6fQW%h9+=UEb8k1g5X z@xHm6qql66)ggm5=6b7@c4kL8q#Rg&s5sd8QeI!=jN5^i&L+I$HuX0A(D3v-OTw!2 zR|HNQ^cyhn-{-U|X?kb)!vDeFOKozBQ^S~-er&2*QEv8nPZ*DZ;2DQ-3(2!w&qF>$ zd-V5gSzgkU=Pob9kyl=Laz#L9P-0nw_72q>d?&*WA292$tTsERpp+mK9=7W*OJ}}% zh%ndN7V+La@0N(BxlLaDVus-}olEtt^EsnJCFh<>ILQ<%*SGeyEHtqo#a~{ z^O+?S8~wh&b$;~^mztO*Uyn1TUaE{wSsRkJcW&>sb84@Smk9jt+M*&;^AHJe((1M-xdk>xf>Xk+;I5zR`I~rqO(~$ z-rxIeG2!Xa>2X~T7IV+yyneXp`~9YOQ*9r7-~Zn@%T+62f<4>*-H*R>SlmkZw8Znn zN&kB+x6ASx+28$^=8?A&dbjJhquKx3zuECmG(KHzUzPad!^0o{@*loTpLg`v1(7MI z+U53YJ$N?TzW2~SjXRa!@2>c1CDl{^;DyWuUxydo@js1@KUk=oHY?Ek%W~^~4Eg6~ zi)Z;{)UAu%%_sN&xp2YB)ai$|%rusGl6!xXXxQ2)&eYV@53A$<&r+T>`B_WT_GiTn z-djI!WM#E^dnY)}^<>nF5I4)h;0lJ2mW5qVV6I6nn{u!1@3Mo|@AvRo zm%mGS5Y;iul#BP)-t6)nZ@1lk*t4@Z(%Sst4^E5lTLMeUTlMaqdT@68t%YL0_c9z$ zdAsWDh6l}03*`GAU;HIyA|1~bYZzZyDQW$EvgXWZN!;vms{hj%-=C}J-uHd)`^R^3 z4%$>kgyl}F)W4CweC5u@#~YSjK6~eV$qkdt4IZC8XW3j>_UMCd$LWL%HFr*^D=l32 zWB+M}CFQL*XDTi9*_SHPQTqB?ZsUZ|e@TZXW$luXy!$-+@#D~}6AFjQB0kEkea&Q$$6| zB**-UGZP{w@I>i5)H*cm@3~=c%HnQ`wz=N|9`*LSCl4`%+jTuY`5|@t``xY;-Nr_o zf~SRpmmd0W=;@#6Id^%!^pl(Vr!(eO#*5wLHk+5mJn_=hdv7~q^X^IgyySnCk?D?uvU?`RN1TX~w)!%C--46(Gp@h0El7CJxWd`E|Fp>$ z{`i_u>-?r_?l+bkD|z_)@-qMC*Y>5#I#ECDY<|9({AR|zTepN5ZchkSdXd?1BF8aCY)w8I(=&Qf@iD5vprAjZw{e79JaziY7n^Y8kKiCRsQ{bupjZpb~$ zal?b#WtL{qm1Sy^zOCZiTFc^LG_&lTu@V2XXRGekWj%r z4Qd+|_Dh&XG%r-ppP#((;*5>UjMbO^YGL%~+FEGBU-sTACu9Df&O;3%;^IatmXuve zyskZ6w@v>47x##G!8bSe&i0*OnA{|GiOt(!-VX7|DLdW55@%%B=zECXiU0khOTi-d zNSy35Vex}e7u>7tmn~vm8&RRy zdFbB)u2Zbfz1^D^xm=#PT>DUVX5Cqb6D3ZwQm&j&ljw}dVCFoxj{W7AwdDePTDtnI zd?eIZmz#7)GDWDdE|-eG%HX-AOe@lWPl;{Kyv(ycS{65^GY4D}RMkky&XRsuU-zN* z#>QmpoO@eXeZAg3_$9VufuT>(28EbiC7L%A+@`?_8FF1hz#JMf_K?*f^vPRYmm9CO`er<7|p&$j;_$rAkg z;*yY4$3K60b5;86#HAa`@5}A@tY6<``}_OG%?7S3{TF}BKGG4GQzm6nVZgLJNaR5- zj~z$BmaR)aM%wkuX3p5QXj{jb;x{gR4NL!JF#p!uy2x{bjN_G+#eQw8PVJLvax%!6 zc!7CqUU*!kYL?=*1us|Y^Em5D&2&jMII%?6GkgCgg+DDWyxwfD&vDi)G|~!VWsdp8 zzvzvvmUiNgj*C1MY`l_3HlAD&^YpcvrI?uIKYlqQ0lgg`l+MJnP8FTH##ZMQG!t0sdK_3?>3QJumdk#vpY<)|`=o7WeSZG@Qsc$a4Rvpq zCEUv5T#&SZHCXb@B9~(`FRavH=`d@LG&(c)pTNnPFZwpGQI*(Z!ezbS(ILq!)=Z|! zD^e1tNN@Ar_331ptYGJqtOS86e)i7KxD*wbCf{fJQMqWt``gx^ayyh`wj^h*=Mk!1 zW01q0IrGaeFULdg{D05;Y4L`!`1vA(7iHRf7ianIS$I0=zf{Q!P4UUR4;C6$XdIXy z8SzEkgzLbjyjxEt%&g|Bzj%D)ae1UjKkMTkL_D#rhPfhCcW)iK$NBO0*-l->Cx}k?n++jDC5)mw)mJ^=PS}~czH}X?-v=V_}fl%t-JL0)-z$N!`C;xy}eEQc+y^By&G{;y_PCYHe7Wv z_t9g|q8paGs<(4}dzfW&qd{ug-Vgu&@F(2a@pvJ}Rvyz7qf@7ya{~lp{-2zEamnQ) zd>@uBO*yCabVf|e50AxW86O1f>^~k>m3KP7&o=SPiivAZF6?+1|KpH&BnnU(1&@J#7=e zVCEJHjmA&Pk7jr?Ra}oTW-|XI|HvYArA(i*n?lF=hm$4wvK7H_Gld1GfX`<@?P=hQmMxY!*7(l;Q^)=pemd|zgWM-ZIcur-#qEYO&ZCaOg8!yScVK-W?7rl+=oBR!ay`qb^ zfBEXgwl;iUl6g6xJG9~N?Njci7iB`c6&|d6vUr-HoSpcGc=K(cYLC=sWgd-ipK-rT zlAn8GTIfU#v-QpjkBfX4=R~hgG7y?vcQ=aJXO|6{dRFWg%-s)MERvLc)$upuly~$EtJKQL7k(&fm=}CBJnqHlBsi~KWA696 zyNd4aN^y#l)OPV!oxj?w;yFjlES}6bt4FbI#phmH^S3fw^mCpaRV;aIVMpNl&2fu4 z1!CCtw=QQ$zbi54SVTkLe1;pAk37|Ewx`uR@m`?5dxD>v`{J}|+R3F7j~A8Ct5~?} z<(u5Q+a#u3=Kjbjryn*s$5&tR@B8NIoBUF{_owca_$tXbVY0uSWZm!E)<51jTvC`| zlBnzVIMAZ#$%ae&UL2j)bxu>&JBvx(*U#|_By+6q{CGJ#V72Mgv-w%eyst@3?bAqJ{)WwD`^3-RXY21{-T(XT z`vLg-~HvgOWM2M#V*L7FBj0yuzJf5mbhQv_dmS8 z|0nD3$2?LtBKtny%}<`4zH!;og$p~CyMyPZn0Y1c)@&30Ev}eg`M#<6;hN3o9C+`U zy|}bggzMsx&}(aZ4#sk4br}WCeDvw#E{=nOKf473lpeTz+onn*T{JHgNToW0NP>tk~e1@k*Md zolh=Je$)Mbzxr#;9xk08+qLZCy_{*c`x(AJSlDd9>3HvDhSi@BhgCn^DL${=(D~Lf zD7N=;B$KAh>D=hDLk=dgW$)KD-MYl*#Fem$X(Q8dfA6PDZ#-YWbE)Lk$<;gMTln;( zIl?(7Zcv+XZR;KxHhw7%RgNp4K4eh9tU z`kKpfx@IJU=U?8;i2{rZCA>J-wHD{DwSHKs#;fr7g4jL|&hwj86BQ;t@QbOCTzi4Z zt);=Cba@GD(wBA4+oHFvbI2$V_^|oJc26gv7Z+S_uJO*ewCLX#&UFDET{i?IUYyBl z-nEvQ)j6h4GQ9Afo|Tf!pPOIj7)oqC{@3ID=@sW)D*U+vqCFLbX6`fRo5mTP!?mr3l;x8)- zHCnWp{wYpfDe!;WwylNAKX=SfP+?@$zjWxLh_qde#<#%6Pj?S)&t5G(ga1OCIop#U z%XO32hh=JJEiVdP!T3s>sVL=ImjCvR#&((8yS%*@%C_3c|8IIKE;?<2WS+i^Wetbp z3xjWhi!J>bCZ9=(6*QR?v;1-Lws$wUKHsa5eKxOfnv^|DnaH^W;aTRH=}G_V{!aN^ z)5mrBg7nsa<>zgg%h-2c-Zu4Z%g*$sPR3!k06SQvFFR?+?54JeFOvL^Ec0o~%yf9-e!3uX8!d zZ*m%lXk3~y;h!rL-?@pLk$V{qhtH{cwMjSM=-%YHC#1h~8%y-$?Jl%7R1Lev$@gT7 zv5MNoIUI!tlJ1?pmND_|JT03@zT3%b$w)6 zy~O5gq;e-_&8x--m)%1g1LZxN?SilC=T5C`-yEesFCpLW27BIYQvs7K{`t|`XX9Gj zPUU?*XSI0FoOSa;n}bWuRb4ZJ7TVt_{nP6Dk^7R)jTdt)xw1U1XM5~;?J8SiG|QFU z*F4?WpyHJ4X5rk4*ZFQP`MF~4I`@P6KNmdE<5+O4U%uBVbi;eUJU=;`Z#R-Z9OBk@ zsEp+Now#(O9uuQ^%zw?Ydvb&uge=4?^CqH^ozioVsE!TSPjmb1)1e&bx=;j6or zSAXTz&FNCPEcY{S<+i0auIq@pxITXzabx4&xd$coZm+zYX7)Gq>xve^#cj$5oF?Z~ zN;ch4)2sflfU$se+hm`O&TV|p%AOdW$Y^K&&Hq{Nm?DSAvIUj-PhMO!NI7aS!y<8$ zl>ZrTwUg%0_A=K0dHjB1{r`Ujcek1!YUzADb#X-;pZwuZC;j8jPkdOsaew)Hs|JR2 z0qe>Ce?Oi6;O_T(PQCt|v)^$nI5W$3vg7mn|Lf%MeEwb?vAN>Z$>oO%GyGHvc5s>& zOphru%wqn%_!*yX#f@*?`g>;_RGmBZ#|eA6#@+9KTJuPnaMb;IEPqhoiqyWJ*Q7tZ z*?iu~m}$?uyStNTw=-Fu3AnS>%!KpOMmrO+OuJj^yjyO+KdJtYv;XgB&ua;j_$7`9 zIXieIFRlzw`|(4m-ndJ{KJ${wm1m(Vl$#1x?fdj9yWo3l{bNf-AIV9K-aEACYu&zh zCu+OEN!IoGtG2Rzoh5#8mPnc+Q;u8y`h;e$*I}2o>$a41ZqTiY^`}j%X_uNW5uR7*>R47 zz6%%hui{N}bC~>ccgpVrD+4&Inob_jKa-Js`CF#DWb=DK{tsjg>> zH@s$2wrQSud{*4CBMmF|f4#w(`F;9cTdi9kw%wIb zsFv+?xaZaqCCq2@x|h?dkuOsJj9=jkj_Z@Q#FtN7t@?ZNq@L8ybuBB4u9WOpeR)&& zuJgQ3Yel&)rWmNTi9SE96Q!|CW6jA&1-u21mZU5?rQ~gWL9AuYu^i|@&Kdu`p zPgk)7|37rSIN{ThnHfTBS{6FD9r%)|zHwVeQ}DWoy;8G2+;zLMWNqYbsec8>^B*n| zUgrG0SnKMZX_9vN>w5WGm)c*40=1a>S2v!8fPqJL|QYl{klH5~q z4F<2e9Ni!Hr};)dsQ>r;c0lA!=6(O0<(X!#Uvb97?s3ARC+nxhADA`&U~{_zm!sZK z?v0u}zSXCv>$fkTUn!*KGlS*wGT$~~|2bU_*+M0n+KCK~f%h}F%g$BaQFxebg;CQCJwpGoFDe~&o_J;@A-#5E<+qLw^*NTRO`6PXoKB|BDxvbC)6$kfc z0k>Lr)xVE>5p_#8N?^n0Z5wuSs>#^%>FxQzq@k(*>`zLO%ICPkMyoF~&uqK0p8dj; z9c5RgGPuuW`!qgOQ&i-b#`R``U*P@a^9q=1zE|IOZMe$%dkSCsxz>Ms*$;IjDo0Ls zZG8Ln&(@lTrc%x1G{Qyj61ORGML$|oxFD~8x}L6xV&c6Y5$!qGHFR?_ z4LF=`C3u#v+{IJnBC%WKEZ?MyKeD1)+{HK_Px`s=%%!8-PU5idHsl6@}KB6P1(od!)bDH%tsg}RV({(G z((bt}Dfwpb$?|DUOd2(dg_LSTVH>mb*QtbLvFvFG2f z>@`;vA51;9@NP}-ii=X+mFFA()&4F#@;=OD<-`Z7x8~LT0xebJe{kVnbHRrXbu6x| z1*bBXAMjM4%fYc)AcZ5t#rODL{<|kP?mlPnSLDY{{W?BZR#l!0eDW(@&w5%4DG0Eb zIc7!*HVbRbHuZI67cx-d4KMYTopnyGjeojci)Hb%LtC%kX|UKVd(c0+;Mr2E|L;Gl z%eUr6n;#SnuajZ>^8WNQhfDJ&r1i;clYZ4-)DU*-=(gnFdJ+xKthaJ1h;uD@vf@Rz zxL(`!xN25E+qWeWb~!AccdWbX6=A$P?P^xu;g84tn+|7uQd$1<)T(tnVw@HeJ2!6F zFjw~2=>Tny>yMB1wu`YCu{cCEA6OzHI#;A5}47k>z3P&-}&DUIQIv<*=Um0GV9^f=@)7$KJl;xtzV@1@sYP) z+iCsXJbF8S2$@CaIZl4sU;k%6&#skwm&{Z;`(%US;f2~w3S6%b=w;vF|9bZ9g7bUz zmduE~p})84>$AJ9EN_CN6k7f$7<_-|EmFP4|9)Hs+qsh~MnDs4Lyf-K*YUP?&vgx+bP96?-4n`TrrBC%L(7M{n>F=xbPs-uT#_TX= zfzui#H`VU8B^awt`g_<DDPiD|CV zkK1$04^L9%e!w07M<{Ev*TZ|i-?#7jB_(oAd~sSfOV$#WY_Dy3cNwF%UAIWlgnNQ1~JNt}Iw{I9+@C+BUntRiAEFxAV)o zCYbU1S(b`rotU+7>DJb{yFGr5;>mr@zK!@WoNS_uGAa+4uAS|v8RCjRgcR{ z`912MJ{3>=dMh-eN#^iA{|SfZuH*|k_D{O??fz%Gq!&b2TJ|hSZoVP1>`Z6K{Xmv# zk-7iwmfvr(Oh425?uOda=~EvGhy?r1IrE&kPsXy#(ce4Rn%V7=$)sz(hP6j4{VczR zl&yO%=&zan_tK`M7q{1oH+yug*q43RFJeQ2;+%p*DHeHm3Rism$+tyuk(5n_K)>42 z*Gj>$iFJBsW|?-^UeNHe?l8&zc*1gjwm6f~(HrkgIb!&ol(QsP?sW0z`xfZ>-D}6I zuGJ6b_y1*{_xn2cDZ%}M8_qA^^ep>H$3&a(OK+P_AD_Qssn_Oj6Q0NHcIi#AUK6+1 zY>KkvM9#8K*0fHCfTs`s|N1V^5dZtv^$RVQQjTHe*SZ32^sVYAY}p{gy~g%!yo_Ag zg4bKFO=nhnlVtU=^onA!sN2$;I}3B}djA%_^2Al}!v_&{A}!*>+p@ z58v79Jl%g+1ULBB9MrO4sx<78I6rL;Pw?W`XD3f7n(UIEB6GzuhF^?#Q_gw0%`Gbu z4~mF07;ZPa{`+18gBgcV;99AQm$R0}#=9iDboQHVFSgP?{k1w#z1`%tXxW3$^3y~E zQ})QMaX2k}_QmQ58F9^C{^l8>_x0@eTrfB+kuD#x^=<#P&o6eLSms;aP!Odi^Fi(4 zyTwa>zNpQJsXiXzku1oOZMN%Z*4G7HZEIdEJ6!uRJHE7bfzkALULDs@mQI}D9IWv7 z__;@G*YfCTY&kUTt@VSQ&*wQl*enyaSnb)|^80CLuN>(Ve(*^@?qtN0^7;GTY~GUg zmn&jh4Xe%PH^v;t?zOxB`^aCGC1+Y>GV8~$#VcPjurHD^%i)+~<}Ulv=|RrxX>&h( zuYT9o+HIHc{MY%KcVZIeX-wHZ?{>d`|KZbV{l#Xl4BE{U9GtCH-IXPzF60Z$y0Yy+ zbpDxU-xZBYXHQSj3_iU6$|^bA2e-14o$P&LL4%-X*xX4mla#< z6&yVM-fd2we@M+js{GQGuW#>nmus3`F?Hx)rS&wtEo%9pMK%_7e^_Q%{!NM4S*1B! zZ+F>SuFL+j4jNwMsF|!aVat@H@{;Ux_(Gt@+ z=R*YZ%{!Nl)YaeJwel>t$^VQVzVPdh??fLBe7>}?-pMX^UH;74+Fdo?v$W4#ea5|E z|MMg*LBWL|nUDw?e*n8nB`ya2_ojLV_iI;^_1m~s7#((bvRqn)>OT*Oe>{$XLh*x zoR2w9Jz+avld1Uhy^~F=0pDVKXP4g72|q4r$HK7k2W z(oRkbTWY!Zt9QGn_=1`JPCkD=wA(klwKiM0^Q(Nuw>Rfzna)b`ov~lw_B?mviKcC5 zd78r4#<2U_f0S7hxm{}8n;SA2Dk3KyRm!bN>};J7{QK+m`v)8YUs|aB^2o@_dj7HM z`P=Ugx9|VWn`LdjTH||0Q_qhbEb~JPDx3n$F7%axm)c;KSQ?^VwZsoR$d_edJg@_oX8?|*s4>$BxkzS-yWY*^Kk z&(Xd0T3*k4rNA7EN%239E3gzB8L_x^Da;M^H=<-HZObV9gqavkk%tUtS0nJiA$(a8G*up@q)v50=~i<=pf4S#*uV=UrQ~oep`f z@ON2zc6r_p5uX_rl2KBxC&YE}hMrYBmV3Lbphks&&Xm!t%5sOa+l z)Z~@7YGHihnxVAx1N+sjTVwqG@2gF?@?qkgzbqandTy@H_h0cQ?%>8vWpD1VtqxnC z*86DAWk1&okq4#r$lm_$u)nU>Vp4Ttpy2$8JF>oN{WvUNcidY1c+WrH*_Vnwf0CS1 z^ENuZ>GS#B9C`a*ZmyZ9;JQ_Pg6GGBD`G_)=Q$MAIxBBq$Z>pXgDR_!s>9`|+sD3$ zhlds%`CIpw&B#OPgO`-HRmE)P&LrzDZo!^yllWt0_gMdrt;qgoy&?6s*tH*p|Faoy z$>q8%+PCcP^7x;xt_wJrCB|B6ZOB@8>BO}wa*hqVI{O8a>`fl7*{|~NY4m+NP5udI z{x9Kl>8U<+EVA?DX&xoT%*z?4mrl6vyunOXwHct^!^-3HOor^sQ&t^pkzDqmGsCN0x>n`$Hj{H(Cmk}n zC+Kr4K6FCjBGGHFcP)DI8;*Is(ndBdVg zN|rg1A?|q5ZYkZ6vyoG`>{?o?IjLdViBH>ZAHTUu=v+R3!MFa`KgO_LHtgmkXG$@S7W%zWp~PnBfWTazze)Km3o?7y^l;bDD;ABqXqv$;ecoLkc} z>EiK9jh@cT3Co)1+|%FtMCppbTn6vydd<7v?^G{v>wRB!Q7YOf+xF{|;0;Mfy{6{>tYJKKEWgdES>M(n@rO6?0{e2AQ_y3Uz3H{PAKcP}s&A<7q^!6edZ6oft_sa!L zZTzFTlD&>7{9a_1^Js}@%(>J0`#H=1JY2uw{{_apo451#pS3>Q)$RQwmhYP63^SvH zO8M#b^Bj~Vc{a@3^+oiw^&^!=)qsc2OPJDJm^o{&+DY~b`fIZusZ>|K=4+RFJ+4}} z=Bajk>tR#VH@Cl?zW+zcEGL3{Z`C)qw|7fFES~?TNA~&t@AmhP+udWHzw2Z0htAdO zTesh@BNe{L)`Z6(aMoUU zMsnGQ5UEzZ*j-95)+XOKVR~v}CsI1U;o8II_Mfwk>&$Ku{x;>?z4H0Hxv%cb|J;`G zyH?4p@bt&DNpgxB&UKOpgic4^J}3P|T+U53dFsb}P1i8VM@*dG7j7}~WL8i+VQ|-P z!-)+klUv^Gu?{@vEts|VP>o+g_$!=Qnpzd0sty-z~p7(F7Vg;0YuCDA9{Ajg#f`FOo zGw-WAQ+%D3LpF+aT->u!`H**qnrJ4!mLSK5Z_K8SBC|Ws|K2=9wW0cEVUcf{(H?ak zWvk1YqKmH_%=buE4t)`e_O&Yfr$y7KH!?fd(d%dLcuf2kK% z3|L~8dw-v7*_#^&9i6Aj3*Y!G_&Ma;3YQ5N_`Oc=+8_|Kx2o4@q15xY7yff`6(@Y_ zk*tw9w@|q~@owAK3mpe~GyH=K{9^3e7fSj1TPMEi+&uH;#Q4dkb?5dhvzHcd(2d#9 zP}?<4CzhvuW6q^p0xMRmU;n&7sOkahj5Cf!jajE+ILgZMnpB(+$P@n=w{@%8r#(wH zE|W+;%TZG?T|H}o#;bqf`+o8ARXeH$3-%Zu{eLMcS!*&wh+p2U-%VR0MV2YGpXYTs z8|oI+RSU;1aGK36={z=Anz_HkmnxtzWzhujlJpW*^bU{w`{DrY7!>g z{jOKmTI|%WDGNJyPc&U(a-RQCFKIs3`)JFW=-ap^s}g^ z-SzsnolB49ZEff+)i@EeApP3m^Rm0v>L^+KVsZMg^hwNv>g0V|w(q5$o%ygk{Byeb z_6c%Iid8qae15qjIqJynT$65(&L{hL-@6_NohtRg+IVxQ;|0DC?+r~{*Ir!9c+yC~ z)61K;(O==eK6Apcgb7Aru@>)SjVjCM)Si#s=QTa=NZEG1)$4h0N|{+Lip_rcXtMYB z#t*yRKY7*2`+DNV6Pfe1idV0=ZSc}=gFv3b5e+}KA7K+NCLiPA$i6nCx8F-F(#^HW zSnN{HeBY+ZvXvfMXEYz%Pk(esKa;PuLA%WO;jNfIb_!nw-{xKXtv0{F$=c)hJd=Bh z?XOM-s};Xsx^$`L!@(NRfY;&M&-h!)Kf++j4jf zlPNcAqkUj(tn%*<6MlBfnC%WPYoBMks$#pu%nyf3(=RN&wmV?fssl0exL$PZXneqN z@BW`(*B7i>CA2N)-Z4gh&4iR=3#M;3v%}W6GH?F&IkK|KRnzUEz)4Nk+1qm(-`Bt2eMaQ=t?0-J!H+y%TOOzt zSm!HP=(cy+*3G7Cbr(gm-O{lApK_q1D#_pbMh|qJUhK$9 zX3E?6;$&f)k2fZNIJWxpgGJtYZT|N^Rob1Oa9-G@O0M!p;*Gu8`gbZG>vGiWUf7ny zoc+(^x5@J@mlMCex%o;U=a%Nt!kr-pA`W$2iQmb}vgbmGhU$57tALqjcBS-9o*Bk+ z#P^1sRfgsC&*s~MCECi~{eE^#%*^%Dx?{R4_U7cQYOmk>!RE>pS7ren?kqFbH!43rFkL+?z9fFDc9DU({hJoWkB7HDuABP8HFFp1i|a0vSiUb2 z`0#S)dzIz8of4m>@YHVqVr87Mbu*U%>nsC-#Z&amx4slOxWJ_@!l_p9CI6zHsQ+I+ zI>>WB_~5d6%?6)ZU7=4L&-1q#_6za|9BUFeccJ1%*Rxe0BlQ^181O0@CMM3>&pP>9 zXj#XD6*3R6WIN5xnDJ-w(e2$n#=&PJ4jTzSpFMAb&=xmEtxGfS%=I|*OLg!0rTr}_ zr~chnfBCN?IJZWj#nSad|JD2QI~mL7>aiaBu~2=*?cR5$*{ddexVbs)&;!Tjgzx8M z_uO7J*;#s;=BAk2-))5st<+x3C{VAMmhkS*=7-$zJ7im9yJ{nfiatdIJDoekqHwIw zj!&-o59g2j^8Z=lD!+;rJg?iq(VYFL+bVA2Gp$pOGn+!U9p3d-`iFg4lQ`Sahd+Xz zFT2sRrQ~IMz`eE7vv(IU$7?J+o9SUclVyJ0x6F#aXU!LIZf)LEt#?}D(sXs!4_Dg% z&5}%A@bq*8598vK(k8WQG*7eaZZ$HR!~beUQgDRiUHK_zwgUAamT)r{}Yc*-ZIm+ zI;_ZM!?m!J`>IQC+^c@KM>;G&=Imz)n;p(l_AxufPES{znSD|JPAl&up`fJLc}vB9 zzqRRS+{+MfBh4oI^W&%cBkjFhcWg_(!v5gMtAv+ATsN(+>t54|`xUp<_}1OWuVce6 zN$0;P>ueBjZ7^V!%6Rp7{f}-V;dLq1H9{IDn~xfGJo)bO==4WN@q6EewLa`sojh-6 z;l`G!>gF$N*X9U{^S=`R{i_WoG3zHb{fPK=SnuZEPX?TsU-tV{MXMitezJB)3Fn)en`du7UOsQj zn+E;gweHU|zpNFQII|&dvRUSX1^@PF_dL^mdqCM(vD7|ux|etN&pY;3pN{QMH-Gih zB2g(RgyGEwncU88Gu=1@n0fi4V&=Yb#SR5WM~AkpDR0;nC2g);HsT^z!HD({p80ud?%NB(N{sHrK%DD`V!vf4vN^dauVj_Xcb|<^C_>j>tj2 zm(gbVjb<$NnK`!?I{!9&KYPXATdb`S_y2zXE4!;~b&C9YlPp&0=-Ce)o(ar~H+SC8 z7#gFPX`!j`VqYzLWwDcYv~f(;$KwkYZ3>dz)6==dwWdyaHm6{OV#6Wyi>d&WjMLYj_y=fIWC0BdAr(RX}ZEO4&4t_(a zj2kW<@$-LJg(frfFYwKp6uEV_(1z5cF8ls>H#S{SiLc-eWo#?`-TdEEp8cK5f5Es- zIeXY6Z!P%Tnk;!`mW1))R@YbY57(>A^fNzs;N;!^>k3jT(|5a96>Cq)y;oYrePG@T zrlb=#HJ7(ccdFTVbo=68zYp!6rm)ggfYW2~y&q9MEv-Cr8t?uNyT`$Mlw+FJr1gne zf(gu8)k!zby}Fc>>N7Xjws)&}VPVxT1(QIJ-8}bqvuK3rMDyMMeeS#E7sp)Fw@uma zpSnk=DD8iaynn4f5)Hb;eB@J zWp2p&M`@k`a}G+#d%Az+kT6(aAM^0yLPr46nH*G&4rEDSvr?XXEtaOGHhRxW#q5I6J3p zQ`_;lzr28>J@4t=hdsv64orBce8Fco*So#%<>ZzJr_JTE6{r!`U7M?Wknv`qx`*6k zlk11AjZUuIyK*99Vzpq_!CS1>uO`nIY2H$BGi}Yg&DYDn==X|ew*1_XpY!AN|2olk zyZ_tqJs13C`O2^D$;OXMCH9M4dUUbs+AGtH;%aw2js}VEUw*bmIjO8ME7K2)`{C|( z-(lei&Ob}8T;bN-_M~Gb&#pZICkhe;_a$qoNF;JD3C(d?de>a7zr6dkPglxhj`atB zq}Kg&y_L4vDp6K9xoviWZuNy6yZI*WAJq8s*tbsI-_UePMdATB&rZ3sJi;fAJk|U$ zx#YKgL8QUV{kM}HtIzE7n53-O(cNhJ;qjRn0-?NTdoSlU3IBEFlGU?|xBT~nOX=(M zT1louoq{PwlI?27_rhZA1J$6-!Z=3d$L zrz;*j6Wqrtx7>rX`nA;~uQZFuc-y@FGa3CP4LoNXHhj?$TI_q|5$Bwc>oSb@`=%uO zs@?AD^_`>^tS_QwclP#Qc3#PzsFhr7!NTf2=?i1SuOGOjCDbCq@%h3*<~60ao1?Z* zTc-ABJ?|oCd)~IhUs?_umb6avU$!{RTQ<;Y#^oU6t^j_QZe=ZPS%Xdo-SgS3E+-gH zPq_CfFLvRU6;poy{4g==-b}Z*N(te?!P0MT82|QPKkS`qlo_eBd40^= zGD9)p!nxGfsd*0+@9=h)i#A`2Q(3vf^gkw(f)b(j<9l54O zR{~yK+S_t}<;t~B1K3LbaPwvt2OEckgdDoDaq-Um<&SsdxcTxvm9;Ko5fPtmD7*UF z8h71L?kUqnH*c;M?z{c)@YOX>7x%I|hO_SpXY)4t#bll?;JP+`SBfUHR@e8h-~Loy z*u08A=guBZzPIb!7A;Ducs4UV@yM*w4RQy|-`@)@_*VJ6c>iR9pt=a5Pezt^(r&ph zE^t`G^dPJ5!bTTK$%|~qY=jc^yhVy6dM%6n+BGMuANVqPS@D)?BVD;Qc0AT)Zyv?= z{+YM2&R1|sFaNBc$@~YO3Vu81@UYrdDqKvkFXqHF7on|zm4bwtNV(U{+CDRr7tVh%}4v5>M}ajjz9_Z`ECwyJgj6p*zN6ts9Q(Z|i8e z%ke(Ya@vMh8H?nLC!O=>VvAr1Ubbq**&{L6)$~`)pfF zO*Izu8|+Y+kQ$tKCF@&z*|XLM-27GC?&$F#Qc!*X00RR8zzYPi>eKbfumb2p3RqlOXT5msm@bIu;gMdJm;+FWXdHUip z1&lSnci(qj>$RF|i`LiU{V5wL)tDleoLsnI5syOV zakb{?gMJ&A=svLsiV!=xcTxJ=FML^z8L!KOosGY|iewd5m*wAH^Xv1I3fB6+m*o@w z{P_4`seXO$;??<%bsrDQ|L5R)W6fay>*M*r?vSH(!S%ae=T&^Wss8YF{C_c@c}A^= zt^d55Zr^(S{*2{rF2~f@oly!(WBl;W=W~hswYw~@1;qFN-8ldC$!)tPUE9;Z(lAA}w9mha>&=-@lLK>FcnNhuhP2?=C%)Gp9XsmZbJ_uhH`*=A3ZEWxU=sk^%=nf9QeZcy>MuW;s z)=b~h^)HyF#}{(WG5juLH@)u=`CaSM4ryBnXd83=ILVD z^22Sst>3PRl^w|AmRYMQXd$q6iKw!?%F_d}5dj>h_FOxapw-NvBif+Gm)dY$M7+nu zGJ`!dey5X0djZRq-YwFTw^;8yC3CtxcRNep_aEm}uAB)8DLcA<@{Ti;9x<`RxknlY zU);`~UGQSh-dD=)Gxp8nIFZo8{ZrL*j*(Lcf>o*U%+$IHTsBp$s0Y% zzF7hH@?YJMy>x=}s$N&A+vETD{(Mh3x=Qpy!50k^)3}DmCXC*H@(io_p@d}Vg9d#8o#mCi7RsN_x250tnKIzq+%nbp5Ky0Ww3#k2ZI<`w0)uv#p7X)j!`9zDK6uaEVbZLU zTx>qe^kT~gqs)LU-(TJ3Ubo|wR>jk$^@le-^D+pF%qeb>*b1SuNxCw54z9-GALnr#;4~>-S{!vX z@t}uUBXg==NUBD`)pLjJ?rhVY@?LnpZ^tZWrld&{TNTnjh_OXz+O0PfopIJdc4@Qy zvh#D!vImMUmhAiUK+Sj75r&CnRhRfYF8vajDx$Q);>^VJE1fPqk#Q|>einQ6zGSFg zZ1(#@ zRaZ8JD%X~lel;j?ke^|dDK)3&)yWIO$9J(jPl)rg)BhZxopx3&GdR^l^V#hi3QQ4K z+C?^Zn^RC8n@nQD2*4ODckQ)e8FW+jseI8nZCxCC$@oyuHFN+I(RpE_EORwhb z*Woq|Ni)3iZHkoPH$~shhWIC&%%XFZIIpqToqTxs)a|QnQxtCP4o%*3OJeQA$LIRC zsxEgiXpJW9dc-%bIGb-@7-LtSuUuJE#$x#s6Re0Iz$JPA0 zv%B-Yy}A3CL*w(_mP2<{7P)5V#cbBuHNEiE$3(%G+A<0*Cj<|jxREdGJb&jI?^tQp z4W6pIwD&Z498q6Wa)OWTP+!}_7u#bDR5zO+3H@AWBKGm(|3vtvv@+1ub;Hd|2z8=@3w_*s5C`gT9{2vIdJ9J+?ms-Kl=RJquT9zQ7}hJSNF}6 za~7QmUQ+#v=aSjSnQfJ>S}jaW`b@EZp1OZrSoGO)Ss1tMIiKh69(w=0@jZmCRbS&! z-NL8Nx3r($R=xW0Mx&a}bf)sOPnGHFtZ(+b{kFd8-;9M9*h&_BGQYs{%gtj z?8MK@dIMr&I&LYj=$<|G#VqSe#*eqM^$wpSEoYnV|Jj>==*LIlh}YMyTsdYk!Lzqx zQNqmJHKmi*%+1QmKUkfyYLX@^|IZv-7SA;cgU)>si3xu8WaZty%&p43*EE?GSpwd^ zU3)6NXN!v_>x3Qo#oRmPE4Hs-=)36B9{1Vy=D7wl{q=LUcID1AW6PG&lr_wkwNJmH-nDPp?vnRSX&2u)mqB50y4z{l9M`9`%OP*$D2TOA-;VGNkl(_EHqHX1oD}8pn_vd4NWPfgzrP#H{dKU6&7q{&Ec}67p z+%|(&zRK-qoT9f)XMXs`*wJgbg1=$m@}?Y-S95o6JeFR0d|tHM(F0Mob_I$@@Bb=! zmqlyEID+*`nYRRUHqx7aa*44Jzsib?aIXqzpZZzuxL#)c;K92?ARk_ zT$S})ZSwPZhK0Thp7l-U?{}E?`(mtD*6zKUubkEHaQ^3;9+$WY%qup28S8)We#pUJs8Chy;y*cOfo$0SBEV{uS zyQs|E_-CNt1k=a^LjKO$&~#s}sy#7sce@+-PFi zpf;0nqS&uRs!>KV93ciCi#~9sBrQ=`nPQ|;99b>>buQN#&(i0P`)=LTxN^>t^^AjT z?BvYwhvE^lryYJgML37^Jd5@F4z^v>^*`-6@5z1b(7t3z(Myd7M1PiE)U*4=HonSuwN|hpw&>;30*T}5qB1_db}25#nKwBjg7#mzcJ1J;t=SvS zM<4omV29RZzJtr=t-Lg2?M0i3GCg0`R(}4mViD7y{Lj(U3|1V72yU#4z!u7I_iR>%&v--a#Sbsd?84wl2rCgX7xFO~i$C7iOLgXEn zE>+Dq^q%c!W$UY2!3(Onma0CAPhY2HUQS8ntXOmHk(BDqw;N9hmF-OHkNAA_ocfoU zy~|#A76jP-zxp}4H)h>z$7aE}bGIJIF8k4NQ}ecq$@0yHx0_whs>xj7nET4l@zTz; z$ka0S(%&qF>Cq}{SeM_Fsr{HOxH|W{(W5P#sV{%s`E0v*YpPaBs*LT)4DVWr$m>tr zzUlN`v-n^5xcYX>E&0fgt#Yrm^&dAqVNH%v>5u)?vEnG-##XQ5wwAYBg#B9-54SA} zTQP&xcILE<@T;23&$t-}+Ob=!GWLCvH#KKf5v-K{_wDWNgv-Z#8{_*Se)S-s=ly=JVM6KeM{v>(%fBuHvx=o<9)`Pz;XAjb&~+ zxNgne7lBtNvzle5o>?Z(>;!_yRduZfz?yC zNUwP)aO#b_l)6+hlg^U03-3`Kw4B^UiHnBs!8>{m?*__%b5%6^@$4fD=F zJ0Hff=x2)5kx#~!Tw9DLXrFi*myzBu<)PKi^B*gVXLlLRpC2s2uv4sT&2pP34d>5o zDv67Cu%0Qxd15K^gGDBWuU;rEnp|hR!(;i)$p8Nrzq4mhwOqBj@K2b3O=j`AOIhVx zFL^DPBPgUG;Av#$<|1t%fAHVTlw_PIwAF?bx*C5?ijHzVDk~ z*Dbg2TE2UE`n~GaqW}K!PP%udWW~C5>#ASfsXm`traX^H?@cyB&SU&XWVp!=boVZBHKNstM|M-o4=%Q+K-z%^h)lz({~u0Fu=&1o z`iaTssy8L4en0JQ_r;O@&VKz9Q+oTv^aG?%Z&AHz=6RmSbMoDv`Bh?^!o{vZC++PL z|13Wl@#W0>ZMPlDUMi`5+h{q>blQ>=jNvPHcfG%zGV9jKf4*!&AIRyDF*p1D0o z|MAsQFYVx)F?SbVUY0W@`cp>-pNHBk&qsX0C;3*k=PU{C)-QSRDx~s$^}WY4p0)Ax z@)%v7eq2Fs^-{^B3N3rTKdO?XQ%U(DXeo z|A@pIf3&pSwd;Jk&-L`$gSOhrch66Me(s!Pr|A2Tn)f~W^ztL}1#1rf_)($rhP#>b!=|4T+vj$F2>e(X zJ-7Uzn!D3-^$+ix{;!sud**L&k=}+#W#t;jY`!fFHx52{cW>+Ux%JbFeW%|1x7A%< z_y2wAIBkEMk1COSQW%prs~vl7l--wXv?{cTb%QiR`@+)wy_p~HIeDrIwzYc)&33sK z=V)B%)oO7<=BvoXm>qi#IK`G;4J~@R_49K0s;cGr5EIPM4aoPM;T|p(A1*T*c zyyp92V0U(7)P*fY7hHGCA2@YaI&8Hd!=a6510JvBIL7fUX8vPq_9>@SS;Kjl%6E(3 zc0I@Mh2jbXcbGG>F-}_;(x;HOA%JI-enzi1Td{H=;{(Z! zQ4CWT zpIo@HBKjo%rfmvR0j1X+F4Sglr@V>EoxM50XFbn{>v_kgJe;pmegE{1q8X8;Us?af zI;;_o*iu`~Z@Jj~hzskELW6D7^`ejbShMrp-iZBmx~~=AC2-DLcCY$|Q}rp9}Vf+v_vzoL+8tUEoM?>aO)i)1p(q9#NCMA$Ps>&F-W*H*>_# zO71-7W2I(bd;80Nw|y_lgnEweom)}%Q_MuJ@aDfQVcNU~>+}m2WcEdW(M?gT*l=$~ zJXhSb)1y8@9UYL>GDdYWL-|x`yW~RoQ>|zVU9C8f2}@z&c4psHw#Y9Gk;(F?aa^q+E=-1 zZ|A?<>HBE^+{a(v_D;Q4y#C65-oL-@`c%$R`I`4@zRtc3p|~{tv|y(4{kwJFSG_D# ziI;eMQ-Ui$DmGMc$MqkJ7U%BjVp{g5`DCU+M8ws-rzV*P&4 z$lDmanz4Y(V!H@@Xg&llL={b}zS@jEszpG0^v^IYE3rts7b;Dn5p7P+5 zOZA%c4Fa24pH^P^&1{ink~Jql`zT|)`Nge!uPS876gg-Wd~eQf)1B%WFq5yeR7^JD z5ZBxT7q_G)Bs6^IGGL3@lyH&B^8KIU)T^^hjmpo-aP4hsJT$xPvak6`W_}x$zsG8= zB9|ts?D~GXJxVZmTlV+7pO3`%yGZu=&Ne&M9sk4VJkz56&ZjbBe$9Dq@Sy(qI@?b# z{p-En?fzdkPyFwNm9n!l`p(Wbo?Ptz{m=D$zLyfe&n-U}xa_-PaQ?RQ-)}N}p26iE zRW#c%=bpmysOc<*#&dNqD?T$yyCOTJ5fWT}{}8RGoRQ zX-r)iYz9d(N4w>Bx87P1U9soa*7Xy+^>%su`zZe}E^o)jwlB4}eWEYjy|XiIy>y54 z-JeR;_hV}ltnSa+BX^2tYFuu|hq+Jso}HV?8n?{s_1rR-{Y&@zr||#kJgIWeb9SnYk*eylSxuj$Qhd^Gs90;JPkY7F zaOC77#>7j{U;0!pE3Uuv`=9bE%k6V7z5aPN<+WU6;OU4%Y=@?>re^6?KkVjEJCM+# zD{;ngrfK!GHF0}qt#e|S-jpsotJmyqR{7n+?JVZr9p%u5O1Xtvs~3X@Y?n z!xjS;q~E#U{4kFcpT&R|?Y1e(4-nVi4@hzG~@p zB1-h?((4nia7;( zEk!H-|MUEWGL@K3DOV4fP3Hgid;kCFd*Ao%e<}IuKw!$^kGV%~Zb|+8*JP3$r`+`$d^LyLlhS4!tuOD%+kf`kU)5Uemvau7h~^bDw_3Y+%lOhV<%&Yh^Jk)=st)H+n>J{UcIpV7OBY&=M^!nAPQ`_x~aP)2-{P=guiO^s(sL&E+S{_kH$dXA(dCS#NJh z-~9@vtGfi}^fi=Z6kL_LT>Aa)_Y>Fm|1;Ix?fLTiymCoi#hxEe?f1m+y}7NdU;k5k zsgX@|-J5fNPx{yT_?6@x-T(i0{SpU_1Ii88)|%f{2><&l{9H!g>CN;1#xQBK*f9J2 zx%v8^Pu$m2_7er&Z*Sjg;+%1MiVcU0y2qF3MkA(atsSNh_CEQy&d^~`NQm0%hjy2( zJ7#Dfuk$fGUdiKi^uS$$V6=WGdVO68`_I2OeyosAc{k_Y-3(a=mI;k&;u6kBoDVML zmf3zxa{8p~bY`8b`;zO7&jl5GJ(|AdwVtBQtG|{awI%h7c-i^-P9D5i$o^y1uXP=p z>dr=WzkAxs{rvRK=ks*;|NFXr=ZOZE;|KpPu6wts&?Y(V?x{Kjh22Z<-+w84+0r2W zn#Zm;LBdNuuC|-a7WvWCnrY+88=fVcdT@UdYs~t(LNZ_V_=__|4^pNj*SAgCn32t3#I(=(xZQ=V zPkJ;T`F?wIPr3a5@93Wg+U-65ipAabigDJj4K)q(ydYt_{X(;i%duut$CHyQxu2bU zw6t47{7TXFJKewP`%0y3O`b^@A1~lJugGy@$G?cR3K2H33NPM5l|F8Gsr(L%c z`1WPF{ahWM9)m|K+S=Pr#_{s;TCnBB$nAJ9Czb1$wJ_D8?rP(totvL$ESni>z$s99 zYi9bT(9%Pl>J}d?Pw)27UCMP}jlw#P9MQ)M1x~lzzq|HeZOiU8=4zrWQx(Mnmo?^A zPvhsTPw=QH| z`&wZXb3$UxM_W@n0oktCy2oo+uPUB$doV9+EvKgCgGdw6?f%VYW|Zb?{jlm52~=(F zTDf`c$HE7CXWk`Ii1Tb-QQH{RO|93SN+_b zWA97e?Ma+`@V3=W_sEip_;1$cKji;j>`wjn=jNv~=`lLzYu~-!S)S@~Xwk(86ZX3E zw$EdJe&?@mVfef)`dvZKyHF#uN{71Y=Xb9#Uk;cWVAZEP`}e*fw-)sI(2@^kkZbq<~!S{b6(!Z9c?e6bfdUEnc_mlTkOPgbF zUwQkfq1vi#J$s4B?78>81}AKpucm%{=3gF734?Dl>=iyXl}mT;yl~vCSI$ZydRtCv znORonBimzpCWLDlyx(W__;gD2jGwDNx9)RRD`xs{`R0#o`kZBf8!~iny!r5I!L)PF z--XSXv(0~Dv+3M+l}Wj7`;DLQDq5c{{%Wn3{Jxs+NX?PkweRlfdG!12**O0x&)ucd z?b@}zZ2h(5&-3T|UA6~&dV6Yj-1^@$vo6iL=9{`s{OzIhb6Vyq>SWIB*Dzkqyl>e> zHtV;i<&RC9E1?<}=sx+@rl;Odmezl9FM89KJXdhGd)ZQ7!!w&!wTPQkpPgxNb9Z`w z&BxF2)1>ouxt-6n)=${AprX!r*M9cw&W|PcW(b?eeG4n^F`Ke-w#yP@U1nGX~?K@^gQxyPT42TPkr0>2R}PE^EEfK z`H4q+ewnUUjyB5w7h_&%`ec%~{=~1Z`wGABZHR2wXppH2YZl*xy#|-I ztc_S1^HhXq>#QpR78?RK*ct1;N{qjyrm?Aa!KwrA7F^+7`Tu~{;uMjP7n2R&bT2!9 zpjo>mkJ*rCN#4eio^pH1Eza4}VqB?L&t$FcaZ2z`nc;L?%8}puwVv2Xm#vF;SgaP_ zmldCRMpW&sS82n8#`8zN>VMgz#kV4GS!3jcwgnSs_Dz`Pa6#|RnKXyZoOi!6u{&^Z zIkTU*HS21`+MW-yzNYmaV|^gp#`50k7UKr#)Hb;_Y%cr!#xZ}322)4J z;7yF{a@qO&cKyBm=|!Jx-o79FJKx{?UGd+H&ush3!dWpZQjce(zuWY29z)Ld`(@U* zO{*)`**v%0|NP#>3p+E}w!YYWJ9As~oH>QhUa~}|&naxP`M>G@^!Pu2mVcU9|GPzI zmW9f18ISB=&$ZQR*FM?(V@H1FWbd*=VlVrB7ag5+@d(Sb)}{w*JNo|q`0+;eo7KY- zsoEd*=@(PlwNJ~;__6BqbDy-wDa*g!Q|8qFAousf@9C%e+{=sSu@-l4VC&#dW`*7G{3G4UsC#h zTFEv|hOlck-}g7X{T#jjyW;!ZC9g8m_rLjflHF);xZ>SqZ?7_@rt`AXT4@+njG%?ckW)l`?@#(%U+&v*IDK76XjQulT}(w%-7x5@UQzc zS@ws6z@{{QG45HsW`<^(<#(!<-zj|lcGLF2h#k-3 zY2v+V+ELwRop*1}%}rTHgSv|J;&!;W&26kYzx&=>wHeHt9^Ux+sms1{r%vRSISC1e z48_vtmQK@|vERXLO}u~FswZ~>y=Az!WnH~|lY?!8xygyDtFJ^&UT_>^cVH^8dV9uL zWQU1qH~)i4lV@i?UZl!xc~G=Fs^G>J-lgm-I^LbWw4x(_fzH&-iHS|sJcWKIlvr*o zP@8-4jSp{vt`&pf!QX5gng(InlX96Kv#|9#zE$(OtT(B0bHQ~bJ#Vg$mZg()Cv7ZV z8yFxXa&lGU-G$H69lPbX+cI39x^Y6S@jtl>5_4vsSK1Qibui$n+*j^G9;Pc7!xPR+ zc=VSo(&=yIcsYS>OMB_@7+CqXBboZ+;-Iu4N$g(Kqg_ zu|WNOM&s2NEOtbPuZ=o+u)8?veUpA;vm~qIv+eiGnsrKiuE(S=VK}!f=cdy4-S7E# zY!sd!FZcLtj<@MJevWAmBE$Mh^{rcHixoywa zuT-8~>~(I*%p|)>kGw2}!`+onp9;*rej@Vu9M#FmrrQPTLe}m6X079t@lD_NtRZQ*6&QH2%>^IN4{{Fk{rR%+4sMP9C3Kdtpx3OLRrc%E} z8kh7V;g53JG0Wy1`*kLA(~*SihwJ=PZkIRsrpQ?HTg!&e-?RPQ$9Mg2zPP{Y3({o0 zw6oxazVyys-*ZfDk;%PpF7G|5owo0F`INW2!|(l7=`GFqAgsOO zU--;(*CKgc?p}-RzqyWG@|bJ&WC5T5cel-I+?@ZvZo8JP$KkNGA&;tGo;o%0o_?C2 zadpk}>a%Lm^Y3AB zG}-l1p`i244%5})pXHDFO=V_sVYnle!fVjRro|F@Ve2Z#Ne51IDIAz}z3f5vvHdwO zsus<@yefn-c~X;xMGUuA^HENTIdMy*S3kQUQ4`)MH)S@{EjLNIw3J&-S8faQ{8|^* zX1Oe?q~7%Idr`H;8I5V>bEe$!$f{h~(6B4w7&EVd6{E56X|2hPI)}rY?`G?$@ruX# zW~=O~pKy|6x~v4-k%W(RYuPphyIlEdT~fa2dEf`hw#Mmx8K%|;Uo*1!xz?ue+Fa<9t+B@$8JBpzy8bp zr|$OuEFWLH!0~~xr`a%2W~uMl_BRt-)*r44X!~9J;2`^x!{|I~K_so1_|9xNLphpxmN_RKp6mJRQe&2tz>ya_wx|hin{;uf*WL7_f8TvQY^U>mdHL@7l^HK%&g|E> z@^_6k3Q?*3sN*!@T!mMxy?gZO+@t6C?nZzAe%W}TQEzdo^}#f~i}O=w{43qGU-kUl zcRbcd4S!y5T>W5m{Lfj7ed|5cIIdJx^_#4CRlfBlw@q7eOGQd{jSrh4Tn4C6~Fsg^wC&vTK2lVUVXM@vNvZhT)2wa z+f7X^tAsyPn~SMwn-}MS*3X;c|Af>P{QQ2x=+8s>xMRuPYY%L8;tMgjrlqjJQNYHk z@7;w(E97{ySi@HTsoi9E&~ibPWPyX!y6wwO$unqJZCH@J*w<`YDO0b22WuE}q~ZMy zTY4+XC7TwWcD}OMNoTSI!>k6bj~&5Gi&+v_9GDs0cd|GLF^D&8Y}@3b!%P~pTWPVJGX9at}x)7$wJsBI5 z&HAUly}kYPv$N40kN9^K-r>4Esps~>+1H=#UG66Sa^8dn!`XAz1orEeB)>7ge(%jY zYn5ut^mjT<)+~GFH|N>LE)(7=#r*mC`PtguVmi|wo5|?&=U1NC>;JeUS503y^{!gc zgNXorquq%J9Wv0 zTJ>)p2!y=ofB2`t^692xwFlH^dLBEGW4&2Sb?W)^mhW{cpK8aea*OFr z`v2oh`qOjw|AqZ~m;c}IoZWApX;Qa#m#^RRkhfkhS~hlH!a=52zKYS$CeQ!1B**Gw z%FXTR<~QY78vD+aDdcW?*Kq}J4CVzpLe)0?Ud6}q&{`!$ zVS)6DrBPB3ELNGSi=1FA;GAK)e^Yu?*=z@ncMY?OH7}`3PciM&-M|u(P`QC|hk@_z zkZ-G=1+ED@P7*1SZPwiRzh#|jrk(rzF zngwS9R`(e8>}gAO^PR1i++b&rwJ`Tms#L_hq-$UrLqz$1 z2FGS+sq?00RUX@NZ!3Mjw>grpS9Z$z+GoW@@Be;3y1?qvn%7m&eN60s>aryt`##aA zYeh=KcD`Hr9!V7!x##QGf1OtT;k}yajWuefI|_F`o%pus?bh%U`gMh^cWOT8zN@u< zA(qZ=lYJ}q$0u3e&M>L}>v=BBs5&?MU)|pIc`_4X)ThV&%Gti4@XbAE{!{*SpM;-3 zo9`2oxGLM-$JM^!>dyU#bBouny)QF+3v1;=Ipf`jOrr0WGV)zm*R2*?f0AYO8%wM3 zzDF*;@v~>;7T#K?zOa5v|G!U1)a?T8zC7eNeD-ylbzbqAce_(QJI@yGeZv-Ua^u{* zy7JeH7I!aOJ+pGRU%mJJob3mD>bB23=AYheeg2vJWH#5iuT}e}@?>m@eeS_`IYY@? zZmz}l`k79*KfazN$E@={O3n7X&t3kHN3Hey{Z{?^kugEaw$f*|+LD6DJWG$1OguB| zb?MC)t8QLD|3li)w!!DVxJ})~MTJRwmrd%tZDCaHB6eo3@^Q=WM^{}vefLQGf*`Ai z`ObVEvHzOipAO&u%QSt9+LP_)_Fl@{R@)P^6@S3+0WyBh~@%v>BUuPYE8zo$YmHqCc` z)-hA|IluEWA{cpZbxrwqU~YOshJ#-1JJn5DPqQMof6K7^dnGvY3}c4V{JG4JZzL5a z@h)r26Mf3xBhKvlp|rTiJiK&4lc7&S*Dc;{JENqQbWh@DROZ@OGcoywx7OOlZ@6Lu z13q0@@L-Yt2OhW1joy4U5tpxhv%JN2J#WYVOoM6%hSn{)4SdIyCq7JiwkWwZ%1%Ni z`ry`;7iXy`NUuAmD6mHH-)S?>6<#b&im|N>*AjLItX}VTef~W8H?lK#PZDc!lXha~ zDa^AG-jjSrEJY^V^R>Frhe#%uS7AHvzkcg^ulVT3*n~|Fq*$a5*+uQ%=(?c8EO7m4 zvlDrtr`GxVdft|}R`Gx0F^P~LQ&oGmY}Gj}sA$+&B&56Aj)h~bnCUTo*Bwi3y|1mk zt#LfhCU9F$WklW2&GM5E?)`r6w`AXhIsHP$jrG&lWa+9lPwDxnaA(sp)f;{dSDkJ-246$$5U;FB57WJ)WldU*br z@%X;n?P=cyj+T7t`V>9I@=yt{;s3oUQZs55e{I*i?QZt5{9eO(xtZ6`2QpaOe_q0o zCO@tI&+`4#?JJM2esV%oibj}K-aB2X}ABi(5CCrnYCd${enO0dp!5O zKgNFg`F-i2UmI7sSBizSALp)kH+i1R-4*eF{)iVH<~2Xz%x|X=9$U*hbH?I6E3auf z(Z`g|F*v@yCja!#jMsB^FF(q3y5RSlJ3D7TEnG3nPeAxb&T#|1ur)vS_!eF%K5uz@ zWBl>pKE@u7NAU?Py@BCUB{L=F@Ep$PVu_x%(L>AU)C|Wa{v8U;ychCTuhwPKVX!HP zo!ULYjH9A2DtV5>se=}~ejnJAki17kmG@Q8VkQsGiog0yT8lqsGQ{U{^oxaXh^_J2 zy!PP5i*sB>OX~u}PFL{OOic_>Skm=!S6E1ZfYIyo0rRzcl3&j7yb;#P@+$VHNrrxiZ%l)i8bThaLc zopF*L^Xfz0zSBf6S(xmqIjr{ow1mNi*o9(;a<^vx(wTEwP%l~}b(#03fKR7h=gQxC zcOY)52g8peljm!QTTcI6cU_N&Iju% zuk2J_zw?>a&zI-xRFae1pZs|2ufTESVpMxzgt&0yhZp-#>+iSGtLgpb>ZW~Z^69yA zt9<3$Gd@r7t=fOLPL9X9>rfE;I$5>8cXmp}Deta*{+=@5|8tCcnzzmW<0XB2rj?z4 zdXs$?(-m7e*G>QOisqE{dCoifB_}a%^`!hJ-ePSKS6bgG-~Rp8g8x%}u1m_jKkN5#_RM4NE;r7x zWLFmxS$14>v#{s$-7BjtmQ6^^@pAQRI6X~&a<6pXoW--b|mb9xY$Ub6CIr;8cT6QrFi< zYaias_Ttyix3T-D*8e#BKl^a$TnzWB!4z`Nw32sck2JA<=L zf143YOk(!USwTG44*Z+&a^dW?2X`#?id^4&{sJ>|aj2eEc!+=|Z?;2KNWXSf1jnbe zh8zQ0U+{hmMqSKMOBXHDRmt_prEdd~MVGjzXs2&7VvX zSFp~VD08XkE&J&dS>Dk6mzDy*S+*-a+9UEMLWb9j(4stFg_vN zSGkF0%T%YSg$WE<3F{b40(Q*WBR}MMVFkc%iblmGBnTX>&vV;$Q`E?^+5XX!mGjs89QSNcwTc^KA%$@ zxzwTbc~4CJ;oeQ<=lAIuPkz4lgt5oA->)U}BO@l-#vUKQBmod56em}iI z!9DHt>m~PFYu_Ec?X$67>-E<2iQ9gk-*flZ-Aw)HE3a>`%hyEQ`}nQA@MF(T7Q>U3 z?ml1tEPwS|GexTJjoIbI3FaRj>%Vzlzm&v;hQ zvv1SisH9@Pw|jIh-cy^kWNCS~wX;d-vUS>J%j^;t-VOG*zq<3qoalE=+$pTyyIa<5 zZs(N!`a`a&U~|o@;Q7Q)nax?sqAE#Wz6eTg68cg7^ONYOY1{v( zK4tH_y=7u#&1}DlrkvZ`dfS92an=7y|39BOdiRb?JKx`{e!@C^Z->+J?-l}I@4l~V ze?Hf^+Kk(xxwdKH{24O}^bR*qDPpK*KKhMaZil~Ho4d@7sC88~zVUf&Z~B;A&Q23f zs}nsu$;j!f8sqT;4P8l04F(L-PIHAS0t49Z+zJiiOh`NsLRblf{0#Y zmcoAu8o#4DR>v;N);26k5SgWqm4 z8OzI8y%5}aS6A&qIm4yT&(2H^%?>ME+Eku+agpn%ZTst_W3NhhKTiJrRQ7#EfAp6- zK5Ri%S4@1bnwkVw%k4k=?Z=dTt6u)nw)Q{2q}TRs=sQvV^wZn+Zmuzn{c`Bxw|73# zGi373QfE(IcO++j)uL6m+itx3JUesSg=c@J{!#mB=OFidV!QmyM7Fac>9eKY9KG%{ z``pajzj~AYuDyNdT#kSXW7^&@>&URwSJPFZ{BO?FKUN~J*>|q@pO|a^_bvPUY1W(N z8hxkK`rpjaTzy*bs(k0~LoBlYH>>q!6fS9|9jmn>!9G~uoI)oa~a$NJ@D zlBIq(wQ{Gt+jDbM?rF1~|9(lIu#>HRLqk((i_5T@Gy;-oH1lWnHHz*7a?3N>KFa6I=eWFqL)OtPQ(qviOQ- zzq|E8u1!7@vV(iMKKu41ZE8Lj+I=RG^?BR6$k+YNec`hYEw^f$(0l#M^@FxsWd)pj z!cQ>W7Jk#-c*$VB^-Y<_e;EpY9?E*{`d6h)aU>H)z0sjV&r*SWbS!CM=6!_ zQ{S%r!=jtz+14QR_VOx6 z-}8HYAK4#!pJUBzbJarm?)t2?NM{(XPqi|*#H3sj!8Gf6>e ze(OZp*y9&MgQs!N|72qMYsTW#>*wa4nK8>gzj4p6tLrCv*S{A!9u=xt#M!pyY>}SS z$)nQ^Lhdq2q@{d38*R{j@X&-j2Tq|Q?Q7ig0U}Y|9wC9!YRG}3j54f@~yB_}` zAF|VZj{k}^A&rF*(|EWU8IIT_?or(L();riZqX+0U5~l6%(xmZeo0z9Wif{dw;+$} zRYThfKi;}^nX>lJlb9DUdQC-1U6^@1aL=8V#eE2WXg z|MlHB{=;N!ohCOnIo-*A(uJ7jggaKRx1g&%Uyk6CoQH`KUj+x1(|Iv`|0OY^jA zjZ;_|v|RmNneVRViJk;tNX95 zh3TwXj_?KBhfgLy{c`#I6k$ILN4eUP?wq^7Hb|d#uDSPur6EzfbI0l@(bkqj7qgPUu{d@AgLoq~=fUV41M^?hiS6+3By>?d)3-NN2Ub)i_^E_8q&s}}p*}v}oTBiH8Z)e)fc_;sOwJft% z{W6W$dg764bsYgg>~Fv9EU0>BtoHr-nfo{6HhpZkRxI)Hq5VhC=Vxbo-&NP`scDP( zvL*e*oSnrh^I5i^|F*XO)YWsk-%m_)e{yT}`pK{JcZJn`nk>I_>gN?HTdSBmBeb2( zB{%(M=!nv37d$ojoPE4r-LuU*Udc(yO}csRZ{e4~Y)+MJ*5#+)#qO4Q5%uKH$7Ikl z(x|%Pv!SLS)WY~}2~ zWF!=Nc9p)1VK8TK%hfMmpyTHu;JGlsNK4JmK0@?w- zy5qH+Ep49|S8QhAF0tu0!<+|2F1HuN_?f3BPvY-dntaD~c4DuO#DQRqTz(a=Rnz*a zMReCU*KO1>klFN~dHz(-jR8l3HZCZdtRU1gO>52S4;lwV?36#){7g{Z#`V3gcI9o+ z7dw_+SRt5pKycB)P|k!yGgeRg7q;SuRfl5ox)(yaAvfz2p3GWvK4M{Eg8jy`|4O^F zjDuWEFFZQWTDrL{Zgy8;mR(@ueCATstUHsL<|ZxZ`dlHS6Orqk;~bH(kwwTQ_Vk%^ zEf3aAyXtsndc`vS$Nal;GUN|f-d&h*bk@S_MVt6e$g8H$E!?)}hpWDtbLI5nczPK)q`a{7nF&1A~g=tS=eDSLZkA&qTr@Z!?(WY0Ki zJ0*3q6?=Jpq0Y34Id&yJFK_uAR^?RM+>-x=>m_5ML9WTn?qgC1I}YRq7O;J5)vsD; zbJoyX*;zSHbb?Wmk zUjMQ&)b+dqL(72!$wpd7biD3*vrf^dypXmnMlnqEnvYHTgC@uMGncE{K5%0Sb`>rC z&b9bi-0HRa5B4&v7PB}sYcib<{Bm^C!IZ5v6D%Xuxwl6;_ikUgDfY|(<5MxNou_96 zX!FS^UgI>3u2>Pe>vUHRvxK@)teff12eS@Wdagbqw@+J72yPVt*-bb;-=cpafL56n}{b}fD>#`=vhxOJ07 z&t)UKi3hT4GjqZnC$m0yQ1q6mBWqS0e@ebkLX+!}V&?2Np93#$24yimSZ8%4z5iA# zKH&#q8Iz@87F6va>t*=sCltKr5TZ>=_dm zedIRmnY!)v|JnEdEGuUIH|KH5!9PFWSsg$1zw+$rl%Jcf&N}((R>hyr*(rb9cnv2P zzK<hrsGg~ozz zZ+MfI<#kUj$;o>zt|zG?eQ)9&A>*<=?NjrtH6~qOZkwRQf5!S&#}U1_(yRKh+d{&0 z;*VWD9`?NN-qvDq@rCE>t{n|p8J2o`vGtQ>v-7Sj;a<$6CB9(e>+?a*7oOaUJh%D8 z7Mm)wyMOKX3aU(+AA4hG?d+S^pUGU6HctKMX81SxlgUZNgiro63nJ3|=a^6URqB|& z|J>?%tl6B`49g3S)u-!;{cikw*^}95wvgTFV_jc6Zu;;RTu#>bzWaX4oJyfTuHWTT z*qe^~eYBn7r|tVGX5&BK3!T*ybdGJ3Yq{}b&q~4Dq8Hw|Z#`*Z^KLia0UsyX$G2C$ zUs-{p;&L`jJYjca8n|QN0J^R{h=7hzI+wbh$o-rppuyjFNo9ygB zw%|pL&wj|UeVbSPeqw&jvOexczTP&4L3-xGcI4diC<*>?(-FD zR~Lx|=WVfd&~$a3F`H|~8YTy=l4(9>vyM6Ft`$1=e8v=BhNZjej?Yf!dL*#?=`UwtzM4PL5&?cps@)nF z1*{BiWURK(__AXabDbL3O380qmfJh`Mec8$%5lNodd|b$w+uJM|GP9@bB*Lq-pLQN zI@GxSEz{RK#-gR<;2?gW{`Q5kuBUpxz9}8ISwG45cz(fwti4mTLQAu!ak2dTEUq^t z+)BXg+d{*gKc87Ai7(w$o0u+SGHF)xrDtnD=dn*Jd>V1`%~@SKaxg z*^5}SuuI>x4VQYITX*+!@OAM_?%NxEg_tK~bgSrFxtHZk{`h^WPPlz&w2`gK$2oIv zC*0qp@%jqK=Gpo+r&vE-65l`N@!RhBU;aNIiSJWbKCi0l&(ZjQtm1<4zdlWW`boZK z`dar0_GAAxN}Hd$^Rsy7-`el7<)>#PJ1SeBnYKJ2gx!3}zG-{-FW+5McY6Efxwb0L zgPAV=aP`z@?08ddu}Nd)WtFY|!gF;d)qBmZe>5l1GQ@1wkDfnuPuxFK^6lK0_+7`sxfIoeo=*CnAXMtN_`S8jM&?yUwo_(Z zcoeDebAhVg!}nDuIwdcj=Q=r2=)LShyZuZ_h5_+ysV_G@{nTc@ClIvcHRsNbMmFh# z9@93evP$jw{k}fp-oJ0#PsNu1pSCM#rP`Oq4-K)^v)#7|39B?-*;HyJ}dXLYV-byN4>>PU!KEVeDc!L zl+r%yvc+qncTe+?d=$vQ;Ph2Alh-aeDbUxzvw(Hc{tvPa;w5_z1RQiYG{Mqs)-*?WeA7 zyu=~>9SyI>i`6h>UJ8yg@9&u!W>OMck z14Ys|nL;|*_cT~bE)d|6Zhm_){OzpY>5~*DsZLf%d6g}ak1tq!S1Tr-b<^M8xc|89;?n2&?-#Ie-YPjWEA*59 z|4-|SZb_zFnFogQy^}9bSgr7Rj$`YSlf2jC)%WjxEVoa(RLr1XO@5+?Z;Ed`vqk6} zAN2@JrjEPMJGL1ZK26;ob3oP7EP2=LxBr9hypu`3&ijP#{xZMXEibcLzJ4xe>H0Zu zXX`~_|0<^Y`XO@;ct=RCIkhHIStgvFUuKbxFLUA2cQ+T?k{ zt}Jy)Gh4&=e#M(<_ZQ8~zijC)cVPBOv#+OA|4*E8CVyG{EZGZ&M?Ok9xQO-K zjWrW?7Q5egbvu7|=)T|e`=9sZI^O$x@B7J{>GMzDm~rx>XKL!4?7WwoRJ~lCzs_k} z_cknR`ObPj^#GX_R%wefHBMg0F?k%JEb_l~p_GKglOrwXHI_F?RlAB=hFxtg+;?jX~k@F?%Xa~`Md z3$MNBX4<9Z%4|WH>`L?PqCdRx=*EAYRQD&}*_ziiL~8fOXX!Wwz68tWuNJT3pu# z=!jfz+9!I$+Q8@4u{D=n!}(UFoStRca$r`-$PVEKla@ zr>dqQ8$yH`Z@J_-pX;?PzbC`CKAR`e@tExC?vJPMdFw5Bl(~$V;Y#V+{|SwZreAhR zhwc9UCebZ9^P`0w@taVKW+K8H-B#bj|!e&e{A;Ldy-YRx(@Fzc(%Fo-+G0ZFF&tK@!s72zoCbR z*Hb!mRZMky|CvX>S6i%1F8CmROm0%+jvFQGil=aP9}iJVHu%e9)m?h@k!8ak_toij z$Ag`}%Uo8!EZZn4yT-&;;_u%X?7ru&^-t}pd(OP=<$G)P<$vFwd@OhR!0cD8Mz;I5 zuDWyG^47U0KUUUH-dB_PZ*jkO`jWJDE82yQ-#RzZYQOfvt< z-B;lHs93(_R6o7zYc^-p0p(;>p6l!_iuQkJ`k$N{9{cow zpD&-B)dY?UZ}+?Eacq&#dUN7l^<(LKDyL;`o4j$5<$ATKFm?MbHVrL94?eX0p7rRDisvJXE9R=ibpk?AVO z)gY6e^32~;DzB?+>}C2M$nY%j(AyhI9J-dv+74bnw_v)($;@Y|v#tCqQkmoLuYdZK zCFImWtMC^M$?*&d58{|sB(cdzXie+L)GSEy>7Q2OxJS_YWP{>l4eNEj;mXaI1M>ye zNHfUYm@?_w`e0Ayx77xkHfz;&mhA99 zvUY0CUxyuL6Bwg5rLyi~h)v?$!Zpn+j-_cL-!$H%*>;&{!W?$8%et2yyUKd%7~>NI z#sgVJ4PK!eeOf?S^PgN>E$Ny=)^Y!-b)Q68$`IcOJYH$BN(#v|w z?YTSVzo{0DX1Q(XuDDs-wd`F@h~1Zi{HOEliuc-laCzunW6ndbTPVm@41 zev(z(E>y1SgW}GY+ipLdkZhrJcv_lniJX`IHKXiPNABOP@vfR*w?Omf?vp?DO8*-j zon|O;nK5PWt#y0n$iM%+BWGoIdUc?)%?=gi1hIX^=J#tR|2cgBzwPVDdo`cevPAOd z-}5Q`AGlp%-|@4vYqr}eN0lePX}8}Kv(0{2=)2wT>t6j^S^Hwj^zJ)Xb6nk)ISM6c z|9dj~*4^tr_uf~``cywzZhz_f>}6ZivwUWz+&p@N@44;2KbPfCI$ro%VPy77;WC*#0^4wce zY#Jtg?fip`9^;tlHoqe`WgJwB+*!4BPT8-QM&;*hB6k+e+{Jb`Y_;i&Q%tu%-@3ln zukPRH`KL>^Kn#C>SjpZa-zNgulkZ`wD-Y(d9kxh%@nM^qsP+A(11!A)HwZ5fMhm8r67v z!jHN3>?-Ij-`~1$-_wMJ6ABKTJjosRNWAp>s)(uD_%IGsw|z4ChbdC3J*4KfY4Hi`H* zpXcOc)v1cTP{=TiyMbHpvIe)v%r;fK%F^j( zoPQRivbz2--~aGy(cMz>3>$@4%5Ay(11^5Qk>;cl^nP}F?nmjEH$DahYd*{}UHvrv z-_Q7z$;m4o&TD)9e_^}XY3{fmN!u-MzMRbDv&JAf*L=kZrZpO0c2Dm;vF+lMKijWQ z`}_AJL+EA8Q2ppK7lvz7df&X$oSfBIrSidEMd2vZE{=l-n64Q9y1?slm1)E2z-JoI zejIF6l#_0YYM9G#i-VGO6_5_2zQP#^cGAc6-lXJe{ztUUON^^=s=@ zE=lzK-*zc7yTd2e=TpJ9J&n`;`u?i1zk2%G?;ro>s#w0AY`6dT@0P4 z`^xg;#`?8?O0y)-!{VDwaZnv)} zZrzpk$}D@rUIqop*%DLF*M75q`b)a*@g1J(r)|>t(_ZGCoY%0h?$YFQle_1AE2%uE zDt@_wkC*SH-}Agbx32HgGrwChch8^xc-7}~inr;+?QsaR-oU>2P(#V~Q@>t??|&0B z{q)ltyt7m0XR|XIdY?P+_U`WfqlJ=t-p%N}S?u=Yhp+mHS&PF?2fDAll(dn7(O^c{ z#6VY^HJ|)0m-d(p&b`P3IY;SyH@0Uxwbb4L_~wcWKd$b6Z7E zJ#XaMbfmX;Pb-T-z zT7UBh@w4(yJFdgF!T5pq>jNK{pGfV})V=K;$!B9M{nB!!iOZ5W{`*G1Pi&Fk4&Bte z>g>~BO|Cl@ma>*Bv3Ljm7kso@amyJs&Uaj4jT%dBBEo}i>RpTEk=~;gGwH>CshBD6 z2l2sDuIX=PlVq~e{V@4sxd$rxar5$P(yl#H#J^e)V|5y4?+g|6Z zP5#p?AEUS3B5cu9$Hm9eJ+-p6XK{&?XuodV&Y>g8xZgVM#?IsWzt7D-{cY{+r=I@% zCb*SdTy(VP;LhhKO|RcqNKRg?6V>~DUH4jpxdQD^M5eBhnlWc~@0SSSs>^rIbIjI! zHf7#y+n(g2b#u4Q-*)`Fd&+E~)*E+zC&{xq)-bv0U%PyM?K?59-d&2(zWfc})d~ck z9Xs*jNCs2*j4M_4Ro7N7Q~4+D{653xMaimo-_4Vk-JZTTr}p0G7d<<3F2(%%zT-ym z_w$*~t7DUQe|z)w=f)iOPcfIR=b!wm#=m&hKKG~1duGONJzlPMb5-X204w*I=PZ4m zg0kdSV&U73tCN=9-t+VGliK><+l%g1K0om$Qu)fugQaC}Zz2k<0gEn#<=XrOzppGTwNg zr@@qQg7vQ#iz6G#Pe=-JbV>OpDND0nIP7$;;IL@OB*ia6tP;{ZI^PmRZ}#@s79T(O zp;aejjf0Ev9+MffyWVT4y(wKU@qf*;_#?a1B%56>Eb|d#XfSFymVRyJ2F*KOHu2HT zyG}mY;A?g+>QP}>l3BCvC+(ou%=0#K@$UJ6Y?BxOBx@ESUzptGYRJ< zYucyw?GwG7)>6cj!R;W&Z6Um5I%ml2d#oM%7Fl1@uT)O!eeNEXxcH$kix(R*gc*B1N?%11*Ndb921JhoNzg;mNL=~FKxrkXSCIQadI zcJze^-4uT-u{FNiyuNPLkc&21mDc~iaVPhwxND1!MQlF!YJ6zcH+5E0z{iNo2p~B6xXEOfTUNTev zUo}^?^#9*~=G*1U6kdcp@wjzV!sBNEA8YtO31vg6ek~4{1)9gi>b$(!RF|&H-t!@2 zQRFe1ICUoLRuTHLC zTK~Ru*~>jubIS+>hUdnzk{srim~gEnWMu$4{~D3xixqcvq9q z7yg(@fjp8^XK-s3-TIQ6^I+cM85z;9l^6Z-4&bQSDRuSpqOxfbOyXznh4315Oj|Vh zfY`*32VX1@adwWasQdFEUwHMi-$nMvs;+r?e=^933fbj&pK*2TB-KktvNqPHtkRHQ zC@{saL3i!W6+JzEKX{n5N6_ry13#_G3^k1>685Y0)jR$0I~W5b0bs`Mh5SNF^ohIFmAte-4Wp?r9D086-?o6c_mj-Qr&+oO^XvcbnuE4U^j2 zy4z2^v;D2|i0{R}tzJnlwg{IjNidq-dy=goPuukPpS;_fT;*>5*)XT>*-NABZynX= zpPg`G-xg+-P`<8sJ+qD7pAUym?Tft4`{Gah-vbj~ew_REbM^XS*R&1a`TnlYHTv&y z?tXB-@zyn$Z!as4_l#cfpSQ=q;KL=^S$8f~YDG=3E8OvNLr9Wv(S>Ejy(bpUw(!v0 z?>O;o*ZigVVRBb5zqjl@v*i8d0E_xJGtc~cS*skp((9d|N>6U3`-Y24{3aS4`t*Zk zzrEb;GYx*fiseLeh4%ZF-iza}U6yOL=4{6dy$NbU+_RT_GoAbY*})$?9-GySIcjg& zswaQ{Zg^Zq`TX85LXo?2HgZ{Qb261W+Mu`LeoXb;KcCtEMXuZP$m{0jYX2l7lS#UZ zC+8gZRG+J}e16rcoErseY~DUv9xy$lqGEzwOR%4%XV^L`uewJ!HuTs0aNhLu;n@;S zy~u4Yeier}`#NWx?OEAh^TfH&^!FNL24NlJrUT_2R&HF6MfS9CpVrdYa z+;u;`IbJjT;cw0Zt9=3@9(>j?YFoX+M?}5s@4St%GW|6jai5%;Z%v)5bvd@Z&gG>n zL+mbo=G0XM>t7guk!_3${5{X>&%as?5z&lCbqgoDie1o{(9F$mDl52v??CLLmffo+ zxqcG)!Qv*kE5bu7uNo-`2K6dnc2qS z({v)AB(ruGx-w0CcQoZyC~rxg!_PU@?|1tjJAV90i?8~rHxqBxs4-t%wdQ_7&zgvB zlagO@nX@b89j{t;c*fz`f0r3;Ft)uu(ZbB|x7@~Uwsz5RtCb6cZ}K1RIe1xib^VuH zTk|$rd1sw7z0>i;{D|}98_TDuu_x_4>9YJtRG*r>#!TfK*=e`#OP<`tG5PoM=&Z|S z2AlH@KeaAfKjp=mD;$O^uX>wYOq2fj|B+d2z?IiK4&U9iD{NW0-)!3h!r|MF_dbbT z{`<6M)j^fI-nh1TygnTFW-1hRIk2^}rEE*?O6XEopF4Y5&(-Zx`71p0@9vuGc(P!p zuirHlx#mu@Cp*FGvuD=08SlJcX2gGDN_Mt@29H4Gf^A}R*-m7%@2a}~ zX3w;AW1fC~CYA})GhQ6qRAmSrP<}hBN+%oaz`{Af=J*p0;L*RAi6z=dK@7&Lx$f2}HiTi<{8YoqG!x!JN(X%+Ql@9#Z#xFGsz{`~)Y-rU*gZS!hc&BPg3_H&$g zxBork&WCN%Pmc(j@2oD#O(|-dx^Uqto%n4b({$oal)rwk&@eS@@%OuFzO&zc)GT~E zN4f6$H_iOoS%1{nL@j^+f1hjFUC_Dj)t1VyvqC?8+g~T$earrZ4P$=w@A%WY=J(wa zB6L&6OC>2C ziLI&UR5|vp`h3nhzU{7;jHJ)?`1-kP;`X+^Tc7GZ?WB}>pv~)<=hLn!o?El^txDL^ z=Q~wS{n?yi^g`~Vo{vFnlF2f+bl%>^OM1N_U)H9#a-GUyRV$mgNvH3&IGgl!M;))u z$b!`M)=S^%OC)@BW9LywWsQ!zQx$fF$qV73|lsPjW+$ykX*9nm|OdD40-tc)=hU{?-v2_nN zi@aVFDRIOwGVzVuwFf`8mAqP$nU=QsE#r*%fQa{TM@%0|AKdA*OFQ%$6XQP#m6C&& z3Ebax8Pu3>)P7sBOK5FZyOl%BChHSMEH7Mz7?YRwWX*cmv~}4lj;W7k=-y?2^)q2D zgB)Xv=2phNy3?F4Z9G)yoV!&cBes5f+=sAmqsHl8A0-=^n^Rh!TOBL^c&N4SXq1=g z_toq7czu(%5Qtv7!Yu7lf!q456#ET|Yl;e1y!j_Ng|U3Tva)hafI=lpo2Bqg!{^zTKVm{QR1GT+)j3_cMDq^rKrE> zjZx(8GF|a7`(GdXQ#a3!-}<05CW1{jvJzD}EV2eHNWJwg2C5_b2uLp5NxXa<*{tXTx(x118^cIs4XJ z#rg2zO(idbrllWP^<(z^U$bhSX2(xk9{<74VJXsF(uw&twD{|W0%cc?~sxtrLn zYT9JsHh+F%^xX)C^Bf0qLJlz)X5?NfnwHR+BRYxugG?9m746`O*QRZ%33H7)nYU1F z`EEU9>)DfYw7uVWG)6^dXwS41SzGp2V!eD(?s~)DB84Ts*N+Rovu@Bn;oZWzp?Y!< zubV~PvFP?YTh&uH7@g?}=9m(871dTwUQi@e=W z%hH}p<@fL(cUqF(|F7N0cKfL<&pyx0x%jeAq`LIUtZTWhRv&||F}@d!++WxH=4P$K zyIt?)eqMY!{d8mP@1;fosYMqrJWz0*CRi^%{ntj>m8}}jPO13>Y*KGJb4R|t+vWG{ zxZJn-tC#P)e$Tz6?fVz)c(>ysyB|Mro%GRS#)XWI0FA8|FHNmJq~Yd%u42KBOquC7 z4wltVwT-==ZhX}4^39;2-eo%V3)Rq;I4tw+At zyGfaU4CqkX#NmANh(L$sw-;))v;US~*`&F^e!YrHq<&DiO!J;orlQeY$ANu8-o~}Q6|DV&_PkdCLqY(e|{r|GO z_TNhx1D?k8Y?jSfb#?B=37k#59a3>0PiH?lDLzkIJ8bPFb-Rb1n+gsxrOULv{G>g7 zLhiM+4OItUdGlOb+Q5*X?(uNf>=m+)ym+EKrUbVBSbSUjL-W(5Q=*}g;=Rm8f4X;V ztg&~U=v8GLSTl>Q#`xKaB~Q~9Wbqy5xgN4)hTb-hfYx`47e4U_H*zq)JT0Z~R{EYR z*8awJ&+;xcU2!{6Ju`BICbgqUZsG$r$rvr zC1y-L%JGB$h639@<|%;_LVk-qSn_tM$boqW_bz>)`6acIX}+dZ!Kc0%hG)xyWH&}R zOF9@8>{IbLJ>8<~)QJb3OxhbQ%nqGeE&8fZaEB9jhgEbGx6rziUYRo*R$iR9;DnyU zou=~3Ob%uX0xt%M`QJUr#~>QDO4W7l#slenR&FboCvr~ZpzAl!$iwDW`3!)xk>W1eLIdh^XE<5|EGJuLNWI?(T}Aw^yht^lYUCx=KarimWvns z*sedQd zW;8w#kXd6bu(|lRoMl15{+!#pTJ;)d{4y8ZV=VhVeZl(4%bvY@^+WP}McbN)jWJ?+ zQ7X&l7w(eoPrX_3hV7K0!s6_YiAp4IeB^g+~uU9P6_3X(k>H`Kq( z7ZVSg*5deK;j+KmH3}KO&rJ=JX#SA+VC@Qyr5eJm^(VRl*DZAIRbRDqcln-oUpHy! zGL-w)HeEmD8Foj?eqPeikiWc5PNwr(6N^r7()JAt^&dLSDOqQ@ zW3Lx$uYdN2n4reU1!tEv>HC~x-E~@Ii=tg`(j1mTUoLSbfyMob{DI|Xlp^N@P0gLV zqF?yOG|l7(PmR_Xc}cWo=o?uuhA{G|%VxB2^SwQ0DzKRKL#)b$@LnBnh49Naj4!&h zT@YWvwxZ~c=t04G^6%CrY|$`%v_WD4zb4mlxrMsTsZ;Wc60}18ZYoN=z_^^zXiuz(6Yxj%4-~BW_ziu_?$QHHfdtb2jG#;6edZ}Ia{>~7oAyrj1B$K~wBoR<8vE#H4y zdiw61nswFlR4YF$Y}d@2^TYCP&kk8jf79a(M-8)WXU(ZKyZk=d`mOD!HB09nn|Sm` z2g|JR2MLd^>OJ`|+pgE9QqcNsw`aKik~d}NelByq^2KWB%iq~m^I!68&f75g=f?AC zzqTy=o@tfw&v1XoOzv#8_L-k1X!<`perORZx9sLG;yh2{wp0l6<{oC8cb5NsQNwd{ z&;jtfMbB!iUa`9Sx9C8XsC7Xm~MRDCb-Z3 zAIr4$fp=G$#RljecTu>Pb@NnfQIj!K=ynSSO92C+D=w=RaQ%aJBkmq=A}npS#-T| zQ&$R`b8N&4@11MUuYLN&OGCLI0vMDc$Y&)ZEwGy3PBvg*)}(pUNQF61}rk z-8%0s&;J3TsJoB_X&3u zzTD0!Pcm)f{w8aoF?n*S{d18W8+^?555}m5{W7#xojLz(NmNnAe)a7ucP$pLxLj7Y z|DE3+t|sxE^Y(t_G^4zd`}a;x&0H|)%%c|v zcD+n1bK$qY=)2QjfoWCc0nN?X@fR|xWM8CRR%Xf6TR4l75O)!4`F<$Eb z{>abIcAng>r9Srq%g+zT?Y*us>acELiD|h1djY*%X6g z8XdRgKSnm{MC^zNTNk0l&i8hDf8CGAMSGaNCu&)JS)SnXYK2j@iFHBJBE7@Tp++II zo5JEtCx(Jh+%MSxc*`;p`R6)PNX3NBz;+%`!$<48iLSme6SXLVBF7G8>xdLDIq zdUoL%rWp;>zOK$?60g^1?R{<-=P-%!3db$I%m&L9B^$y+S8U#W(*5HeM-B#VAM576Md!3iRynXd+Av|!0XAjnjSCAz4=p&f)!mZu ze%Z7ine8E4j`v*%Z)#udBzD1|%|rC=YAyYT-`sPiY%2DRe-deY_CX%AbXUZdDrfG1 z;B|~W@^|wXXKKHb&w5~5{6Qi<^wH+St9Az%#NAr>;CREi)En%Eo(YAwrp(m%olrgX zazLeEZ|C9C)9>afOz4)-;7PsGXENpShMvr%HPgOEcEwFU6Yw*3y?dH|z{Jp;kdpH2 zYp1bku4Xu^eQZTwwD)hB^OH8FKPo*g^CNrL_mv7!8zQ@AS!T_S*f2%&RdjI!*Y{9e z9_wk@FNWi=aYyIDoB< zJvC{MTJ?9i6vcP{|C~R6(*4fw{*C@8`(`d~I(%za+AT@OHOKpo^-0Y0UfgKMX8m)q z$F-!geV2LOq}zW^(llIs<5d2-{eE&g{xe4It(rQg>XYV~FL&z&I0eIZr&})6`|ii_4$#QSEBi zpO4!AW|;ifSv50Thd*R9qt3Utb}Ia~du|4vtoHaUzUR^QkF}{y=T5PHZPvW>qP^_s zPM*5|-|OS={Wxa6sn+>$RF;c?&b_Rk3U8L#{CdEbF0#;Nugftv^*MnWhRc%w{n;gQ z`q)m9=Nr%NE_*k9;Xy{W_-g@cBsZ#QT)X{cmiM_0!C?%J?^-7~^%xi#-14|BU%=+Y zZL(eB0AD5B3sFXasR6UkNd`<=&)6Wf=8V$oYYZCPwY*N+aUQ|Rf(870!V(_uST!x2 zeK}kB3L&0prxxl;1s$}>wW zzupF9i?JP@q+fRDi__v%selHVUDkL1iQZA(bXSU(H_Y5sw5arL|$vR|Nn?Fd&osxIK>te6v^F_I) z$0XXr8t#Q!I36oJuvPf+@v4U*4AXX*{M3=+v6EL^adaO?M7}kf*mHJ;BVQk^Y72_m zX*2u1N`%XcT+s=0Z^%7qT9|u>X_4)*SuMp{+&}Jd9E*xr)@`U`nGjm??$R}eNfz$UdpiFw)0_6=_KD>CXL$CX|2Js+$0Ozy83!5ljmoL@alVe0_&K zpn*N%@+T{$>azFK|Nj1F{I%}JPECeSZFlw+r}bNGKg!Unk+kuEg~8-?OZCJUL}Fz# z!xm^w7ni)>6p(!65zDz!CTEWAo`I`U7zLtP%M&zL{8ISAxvNcr<=(eHE&kd4ch<$M zHdOOE5m(stQ8jxDPtUc!W<$1s1<@<-Dm+**;jQ7GWm!s7x4bYi{=yW`&l5d6Vbx== ztczO@H=VlnOCh^g(@A=E%K4}>WhpmjmK{FcRH@lCZP#KY+f^_2eX-0=OA6`l|D$B2 zSo=&vE_-6v<6CiF{w!)@OmC;W`FM$8;jzrb`(5cy7udC`ZUxTi4>OSpkpEHX-fQx8 z&6-_$+&zVtl&f^HIwV=w}xSN*T;TrnG|y&A}fwF_K@qb4;QzF1*Dd;E>V-) zTri(4O3m^2jbGKeq7swa%9{+USq~pNukobE@GL`J{B9w`W{DNaXPHw3Rv#3I-O*bx zNk^~b+JeQ)9tXab5czhUQcKS~WT^)Yv$BwiNSqlR# z`QJbGpI&bNxsY9Ajm^U&>Ib|klh-b_dBL{YJoVZd$D6xyXV<(*mY-_IZ!z*hNCA;+7_t11qw z7p~1Bm6$r8C`)KCjIm*l*?&eR^rXOAqlU*$Ms^abmpzEjoiO`L z{^|{y4w4ZUmaVN;t+|swkw;F#@x|)UE@vC_J5vh!AJ2R+^H6U0Mjo9$i?t6Ob;{CC ze>l-$^XrA*TFqB~?E)hj&z^byBWAttscUchPc8iD{BEzk^Ru(F-_P5sW_zZvety*} zPot^=pS=BV`Sf^Z2x?tQ-6DMXT95hU&*A^xx0nB`yKWn_?aRho%W&h!>V@xhU$5Tv zvGBU>_Y=J4cND^7ermt_wXpv8hM1z4pPx*6ZZkbm=K8;9w|3NJUJ`otz4Y7dd$z*P zqS803PTD^9u`<}!s+N0w@^a6$?BBQPRcy+Gzr2&*ymAm;GP$PItCd{G^?i-poJKxok(;`u)Mb)87T|x^*Wr_!8@k zU$$R=8ia*@Jkg=QM1FDmf%~~J4G}^My6=k3J^Xib#l@t`zq8}?v%}X7 z>{++|pP06`==a<59h~1T-dT3z$GpEE9&_1E2==#+y!WHc{FIKlW6{R!!OYe_FfzMD4o2*{2L`-mdhY zF1mW!@vWaFX7H7kiro!0mo|F);9TP$M_E1DbP0B^!zsN2D|n{nT~!TQoYSk-!@kcU zT4j}ZK;D7{h8{hPmwxDXHExq;@kl8;V&v_^=+T+Gc!o*^OS-_pAd|yZ2YZ@!Utpil zF7^3J*n$AV(0}*7r50aU&D^&(GstE0QXTe9Pn}+8Yns*eOt|*(a5>}pmj`8zF}&m7 z=))QtV(2Vz>Z4lFtnKq6Kc1iRJ~LWUb+Kwu#P9QrEH5kqdqmzHExSDZ;>DyJvt}+o z!=tLUXwm+Oo2=J8zOy5DbppfnR3_KmeiMYE&VC5l@P?;;;oE~rC#U}nl-1QZ-_@TY`m%56;hvF^d< zR}zcc%&NDG8S*t`I7&t{h##?6Eaq3>{k!J(&XP#-h`OMY7_f|~mXwk&H zYzFz)41!OrxEA(_8*D1ziU|{a~7YOc7D+GU(~{N`*GCgCF*nieRu!=^GN*3uKRZm6iNk5Fta`C zTb*}iuE$@epsMQ3pyO_Cam#k)RrNnvUUyvfn$7+92lnxv-MDOJ#A`oy<%JJ7&;O?* z?o%PJcydG5(W2vac_n#=S$%fxc$rq~_QqFw*(?F}@Kl`)k>=FBwx`UjzenD4 z_f6rn@~>_e%M#oFT%I+j?Wt;#Nb<$SM_O*~Y*gWyIHzysqn*$GW?03~oMO0rrFp6v z^P1mZUheL{lQJcC(J`Luzvmt}`Ql(#iT&BQ`>Ol;f2CRR@4U}#cJ=w4$(}tEgABt~ zR(E|jURl2Uv(M!}lGn9TBKIh*ca?g_WqH0)x?%O!?CTzfH@Z$1<~8DJ=aZXMTmAjy zS@XLp$;pc?%V%Xw%U|x5u=DEA2NPs!uUNf$pc7#-zpZ4?Lx$sxgW7P3`xvcH{Vi|QiP|y4 z^diTh43}&nwuL+)Zd*ipnKL;O_-n$%xlJxBhpYT(Xv|-9L+{mH$+LXfCdX$uwp(>{ z99`8a%pyL4-9hW0%VUA&X@bVWM$*}n-ib)mq&yCqzG}(GESY-Nr=LU)Y+3ogd4|fK z4G9w&1Oy^-qoe9vTMegHCMKqE+5EI>y0^CFKpt2AH1-p12Ip2Jo?I6Yb?~|Z&&#H* z8&_G*pZGiPk|FnnNUdKwmNBdQa$LWgNAU8dT{lyhFz?U=x2w-I_0+W7q83DD&HVjI zQsV5ACmX|lOE)Y#_r_uE+4gLw(!D2tsMq`1hjs6J(|c?qtH>Xn)>%iFGk!R6MyK$@ zW|7IvZc|P<1m>`t8RpFvIVo~gDSPGZpwRo#J@SJ5w*t*PCv$Vn3%&Av;l&pshtgIm zUEiPRy#DMbn~q2=-ifwMhefspa_o6E@2G*W5JR0-+5tn;!%?q}wd|XJ`jVE}i4esL zdtNbUi8D-?=3ss5)wh;w;Q>vXtc3(*UWc@(bnN;yL-WP2BUabt#n_IPbtWJFJ6|e7 zHF)~MZ#wf1i^+79JMeaM-Yz=7>9>*FCqd6o-=Ea~o@d~>Px^4DK|1XQg_eF^5#XXVO?7AuGXVK2*_kKUQ`@VMin}R&n6+8aV58vw=5vS`{mAroVc_UHelyHA};!^H!tiTG^j&OlD1N@S9Vo( z0H+xLbH&fhfgy|kE)R=$)Ojz?I)giEnTJd0XT}W115Wcf8p@`ev}&8>*vZ0Vkld)} z!u03bCKlNOcA=EtJifBe-u+_a^7?&4ZFSy-16OJv<{#NIRpRk=9TSVF1Ir#oUQG?! zdiD>?c?k{vT?Y&N798o@EqAB-ia_$;BWA}>I3!N+l-4qPePF>w9p8%8ALV#hq$b!W zy2&mmPd-%``C{s{m8%~h*iw*z5zRg?fjbJ{|wHs8_?FKy_Q{<&XXo zHhMnS+w-@~H{#>vGh3crS!WrO%QWRlpwNn!zqUO*x3m0wT&m>a+9OYrXDjD!`m`-` zG22VWk3V#|cjWAs-@X0DEVl*Mestc^Xt3Jwf5D!w>;E;$@v3yo*qCS;s;d6dYY+67 znw+e2IZQLWQsLK~udOm4(m-;4_I{$Qa;mtCE&zHVG>T$}T`-%PR zxVaY?R~2?o%G|S;p~dshELi=(_`Fr{z0dc`Ps`i9ublF2|IcaBDLEx3 zd&}c)tJ)RL7d!K&cE(4u!;_bbWf(f&tQ7c|Fd^g2?1~8*mlrg!Y>d?SUwGzL@{^zX z6?WO}4;LPExL^1B?WcVCe+%wB`?ov)e%!Rxg2tuJCrc~@7)!sI?|FE(=v1cq#U0tN z)`8B+knU^yH|0*v>$7XbEwaDKNS#)iId@u2>D5ppLpwe1>AKUs^()PIuLNdaGk6i( z>!Z;5w{hF-ixxUN(k3{E|Ynpx|t^#re#P3yqm{zPFz$+(4W^ek4jt*c|@=8f4YA4R^I4+ehb;o zyX%?pYHTmO6LvA<4{L&7bkj-6Vrzv53_ znBpzEULZg66YJX!hOq9XMO)HTRfQAo++G-#DfF7#LfU>^X;1dfMP}zuuW>tn>*Z(d z-$%GuC$hdO%={Cga^TcetH|w5Y#+AY_EE@)*6m(wDr)M;nB3jEa_u*5=10zJ#aGPl zmf}tqS>qHcdp+B-jq{AaG5#CIDeIE{ten#-=5_3t!;ekh)J4C?&VDe9@rCx38n(O@ zx8fOMdpG#?n)G>J&!3zSQP`KzkfRb2u`6!vv7LcO@7{KPag(uT+nR6k4$F5f+iIt> z?y!&}>sJnmw2Z80uMQ*}HH>67%D$#!`Rc`D%XEcM`B}vppUyS>JaGM`$m8dd6HmNL z%IWXzJDLA}&+J79#cjT38kv~95HD$z+5R%3O(3T9scE0-%r}<4<+T&H_SHFWeAlgC zw`|W#-~37Gaes8CU1X|Y-hKS+vzv1@)6FY&qWz;&mTZspm7Bq${x>Hwoc-y|VCmbh zmhirFnapDNwEV>Z$D7;#GyGpThwFYThd0a1G&Q>y0S20Gx|~0Ey>tBZ_T3eOjsK_h z@p=E#{aJgzwrQRH$NNcFqBE~A_&@z+O7jhwEjPa!X1Q!rjO_^BZ(@7yrtY1qZ>8Tp zOY%8a{_j#uYvd+rZt*kIx4O$JhsPQBziX;vHu+xs$S88_Pn(e2*#$C*7w&F7Iwh@W zN!pBEE$kMC3%Ko0L^n4+KQ~wZ{LUwqn{qxD`R3+td-+UDbnTnFyW8_@KK=^7w_7NG z&tD&Th6vpm=I4LDo_@kR{+oN=*BuiWX50+!OU=s6;NEmnmZR;m(`Pz<$ETq?R%5`gVhJ z6?PjZWCrpYGdQp)Fv{JwQ|oTLEm-VoK3{5|k;$GI>#TWa6@#0qwKiHA0_?!coPd?sH z*LQX1?n=K{$+E-krdLPRBKsH9N`CY6pZye-tK0NKK}Tx^U#R!0pjk(ESZAAZ3%q(` zq0XTHOx2)H^~Hpp-<0I~xAJtaS|-=atQMoNe7zz^wf&>FTt@W=Z6qaUI{)2kSe_Tsb>Z`kysCrWen;CY z>?=6<=V#Hoo6n636HZTSH@&Fx#wVil?&at2ciz-2dsWXg`;Kn4{pFoGpH|mx(>X4e zzOpk#-{qZt&2gps*P=6Su*C0}SGY3b#m=J~9z9!+XY}64uYVq`vr(jc*+;?S_j<*8 z+a=1s+^lL`$-&{fbp1>#wM3!Gp6fk*&+PDAR$Ny%HK)Tj=6cD#!_O_)wB4pHTWq&- zf%o}KuaBi|QI%We`Ni#fS`|&6_(vSJZs$jz1QnS$@BGd-x4M zn+Y#t(|*mKdo8@Zbe+uyq5lf|vL7Fu<`z`7=4;nGt5YR!suQ|7)dHBCw%obC=UwTh ztfO8=Y`PkY!cPay&pGkphy}0145yhdPio%Y_t-plQh(hOWgV$qHAjU?8FzM8!v zNS^BtUK6u9M(ytDowdiyBDdspzPYx4F6Zh$vA+A^xcye>#0yOM2T%3M zT0cG97kJn-{_m~pmTft#|Mz`d7X9RJ{rBy8rCa^&{&o7FJgIKqI9Ve$D&Rm{H}~HM zA9%NHO=wuSrBq@N`-WfPrzEqAFaa0gsyI#Zan-$T86!-~QdEs^X$${~+g zt|v&8#1x+>VCiVl7BX}{Q(&C6rLbq(mIK`nOjo*iUw%;cn#U-7Ckso^W0|Oeh{uyP z^dB~eH}E`RRFG%f&?K>aS8`B@f93?Q$CG)len<+FJ`y<$FMt!$!I)@k-HxM=Jw-=I8ho9XeiXyliD)|8b>x z`5uyO4TTDPeY>JB&T3D&vP9|e*FwAGBYQ;yU2bj+x}fZA->`Ddn*NWLp(`ELQoc)+ zoL9Pg*k{IqH_i)A%IY$$@{}ymvue;dQmok5e{<@#RcEIEUVbHPVnp<&C_PORmfD0o zj&BoeE(Y~(W-HmG@W0WOOJb8ls{Eax6OGF3?+z8sdB9j!a)76(Cu6VIX`{f7yH1RG ztBy2JEO`^g==de?;$qVb=O!basDfCAqix1(l9Q7^E!D4^_kd-iMg8~f_4?k^bP6Be z{93tGL;9MmcKw%2_R~t;*H6{2f4V>A`@34%jZwE}Zdl~9gyT++oYZ9JP* zt6g6B4;!v`wLkXWuiqC_^s-oDe)ZY>b<^6nYaDp=Xzu5*XO*Qsfv;YRY?@rdBQ*ce zxeNQ$%J_;8wd9;@*ISct`RzHg1v74G?{?;Cu-ZF;A@`+j^NU?|?{@vXw|C;3&vDaF z{=2(5x$^U_=gs_f8vp-ItXD5?6*Wq#dlWIb&VSi!)~T9$zkcLbK2W`xxb6JJYqKim zKXKxWR}g;xX7l-JH;dCw)*O#JJKH*(?bN-{t6?{pd^TI1oTYjA`lj29T0h@S**0e# zZ@>wICmJlf%g;N`G_NpE%3^YS1a*c_MT? zDc7oQ@~+HR3(x=2I=y!LJvIBkC;eY6`qBJ+zr(dPafdwRpmbJ!m!r=?=0)4e z+p9ELllSg%o_*5vm~xH81Eua&;YkOsW|{6?(kPy3Dz#gA(evvKueKc%Ry?M)VnShp z)_(oJO=gX}oloSQ(gmcK`6b`{X6RYdcj?k4v4V+;ivB~&9f_yvwo)wFS_rwhS{UEZiC&4qAxzeGxmf9 zo344W>9bjUlZVLFvSpr&nbtDgIx+iVoxzj@j!6BDZ@2F3(y4AqD38(4u%5O~=E$!k z4d#$FKQ>vaUAfhI;tX%EzOJajjCs4#?Fu9k=5VsVyA@E+?re3@O2IMnM(;z%RUi8w z8qe7JNoUgvhF@C?=9ucU%gk<@?QFT=<2A)&5=zX0M-xnUi!unB+m{vi$lcu*Yi9pP z;P}Uv>GM?2I(19#I`QuATQRr)pWptU__p8f)JN`c1+$)w7cX+oe17lyXMLM^G2J+Y z|6jMRpLEdGM#W*`*JOoxGuODiTA?WR^U?GD3itn=+Wzzq_k5-GHCMGY7Fih?9dbSR zhn2g;r~ToT&js^BpIu-0=h?2;PuA^z_i*oLY5&&yzP8Otzn&jyedYD;mFF@q zyPZw(6Y^ZQq+hUjn_4Oc>%%`5NlxH-I!O}FTIW3q07N9l_-vZjBf*oq1^Xsxe2yPDIF zO-3}ntRbaf!K>a`ukOnfO@6n(_DB5FuK4(u4q48>?$7R9c;af=fwdWK$B%I?o6yDI znzbTj`rTI|Zu=hGFw98c<>R?<;LYvL=OvdJsmgqieI+AjQQ&Ylif2)1IhVu?)xMWj z@ArH@8KXO6|AE&+ojG?Z=KQ%ifB(I^+is_SOfoVySimzQ?WIUBv(vP&gis4%pH^3~ zX~|lrbY5NxYUXNVnORwK`0CGSMTs!eF9kup!r5%sH2nj#!ZWTM+;(8<(v5+~($98= zo0_v&wJKamNPA_zHM8fS)j^5Xa#J?(g>9V|d(l;A_(^!-FiEvo6o7yz;~81;eQ)27RlQ?M~Gmy|8zAWM4(y zGz5a*i3LI(tX}s#_(FH%7mc}sO&^aNqh1=}hp3QOg zey8WZJazZL-0YBV4v`Lrcj#mD`%bp)mpQEyTUR_xZ!%D$t#{#eJoh~5b z#v^>sJ59sLZjDDlcC58pR_WCZT_InYr)~&H&=uPF;$G#U`n#3KV`ai$_s5?9SH?GdTUy0+wIraw~5bYHwNIpA1|M-s6%suOG9k+dMx&4*o@_DCJmge3rJK<}7 z|H+KXwJi;W&7V!~CM~(=@aLVv=0%UQzh|VY)XgoC-}F;5I;S|#wW{X&QI~H&s&7T7 zSP4IWU}|(^dx2@1y=SCUluIrN&)1m! z@9BIKgS}Bo(k-9$qW8Io=~vELwdQihq67I3%>0kJrr%z`?0F#5U{1%xMm4cJwH>n^ zZwhQF-ejnERKQ1=DgSlJ#P@^Gy3bw<^rG zd&jl3?E*&(_W|>+mx;^f^T&v1C+*}uqGxzpaB1ioquC|bJGdGyT@7L}Uli3SZ95XPdtHe-B&u;&;i~C!>DsbFdeg8M!j+wd%ax z2RIEsMET?{?q1z^is5!Zes+w|Qtf~=wzqE5YmV77_8dCvA;3H#{L-7i4MAr$A}*}D zk#-=XJ7DUSgHAV@VoNSCAC7SPV9|7gbI#hdWs7W6PCsaKtyEbr7`UWbf`5memYLS7 z8h*8&)_uB5U60L9&g;p3BO>9`aOUJS$6dLG^FIDLHf!;l`>TrM`DY}?@iQ%2bN1ye zlZZJ-ch&PU{cA|*vr5xg@b291+}n#kosN$`yJMZO%mJr^B{~&R`wV{E*;)K#{=c8` z990h<$9X`ChD=kUVwo zo{Nop+PCMGHso#%D=awwaL41msrPq(5fba$_kCY=^>OK^8<~FG-aL`ZU~jq_*Tfg* z6QBE?{C2|kYJckNBHMWkJ!a3hYsg6}-0Pj(dt6@oeZ_C<9SMIAu>T9)_vfkp=kH6; zvHscqzTW=%%KrLCkBffK-EL_uc(ZZB`$OvX{|tX#?5{g8t97<{{=_9!yM1Hq*{*K; zeDKB*VGlcZ&j&YJJh}hWzb%owntU^-e)9ay)j|m`uXXQvxjU7A)+0y%=W}Xjo|Tk+ zQ17vIqwr$WwYt^y?m4HkZzo%aUN5(_{&slhiFZv-<~O^Raq+XAn;Skm$71^36~&T0 zr)v4{o&o)r%UlQFPj#C)(=&Q|&eVkqBj-p=G>s_dxzSP_eBi5k zi6T#SOnCJFgVEszTwzgR2U&R{PELCg@OZ-Pbm=v>!%EjpZCh)Z%RaGO!2McbiO z_X1Y!a&G+SoSVO3qgC3p_#5B!96Fm{Mql`6RA^aH8vV#nehFyaHU6-}o2tLp4+1zko$V|SbQjZYN9$|v zo3vYcVwSG@{^agvfr{KHj}_ZrIF&3i3_w zubOHUmaW(n_RGFhUhKppvD}&8+i&bTuyMtO<4&FGYn4|NDf@U7{BAgy<-pDNJ=S6G zkxf23J|23mEalRF<2W-rzty#*{dbD**V;^*xu)P~aNm&t(S2{XUNMu~-pDPNY9M{) z+fi3Tz6YyZf48@_MaGM~xu#$LRr}}F^>v!n-`)wvR=mi$V|eJLWlDRoeceay{|{ph z_CJp@+oE%xC>JCyPjOwwX4rqY?8vPN zCLEsJ8JFXK{?M^G=6hUT-Ced+B)M?$+K0l96C@g1eYWW)oXg+$G;Qb4XVR|59Hswy z8zyf}Tqb*WyJ+R=M-87dA9N~z%GeZJGNawSU2OC7u3tY4O}EWoxc#qmiN)-`&bT+B zX&*}dU;3N!IpJ0EyD9gg%M8wbIPmWL%IdH65x4&)e~UaIYZx%`l!NQ$ZCq~NJzJdC zS=oPRtY5U~SKjf2UO6ibBiC-_wAZ5RYnI0Rc*31>uxaNxg==^0`xIC5om{*9-isL< z)}NZR^z@UH@4lB+%RUwV_x}H1v)-qxLfua;I{Nvg5|`|a-=FR4n`NYIpE%s&vU~q< zqN7oS`P~Zb*uK?a>z17s61Mr*JwrfZx5hP%NsbM(Ba%D5EHs+O_KEc)OM+$M>W%sn zCpO)@Tvf^8Q|@+G(teisYOU7>0cW&6f8y3U@WM1<&!3hoNzDjNiK#LP3-(U;ys&hR z*dn(HragkM?z8@rN!fYiw6%-BaAC&6O;U~N^=ryS*>aEjINrUtrAF4Zv~r`3m$ze5 z3mGeFk5p)K zCaLwQ=D#os@?>Joh?>XtxVLrVVUOiLQ=b*a&&UW|5z)Kne6;B*!K)k0!gAFUQWT$0 zSRm>)&-DMD^9ibwCt?Fsf3A2@eEa%sW7b-+1YN=PqMN4O7dWVKi?d*%)8@EYhq6;P z-r-3Rh?>|JHgi|ti|8HyA6U5v<}lcmXqsG)_#nM8jbXXY_r=#43?vH_ztTL#JNozLuSm$>8Z&K0n({qE ziP#O!9QTeJGjXqLR-f{*(@;-}&r00BVPkJrrQ77dBtAd3$oJ*H>mRSaKf$v2`Ki-! zzl@|_Gn%iHW_I3G^wg{GaaguaebqUp$$Q>^-hbl%uX5gXo35M8{QvB&@LxIRWhYv1 zt~Oq@KBp_lN$th9x7K%lm~Se-|F2@Z?e6ar&N|(76#0>-a>zxgJpaY(Nk*%s=GPu& z^Ez_C_RZ3?O)AcQs~_F=uD<-Ka_-?V_T%mj^^)FV6T66 zf=lMu%j)+tYOKsQ``aHVWpNbCVL9?UY<=Welh3<~kLTXsH`Vd}<$ZqVr=MT)exZN; zs=r^p9$Hhfgwy4P)BzWcgp${~+fRkLU)}7|$~%+520M(&eO-q@VY z|JY8!qT;mg_7lH&U#DDN_IL$DpT(SmjalrX@NjRd4k6^hRhdR{xltU&1f37FpFI_OD2V=dzX$WwH+_@+of9(GQJsz&8Y{N(sjPnf%k!v>>BE*hkNC6`Kh~@h z5`D1u*WUO1r|cR+on^#srA5bW*}CfQ+eYq~v?%Ss>YiWmQ@k}k{j|F0bx`Jp$&^W& zKR#In{L#-UW$-fYP}S&~c6n9GdhKG?39Ml(2_Nh>2Qxm&Vz+&}X!+^i z|Gw24WmnADSky6n$vV+Zy4>gPzMpsb#}UV-6-}~12c-QpHixgxI_t72Me+3&#bZTJ zSA~8$F)eo^cZ~Rnxkn33{<=D>Zf$z@lpyWV><(%ckYCPcfu#U)i_$U%c7Q?vwU6ydH%gcKsT^_p9!on(KGJXDsFT z?(^Mx!`June^(q+yY`nU(CV}8y}MJjr=4zc<+g~EuPte}KDKk+-06%;7nI-ayn6T1 z$GYQv@5&N!(g{5@6GAo_Oo!3(*Y9IhVZ+Q0heCdE7bYXWv(-l9-Av8BwV zk+qt8Q}ua2wu{?jj>bzCXutbt$d+q=btljBGxJV|{y&wfJ#(F%jfKklisRNlt?$%t zzgHy9dvn#*>=oZx8c#N}^Pgz9{~~yEd;0c22f5=Emd`2Nq!Yg_Cd>4A*M+s2no1sm zCl`qY9dpXsbS*%%;Cs>L3&pOY7a2dj_*9g;j^$KP6kWXP>07Jg zE7DFc)HnU@AD-))zo7dKGn3hQF@+2pE{kQ_!W(@O^gh_nFO~SEP%aU_YuEOHONq*5Ax)?BBUb zOR4L=?xTxy0$n5(H7EEw%eo!;%`m0$XJYJep@wE=p-YRpH#+pL(^8KUNxJsvL~81; z1sQQ6AN^u>Uk#ejl)Wu#t%b(^L)AQz2l}2jG#%1WZO%3^=?>+jN2-?%(N zo_ojkCA?bmKA-LQ?M3Nw(sMW2FM70YVusGPhpUR+cW3)~Md}TOdz3cNq-!oN> z@1&Zq3eID$zkc!lJDJ1G%6(UPYfmcJyiYWmB9P*G>2N@*S-tZ*1=GuSOuJZprzDiE zx!B4O;jqViw)uVi@c8nz$?MilmH+?c`KGF`fu9~t-*ZGarEDX|?>&~AA4}}Ja9!fa zR|EYBgHYDBvpc?XB=a8NdY93)S;=7UipcggJdL-O3h=ePi#;tJ#^W=8-~H2R4pM2i zueqn*{gqrPw`aS-kB-w#HLh!yz4{j$eMv&iK7D)K{@ZWD-ETva{uSK@)Q2`e~f2Z z=WpEe+xGo5-q-yT=k6{$?QZu=@aHx2{Y%SQ4d*59;#IO_d@@)1bkZD2`>8A6WPW=R z%y5U}uu8qgw_EjAZ)bjLc$wE(yySSx+;fWk@2|agYUf<``0$>M$GJ)$Z#;hL!UKnV zhbjy6IhXhSSiO#M@xj(q{YM_L%N#Dh%I*ui{Wh*6Fg|_4!8>lu?Y=5fFQ4iy3Sl`xpTezQu}Wv}lc0555_#0`vfL`$ z^2O%47mM?^?)ZPV7|(sT5I<`4eBPf1ov1A{7+yZy%l>5F@Ap%8zuV({O=hdxzc2p( z&+O!GKfy4K?UaeeH@D_H(zEj7KSk!P zHIw8^v6{BTsrhD#=1ivM&x{gLcBgd}He>}$bGFI5wLMLgnr!ka#cxlvceb3=@hb}* z3MPLvi{LP;T`9qqW_)?2-o!O-53-%z3^5a;^S7z5 zBt~QPJIFXJ6WR5<^sPZ^`M+tqM49dXW*u9l_&JSRcNfdTN&WkJ zL;lY!)Ltdq>f^<%7@;F2bE55lUd)UMT8>*8dk#K46jQEuJZ7ugNt1;yjBl*{=$T?| zHKF@W_~P@QpUqx3dHbKI(N7*6Ss`<$z9a8o@i|-fdtZ+2FL>|Y`k489>y{b=v4zR< zg3CK+th@N}@0?4*3`&;|6wXr{$ zHama%-s*1^KUed;p11p0>G!Sq|MNB_w01E^@JT5Bd@4Nu&yt$I+VPXm*T1x{mY-wV zx8Iog)BYX4zvX<}PkngcwbgJf`%AgR2kB=%=iU{6pE&W+cE*Ex&e|I~N*)V6lsvvB z_OxO2N;kMaq&{=?7aW|#YOjX)BnBQ-kx2RzVEESAGJbV@$#M4{#Sq1?SHQH z?B4EKEB!B*o>acJF|CW+)-U?gmx9eX4+SkuM&vnsH)~S$e)Ja@+(bd0tmd)$P z^GjBlePHT&cs2ZAP+jrgt(&eH26Y%`wk|yHAiQgTLe6(9hOO1#{dWHO^#0^I_wBpI zziRlsDDmAj`TQ(f?`vx;yUv`GTt3%zLlZ9>Z*GJ2gw(=2T=I=ScbC0Mu$M3W61XoT zzwr!zQtyET1`ScBtMaS1s%3--e&Kr%%Aegcc~RH4-*+;uZ=Ip}Ts9r`R8CZ?kiopNOQr9eyWRfUVwlp5IXlrgxgik{EecJ=Gh z#=CtNKW;SPcz4iFhe7t$=ahJnFSFDx?bvjUeRBJh*$oF*w@%)0>zuCXiCrb8uUt4y z4^Amv_1R8Qzu_oD(;LCd%*?zO*c#Xi&u9oLd^sc8VBDb0>a$l*q2$!#kZPX@LzdxxWa7i4IKvcG^Hrfn^&GR zHRLGFG+ykui$~U7$z{cG5I@A5k?)q>|Y zkKP`K5M^(TL#v#YTBv(VS56H7;w$}CVy~aLuqxBkF9(dJi+sdNc5~cf+|zrE!)?9N zQ)w>IV-*W0DQ4w}39L`s(x*0$n>B=)b>(6{kHnrgCGT(Pu@_x=`kGPqrr+5bRbd&C zFMqXGtl^li8IjPJE&RRk;({MrDpV_CE2eavnx;HM{(5W1i}`zAg%-W9EkCJl|4Vb{ z_kX{iUYu*aY)Z{RrkwWK{ZYEB7Hkv|i|Nh2wr1+>y#2bSytl5%Pck#B)DzVHzk9*! zf;WEaf6ush@RsJplLGJ0DoBfN?CRXt{iH_VQ1j0(KI{b(HGedpu2=Z|{e60ph|hK9 z=JxSZkaiu@J5b!MuUF!Mee6N zr^hIHi|Z<1-t=>#?xxby%0+KBN~at>m0GejruM7pC;R*VrbXxWpENwardars(E7Q` zCMUS(=KnWc|IeQ1P|W7ErTV>#7U-R7Ii6z@Km96C1QIMGS@tETGs4FuhImJI!SiHLNVi(V}=R!~XuDG9E zl9cC|d!dzEY)4uCr0x4(uTMRGZtkah-}m(|6ttDBS$uQN_4^ggHQ$QoPrU4B8+p#| zwTzU(+LnMW@oqE2{b|o{SJ<8T{jYq}&ra*}9_hT_MB4sr+-lux6Z(6#u$hs8fkt+J zoU$)_)xzi<>G$o9d1c+yOuhV(=ia}*^1ykI&+UFc!Ip1H@aGGE-&f!NJug{3|Iv)y z|L^^-;9i`^_wUSd`^8_A9!f5>-8i?UO)n|omw81*?8H4sLe?FyX;Wvv-?4---mvnC zplrHjvm*cQ6#f(0)!X>xKATOReBJupsMCG#+2;%HyB~a; zP;K|&AivRM{wetvrF~M~+%0^*w&-f;^&?$(uEZ*NKmGgEP3fn|ae)ZSmro`?_5XK% z^ZWL>9ND{OnrVGk?{TIkR(fCOznmY<6`% zu;S3XSAK_2ajstKzWx1|M=idoDGU5v!VX@jSP&O|QL>%uQK!s}m8QpSm=~_w7nSVO z&3;(4*~sYaGPa(>TSc-er3`X8q|{bFGJY0faYbBp8zZCU0gYe1rPpizc&U6?{`T^L z^P95u4+unRE&dprq1@N}%IxN$OADrbag>pC;Bx5h*FJPvPkgJ6|Ka0;6K599$UbzJ z|JEsqbxjL5ES=UVsgRK2z&h^|w^;j7nN9wuCWA0Xhq?RG_OQ*A?C(rssbqs~W{ zk|fObI*Qc-L;76%L0Kdjk{N$yU!@0Ab;UgYPW%+xNEn@<9#n4eers6MRD_~ zH(OmNs~(7P`Xj=_WyGDUBBQy>{-D^ zzaV+)JFk>qqD<3-nQohA7xdj;?q$ZyskFkpGkw{rpN)M|<^3nlB-=WE&*9i{Flp!a zW~Ftli0(_kovPCC8Aq(>PLrOtBfq!>N{4~xR3srbY#z! zRQ)w#`~ThSuUE4FebS%f#5t?aGQK+s-W~D~5O$b-erNoL_wPjlzV4{7cb@*&=I*z1 z9eaZqOStmIzjl|^;is(ne`=*xR;^&2yKpk6IJ3!effc=HY*KXRR-MZH#9#lve@$@3wCJhIuLXLS zR$r2|U|>FSI%8L@_f5_S2|K>hrH!earYc%`%*?tfcWjbZa%_k?bElcnNx>{aP{M43 zjX-qDg4#&q*AX^5Elzai2(h;7Ha+j2vaaEv!?Yz$QyL_@Gqkzg7CYoGlnVa2N?x=o z?DQrV9yJFeYlg6=M!%hox?NRWen9ETS&bA@hg>C%T>swx-!LT9(Hp5)V+d6D(hu3kQlOS#v>CWhIhH*89aSgga; zbXHv^L7vNP#kxM$151(@GJKLfesbSp?wJR4R6MRUd{SpMnhNa%K!tTeX+Ac^D*zCvBqq( z+$DCizs^jOVBS$~Bi`WohG?>zVZ+iBOV_1x~e#{0h4nRz~PmG83Z zLr)UtPX6+0yK-8{gNgf3Kr^YklutKe74VyUwNNFv(PEg#{<`wzAxg zn%yJH~tM|KM<#MzWUz#%kBU7+^?PoI_Y~(-LID{$?SYRmfsJ`u&+xCUdOb$NaAJo z`hE9&p9ycOxLLElK?0WwV8ecM(&vkQS z5ZTTaqHG$|{Nw5cDYn?zO--r{&Jx!dyLzS8A6u)Za7UwbIYWV$)P3d;&TYs3^0$TA zG&@d@T`{vi;mwLTInm|0*>4zkZ^&Kg-Ev9oO7)@#yFYI9nf3J8k2zttwL7Aj(J+kESz040y8Ro zzc?PfUwry?jG%5{HSJut+1GlvqWZxp}~#>P6@{!MW%f>+)lJ? zkzE|jHPiC>2cemZHfj8hT(o}ssryd#b`ln>SsKsY%&`65!|;sdlk_D`ZV|CttG>M7 zx7w-I_Q+@VnewT}x8>Yax*k)#bWZKF%1u>YwT!0rTWtR$Zug&+X?6Mj_j`+;%}n1_ zoSm4irpVC2ZWn!lrA|;#fMwN$EP?DLiP}=NZZrHp+|ho^*w-tyL`tFm(XY^)z{i(r zX3Fg{y<6#+v*F6Q6AFw4tM8th`+TbEbsuAc+120PqzPv6t#f$FRFGeBJ}R)SxJYa6 z%bHpHs!V>D${H^Yz9IMj?7TJe9p7cnuhPA+{CDhgrX5G(wk!NQX1?!aLupI6jFjx< z6VdO_9n*Zb=P}>*jD6kHbB$yi8>j1?FuLbIdB--xPJ87IQ(5A-r3YU&`^=HF=H;A> zTV@ftTF*8lm9a17{w*`-tE(S-%vX!`Z$F-V7E|T+-t9VL-G{GP+1n)5K9{!~*}dcS zo7S{%D|UbLV_A80veR|D&e+Z8l{Why(Q##G*%qA7#qJ`Kdw8d58ymZ&2E(QW?yOf+ zme_5-^>&V1dDu+HlBy@$QCq#v*}l%%`R~{3pVl$_$K}gq z4qml!e}BHnA>+#4BkkXMcAgB%J`}3uY9!q5#(&CxZgxV(3N8J=kHwAImPD!R$G_J|k9whI4O-Yg-Sy6n<^uGwyp(+kX<)-|5GzEse~>*NyY_=-F#F-7Top zi`?Q_-Em!7@9a{i+O@W7tmWsj4AyKFk8VG4W!f2r`*-c%k}QeucYfWh*A7lLO_`E$&)pmaT zC4I*$ZGMWm@c-NFZkt%V94>7B_F{3ZSWKf;SjQ{YrS{d|bkg|#E@XC^EIeza`GY%+ z$>+X)-@3jo_Sr7a`p3t7Hx-@rVp7St#lUg5==0Z*dv_%Zb* zS2&)o+x>o8taaJR+V6LlAG{{=q{PPIu+fRV4}+UcQ{(4Er_E{YV-NgxWb3@l=K-1R znLOHiHaDHuYZknC;FnSF{;ymAF-!|sFOcfRvuSOYRC8-5N1+yr#>5^jU7c@&4rnRLeUUBXC+|0?;z&iQZ46XDdx56Ad z9S`W=@jLOY_-~tqAp={3x{vb z1wR{lT&66#%eD6UQmvAbB~rQf@*7WbGR8LVV7qlr$oO1`nc8uan+%UnyuDYjPGys! ztEg}8#{LOD3qOYFobXx6wcqJmVN6I?dgKx%*T85U+r^RHJVoh$0()yurmHhXYBeyi zq&VN${L;ZVCbvT|$w%5H^5s7fqo4(IL)JN&E;!OX(d}ljP{t>Z)hl_pvZJKd3g7%t zmAq}Gp_)&DhV{4g9ZCP(3D_^yCze&vmOg&F4xpUokSuZ%$aq=ikutSu8@r zI_23Tl}7Oc3KAMSrk%HX9b=jGHOicA^{1EqwPA8KAL_onb+`Xz$nN#*T9n>C?W1w|xfqY@S&b!ut`oD4#~f_sSjl!qVDf}6hns50 zH#9z6($kSHw9#?iv)K1F{l9Cc?fJU4UUmPzM_eb3BqtWtEVonFbW)pqWsdjXlj1QN z%jZ(1|QKI>Qdwyr0vNdETgBbCp$8VMUQRQLJ! zZH~Wqy+VD>e0HTp3m@ob_V&;A+G<_6_Q=x5>8IX@ylUj!&za16ckj7}wmtU~^I|>A z{vLBX_ucc5GXL&lPOI}S{`_SBD|zP)#(y<4+tzLN`Mh1(B%uFC#refg0kkn^lePk4Wo6IZs{xs|Ft zt*aj~v-5EnojVZFkhbshIqTFLJC)kp(@yT$xjD5Yr{}oI>{Rw$X{Vo^z5PU3{(sBw zn91sM>*wuxS6Z*f{Y*chbNcT0J8%2$$e+0Q`kHCi_rLT#$GhX8q1CK?{XcYUuBF>N zmgG}lnG+-V#fNvb(0{hyhu7#d$@y9zJHr1of0~PC)-`FPg&8h;v<0%>B``~^kqj?9 z&R@KB*(|q?r;-U`Q(X;87xZv%S$819V8?CA8=Nc)q7%htCdP!^eSIY3j^l&o$&pn{ zLciZ^VlC5bUV7WEjf;(UY4)C5r6<2~o9zhG$yT&dj(@QuG^BZz>vi3mJx&LWUBZ$C z-R)mCDsFu1u=%D-q(YP1>YKeY{%TBTNa(Pea^ZM{M~rn~WCzpZ1rf9PnAW~4PZ7H) z(Cn(krgcp!Yo&DWTh8Q;b*0kWK0+N~-3I+AR`Z4Ilo$Pa(x~)? zaSl%hdxmCaS@IO#m96uynx5HYo$x*2`>v&5ISPB&UUiFQr2U!YC1ap$;-#=b_k5k= z?#+h`8OoK{^{FrzxK5egAhA;a3r{6q!~I5~F1>aZmo@4y{93%27(OSg+n~6??#o|h z#-Ka$645sNM@l&xcSNgLTyUG&;gD+mLH2G<*vuEI-qS7GvL@zKe+m5gb?W{}((87| z`PseXEV_7k{$2LY{9lYdPo&C?s_)hJJeRS(x#Au7DarEJjKwGB z{rQt_KlyHTndP-?7rm0z=iRsEOq>7r$@EW0)aPjFSA9%nvD#hseu}%wGSMk0pJK5%GZkAyV`(U{-YMyKO?u2*zg!hLTuZ*hv9=T1(m zWY3KQ*9`Q!69T_CD(d|FWSUU(;Z1=JL!8Pt%K*uMgqNpzr)o{8&d9psyF!T5O0bQk zd}8*5qX+L+%vxieCZxmuc;%^*cxkoUCZ;bXurod(g-Fl-`QyZ475M4MNv?$~T)e zEb=UAXZ*qN!|>jkrA53QmCe$7FLERw47p;iVv(~#Ou}pjS9c!I)t@rXeS$1&A6Gt_ z<9aQuWy!G}zgHjH-#oW0ex_8_?K4TwE5u=I&S{nj68bWWSG2yUlg@wZ z+#+?n!Jfrh#%~Hqz6S5Mn<^EQRY3CP()LXP@}?voQJ z#M!{s;GyD`bE#m)zBhA0x=N$Lh z`*v-;?(6I8+uyOIN-pr^NH$(1BP)~PQqiGKR` zeSdt~`I)-$fBsCrGc)_s1LyCjn|7X-`CuJ-@B6>{DXgExPIZZ%zIn`AM)_O$`~T9G zpL>i~n(#i$eYwds%I}!(j^@qUF;|@oHoY?bu;5^G$DbnaSj~d9h91&sOz$M0cQGx{ zoXyC)rS)}3q50;k0T$P#BxH`Aaj2D9XTg4_U|rN(fnJX0I|pYut`I4`oN$0UOM@|K zMZN3Mk7B*XGxXSkn77Q__CD=&R9VOIh3h7Y3%IH!s+{w*WV`ZCJKW^;nRH**(*Gy2 zT3?;I?C^WS@y?9DC!7`t3C$7>4_eH3UFA+@V^`RtdEKhKC-jTv2Sn~l^Ul^5t0_xa zz3}G5#$7)dyk5lVYG^m7Gf!X+@VOXpe4nDm{;<`@-)OFD6v;PQ)uEc)n80er(dA~% zxL^^};k9L_%4%w68^$U!ilsXG1TLzo znBvWGWV#!dNtjMiZ`TnW6;;lh6(8*u&SSowa4{pgo4Z80?fl)nM&YcdEgX(0hH^Q_ z{a&M>e9rb*3rqR=f=E8A58P!!52hro)lI$Bm2!-0*MW^%osAnWe3Oc0JT7*if79al z->1xrtX<~xU%tp4 z6^8FwS)U5_x7NA1eVKT==hfb?TRGafKcw-nEZbhpo;>5mz5>A$hhzjy(!E zE4fC;SZsU!o0x=%h`{^j#Wx(^+|-^_lyt{%V(BZ%yxZG+k2J41aaZQ(v5hu;aYwf= zek?xmi21!QF21Mlcu%YM&e>ZqyYY-hPP>mcLBw4nKxHNDH`>c?z~aBFLq;MkjVv*@f}@n(yr ziyIdmRcU>5a7v#~(>dP1-ST^Ra#u5T@UkyS>*XmfP@F6SDe%6!a)g8HFqFBQd;t~qh z_BT4d;p5SYSUD?s!W#Zr?$(95O_ry)Lr!kkvQ}(D8+XUjbeEaN$Jkn>v|XmJiikhw zbkxc;LH>;h!z?wvjEf1PysQdM(frb;Ck|YznCRai+cTqW{q^ug6|1MWIIL5g!OqXI zb~?v_-r&@`E3*AAAKyB|cm~%T^)=f$OJ<&x%IKtS)iLc4A zuRkB|UX-;s(MOTm~Ry#A|oc9z0>!a zI_IJSd4^LHA`bjr&=WE{?|tE}>yZ&MdKv6uil;9Wy_Y#~lOd+%(t>+Zzv`FRw4dMm zY=+f|5T0r6cXo#;tnQ5P*kQZ+sp2uKOSP~1cK(PwKWX!M+xWb_f6FRgEId26QiHD` zPGMgDnDlY8@_RhqJ#ZR!_(=U;b+XHy6WF*KV;B@q6FqPPw4C zx=)LxQO(EK$4B7J`+J+iOAtV6fR8V72u46@#QmP_>foQz)U=N+G}s?R!e@9_II)e>T%XErS`lIYpW zrP}vDaly`X=?Jftxi{x+VxCygoMkyxt#M1DK=pzJu2Cs*AN*%;D$fnQ$Nu`s=4UTv z39rrc_%3<%nrmLxRP7irDNv#Fe87c@#DZ-F=4JNb6?M!$^7a+aT zJ-cxshj_xYB`ZJQlBy0?d9lf{`@r%H(@N%}`!tImzT>UN!|z=$^ZPt@^F3AxmYx@zpoYl>yvm*LUoD$P44nTqLEiNM@^~x{Om;6)6*G8+7I?kWj>x^TDf=U=QPi= zfB&Ai*8X(%{U2R-z8`4jdoWk?{r}zdQ-u924odD{R`W(!e)8+}`yJzc@3Jp-OW2yc zE>1^%Zb{Rw_&M26C%T)RPPhB(x%2&e0NyA-fo(5K$7)^;=&HSr_#5WvwQ+izy0riulm5r zK-t@eui6@0Zw_2Nr`S)UTgK&_WwL<Sf{@4jQ3wrn=GmCd_v_5I4qVBf~COA2Q(GO=uM zmD(X~bnU^+m;8SvUkYtX>Qnt7%gh##9&UEb;rJ16y~kRY&Xim();@WlGUuV6QtM;O z?Rh(zjYFSAESMu6nfW6{br#6C>sqDHdc}ZCJ(JG_Jz1M-`{F=TK~b@{ z=QjqPWZyD68BY_I))w6VRK5?XIfr%hkeP9MQoS8Jo)6iJ@rsk zw3hk`PUB@0bW~<8kdfSdHhSBs@B6;z&a_CJ6Z5%In!~O@mhr~pb@LVHyfd74;}m;`Ez5WjJ9grT##-Tm28y|{G|^M+zhZ*F!zm(5Yv zz9wujOqe>$;LDlTXH)q1@;2npWio7T+_!f9Hu;v-inV)_HEQl|nR0hmn9vs-?Gfk*7z z4>l$rzwlq6aAB4I);D+dI>%l6Qu<)s>fmh8BkVI{R(^g^vHyK#_(9)j>+9K(9RjZR zstcx;m*zfxz-QvR>;7AXG9kGK*7wZg|Cr6Yl-9ZRsh5I~`!9Ce->+V+b<|Zmvu54D zvUfKY*Oy(~bH14A+Xm&hQ2BEwCoexeeczwZm+Sa5`{QiS9(I@C_trX#_s$FFu$UmH zu(X3sJ2w?RRy+CX{r5L37yV^c+b4H-*NL=R*`HNDm+XH%JpZ(K{{J~aXSZ&uds`)G zl)@3d*}6Pu`rfP6Q;*(K+*)nQy6}usX6DAm)jDdahQ;T4)>a8uyl~!99ym+7?{=q< zruUTKc-J&Vll07KlJ33rM@^h_Vq}cxdQZC=V<~=Na$1YVHm2=dlHBJwBp8wsuYC($ zq{GT2xKI1wG@E0qHb(h;=T>HWQ zEE2l(q3Jz;-WCQ!jfZ^7tkd}Kzuq09Xtn5}%!|LQlOrqIIzzu6l$cz` zoHWbwa)K&{!@)g^eu-QcI(OyeF`eVr@?_Ubo98Smo0xFS++RUr{U^z$gqWgtnZ{|t z-(|mFxD@ZI_KH1#{e%GXw;w#mWE|M4_db*o@HuMQd+orfuooKxQXDMgo_#uR+F-`b z@ASEx`GT*eaL0n};g|n>7T1|@cJ}rYk?C_4<^NpRYE*Q?gDLkx;S!~Z$J|fLc6>DE znlXW^<+oLYnn;bp*9f8Y8%oM1JbUZ1TA}A<)$~V)-~SbuwK{6$`8QLz*3aG)s+qb@ zYR8ENb+IjJUpHi3s6Ic0z`fQ7BGUqL|9b&(8 z<^&pl`L(Nxt)}O>%b`g|=6AmsT7JD^{M7sZd+$%jCaGT9D3)D6LDQzeV$1yU9Sg*C zIk@7jYoc#-UVl61!yomjGxaoew}pAJtZ~izn0#iDYtw;D-#7PXqz9C8d5b3>IVus7 zYB=$v1FO~Z3x6`JQ&ufFse8Gw?byQ?dlGAJE)F~2%4K-+yQ@mEmTdmqT`laBglrzH zeJgwP`~PW&H*YQ1dmC%z&zD!vzGd&~j&FbO$$Z-Wbl%h@${gaN7nd_LUi6>Qwrtz7 zX=g53`D&KbeV_N`?REcSJ#xxZW6vIISo(v@Zr}gA@3oS*&YBmx_xG3Sd9k}rZ9Z?O zezp4bPloUBZ%21c4lCNfd{tDIscmFnoZf5mHR%P;A6ADm?5Mandsf<&_Y&q#di!1o zu}$RG+jVE7lA%=TquL8xOCIEgMk%R2)qL)htI5Q*e(q0=;Lw{Bn!Xu$v34%im~<{@ zl6E<75<|*Hmkg_=7ffxxJ(QL$STv#KYpl0+!{gFcanUmh%u`lmOHK6cE?&3mtg^x3 zwGIN`=ctR#H27t8GbL;ZV}EaFGn<_FW%mpbS*ZhzheP9nvQ|oOT;;~1ZNM$C`0_$K zgM_!c+0O3>`|>PF-{5?mUXi`9gW1Qbizn@-?71)CD6P3|!b-ml!e2a!dY12a-6+x6 z_S9mV#Ba4(Q<;4oVol@QdSBLlELD0|Wu7Ke(DnJ2WXH)* z`!=pL>67K=R6pk)=y>eqt%|o1u^CR^9Gs3XQT-&^cJYTpAY*e&MAzh5D)*1t! z$*Svkr>1xk`^+IvoH6kzy1(`TN^2MHb17w>kfWVB_yeBYqCokhC5+AMC*iW5r5 z!`v8FsCE`@Qn+DXB_gJ}d*;;k>nq}~AL;U5Vmtef+uri(Ooy(xeiOx9le=OEismwT zi|G7Vmpftc8VZZ6H-IYV@g$x`Dv!8a=zK2I{aeM)3rYvh9km)(1Hvl31>vnqBa zKj4hG?=Wp<&o<^s5j+c*KkU}uld)vVyX32@Oe=#U_2Z}Jnww8Q?YYlBNnOux^_;Wy zXTEuKf4( zdCJ*Yrt6ea>UV!V6EaEgn%1Qc3|Ft3ZA$(%`Mk}+QwMjh*H=j{xY#Q0`M>V3D2J&> z>U1ti!z3QpT`9IAOQuW<-H@N)TPk~5=_=QcvNt!Dt)9DgQ+B#2^V6r(2N--lBJ=5<;aUzn?M z=CABZr5gDr_dA=-j6AXBo=*vk0 zAI_e+9KqP)!BTcdoW;y1)F;!)oUMT4ZrHlU;|(PuVT)!m9IDp7$nNa!UY2@2N2oV= zwR<+(mZb-G9_jkzBYZ4E@X`XiRnOLFU9dT!qpNvtH%GpTvZ`6*Wiv)G&V7tCFKo>* zs*OK1!+fLK*_ghkbJ%=iwx%S!P0xs%WqP48o2$0tiAam4#ZpDJo`Q?VFZO?Y-qRGJ zI630XdnYLorTiKDlya{va7;S=?Cz!DnKvIjn$i^H@761ocx%C&o!8Q159cxneYtcb z%f>Hw?F?-x1AapTM}|YbIW@ZL%o9Cc^TZfzGrv@;dUDsRub00ceQ>q4BsSreUe#<* zIdShTCZ@G>moqH&3|kwg9K9`XYOZzJ2^-&?%sk)TUT)W2GUHn--^PWVZ3mXFR0*#C zI#X(QT%F|2uC@(r-?@B*kHt7Io5jF!o_B`*hP4-NHoR@p<94cev2GHV#^j)7|MMQC zcO^ePl{Zy8;+8kBq)F6+j?2I57)~yV==@shqP^n4&sB89#)?46iE4-Z@|SxBTu|+mqKEymUVNy7pCW(U(a{MpmJr)lZgQkDIdne${O4$>(xn ztIMW3GXFm5@V7ax-mNm(=(J~OsVVEExGU3K)F*yEXYI~-&7tz~SydL*;^#UO*5CgY zD`~c7KaZr9&oaN+2iwly-k$ro`QPgJ|51$B)GYt@7%z$L&#T!pd6w0Rl`9hkTGPeD zq9S5)?`;T_zjIt<&(#w%m(TZQG}x!Sc=g5{8|8V$<;K#C(V9nJ9-3!jJ2m>~MVo%! z3BqYsvx?bffB1Eg;j+iY5{H7+fBKQdVeXqVVqcmsdbn;AZ{Y@^S$P*-gnPvfdMG$V z-JaFrUF=aO)6}aK{Gfxg>(HMI8)Ni%J+k7~r)F+sY%H~U`RD68`;#r4!cVVU_EUbH zdX4Fs#ypQBcU{uow7Bz5Fuvbnru5orv-lIunq?P{%zDA*XXdz3^VSuXW%rG*f3q+x zeq+gA&98Vb=`T9V>2ZG`hbuB-wAin1O7f-%}yC>q zOD^kaFMRj!_x-2${q1$9$CT~dv`oBE-dF0(&3haQHrY`&`Wp)6*6t{@pTTt6RLJ4r z`!ya1-Sws|^y6RYSh2A&vALJ=Yi`y2QzeQHvEdnYQ5x+G9f?&EzKa7LrFLFQKNEkZ zoPp^(vuOGKU(dFu-aWQ8C^mHU`SQ*?HJ^KpG7cz6+UNBcZ!-OMGRk%4M(sQQyn~ls z2{JvXViN8?o8yLlOP%o72n#-`>$`sUc|~X~3E0x;c0XZTQrK0mZXWxi&zYZ}7W3UA zw^7UUjs45%5-+Zwzn=c>Rb@oB=C1e7*H_;E|MCAX7HJOs$Za9}zVCg%@vm>m`4eut z>chiBPu~AmHGR*|V>LfNh3`)cJ-dQW*Xxr^VCT;FB{eS|P4@fD&l;aPNl8C`g^-2X z_ktXDsrbb!`U^j|{{OjWCZqK>dF$JImv@~}m_Nbh#3tV2xAyOLUN1ej;r%(*!01I6 zLd&Y>bgOP~WjGe^n>)9KYn9Ub)fww&JWuHO{jtA3NX>7~0W;h9ow?g{BKF^#7g)Y= zZ@Hj=?7AKIe#L$~#C`o)*$jopiTlmiXHU8NzOjYaYepp zq|}@P43YEh^gR7AA@}yKUd?Ui8dkr^S-P$=tQW=KHtkXCs9MKYD4tK0}mv6J#KOxUtTYLN!erR-i<$exoX9A zX6P@UTh=yZ>hw*Q1g}f6&HLJ`*2iAVY8za;*l+=7`kjorlt)3UB)dMJW!5-ezxY>^ zmEnfag5vYskBe>e4CXQz9LP_RI4E&QPNk7yh8nXZ+rsQUZ(cu2UcctL$eCSV!^HT% ze_Nd9H+|#dV_F6#$BU<2O*UR$u4tj9r=>dCrC{;(9U`KAHye6%wsgO#VTfP7VBYzl z%uP-6nJc)yd|%qBx2xyE7WtYDOsr)ey;8ZnzwBJqW^4DK*PC50LL_9$rIIU)TRYCL z<32j))ER!AcM+=sc9p(grMbW8=9W@!*Ed^C1dR_Ii8vKlAiF94)f~(9!HX_jSg@ur zut$Nd)yhLNc)9qyd?VWrYcE%GME}1W^r3R`9Vgvu)rB@czu#8ha3F5WidD_uEe)Qv z>R$Vj^M6WjP{mnp5$3+e$mJa~^yfy*lE2A%X6-%~S0~9n?;~-Ji4T zpKd%ZKfSwj>;DIb`?VTwX=aDzPgrZ^$R}ab(6}w+=DOZf7P9HtIp@OFM^h7&XFrR*eV_r z%@mmLr~c^W<>enOd^abj{@a(I8@}V!ahCpT#_xXEMyDI>U^Y<9WeL-IoyxIH=)oeP zv^36!wyTv~*Z40y2&jIh&7k!>{o&@;1xg!LnmKN)neslUBvJSvU- zdq7Rbu<-Pd2M>a z;nnPAO$xU*Uon_%Y}{}=miNx7`%znW96K0yK%`-5k<`g;B7z#nd~Wbw_KPuRdy!_I z9wxHuQueELO>-^>&Dm(RdxT=X}ru1mW6mN(td7B@i(EEsG)||ATZ;}>H@H3C-mRJAQzuU`m(*}bY zSN|hws}qjaW?c|5YlwBaJbi;(hg85}-ngA+%g#i8S&;cPM=85ih@ppJ<&|v7+p`mA zT@LMkwQtj@JBQL3`M!QQ(=@|&RZFYGJgL>ovbdgi?=5=A>?7A*z_88J_1CT&UYnVA zuGunUo1BVN?d;1@2EP~TK9c%kXSPK8X3w0vB23cxiRvtu-oF&v=CwygWQWzB!ZnAJ zJHDtsD)4()+hI4~evv_aeN@GV_7_Hi(?6fLj$iij4$p+p`0E<|+0PQcWv>rrW4KoF zvukP$&-)u2gC)1zWlg_Tvrl&Z&+5YE-_OUk{nUPB67gS?`Gdg8rO(#ho&2l6>dL3v zyO}QU@vzV^dfCzW>Hoejsk@dQej&V{IpgH7oqJ}NeLisWzhEMhx7gyPekV4)P^*3P z?L(u%v*ar$F3wv1ewpU}*iXxrv8wyZEq@cqdiUVOaCyU|9h;bzYw6zcHd_;`zqk7P z)UDaqPwuJwywv}FT+!Ro>)8!nS{<)lm#NJ2nX$azNOFai&!$Vdrvn_Xu^(Kgax^I4 zUUWu)&D|3v8AgGpOhTI3cvwQ#+;HSp;GL{G!zh}SMc|8?4p(qmR;SxxfzN7_`ce%y zw7q6sSYl@IS9GhVfkCR&>A&I;3GHF68`LlHEVL3Z_D^_e71I0nV}JdGpP%EVOXu(L zJh%UY(zm0=pKW)`bLeqcU6`7nWbCE1C15qX?$`|h28CCx zf0nS$o%8bPje?uozp3OzGyD2Xyeak}{iBb>d&~1HFWgE}P(AVN`?)j1R*Ggnwr(!o zD{V`NqRn|RR^jXyO$V-ZrBiOTm$tmG3SnC}(ejx5-{%=?W>1{@e$C{Y#m`R8TeWu& z-{fU}lZ^c=U8}ymo48-Ub4R-B*B4ja?{8syrI2}l(E^t1daKT{STt{tTWPoJE_?5q z9bX@(o{G7;;R3_Ew}z}KygT<^NoYLj<dK@ zZElyl6xS#-thKN4wp}WndnVXNK2)Tw^`iBbDYN?yPSp-SHM!qjP58L~l!?mj8&d_2 zXV|Fy_cVO>V0*KFb`|S?E0rCRV*d`G)_>&uT{Th8wn~Xrf%*TTq?Aibl%H%mt^auQ ze#iMsw@=fby0iFMao?>ysoj6REVrK)XIuTEX|LP8$e(_%^>u$d`~JC3PU3L!49PXq zIG@+XKD=GlnbjL){oVG`zu)|?uin33xV5Casyx5Wy*j^k>EAysEQ00wzH1l8$FI}O z?v3^C){OeLCu4u^`{hr!-`bzhAF%4>G22~})~{MMb?)u&C${C@{<-Yy>uaYE^V_L# zi=CZ3*LwTOQ=!_T7P?bJweMZD&%eCr;i~L)ll*Hx37c52xw>c1dhIXw|9&$sx*l78 zQd52Yl7tW5DTynV2TAP;kz6NdTkZ8d@9vW`o6k+?I#uMi%Aj`5+WZI3d-~#-}%%L*#S9G;dAK&}n8=k-Fm)-^##V#;U21Ic zH|(J~1vbap7EJW{CG|jE`u4S!Ez=pzKi6*xSvtKZIKpRQ$sLpU9n;c&X;yyJXW$8H zPB2U7>83@$Zr2J{A>r1?5;vcpubkP)dg$mAr5TxFwu=tjFkiUg{^Aqzk9qiBMH(gV z+>^$8fUiN@{Xu*R-}juS7hMw07&;iFzx3!)ES_n;nrlOF)#lQgyNO}W*Et8uF5Q&9enaFQ%gU2Ges&~In!7t;p3ToEmu=dUeEaWLyE?b$r zqQkc!W`Q<~jyluz#e(j6Yxk?HKY3`|_FZB7e$Rb>^6B(AUGth9{Uxu%^j`il$xY{a zzERA0&g>hvye@AQpS&k*{odV;`$Sh{Nye$>eBZ14IETB<)9UljrnQplTPyVExr#~e z=x@FBr(7g>&x`-I>X8Q{E|%CHQQlB(I3aDD*@Q-&=uIxub|r5&v$C6gzTNNs)rW=q zq@&aKYe~6Z`o#BO`8mcle)EHGJer>b#?fP&t8a!acmMuw)AnU<*E9s2H$?Aw z!Ta|wU+rG;@Lv~F6aDO8uPJ`=<8j}0k>>(8Hxvqc*B$SXTX|sh_MJPN zlTvZlxT_zi@v

%bbEog+WW!91Ql~vt)9HM*7@Rp0yGSxL2-RH|h7kkN!Kq->Vjx zBjdhTG$`Nw+#CIToj8sCyFO3X@r~dAj>(E|ambA}r@kKPu#a!%E<0{l@}l7Gdk=5V zmS>+o9eb3@C34B=^Ny91@;Gih5$_4EbX_TTy^~FgK||PZ*6eq8Hb$4_+;%Qo>Jq8J z;v2H=V53~-q;;pJ_|7v6?J~V;S@6Jt=|}ymkNfwQES*#T@TSq{7nv+l7g*lj+3FlT z_v)ul-sex>3SIrQ!*g=VogINGn*Y9CuYPj>f1R77!`d@eZ&P00+}j>9W!mQ(|Np*U zKILacKv!^T%CEK;S#}q;_?YiCli2J%ZJ+M`Ur*PY?AYU}$Qoz}nU`4ar}ECbHibcGf$){c`rWh+iQBT z*`mAYk&9;gHp_j>&x+0q&6k*DslMTy#^Ol{SsPU1{B#9++yf)0m%ObDcxvhAXwAiN zfFV5Fs^F{j>k~q~_DMSTcYox_=pK6DB*hODCSJQc@#s2@x^P39p*;syBG4qs!zpAv^$Bs^&HH;p$ z?u=o(jpiMexc==fpRo4Dn+caru1{+Ds^sbAVtpgx%ti&3Gs!Z^>-LBlUb4GCN6F>d z%e7DQJ-<({3aIb6|K`rl$>;4aKinm8xVYpm@AY8gzsv3a2R=JH-#_5muN%34<=%X* zVp%t9{fovYEqn>q4d%!Be+cVtE1$jT)sMYlE7R;Nbf-yPn#0`luH?(6f6{$7U)q0En``rqK&*u~` ze_3>qfmt>6=%p(+j&RQ4cTaHMSHQG#%^SBso3dT8l7h+eKUtrzUmkmG!rL&j?5O;^ zyGk$ZF4vznVX>=IV3x|>##15_MC#oC1#-7$a?IFw=<@O%TO#D@-UQybo`ioK5w#H+O^2Uwxk!n|pqy?d;sFXbVCY@y%O8Ti^Ld z^0O-V8eHw>Y;64+@;Qd<(4Ix7w7g1+R!j=XU0m`$@+2qoO7oCUmFGIv=g+U>S#sX? z^BS9vM-~S~-kYk~wQ8;@7n5m%ezex^^7m67E@nIV=eqbwZqs59F(?0yX%^Au`HT2( zZ%A~0`eJe4lwEtjN`IQe$*U4R|Xi72xoS(@}=;e)|5SYF!(I>kRv+x~=-PUWnCp zVf31X8yNM&-mXiEp0)q~)4a;+o6(<+>i_Nck+6>w(`Me1b=Nw_n+y1&z^SB`FGIdt+}g> z4&9uxbk<{u&8b&rIes=x`x3G9sqy@$7Ke;G6uCD@ez5f4{otwal~)N#Q#FFK4cvSq zT2&fUynY=_VePYZDb?R)Y+@Yr?C;Tc>=(jRi{A8d2%2PZeynBKFBr}Fq1z-‹% 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

NjU$ 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

&~4 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 literal 0 HcmV?d00001 diff --git a/front/src/App.svelte b/front/src/App.svelte new file mode 100644 index 0000000..6eabc04 --- /dev/null +++ b/front/src/App.svelte @@ -0,0 +1,6 @@ + + + diff --git a/front/src/app.css b/front/src/app.css new file mode 100644 index 0000000..f096603 --- /dev/null +++ b/front/src/app.css @@ -0,0 +1,94 @@ +@import "tailwindcss"; +@plugin "@tailwindcss/typography"; + +@plugin "daisyui" { + themes: + light, + dark --prefersdark --default; +} + +@plugin "daisyui/theme" { + name: "dark"; + default: true; /* set as default */ + prefersdark: true; /* set as default dark mode (prefers-color-scheme:dark) */ + color-scheme: dark; /* color of browser-provided UI */ + + --color-base-100: oklch(0.2096 0.0275 290.36); + --color-base-200: oklch(0.1896 0.0242 287.67); + --color-base-300: oklch(0.1674 0.0229 292.08); + --color-base-content: oklch(0.841 0.0056 297.71); + + --color-primary: oklch(0.5454 0.2756 292.04); + --color-primary-content: oklch(0.9074 0.049167 293.0386); + + --color-secondary: oklch(0.5103 0.2756 292.04); + --color-secondary-content: oklch(0.9074 0.049167 293.0386); + + --color-accent: oklch(0.6241 0.1575 277.95); + --color-accent-content: oklch(0.1248 0.031 280.93); + + --color-neutral: oklch(0.2813 0.0153 269.13); + --color-neutral-content: oklch(0.8574 0.003 264.54); + + --radius-selector: 1rem; + --radius-field: 0.5rem; + --radius-box: 1rem; + --size-selector: 0.25rem; + --size-field: 0.25rem; + --border: 1px; + --depth: 0; + --noise: 0; +} + +@plugin "daisyui/theme" { + name: "light"; + default: false; /* set as default */ + prefersdark: false; /* set as default dark mode (prefers-color-scheme:dark) */ + color-scheme: light; /* color of browser-provided UI */ + + --color-primary: oklch(0.5454 0.2756 292.04); + --color-primary-content: oklch(0.9074 0.049167 293.0386); + + --color-secondary: oklch(0.5103 0.2756 292.04); + --color-secondary-content: oklch(0.9074 0.049167 293.0386); + + --color-accent: oklch(0.6241 0.1575 277.95); + --color-accent-content: oklch(0.1248 0.031 280.93); + + --radius-selector: 1rem; + --radius-field: 0.5rem; + --radius-box: 1rem; + --size-selector: 0.25rem; + --size-field: 0.25rem; + --border: 1px; + --depth: 0; + --noise: 0; +} + +main { + @apply mx-auto w-full px-6; +} + +.h1 { + @apply scroll-m-20 text-4xl sm:text-5xl font-extrabold tracking-tight lg:text-5xl; +} + +.h2 { + @apply scroll-m-20 text-3xl sm:text-4xl font-semibold tracking-tight transition-colors; +} + +.h3 { + @apply scroll-m-20 text-2xl font-semibold tracking-tight transition-colors; +} + +.h4 { + @apply scroll-m-20 text-xl font-semibold tracking-tight transition-colors; +} + +.h5 { + @apply scroll-m-20 text-lg font-semibold tracking-tight transition-colors; +} + +.h6 { + @apply scroll-m-20 text-base font-semibold tracking-tight transition-colors; +} diff --git a/front/src/lib/components/accordion.svelte b/front/src/lib/components/accordion.svelte new file mode 100644 index 0000000..22c952c --- /dev/null +++ b/front/src/lib/components/accordion.svelte @@ -0,0 +1,79 @@ + + + +{#if children != null} + {#if isOpen} +

  • + {@render children()} +
  • + {/if} +{/if} diff --git a/front/src/lib/components/dark-mode-toggle.svelte b/front/src/lib/components/dark-mode-toggle.svelte new file mode 100644 index 0000000..7b9f688 --- /dev/null +++ b/front/src/lib/components/dark-mode-toggle.svelte @@ -0,0 +1,29 @@ + + + diff --git a/front/src/lib/components/index/AnimatedBeam.svelte b/front/src/lib/components/index/AnimatedBeam.svelte new file mode 100644 index 0000000..10cbb78 --- /dev/null +++ b/front/src/lib/components/index/AnimatedBeam.svelte @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + diff --git a/front/src/lib/components/index/AnimatedBeamMultiple.svelte b/front/src/lib/components/index/AnimatedBeamMultiple.svelte new file mode 100644 index 0000000..cd991d4 --- /dev/null +++ b/front/src/lib/components/index/AnimatedBeamMultiple.svelte @@ -0,0 +1,125 @@ + + +
    +
    +
    + + +
    + +
    +
    + + +
    + +
    +
    + + +
    + +
    +
    + + +
    + +
    +
    + + +
    + +
    +
    +
    +
    + + +
    + + + +
    +
    +
    +
    + + +
    + +
    +
    +
    +
    + + + + + + +
    diff --git a/front/src/lib/components/index/Circle.svelte b/front/src/lib/components/index/Circle.svelte new file mode 100644 index 0000000..c341878 --- /dev/null +++ b/front/src/lib/components/index/Circle.svelte @@ -0,0 +1,19 @@ + + +
    +
    + {@render children()} +
    +
    diff --git a/front/src/lib/components/index/search/datawells.svelte b/front/src/lib/components/index/search/datawells.svelte new file mode 100644 index 0000000..f04bdc6 --- /dev/null +++ b/front/src/lib/components/index/search/datawells.svelte @@ -0,0 +1,115 @@ + + +
    + + +
    + + + + + + + {#if showColumns} + + {/if} + + + + {#if paginatedDataleaks.length > 0} + {#each paginatedDataleaks as item} + + + + {#if showColumns} + + {/if} + + {/each} + {:else} + + + + {/if} + +
    NameNumber of rowsColumns
    + {item.Name} + {item.Length.toLocaleString("fr")} + {item.Columns.map((col) => col.replace(/_/g, " ")).join(", ")} +
    (Ξ‡.Ξ‡)
    No data wells found
    +
    + + {#if totalPages > 1} +
    + + + +
    + {/if} +
    diff --git a/front/src/lib/components/index/search/history.svelte b/front/src/lib/components/index/search/history.svelte new file mode 100644 index 0000000..3ea5b2c --- /dev/null +++ b/front/src/lib/components/index/search/history.svelte @@ -0,0 +1,130 @@ + + +
    + + +
    + + + + + + + + + + + + + {#if paginatedHistory.length > 0} + {#each paginatedHistory as item} + + + + + + + + {/each} + {:else} + + + + {/if} + +
    QueryResultsStatusDate
    + + {item.Results}
    + {item.Status} +
    {formatDate(item.Date)} { + navigate(`/search/:id`, { params: { id: item.Id } }); + }} + >
    (Ξ‡.Ξ‡)
    No history found
    +
    + + {#if totalPages > 1} +
    + + + +
    + {/if} +
    diff --git a/front/src/lib/components/index/search/howToSearch.svelte b/front/src/lib/components/index/search/howToSearch.svelte new file mode 100644 index 0000000..5c77e35 --- /dev/null +++ b/front/src/lib/components/index/search/howToSearch.svelte @@ -0,0 +1,46 @@ + + +
    +

    + Eleakxir's search engine is designed to be both fast and flexible, letting + you find what you need in multiple ways. +

    + +

    Search Modes

    + +

    + All: This is the default mode. + It searches for your query across a set of standard columns like email, username, + and phone number. This is the fastest and most efficient way to find a specific + user or account. +

    + +

    + Specific column: + This mode lets you choose a specific column to search within, such as email or + username. It's useful when you know exactly where the data you're looking for + is stored. +

    + +

    + Full Text: This mode combines + all available columns into a single, large text field and searches within it. + It's great for finding data that might be in an unexpected column, but it's way + slower. +

    + +

    Query Matching

    +

    + Standard Search: By default, + Eleakxir uses a "fuzzy" search. This means it will find results where your search + terms are part of a larger string. For example, searching for 1234 would find + john.doe@1234.com. +

    + +

    + Exact Match: When you enable + "Exact Match," the search will only return results where the data in a column + is an exact match for your search term. This is useful for finding specific, + unique values. +

    +
    diff --git a/front/src/lib/components/index/search/id/githubResult.svelte b/front/src/lib/components/index/search/id/githubResult.svelte new file mode 100644 index 0000000..ba24ad7 --- /dev/null +++ b/front/src/lib/components/index/search/id/githubResult.svelte @@ -0,0 +1,313 @@ + + +{#if githubResult.UsernameResult} +
    +
    +
    +
    + Avatar of {githubResult.UsernameResult.User.Username} +
    +
    +
    +
    +

    {githubResult.UsernameResult.User.Name}

    +

    + @{githubResult.UsernameResult.User.Username} +

    +
    +

    {githubResult.UsernameResult.User.Bio}

    +
    +
    +
    +
    + + + + {#if githubResult.UsernameResult.Socials && githubResult.UsernameResult.Socials.length > 0} +
    +

    Social Links

    + +
    + {/if} + {#if githubResult.UsernameResult.CloseFriends && githubResult.UsernameResult.CloseFriends.length > 0} +
    +
      + +
    + + + + {/if} + {#if githubResult.UsernameResult.Orgs && githubResult.UsernameResult.Orgs.length > 0} +
    +

    Organizations

    +
      + +
    + + + + {/if} + {#if githubResult.UsernameResult.Commits && githubResult.UsernameResult.Commits.length > 0} +
    +

    Commits

    +
      + {#each githubResult.UsernameResult.Commits as commit} + "} + subtitle={"Occurrences: " + commit.Occurrences} + > +
    + + {/each} + + + {/if} + {#if githubResult.UsernameResult.SshKeys && githubResult.UsernameResult.SshKeys.length > 0} +
    +

    SSH Keys

    +
      + {#each githubResult.UsernameResult.SshKeys as key} + +
      {key.Key}
      +
      + {/each} +
    +
    + {/if} + {#if githubResult.UsernameResult.SshSigningKeys && githubResult.UsernameResult.SshSigningKeys.length > 0} +
    +

    SSH Signing Keys

    +
      + {#each githubResult.UsernameResult.SshSigningKeys as key} + +
      {key.Key}
      +
      + {/each} +
    +
    + {/if} + {#if githubResult.UsernameResult.GpgKeys && githubResult.UsernameResult.GpgKeys.length > 0} +
    +

    GPG Keys

    +
      + {#each githubResult.UsernameResult.GpgKeys as key} + 0 ? key.Emails[0].Email : key.KeyID} + subtitle={"Created At: " + key.CreatedAt} + > +
    + + {/each} + + + {/if} + {#if githubResult.UsernameResult.DeepScan} + {#if githubResult.UsernameResult.DeepScan.Authors && githubResult.UsernameResult.DeepScan.Authors.length > 0} +
    +

    Deep scan authors

    +
      + +
    + + + + {/if} + {#if githubResult.UsernameResult.DeepScan.Emails && githubResult.UsernameResult.DeepScan.Emails.length > 0} +
    +

    Deep scan emails

    +
      + +
    + + + + {/if} + {#if githubResult.UsernameResult.DeepScan.Secrets && githubResult.UsernameResult.DeepScan.Secrets.length > 0} + {@const flattenedSecrets = githubResult.UsernameResult.DeepScan.Secrets.map(FlattenObject)} +
    +

    Deep scan secrets

    +
      + +
    + + + + {/if} + {/if} + +{:else if githubResult.EmailResult} +
    + {#if githubResult.EmailResult.Spoofing} +

    From spoofing

    +
    +
    +
    + Avatar of {githubResult.EmailResult.Spoofing.Username} +
    +
    +
    +
    +

    @{githubResult.EmailResult.Spoofing.Username}

    + {#if githubResult.EmailResult.Spoofing.Name} +

    + Name: + {githubResult.EmailResult.Spoofing.Name} +

    + {/if} + {#if githubResult.EmailResult.Spoofing.Email} +

    + Public email: + {githubResult.EmailResult.Spoofing.Email} +

    + {/if} + {#if githubResult.EmailResult.Target} +

    + Primary email: + {githubResult.EmailResult.Target} +

    + {/if} + + {githubResult.EmailResult.Spoofing.Url} + + +
    +
    +
    + {/if} + {#if githubResult.EmailResult.Commits} +
    +

    Commits

    +
      + {#each githubResult.EmailResult.Commits as commit} + +
    + + {/each} + + + {/if} + +{/if} diff --git a/front/src/lib/components/index/search/id/row.svelte b/front/src/lib/components/index/search/id/row.svelte new file mode 100644 index 0000000..726765b --- /dev/null +++ b/front/src/lib/components/index/search/id/row.svelte @@ -0,0 +1,100 @@ + + + +{#if isOpen} +
  • +
  • + +{/if} diff --git a/front/src/lib/components/index/search/id/rows.svelte b/front/src/lib/components/index/search/id/rows.svelte new file mode 100644 index 0000000..623693f --- /dev/null +++ b/front/src/lib/components/index/search/id/rows.svelte @@ -0,0 +1,72 @@ + + +
    +{#if result} +
      + {#each paginated as row (row)} + + {/each} +
    + + {#if totalPages > 1} +
    + + + +
    + {/if} +{:else} + No result +{/if} diff --git a/front/src/lib/components/index/search/id/stats.svelte b/front/src/lib/components/index/search/id/stats.svelte new file mode 100644 index 0000000..c96deae --- /dev/null +++ b/front/src/lib/components/index/search/id/stats.svelte @@ -0,0 +1,54 @@ + + +
    +
    +
    + +
    +
    Results
    +
    + {nresult.toLocaleString("fr")} + {#if result.Status === "pending"} + + {/if} +
    +
    +
    +
    + +
    +
    Date
    +
    + {formatDate(result.Date)} +
    +
    +
    +
    + +
    +
    Status
    +
    + {result.Status} + {#if result.Status === "pending"} + + {/if} +
    +
    +
    diff --git a/front/src/lib/components/index/search/searchbar.svelte b/front/src/lib/components/index/search/searchbar.svelte new file mode 100644 index 0000000..a07f05f --- /dev/null +++ b/front/src/lib/components/index/search/searchbar.svelte @@ -0,0 +1,104 @@ + + +
    +
    + {#each filters as filter} + + {/each} +
    + +
    { + e.preventDefault(); + NewSearch(); + }} + > + + + +
    diff --git a/front/src/lib/components/index/search/services.svelte b/front/src/lib/components/index/search/services.svelte new file mode 100644 index 0000000..6cf258f --- /dev/null +++ b/front/src/lib/components/index/search/services.svelte @@ -0,0 +1,83 @@ + + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + +
    ServiceStatus
    Data wells lookup + {#if serverInfo.Dataleaks.length !== 0} +
    +
    +
    +
    + Active + {:else} +
    +
    +
    +
    + Inactive + {/if} +
    + Github recon + {#if serverInfo.Settings.GithubTokenLoaded === true} +
    Token
    + {/if} + {#if serverInfo.Settings.GithubDeepMode === true} +
    Deep Mode
    + {/if} +
    + {#if serverInfo.Settings.GithubRecon === true} +
    +
    +
    +
    + Active + {:else} +
    +
    +
    +
    + Inactive + {/if} +
    Google hunt + {#if serverInfo.Settings.GithubRecon === true} +
    +
    +
    +
    + Active + {:else} +
    +
    +
    +
    + Inactive + {/if} +
    +
    +
    diff --git a/front/src/lib/components/index/search/stats.svelte b/front/src/lib/components/index/search/stats.svelte new file mode 100644 index 0000000..ee7dc0c --- /dev/null +++ b/front/src/lib/components/index/search/stats.svelte @@ -0,0 +1,46 @@ + + +
    +
    +
    + +
    +
    Rows available
    +
    + {serverInfo?.TotalRows + ? serverInfo.TotalRows.toLocaleString("fr") + : "-- --- --- ---"} +
    +
    +
    +
    + +
    +
    Data wells available
    +
    + {serverInfo?.TotalDataleaks + ? serverInfo.TotalDataleaks.toLocaleString("fr") + : "---"} +
    +
    +
    +
    + +
    +
    Storage used
    +
    + {serverInfo?.TotalSize + ? mbToGb(serverInfo.TotalSize).toLocaleString("fr") + " Gb" + : "--- Gb"} +
    +
    +
    diff --git a/front/src/lib/components/logo.svelte b/front/src/lib/components/logo.svelte new file mode 100644 index 0000000..665ae9b --- /dev/null +++ b/front/src/lib/components/logo.svelte @@ -0,0 +1,16 @@ + + + + + diff --git a/front/src/lib/components/server-dialog.svelte b/front/src/lib/components/server-dialog.svelte new file mode 100644 index 0000000..f3b8ba1 --- /dev/null +++ b/front/src/lib/components/server-dialog.svelte @@ -0,0 +1,144 @@ + + +
    + +
    + {#if $serverUrl !== ""} +
    + {:else} +
    +
    + {/if} +
    +
    + +
    + + + + + diff --git a/front/src/lib/components/table.svelte b/front/src/lib/components/table.svelte new file mode 100644 index 0000000..b5b6378 --- /dev/null +++ b/front/src/lib/components/table.svelte @@ -0,0 +1,79 @@ + + +
    + + {#if Array.isArray(row) && row.length !== 0} + {@const head = Object.entries(row[0])} + + + + {#each head as [key, _]} + + {/each} + + + + {#each row as item} + + {#each Object.entries(item) as [key, value]} + + {/each} + + {/each} + + {:else} + + {#each Object.entries(row) as [key, value]} + {#if key !== "source" && value !== "" && value !== null} + + + + + + {/if} + {/each} + + {/if} +
    + {key} +
    + {#if key.toLowerCase() === "url" && value !== "" && value !== null} + + {value} + + + {:else} + {value} + {/if} +
    {key.replace(/_/g, " ")} + {#if key.toLowerCase() === "url"} + + {value} + + + {:else} + {value} + {/if} +
    +
    diff --git a/front/src/lib/navigation/sidebar-menu-item.svelte b/front/src/lib/navigation/sidebar-menu-item.svelte new file mode 100644 index 0000000..597f303 --- /dev/null +++ b/front/src/lib/navigation/sidebar-menu-item.svelte @@ -0,0 +1,30 @@ + + +
  • + {#if item.items} +
    + + {#if item.icon} + + {/if} + {item.title} + +
      + {#each item.items as subitem} + + {/each} +
    +
    + {:else} + + {#if item.icon} + + {/if} + {item.title} + + {/if} +
  • diff --git a/front/src/lib/navigation/sidebar.svelte b/front/src/lib/navigation/sidebar.svelte new file mode 100644 index 0000000..97c0639 --- /dev/null +++ b/front/src/lib/navigation/sidebar.svelte @@ -0,0 +1,57 @@ + + +
    + + +
    diff --git a/front/src/lib/navigation/topbar.svelte b/front/src/lib/navigation/topbar.svelte new file mode 100644 index 0000000..6448cb0 --- /dev/null +++ b/front/src/lib/navigation/topbar.svelte @@ -0,0 +1,47 @@ + + + + + diff --git a/front/src/lib/stores/server.ts b/front/src/lib/stores/server.ts new file mode 100644 index 0000000..750c0f8 --- /dev/null +++ b/front/src/lib/stores/server.ts @@ -0,0 +1,15 @@ +import { writable } from "svelte/store"; + +function persistent(key: string, initial: any) { + const stored = localStorage.getItem(key); + const data = writable(stored ? stored : initial); + + data.subscribe((value) => { + localStorage.setItem(key, value); + }); + + return data; +} + +export const serverUrl = persistent("serverUrl", ""); +export const serverPassword = persistent("serverPassword", ""); diff --git a/front/src/lib/types.ts b/front/src/lib/types.ts new file mode 100644 index 0000000..7344dfd --- /dev/null +++ b/front/src/lib/types.ts @@ -0,0 +1,78 @@ +type Query = { + Text: string; + Column: string; + ExactMatch: boolean; +}; + +type LeakResult = { + Duration: number; + Error: string; + Rows: Array>; +}; + +type GithubResult = { + Duration: number; + Error: string; + + EmailResult: any; + UsernameResult: any; +}; + +type Result = { + Id: string; + Status: "pending" | "completed"; + Date: string; + Query: Query; + LeakResult: LeakResult; + GithubResult: GithubResult; +}; + +type HistoryItem = { + Id: string; + Status: "pending" | "completed"; + Date: string; + Query: Query; + Results: number; +}; + +type History = HistoryItem[]; + +type ServerSettings = { + Folders: string[]; + CacheFolder: string; + Limit: number; + MinimumQueryLength: number; + + GithubRecon: boolean; + GithubTokenLoaded: boolean; + GithubDeepMode: boolean; +}; + +type Server = { + Settings: ServerSettings; + + Dataleaks: Dataleak[]; + + TotalRows: number; + TotalDataleaks: number; + TotalSize: number; +}; + +type Dataleak = { + Name: string; + Columns: string[]; + Length: number; + Size: number; +}; + +export type { + Query, + LeakResult, + History, + HistoryItem, + GithubResult, + Result, + ServerSettings, + Server, + Dataleak, +}; diff --git a/front/src/lib/utils.ts b/front/src/lib/utils.ts new file mode 100644 index 0000000..fb8be92 --- /dev/null +++ b/front/src/lib/utils.ts @@ -0,0 +1,80 @@ +import { clsx, type ClassValue } from "clsx"; +import { twMerge } from "tailwind-merge"; + +export function cn(...inputs: ClassValue[]) { + return twMerge(clsx(inputs)); +} + +// take "2025-09-13T21:14:46.13030464+02:00" +// return "13/09/2025 21:14" +export function formatDate(date: string) { + const d = new Date(date); + const day = String(d.getDate()).padStart(2, "0"); + const month = String(d.getMonth() + 1).padStart(2, "0"); + const year = d.getFullYear(); + const hours = String(d.getHours()).padStart(2, "0"); + const minutes = String(d.getMinutes()).padStart(2, "0"); + return `${day}/${month}/${year} ${hours}:${minutes}`; +} + +export function convertNanoSeconds(nanoseconds: number): string { + const ONE_MS_IN_NS = 1e6; + const ONE_S_IN_NS = 1e9; + const ONE_MIN_IN_NS = 6e10; + + if (nanoseconds < ONE_MS_IN_NS) { + return `${nanoseconds} ns`; // Garde la sortie en ns pour les très petites valeurs + } else if (nanoseconds < ONE_S_IN_NS) { + const ms = Math.round(nanoseconds / ONE_MS_IN_NS); + return `${ms} ms`; + } else if (nanoseconds < ONE_MIN_IN_NS) { + const s = Math.round(nanoseconds / ONE_S_IN_NS); + return `${s} s`; + } else { + const totalSeconds = Math.round(nanoseconds / ONE_S_IN_NS); + const minutes = Math.floor(totalSeconds / 60); + const seconds = totalSeconds % 60; + return `${minutes}m${seconds}s`; + } +} + +type FlatObject = { [key: string]: any }; + +export function FlattenObject(obj: object): FlatObject { + const flattened: FlatObject = {}; + + function recurse(currentObj: any, prefix: string = ""): void { + for (const key in currentObj) { + if (Object.prototype.hasOwnProperty.call(currentObj, key)) { + const value = currentObj[key]; + const newKey = prefix ? `${prefix}.${key}` : key; + + if ( + typeof value === "object" && + value !== null && + !Array.isArray(value) + ) { + // Si la valeur est un objet, on continue la récursion + recurse(value, newKey); + } else if (Array.isArray(value)) { + // Si la valeur est un tableau, on itère sur ses éléments + value.forEach((item, index) => { + // On continue la récursion pour les objets dans le tableau + if (typeof item === "object" && item !== null) { + recurse(item, `${newKey}.${index}`); + } else { + // On ajoute les valeurs primitives + flattened[`${newKey}.${index}`] = item; + } + }); + } else { + // Si la valeur est une primitive, on l'ajoute à l'objet aplati + flattened[newKey] = value; + } + } + } + } + + recurse(obj); + return flattened; +} diff --git a/front/src/main.ts b/front/src/main.ts new file mode 100644 index 0000000..dd9a3e8 --- /dev/null +++ b/front/src/main.ts @@ -0,0 +1,5 @@ +import { mount } from "svelte"; +import App from "./App.svelte"; +import "sv-router/generated"; + +mount(App, { target: document.querySelector("#app")! }); diff --git a/front/src/routes/dataleaks/index.svelte b/front/src/routes/dataleaks/index.svelte new file mode 100644 index 0000000..6d5d59a --- /dev/null +++ b/front/src/routes/dataleaks/index.svelte @@ -0,0 +1,57 @@ + + +
    +
    +

    πŸ—ƒοΈ Data wells

    +

    List of data wells (databases) available on the connected server.

    +
    + {#if serverInfo} +
    + +
    + + {:else} +

    Loading...

    + {/if} +
    diff --git a/front/src/routes/index.svelte b/front/src/routes/index.svelte new file mode 100644 index 0000000..0c0d44e --- /dev/null +++ b/front/src/routes/index.svelte @@ -0,0 +1,137 @@ + + +
    +
    +
    + + ✨ Check the Github repo + +
    + +

    Eleakxir

    +
    +

    + Eleakxir is a self-hosted search engine that lets you connect to your own + private and secure server, explore data wells (parquet files) from + multiple sources, and visualize results in a clean, modern web interface. +

    + +
    +
    + +
    +
    +
    +
    +

    βš™οΈ How Eleakxir works?

    +

    + You run an Elixir server that manages parquet files from various + leaked data sources and multiple OSINT tools. The web client connects + to your server via HTTPS and authenticated headers then you can search + across indexed leaks and OSINT tools, browse results interactively and + review history and stats +
    +
    + And it's open source! +

    + +
    + {#if $serverUrl === "https://" || $serverUrl === ""} + + {/if} + + + +
    +
    + +
    +
    + +
    +

    πŸš€ Features

    +
    + {#each [{ title: "πŸ” Private by design", content: "connect to your own Eleakxir server with a custom URL + password." }, { title: "πŸ›  Open source & extensible", content: "hack it, self-host it, extend it." }, { title: "πŸ“ Efficient File Format", content: "Uses the columnar Parquet format for high compression and rapid query performance." }, { title: "πŸ” OSINT Tools", content: "Includes Github-recon, GHunt, sherlock and more." }, { title: "πŸ“œ Standardized Schema", content: "Includes a detailed guide on how to normalize your data leaks for consistent and effective searching across different breaches." }] as value} +
    +
    +

    {value.title}

    +

    + {value.content} +

    +
    +
    + {/each} +
    +
    + +
    +

    🐒 Speed

    +

    + While Eleakxir is designed to be storage-efficient rather than + lightning-fast, searches will naturally take longer compared to an indexed + engine like Elasticsearch. Indexing systems can provide near-instant + results, but at the cost of massive disk usage β€” often requiring multiple + terabytes even for relatively modest datasets. In contrast, Eleakxir + trades some speed for compactness: for example, I’m able to store 25 + billion rows in just over 600 GB on entry-level hardware. A query might + take around an hour to complete, but the key point is that it’s actually + possible to run such searches at home β€” something that would be completely + out of reach if I had to maintain Elasticsearch’s much larger index + footprint. +

    +
    + +
    +

    🚨 Disclaimer

    +

    + Eleakxir is provided for educational and research purposes only. You are + solely responsible for how you use this software. Accessing, storing, or + distributing leaked data may be illegal in your jurisdiction. The authors + and contributors do not condone or promote illegal activity. Use + responsibly and only with data you are legally permitted to process. +

    +
    +
    + +
    diff --git a/front/src/routes/layout.svelte b/front/src/routes/layout.svelte new file mode 100644 index 0000000..366ce8a --- /dev/null +++ b/front/src/routes/layout.svelte @@ -0,0 +1,28 @@ + + + +
    + +
    + +
    + {@render children()} +
    + +
    diff --git a/front/src/routes/leak-utils/index.svelte b/front/src/routes/leak-utils/index.svelte new file mode 100644 index 0000000..c2f8f08 --- /dev/null +++ b/front/src/routes/leak-utils/index.svelte @@ -0,0 +1,18 @@ + + +
    + {@html marked(text)} +
    diff --git a/front/src/routes/parquet/index.svelte b/front/src/routes/parquet/index.svelte new file mode 100644 index 0000000..3acb2ba --- /dev/null +++ b/front/src/routes/parquet/index.svelte @@ -0,0 +1,18 @@ + + +
    + {@html marked(text)} +
    diff --git a/front/src/routes/search/[id]/index.svelte b/front/src/routes/search/[id]/index.svelte new file mode 100644 index 0000000..6ec01a1 --- /dev/null +++ b/front/src/routes/search/[id]/index.svelte @@ -0,0 +1,226 @@ + + +
    + {#if result} +
    + +

    πŸ” Search

    +
    + + +
    + +
    + +
    +
    + +
    + +
    + +
    +
    + + Data wells lookup +
    + {#if result.LeakResult.Error !== ""} + + {:else if result.LeakResult.Duration === 0} + + {:else if result.LeakResult.Rows.length > 0} + + {:else} + + {/if} +
    +
    + {#if result.LeakResult.Error !== ""} + + {:else if result.LeakResult.Duration === 0} +
      + {#each Array(5) as _} +
      +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      + {/each} +
    + {:else} +

    + {result.LeakResult.Rows.length} results in {convertNanoSeconds( + result.LeakResult.Duration, + )} +

    + + {/if} +
    +
    +
    + +
    +
    + + Github Recon +
    + {#if result.GithubResult.Error !== ""} + + {:else if result.GithubResult.Duration === 0} + + {:else if !result.GithubResult.EmailResult?.Commits && !result.GithubResult.EmailResult?.Spoofing && !result.GithubResult.UsernameResult?.User} + + {:else if result.GithubResult.UsernameResult || result.GithubResult.EmailResult} + + {/if} +
    +
    + {#if result.GithubResult.Error !== ""} + + {:else if result.GithubResult.Duration === 0} + + {:else if !result.GithubResult.EmailResult?.Commits && !result.GithubResult.EmailResult?.Spoofing && !result.GithubResult.UsernameResult?.User} + + {:else} +

    + Found a result in {convertNanoSeconds( + result.GithubResult.Duration, + )} +

    + + {/if} +
    +
    +
    + {/if} + +
    +
    diff --git a/front/src/routes/search/index.svelte b/front/src/routes/search/index.svelte new file mode 100644 index 0000000..f14dc05 --- /dev/null +++ b/front/src/routes/search/index.svelte @@ -0,0 +1,94 @@ + + +
    +
    +

    πŸ” Search

    + +
    + +
    + +
    +
    + +
    +
    +

    History

    + +
    +
    +

    Active services

    +
    + {#if !serverInfo} +

    Loading...

    + {:else} + + {/if} +
    +
    +
    +

    Last data wells added

    +
    + +
    +
    +
    +

    How to search

    + +
    +
    + +
    +
    diff --git a/front/src/vite-env.d.ts b/front/src/vite-env.d.ts new file mode 100644 index 0000000..4078e74 --- /dev/null +++ b/front/src/vite-env.d.ts @@ -0,0 +1,2 @@ +/// +/// diff --git a/front/svelte.config.js b/front/svelte.config.js new file mode 100644 index 0000000..e5353cd --- /dev/null +++ b/front/svelte.config.js @@ -0,0 +1,6 @@ +/** @type {import('@sveltejs/vite-plugin-svelte').SvelteConfig} */ +export default { + compilerOptions: { + runes: true, + }, +}; diff --git a/front/tsconfig.json b/front/tsconfig.json new file mode 100644 index 0000000..2dc2374 --- /dev/null +++ b/front/tsconfig.json @@ -0,0 +1,21 @@ +{ + "extends": ["./.router/tsconfig.json"], + "compilerOptions": { + "target": "ES2020", + "module": "preserve", + "moduleResolution": "bundler", + "esModuleInterop": true, + "strict": true, + "noEmit": true, + "verbatimModuleSyntax": true, + "skipLibCheck": true, + "baseUrl": ".", + "paths": { + "$src": ["./src"], + "$src/*": ["./src/*"], + "$lib": ["./src/lib"], + "$lib/*": ["./src/lib/*"], + "sv-router/generated": [".router/router.ts"], + } + } +} diff --git a/front/vite.config.ts b/front/vite.config.ts new file mode 100644 index 0000000..b0a10ee --- /dev/null +++ b/front/vite.config.ts @@ -0,0 +1,15 @@ +import { svelte } from "@sveltejs/vite-plugin-svelte"; +import { router } from "sv-router/vite-plugin"; +import { defineConfig } from "vite"; +import tailwindcss from "@tailwindcss/vite"; +import path from "path"; + +export default defineConfig({ + plugins: [tailwindcss(), svelte({}), router()], + resolve: { + alias: { + $lib: path.resolve("./src/lib"), + $src: path.resolve("./src"), + }, + }, +}); diff --git a/leak-utils/DATALEAKS-NORMALIZATION.md b/leak-utils/DATALEAKS-NORMALIZATION.md new file mode 100644 index 0000000..8fb4d9b --- /dev/null +++ b/leak-utils/DATALEAKS-NORMALIZATION.md @@ -0,0 +1,138 @@ +# Rules for handling Data Leaks + +This normalization framework is designed to standardize data leaks for +[Eleakxir](https://github.com/anotherhadi/eleakxir), the open-source search +engine, using +[leak-utils](https://github.com/anotherhadi/eleakxir-temp/blob/main/leak-utils/README.md), +a dedicated CLI tool that converts and cleans files for efficient indexing and +searching. + +## The Relevance of Parquet for Data Leaks + +Parquet is an efficient, open-source columnar storage file format designed to +handle complex data in bulk. When dealing with data leaks, its choice is highly +relevant for several reasons: + +- **Compression**: Parquet files offer superior compression compared to + row-based formats like CSV. By storing data column by column, it applies more + effective compression algorithms, which significantly reduces disk space. For + data leaks, where file sizes can range from gigabytes to terabytes, this is + crucial for minimizing storage costs. +- **Query Performance**: As a columnar format, Parquet allows you to read only + the specific columns you need for a query. In a data leak, you might only be + interested in emails and passwords, not full addresses or phone numbers. This + selective reading drastically speeds up search operations, as the system + doesn't have to scan through entire rows of irrelevant data. +- **Efficiency**: The format is optimized for analytics. It stores data with + metadata and statistics (min/max values) for each column, allowing for query + **pruning**. This means a query can skip entire blocks of data that don't + match the filtering criteria, boosting performance even further. + +## Disclaimer + +The information in this document is provided **for research and educational +purposes only**. I am **not responsible** for how this data, methods, or +guidelines are used. Any misuse, unlawful activity, or harm resulting from +applying this content is the sole responsibility of the individual or +organization using it. + +## File Naming Convention + +- **Lowercase only**, ASCII (no accents). +- **Separators**: + - `_` inside blocks (`date_2023_10`) + - `-` between blocks (`instagram.com-date_2023_10`) +- **Prefix**: always start with the **source name/url** (e.g., `instagram.com`, + `alien_txt`). +- **Blocks**: each additional part must be prefixed by its block name: + + - `date_YYYY[_MM[_DD]]` β†’ use ISO format (year, or year-month, or full date). + - `source_*` β†’ origin of the leak (e.g., `scrape`, `dump`, `combo`). + - `version_v*` β†’ versioning if regenerated or transformed. + - `notes_*` β†’ optional clarifications. +- **Extension**: always `.parquet`. + +**Recommended pattern:** + +```txt +{source}-date_{YYYY[_MM[_DD]]}-source_{origin}-version_{vN}-notes_{info}.parquet +``` + +**Examples:** + +```txt +instagram.com-date_2023_10.parquet +alien_txt-date_2022-source_dump.parquet +combo_french-notes_crypto.parquet +``` + +## Column Naming Convention + +- **snake\_case only** (lowercase, `_` separator). + +- **No dots (`.`)** in column names (`husband.phone` β†’ `husband_phone`). + +- **Allowed characters**: `[a-z0-9_]+` (no spaces, hyphens, or accents). + +- **Multiple variants of the same field**: + + - Relations β†’ prefix clearly: `husband_phone`, `mother_last_name`. + - Multiples of the same type β†’ numbered prefix: `1_phone`, `2_phone`, + `3_phone`. + - Always end with the column "type" (e.g., `_phone`, `_last_name`). + +- **Rename if mislabeled**: If a `username` column actually contains only emails + rename it to `email`. + +- **Remove irrelevant columns**: Drop meaningless identifiers like `id` or + fields with no analytical value. + +- **Standard columns**: to enable schema alignment across leaks: + + | Column | + | ------------- | + | email | + | username | + | password | + | password_hash | + | phone | + | date | + | birth_date | + | age | + | first_name | + | last_name | + | full_name | + | address | + | city | + | country | + | state | + | postal_code | + | ip | + | url | + | city | + +## Standard Column Formatting + +- **Email**: lowercase, trimmed, keep only `[^a-z0-9._@-]`. + +- **Phone**: keep only `[^0-9]` + +- **Names**: + + - Keep `first_name` / `last_name` if present. + - Generate `full_name = CONCAT(first_name, ' ', last_name)`. + - If only `name` exists, rename it to `full_name`. + +- **Passwords**: + + - Hashes β†’ `password_hash`. + - Plaintext β†’ `password`. + - Never mix hashes and plaintext in the same column. + +- **NULLs**: always use SQL `NULL` (never `""` or `"NULL"`). + +## Deduplication + +Deduplication is often **impractical at scale** (billions of rows). Do **not** +attempt to deduplicate at ingestion time. Instead, handle deduplication **after +running a search** to optimize performance and storage. diff --git a/leak-utils/README.md b/leak-utils/README.md new file mode 100644 index 0000000..b9c4058 --- /dev/null +++ b/leak-utils/README.md @@ -0,0 +1,107 @@ +# πŸ›  leak-utils: The Eleakxir Data Utility Toolkit + +`leak-utils` is a powerful command-line tool built to help you manage, process, +and optimize data leaks for use with the **Eleakxir** search engine. It provides +a suite of utilities for data cleaning, format conversion, and file +manipulation, all designed to ensure your data wells are efficient and +standardized. + +`leak-utils` is written in **Go** and leverages **DuckDB** for its +high-performance in-memory processing, ensuring fast and reliable operations on +large datasets. + +## πŸš€ Features + +- **Parquet File Management**: Clean and inspect existing `.parquet` files. +- **Format Conversion**: Seamlessly convert `.csv`, `.txt`, `.json` files into + the optimized `.parquet` format. +- **Schema Uniformity**: Tools designed to help you standardize and normalize + your data to align with the + [Eleakxir data leak normalization rules](./DATALEAKS-NORMALIZATION.md). This + ensures a consistent schema across all your files, which is crucial for + efficient searching and consistent results. +- **High Performance**: Built with Go and DuckDB for fast and efficient data + processing. + +## βš™οΈ How to Use + +The tool operates via a single executable with different commands, each +corresponding to a specific action. You can find the executable in the +`leak-utils` directory of the Eleakxir project. + +### Install + +#### With go + +```bash +go install "github.com/anotherhadi/eleakxir/leak-utils@latest" +``` + +#### With Nix/NixOS + +
    +Click to expand + +**From anywhere (using the repo URL):** + +```bash +nix run "github:anotherhadi/eleakxir#leak-utils" -- action [--flags value] +``` + +**Permanent Installation:** + +```bash +# add the flake to your flake.nix +{ + inputs = { + eleakxir.url = "github:anotherhadi/eleakxir"; + }; +} + +# then add it to your packages +environment.systemPackages = with pkgs; [ # or home.packages + eleakxir.packages.${pkgs.system}.leak-utils +]; +``` + +
    + +### Available Actions + +#### `cleanParquet` + +Optimizes and cleans an existing Parquet file. This can be used to change +columns, clean rows, ... + +See: + +```bash +leak-utils cleanParquet --help +``` + +#### `infoParquet` + +Displays metadata and schema information for a given Parquet file. Useful for +inspecting file structure and column types. + +#### `csvToParquet` + +Converts a `.csv` file into a highly compressed and efficient `.parquet` file. +This is the recommended way to prepare your data for Eleakxir. + +#### `mergeFiles` + +Merges multiple files (of the same type) into a single, larger file. This is +useful for combining smaller data leaks. + +#### `removeUrlSchemeFromUlp` + +This utility prevents the colon (`:`) in URL schemes like `https://` from being +mistakenly parsed as a column separator when processing ULP data in flat files +like CSV or TXT. + +## 🀝 Contributing + +[Contributions](../CONTRIBUTING.md) to `leak-utils` are welcome! Feel free to +open issues or submit pull requests for new features, bug fixes, or performance +improvements. diff --git a/leak-utils/go.mod b/leak-utils/go.mod new file mode 100644 index 0000000..4e7da71 --- /dev/null +++ b/leak-utils/go.mod @@ -0,0 +1,42 @@ +module github.com/anotherhadi/eleakxir/leak-utils + +go 1.25.0 + +require ( + github.com/charmbracelet/lipgloss/v2 v2.0.0-beta1 + github.com/charmbracelet/log v0.4.2 + github.com/marcboeker/go-duckdb v1.8.5 + github.com/spf13/pflag v1.0.10 +) + +require ( + github.com/apache/arrow-go/v18 v18.1.0 // indirect + github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect + github.com/charmbracelet/colorprofile v0.3.0 // indirect + github.com/charmbracelet/lipgloss v1.1.0 // indirect + github.com/charmbracelet/x/ansi v0.8.0 // indirect + github.com/charmbracelet/x/cellbuf v0.0.13 // indirect + github.com/charmbracelet/x/term v0.2.1 // indirect + github.com/go-logfmt/logfmt v0.6.0 // indirect + github.com/go-viper/mapstructure/v2 v2.2.1 // indirect + github.com/goccy/go-json v0.10.5 // indirect + github.com/google/flatbuffers v25.1.24+incompatible // indirect + github.com/google/uuid v1.6.0 // indirect + github.com/klauspost/compress v1.17.11 // indirect + github.com/klauspost/cpuid/v2 v2.2.9 // indirect + github.com/lucasb-eyer/go-colorful v1.2.0 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect + github.com/mattn/go-runewidth v0.0.16 // indirect + github.com/muesli/cancelreader v0.2.2 // indirect + github.com/muesli/termenv v0.16.0 // indirect + github.com/pierrec/lz4/v4 v4.1.22 // indirect + github.com/rivo/uniseg v0.4.7 // indirect + github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect + github.com/zeebo/xxh3 v1.0.2 // indirect + golang.org/x/exp v0.0.0-20250128182459-e0ece0dbea4c // indirect + golang.org/x/mod v0.22.0 // indirect + golang.org/x/sync v0.10.0 // indirect + golang.org/x/sys v0.31.0 // indirect + golang.org/x/tools v0.29.0 // indirect + golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect +) diff --git a/leak-utils/go.sum b/leak-utils/go.sum new file mode 100644 index 0000000..2c61a9f --- /dev/null +++ b/leak-utils/go.sum @@ -0,0 +1,94 @@ +github.com/andybalholm/brotli v1.1.1 h1:PR2pgnyFznKEugtsUo0xLdDop5SKXd5Qf5ysW+7XdTA= +github.com/andybalholm/brotli v1.1.1/go.mod h1:05ib4cKhjx3OQYUY22hTVd34Bc8upXjOLL2rKwwZBoA= +github.com/apache/arrow-go/v18 v18.1.0 h1:agLwJUiVuwXZdwPYVrlITfx7bndULJ/dggbnLFgDp/Y= +github.com/apache/arrow-go/v18 v18.1.0/go.mod h1:tigU/sIgKNXaesf5d7Y95jBBKS5KsxTqYBKXFsvKzo0= +github.com/apache/thrift v0.21.0 h1:tdPmh/ptjE1IJnhbhrcl2++TauVjy242rkV/UzJChnE= +github.com/apache/thrift v0.21.0/go.mod h1:W1H8aR/QRtYNvrPeFXBtobyRkd0/YVhTc6i07XIAgDw= +github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= +github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= +github.com/charmbracelet/colorprofile v0.3.0 h1:KtLh9uuu1RCt+Hml4s6Hz+kB1PfV3wi++1h5ia65yKQ= +github.com/charmbracelet/colorprofile v0.3.0/go.mod h1:oHJ340RS2nmG1zRGPmhJKJ/jf4FPNNk0P39/wBPA1G0= +github.com/charmbracelet/lipgloss v1.1.0 h1:vYXsiLHVkK7fp74RkV7b2kq9+zDLoEU4MZoFqR/noCY= +github.com/charmbracelet/lipgloss v1.1.0/go.mod h1:/6Q8FR2o+kj8rz4Dq0zQc3vYf7X+B0binUUBwA0aL30= +github.com/charmbracelet/lipgloss/v2 v2.0.0-beta1 h1:SOylT6+BQzPHEjn15TIzawBPVD0QmhKXbcb3jY0ZIKU= +github.com/charmbracelet/lipgloss/v2 v2.0.0-beta1/go.mod h1:tRlx/Hu0lo/j9viunCN2H+Ze6JrmdjQlXUQvvArgaOc= +github.com/charmbracelet/log v0.4.2 h1:hYt8Qj6a8yLnvR+h7MwsJv/XvmBJXiueUcI3cIxsyig= +github.com/charmbracelet/log v0.4.2/go.mod h1:qifHGX/tc7eluv2R6pWIpyHDDrrb/AG71Pf2ysQu5nw= +github.com/charmbracelet/x/ansi v0.8.0 h1:9GTq3xq9caJW8ZrBTe0LIe2fvfLR/bYXKTx2llXn7xE= +github.com/charmbracelet/x/ansi v0.8.0/go.mod h1:wdYl/ONOLHLIVmQaxbIYEC/cRKOQyjTkowiI4blgS9Q= +github.com/charmbracelet/x/cellbuf v0.0.13 h1:/KBBKHuVRbq1lYx5BzEHBAFBP8VcQzJejZ/IA3iR28k= +github.com/charmbracelet/x/cellbuf v0.0.13/go.mod h1:xe0nKWGd3eJgtqZRaN9RjMtK7xUYchjzPr7q6kcvCCs= +github.com/charmbracelet/x/term v0.2.1 h1:AQeHeLZ1OqSXhrAWpYUtZyX1T3zVxfpZuEQMIQaGIAQ= +github.com/charmbracelet/x/term v0.2.1/go.mod h1:oQ4enTYFV7QN4m0i9mzHrViD7TQKvNEEkHUMCmsxdUg= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/go-logfmt/logfmt v0.6.0 h1:wGYYu3uicYdqXVgoYbvnkrPVXkuLM1p1ifugDMEdRi4= +github.com/go-logfmt/logfmt v0.6.0/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= +github.com/go-viper/mapstructure/v2 v2.2.1 h1:ZAaOCxANMuZx5RCeg0mBdEZk7DZasvvZIxtHqx8aGss= +github.com/go-viper/mapstructure/v2 v2.2.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM= +github.com/goccy/go-json v0.10.5 h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4= +github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= +github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= +github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/google/flatbuffers v25.1.24+incompatible h1:4wPqL3K7GzBd1CwyhSd3usxLKOaJN/AC6puCca6Jm7o= +github.com/google/flatbuffers v25.1.24+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/klauspost/asmfmt v1.3.2 h1:4Ri7ox3EwapiOjCki+hw14RyKk201CN4rzyCJRFLpK4= +github.com/klauspost/asmfmt v1.3.2/go.mod h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE= +github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc= +github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= +github.com/klauspost/cpuid/v2 v2.2.9 h1:66ze0taIn2H33fBvCkXuv9BmCwDfafmiIVpKV9kKGuY= +github.com/klauspost/cpuid/v2 v2.2.9/go.mod h1:rqkxqrZ1EhYM9G+hXH7YdowN5R5RGN6NK4QwQ3WMXF8= +github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= +github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= +github.com/marcboeker/go-duckdb v1.8.5 h1:tkYp+TANippy0DaIOP5OEfBEwbUINqiFqgwMQ44jME0= +github.com/marcboeker/go-duckdb v1.8.5/go.mod h1:6mK7+WQE4P4u5AFLvVBmhFxY5fvhymFptghgJX6B+/8= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= +github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8 h1:AMFGa4R4MiIpspGNG7Z948v4n35fFGB3RR3G/ry4FWs= +github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod h1:mC1jAcsrzbxHt8iiaC+zU4b1ylILSosueou12R++wfY= +github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3 h1:+n/aFZefKZp7spd8DFdX7uMikMLXX4oubIzJF4kv/wI= +github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE= +github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= +github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= +github.com/muesli/termenv v0.16.0 h1:S5AlUN9dENB57rsbnkPyfdGuWIlkmzJjbFf0Tf5FWUc= +github.com/muesli/termenv v0.16.0/go.mod h1:ZRfOIKPFDYQoDFF4Olj7/QJbW60Ol/kL1pU3VfY/Cnk= +github.com/pierrec/lz4/v4 v4.1.22 h1:cKFw6uJDK+/gfw5BcDL0JL5aBsAFdsIT18eRtLj7VIU= +github.com/pierrec/lz4/v4 v4.1.22/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= +github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= +github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk= +github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no= +github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM= +github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ= +github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0= +github.com/zeebo/xxh3 v1.0.2 h1:xZmwmqxHZA8AI603jOQ0tMqmBr9lPeFwGg6d+xy9DC0= +github.com/zeebo/xxh3 v1.0.2/go.mod h1:5NWz9Sef7zIDm2JHfFlcQvNekmcEl9ekUZQQKCYaDcA= +golang.org/x/exp v0.0.0-20250128182459-e0ece0dbea4c h1:KL/ZBHXgKGVmuZBZ01Lt57yE5ws8ZPSkkihmEyq7FXc= +golang.org/x/exp v0.0.0-20250128182459-e0ece0dbea4c/go.mod h1:tujkw807nyEEAamNbDrEGzRav+ilXA7PCRAd6xsmwiU= +golang.org/x/mod v0.22.0 h1:D4nJWe9zXqHOmWqj4VMOJhvzj7bEZg4wEYa759z1pH4= +golang.org/x/mod v0.22.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= +golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ= +golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik= +golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/tools v0.29.0 h1:Xx0h3TtM9rzQpQuR4dKLrdglAmCEN5Oi+P74JdhdzXE= +golang.org/x/tools v0.29.0/go.mod h1:KMQVMRsVxU6nHCFXrBPhDB8XncLNLM0lIy/F14RP588= +golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da h1:noIWHXmPHxILtqtCOPIhSt0ABwskkZKjD3bXGnZGpNY= +golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= +gonum.org/v1/gonum v0.15.1 h1:FNy7N6OUZVUaWG9pTiD+jlhdQ3lMP+/LcTpJ6+a8sQ0= +gonum.org/v1/gonum v0.15.1/go.mod h1:eZTZuRFrzu5pcyjN5wJhcIhnUdNijYxX1T2IcrOGY0o= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/leak-utils/leak-utils/main.go b/leak-utils/leak-utils/main.go new file mode 100644 index 0000000..8461207 --- /dev/null +++ b/leak-utils/leak-utils/main.go @@ -0,0 +1,145 @@ +package main + +import ( + "database/sql" + "fmt" + "os" + "slices" + "strings" + + "github.com/anotherhadi/eleakxir/leak-utils/misc" + "github.com/anotherhadi/eleakxir/leak-utils/parquet" + "github.com/anotherhadi/eleakxir/leak-utils/settings" + "github.com/charmbracelet/log" + _ "github.com/marcboeker/go-duckdb" + flag "github.com/spf13/pflag" +) + +func main() { + db, err := sql.Open("duckdb", "") + if err != nil { + log.Fatal("Failed to open DuckDB", "error", err) + } + defer db.Close() + lu := settings.LeakUtils{ + Db: db, + } + actions := []string{ + "cleanParquet", + "infoParquet", + // Csv + "csvToParquet", + // Misc + "mergeFiles", + "removeUrlSchemeFromUlp", + } + + if len(os.Args) < 2 { + fmt.Println(settings.Muted.Render("Usage: "), settings.Accent.Render(os.Args[0], "")) + fmt.Println(settings.Muted.Render("Actions: "), settings.Base.Render(strings.Join(actions, ", "))) + return + } + action := os.Args[1] + if !slices.Contains(actions, action) { + log.Fatal("Unknown action", "action", action) + } + + switch action { + case "cleanParquet": + var inputFile *string = flag.StringP("input", "i", "", "Input Parquet file") + var outputFile *string = flag.StringP("output", "o", "", "Output Parquet file") + var compression *string = flag.StringP("compression", "c", "ZSTD", "Compression codec (UNCOMPRESSED, SNAPPY, GZIP, BROTLI, LZ4, ZSTD)") + var skipLineFormating *bool = flag.BoolP("skip-line-formating", "s", false, "Skip line formating") + var deleteFirstRow *bool = flag.Bool("delete-first-row", false, "Delete first row") + var debug *bool = flag.Bool("debug", false, "Debug mode") + var noColors *bool = flag.Bool("no-colors", false, "Remove all colors") + var printQuery *bool = flag.BoolP("print-query", "p", false, "Print the query instead of executing it") + flag.Parse() + if *inputFile == "" || *outputFile == "" { + log.Fatal("Input and output files are required") + } + if *noColors { + settings.DisableColors() + } + lu.Compression = *compression + lu.Debug = *debug + err := parquet.CleanParquet(lu, *inputFile, *outputFile, *skipLineFormating, *deleteFirstRow, *printQuery) + if err != nil { + log.Fatal("Failed to clean Parquet file", "error", err) + } + return + case "infoParquet": + var inputFile *string = flag.StringP("input", "i", "", "Input Parquet file") + var debug *bool = flag.Bool("debug", false, "Debug mode") + var noColors *bool = flag.Bool("no-colors", false, "Remove all colors") + flag.Parse() + if *inputFile == "" { + log.Fatal("Input files are required") + } + if *noColors { + settings.DisableColors() + } + lu.Debug = *debug + err := parquet.InfoParquet(lu, *inputFile) + if err != nil { + log.Fatal("Failed to read Parquet file", "error", err) + } + return + case "csvToParquet": + var inputFile *string = flag.StringP("input", "i", "", "Input Parquet file") + var outputFile *string = flag.StringP("output", "o", "", "Output Parquet file") + var strict *bool = flag.Bool("strict", true, "Strict mode for Duckdb") + var compression *string = flag.StringP("compression", "c", "ZSTD", "Compression codec (UNCOMPRESSED, SNAPPY, GZIP, BROTLI, LZ4, ZSTD)") + var noColors *bool = flag.Bool("no-colors", false, "Remove all colors") + var debug *bool = flag.Bool("debug", false, "Debug mode") + flag.Parse() + if *inputFile == "" || *outputFile == "" { + log.Fatal("Input and output files are required") + } + if *noColors { + settings.DisableColors() + } + lu.Compression = *compression + lu.Debug = *debug + err := misc.CsvToParquet(lu, *inputFile, *outputFile, *strict) + if err != nil { + log.Fatal("Failed to transform Csv file", "error", err) + } + return + case "mergeFiles": + var inputFiles *[]string = flag.StringArrayP("inputs", "i", []string{}, "Input Parquet files") + var outputFile *string = flag.StringP("output", "o", "", "Output Parquet file") + var noColors *bool = flag.Bool("no-colors", false, "Remove all colors") + var debug *bool = flag.Bool("debug", false, "Debug mode") + flag.Parse() + if len(*inputFiles) == 0 || *outputFile == "" { + log.Fatal("Inputs and output files are required") + } + if *noColors { + settings.DisableColors() + } + lu.Debug = *debug + err := misc.MergeFiles(lu, *outputFile, *inputFiles...) + if err != nil { + log.Fatal("Failed to merge files", "error", err) + } + return + case "removeUrlSchemeFromUlp": + var inputFile *string = flag.StringP("input", "i", "", "Input Parquet file") + var noColors *bool = flag.Bool("no-colors", false, "Remove all colors") + var debug *bool = flag.Bool("debug", false, "Debug mode") + flag.Parse() + if *inputFile == "" { + log.Fatal("Input files are required") + } + if *noColors { + settings.DisableColors() + } + lu.Debug = *debug + err := misc.RemoveUrlSchemeFromUlp(lu, *inputFile) + if err != nil { + log.Fatal("Failed to remove ULP Url schemes", "error", err) + } + return + } +} diff --git a/leak-utils/misc/csv.go b/leak-utils/misc/csv.go new file mode 100644 index 0000000..f5750ad --- /dev/null +++ b/leak-utils/misc/csv.go @@ -0,0 +1,173 @@ +package misc + +import ( + "bufio" + "encoding/csv" + "fmt" + "io" + "os" + "slices" + "strings" + + "github.com/anotherhadi/eleakxir/leak-utils/settings" + "github.com/charmbracelet/log" +) + +func CsvToParquet(lu settings.LeakUtils, inputFile string, outputFile string, strict bool) error { + hasHeader, err := csvHasHeader(inputFile) + if err != nil { + return err + } + header := "true" + if !hasHeader { + header = "false" + } + strictMode := "true" + if !strict { + strictMode = "false" + } + + delimiter := getDelimiter(inputFile) + + query := fmt.Sprintf(`CREATE TABLE my_table AS FROM read_csv_auto('%s', HEADER=%s, delim='%s', ignore_errors=true, all_varchar=true, null_padding=true, strict_mode=%s); + COPY my_table TO '%s' (FORMAT 'parquet', COMPRESSION '%s', ROW_GROUP_SIZE 200_000);`, + inputFile, header, delimiter, strictMode, outputFile, lu.Compression) + + if lu.Debug { + log.Info("Detected delimiter", "delimiter", delimiter) + log.Info("CSV header detection", "hasHeader", hasHeader) + log.Info("Executing query", "query", query) + } + + _, err = lu.Db.Exec(query) + + if lu.Debug { + log.Info("Finished executing query") + } + + return err +} + +func getDelimiter(inputFile string) string { + lines, err := getNLine(inputFile, 10, 0) + if err != nil { + log.Warn("Failed to read CSV file to determine delimiter, defaulting to comma", "error", err) + return "," + } + + delimiterCounts := map[string]int{ + ",": 0, + ";": 0, + "\t": 0, + "|": 0, + ":": 0, + } + + for _, line := range lines { + for d := range delimiterCounts { + delimiterCounts[d] += strings.Count(line, d) + } + } + + maxCount := 0 + delimiter := "," + + for d, count := range delimiterCounts { + if count > maxCount { + maxCount = count + delimiter = d + } + } + + return delimiter +} + +func csvHasHeader(inputFile string) (hasHeader bool, err error) { + firstRow, err := getFirstRowCsv(inputFile) + if err != nil { + return false, err + } + for i, col := range firstRow { + col = strings.ReplaceAll(col, "\"", "") + col = strings.ReplaceAll(col, " ", "") + col = strings.ReplaceAll(col, "-", "") + col = strings.ReplaceAll(col, "_", "") + col = strings.ReplaceAll(col, ".", "") + firstRow[i] = strings.ToLower(strings.TrimSpace(col)) + } + knownHeaders := []string{"email", "password", "username", "phone", "lastname", "firstname"} + for _, knownHeader := range knownHeaders { + if slices.Contains(firstRow, knownHeader) { + return true, nil + } + } + return false, nil +} + +func getNLine(inputFile string, n, offset int) (lines []string, err error) { + if n <= 0 { + return nil, nil + } + + if offset < 0 { + offset = 0 + } + + file, err := os.Open(inputFile) + if err != nil { + return nil, err + } + defer file.Close() + + scanner := bufio.NewScanner(file) + currentLine := 0 + + for scanner.Scan() { + currentLine++ + if currentLine <= offset { + continue + } + + lines = append(lines, scanner.Text()) + if len(lines) >= n { + break + } + } + + if err := scanner.Err(); err != nil && err != io.EOF { + return nil, err + } + + return lines, nil +} + +func getFirstRowCsv(inputFile string) (row []string, err error) { + rows, err := getFirstNRowsCsv(inputFile, 1) + if len(rows) == 0 { + return nil, fmt.Errorf("no rows found in CSV") + } + return rows[0], err +} + +func getFirstNRowsCsv(inputFile string, n int) (rows [][]string, err error) { + f, err := os.Open(inputFile) + if err != nil { + return nil, fmt.Errorf("failed to open file: %w", err) + } + defer f.Close() + + reader := csv.NewReader(f) + + for i := 0; i < n; i++ { + row, err := reader.Read() + if err != nil { + if err.Error() == "EOF" { + break + } + return nil, fmt.Errorf("failed to read CSV: %w", err) + } + rows = append(rows, row) + } + + return rows, nil +} diff --git a/leak-utils/misc/misc.go b/leak-utils/misc/misc.go new file mode 100644 index 0000000..983690f --- /dev/null +++ b/leak-utils/misc/misc.go @@ -0,0 +1,31 @@ +package misc + +import ( + "io" + "os" + + "github.com/anotherhadi/eleakxir/leak-utils/settings" +) + +func MergeFiles(lu settings.LeakUtils, outputFile string, inputFiles ...string) error { + out, err := os.Create(outputFile) + if err != nil { + return err + } + defer out.Close() + + for _, inputFile := range inputFiles { + file, err := os.Open(inputFile) + if err != nil { + return err + } + defer file.Close() + + _, err = io.Copy(out, file) + if err != nil { + return err + } + } + + return nil +} diff --git a/leak-utils/misc/ulp.go b/leak-utils/misc/ulp.go new file mode 100644 index 0000000..40d7b04 --- /dev/null +++ b/leak-utils/misc/ulp.go @@ -0,0 +1,67 @@ +package misc + +import ( + "bufio" + "io" + "os" + "strings" + + "github.com/anotherhadi/eleakxir/leak-utils/settings" +) + +func RemoveUrlSchemeFromUlp(lu settings.LeakUtils, inputFile string) error { + file, err := os.Open(inputFile) + if err != nil { + return err + } + defer file.Close() + + outputFile := inputFile + ".clean" + out, err := os.Create(outputFile) + if err != nil { + return err + } + defer out.Close() + + reader := bufio.NewReader(file) + writer := bufio.NewWriter(out) + + for { + line, err := reader.ReadString('\n') + if err != nil && err != io.EOF { + return err + } + + firstColumn := strings.Index(line, ":") + firstScheme := strings.Index(line, "://") + if firstScheme != -1 && firstColumn == firstScheme { + line = line[firstScheme+3:] + } + + _, werr := writer.WriteString(line) + if werr != nil { + return err + } + + if err == io.EOF { + break + } + } + + err = writer.Flush() + if err != nil { + return err + } + + err = os.Remove(inputFile) + if err != nil { + return err + } + + err = os.Rename(outputFile, inputFile) + if err != nil { + return err + } + + return nil +} diff --git a/leak-utils/parquet/format.go b/leak-utils/parquet/format.go new file mode 100644 index 0000000..1579a03 --- /dev/null +++ b/leak-utils/parquet/format.go @@ -0,0 +1,107 @@ +package parquet + +import ( + "fmt" + "strings" + + "github.com/anotherhadi/eleakxir/leak-utils/settings" +) + +// If there is no full_name but there is last_name and first_name, create full_name +// If there is no full_name, no last_name or no first_name, but there is name, rename name to full_name +func addFullname(operations []ColumnOperation) []ColumnOperation { + hasFullName := false + hasFirstName := false + hasLastName := false + hasName := false + for _, op := range operations { + if op.Action != "drop" { + if op.NewName == "full_name" { + hasFullName = true + } else if op.NewName == "first_name" { + hasFirstName = true + } else if op.NewName == "last_name" { + hasLastName = true + } else if op.NewName == "name" { + hasName = true + } + } + } + if hasFullName { + return operations + } + if hasFirstName && hasLastName { + operations = append(operations, ColumnOperation{ + OriginalName: "first_name || ' ' || last_name", + NewName: "full_name", + Action: "rename", + }) + fmt.Println(settings.Muted.Render("\nAdding new column 'full_name' as concatenation of 'first_name' and 'last_name'.")) + return operations + } + if hasName { + for i, op := range operations { + if op.NewName == "name" && op.Action != "drop" { + operations[i].NewName = "full_name" + fmt.Println(settings.Muted.Render("\nRenaming column 'name' to 'full_name'.")) + return operations + } + } + } + if hasFirstName { + operations = append(operations, ColumnOperation{ + OriginalName: "first_name", + NewName: "full_name", + Action: "rename", + }) + fmt.Println(settings.Muted.Render("\nAdding new column 'full_name' from 'first_name'.")) + return operations + } + if hasLastName { + operations = append(operations, ColumnOperation{ + OriginalName: "last_name", + NewName: "full_name", + Action: "rename", + }) + fmt.Println(settings.Muted.Render("\nAdding new column 'full_name' from 'last_name'.")) + return operations + } + + return operations +} + +// formatColumnName formats a column name to be SQL-compliant. +func formatColumnName(columnName string) string { + columnName = strings.TrimSpace(columnName) + columnName = strings.ToLower(columnName) + columnName = strings.Join(strings.Fields(columnName), "_") + columnName = strings.ReplaceAll(columnName, "\"", "") + columnName = strings.ReplaceAll(columnName, "'", "") + columnName = strings.ReplaceAll(columnName, " ", "_") + columnName = strings.ReplaceAll(columnName, "-", "_") + // Only keep a-z, 0-9 and _ + var formatted strings.Builder + for _, r := range columnName { + if (r >= 'a' && r <= 'z') || (r >= '0' && r <= '9') || r == '_' { + formatted.WriteRune(r) + } + } + columnName = formatted.String() + columnName = strings.TrimPrefix(columnName, "_") + columnName = strings.TrimSuffix(columnName, "_") + return columnName +} + +// formatColumns applies specific formatting rules to column operations. +func formatColumns(operations []ColumnOperation) []ColumnOperation { + formatedOperations := []ColumnOperation{} + for _, op := range operations { + if op.NewName == "phone" || strings.HasSuffix(op.NewName, "_phone") { + op.OriginalName = "REGEXP_REPLACE(" + op.OriginalName + ", '[^0-9]', '')" + } else if op.NewName == "email" || strings.HasSuffix(op.NewName, "_email") { + op.OriginalName = "REGEXP_REPLACE(LOWER(TRIM(" + op.OriginalName + ")), '[^a-z0-9._@-]', '')" + } + formatedOperations = append(formatedOperations, op) + } + return formatedOperations +} diff --git a/leak-utils/parquet/parquet.go b/leak-utils/parquet/parquet.go new file mode 100644 index 0000000..538a982 --- /dev/null +++ b/leak-utils/parquet/parquet.go @@ -0,0 +1,276 @@ +package parquet + +import ( + "bufio" + "database/sql" + "fmt" + "os" + "strings" + + "github.com/anotherhadi/eleakxir/leak-utils/settings" + "github.com/charmbracelet/log" +) + +type Parquet struct { + Filepath string + Filename string + Columns []string + Sample [][]string + NRows int64 + Compression string // Compression of the output file (e.g., "SNAPPY", "ZSTD", "NONE" or "") +} + +type ColumnOperation struct { + OriginalName string + NewName string + Action string // "keep", "rename", "drop" +} + +func (parquet Parquet) PrintParquet() { + fmt.Println(settings.Header.Render(parquet.Filename) + "\n") + fmt.Println(settings.Accent.Render("File path:"), settings.Base.Render(parquet.Filepath)) + fmt.Println(settings.Accent.Render("Number of columns:"), settings.Base.Render(fmt.Sprintf("%d", len(parquet.Columns)))) + fmt.Println(settings.Accent.Render("Number of rows:"), settings.Base.Render(formatWithSpaces(parquet.NRows))) + fmt.Println() + fmt.Println(settings.Accent.Render(strings.Join(parquet.Columns, " | "))) + for _, row := range parquet.Sample { + fmt.Println(settings.Base.Render(strings.Join(row, " | "))) + } +} + +func InfoParquet(lu settings.LeakUtils, inputFile string) error { + parquet, err := GetParquet(lu.Db, inputFile) + if err != nil { + return err + } + + parquet.PrintParquet() + return nil +} + +func CleanParquet(lu settings.LeakUtils, inputFile, outputFile string, skipLineFormating, deleteFirstRow, printQuery bool) error { + input, err := GetParquet(lu.Db, inputFile) + if err != nil { + return err + } + input.PrintParquet() + columnOps := configureColumns(*input, skipLineFormating) + output := Parquet{ + Filepath: outputFile, + Compression: lu.Compression, + } + err = transformParquet(lu, *input, output, columnOps, deleteFirstRow, printQuery) + return err +} + +func configureColumns(input Parquet, skipLineFormating bool) []ColumnOperation { + reader := bufio.NewReader(os.Stdin) + var operations []ColumnOperation + + fmt.Println() + fmt.Println(settings.Base.Render("For each column, choose an action:")) + fmt.Println(settings.Base.Render(" [k] Keep")) + fmt.Println(settings.Base.Render(" [r] Rename")) + fmt.Println(settings.Base.Render(" [d] Drop/Delete")) + fmt.Println(settings.Base.Render(" [s] Suggested")) + fmt.Println(settings.Base.Render(" [b] Go back")) + fmt.Println() + + for i := 0; i < len(input.Columns); i++ { + col := input.Columns[i] + suggestion := getSuggestion(col) + + for { + fmt.Println(settings.Muted.Render("\nColumn:"), settings.Accent.Render(col)) + if suggestion != "" { + fmt.Println(settings.Alert.Render("Suggested action: Rename to '" + suggestion + "'")) + } + fmt.Print(settings.Base.Render("[k/r/d/s/b]: ")) + + input, err := reader.ReadString('\n') + if err != nil { + log.Printf("Error reading input: %v", err) + continue + } + input = strings.TrimSpace(strings.ToLower(input)) + + op := ColumnOperation{ + OriginalName: col, + NewName: col, + Action: "keep", + } + + switch input { + case "b", "back": + if i > 0 { + i -= 2 + if len(operations) > 0 { + operations = operations[:len(operations)-1] + } + fmt.Println(settings.Muted.Render("Going back to the previous column...")) + } else { + fmt.Println(settings.Muted.Render("Already at the first column, cannot go back further.")) + continue + } + goto nextColumn + + case "r", "rename": + fmt.Print(settings.Base.Render("Enter new name: ")) + newName, err := reader.ReadString('\n') + if err != nil { + log.Printf("Error reading new name: %v", err) + continue + } + newName = strings.TrimSpace(newName) + if newName != "" { + op.OriginalName = "\"" + op.OriginalName + "\"" + op.NewName = formatColumnName(newName) + op.Action = "rename" + operations = append(operations, op) + goto nextColumn + } else { + fmt.Println(settings.Muted.Render("Invalid name, please try again.")) + continue + } + + case "s", "suggested": + if suggestion != "" { + op.OriginalName = "\"" + op.OriginalName + "\"" + op.NewName = formatColumnName(suggestion) + op.Action = "rename" + } else { + fmt.Println(settings.Muted.Render("No valid suggestion available")) + continue + } + operations = append(operations, op) + goto nextColumn + + case "d", "drop", "delete": + op.Action = "drop" + operations = append(operations, op) + goto nextColumn + + case "k", "keep", "": + op.OriginalName = "\"" + op.OriginalName + "\"" + op.NewName = formatColumnName(op.NewName) + op.Action = "rename" + operations = append(operations, op) + goto nextColumn + + default: + fmt.Println(settings.Muted.Render("Invalid choice, please enter [k/r/d/s/b].")) + continue + } + } + nextColumn: + lastOp := operations[len(operations)-1] + switch lastOp.Action { + case "rename": + if formatColumnName(lastOp.OriginalName) == lastOp.NewName { + fmt.Printf(settings.Muted.Render("Keeping column '%s' as is.\n"), lastOp.OriginalName) + } else { + fmt.Printf(settings.Muted.Render("Renaming column '%s' to '%s'.\n"), lastOp.OriginalName, lastOp.NewName) + } + case "drop": + fmt.Printf(settings.Muted.Render("Dropping column '%s'.\n"), lastOp.OriginalName) + } + } + if !skipLineFormating { + operations = formatColumns(operations) + } + operations = addFullname(operations) + + return operations +} + +func transformParquet(lu settings.LeakUtils, input, output Parquet, operations []ColumnOperation, deleteFirstRow, printQuery bool) error { + var selectClauses []string + hasColumns := false + + for _, op := range operations { + if op.Action != "drop" { + hasColumns = true + if op.Action == "rename" { + selectClauses = append(selectClauses, fmt.Sprintf("%s AS \"%s\"", op.OriginalName, op.NewName)) + } else { + selectClauses = append(selectClauses, op.OriginalName) + } + } + } + + if !hasColumns { + return fmt.Errorf("no columns selected for output") + } + + selectClause := strings.Join(selectClauses, ", ") + compression := "" + if output.Compression != "" { + compression = ", COMPRESSION '" + output.Compression + "'" + } + + columnsLength := []string{} + for _, col := range input.Columns { + columnsLength = append(columnsLength, "COALESCE(LENGTH(\""+col+"\"),0)") + } + allowedRowSize := 30 * len(input.Columns) + offset := "" + if deleteFirstRow { + offset = "OFFSET 1" + } + + query := fmt.Sprintf(` + COPY ( + SELECT %s + FROM read_parquet('%s') + WHERE (%s) < %d + %s + ) TO '%s' (FORMAT PARQUET, ROW_GROUP_SIZE 200_000 %s) + `, selectClause, input.Filepath, strings.Join(columnsLength, "+"), allowedRowSize, offset, output.Filepath, compression) + + if printQuery { + fmt.Println("Query:", query) // TODO: Remove tabs + return nil + } + + fmt.Println(settings.Base.Render("\nTransforming and writing to output parquet...")) + _, err := lu.Db.Exec(query) + if err != nil { + return fmt.Errorf("failed to execute transformation: %w", err) + } + fmt.Println(settings.Base.Render("Transformation complete!\n")) + + newParquet, err := GetParquet(lu.Db, output.Filepath) + if err != nil { + return err + } + newParquet.PrintParquet() + + return nil +} + +func GetParquet(db *sql.DB, inputFile string) (parquet *Parquet, err error) { + parquet = &Parquet{} + parquet.Filepath = inputFile + + parquet.Columns, err = getColumns(db, inputFile) + if err != nil { + return + } + parquet.NRows, err = countRows(db, inputFile) + if err != nil { + return + } + parquet.Sample, err = getFirstNRows(db, inputFile, 6) + if err != nil { + return + } + + n := strings.LastIndex(inputFile, "/") + if n == -1 { + parquet.Filename = inputFile + } else { + parquet.Filename = inputFile[n+1:] + } + + return +} diff --git a/leak-utils/parquet/suggestions.go b/leak-utils/parquet/suggestions.go new file mode 100644 index 0000000..2038c67 --- /dev/null +++ b/leak-utils/parquet/suggestions.go @@ -0,0 +1,81 @@ +package parquet + +import ( + "slices" +) + +func getSuggestion(col string) string { + col = formatColumnName(col) + knownNames := []string{ + "date", + "phone", + "username", + "address", + "email", + "postal_code", + "city", + "country", + "state", + "age", + "gender", + "password", + "password_hash", + "full_name", + "last_name", + "name", // Will be renamed to full_name later + "first_name", + "birth_date", + "url", + "ip", + } + if slices.Contains(knownNames, col) { + return col + } + if col == "user" { + return "username" + } + if col == "login" { + return "username" + } + if col == "sex" { + return "gender" + } + if col == "ip_address" { + return "ip" + } + if col == "password_hashed" { + return "password_hash" + } + if col == "firstname" { + return "first_name" + } + if col == "lastname" { + return "last_name" + } + if col == "fullname" { + return "full_name" + } + if col == "mail" { + return "email" + } + if col == "zip" || col == "postalcode" || col == "zipcode" || col == "postal" || col == "zip_code" { + return "postal_code" + } + if col == "street_address" { + return "address" + } + if col == "hash" || col == "hashed_password" || col == "hash_password" { + return "password_hash" + } + if col == "birthdate" || col == "dob" || col == "date_of_birth" { + return "birth_date" + } + + return "" +} + +// HINTS: +// date: _date +// url: _url, link +// address: _address +// diff --git a/leak-utils/parquet/utils.go b/leak-utils/parquet/utils.go new file mode 100644 index 0000000..e227865 --- /dev/null +++ b/leak-utils/parquet/utils.go @@ -0,0 +1,105 @@ +package parquet + +import ( + "database/sql" + "fmt" + "strconv" + "strings" +) + +// getColumns retrieves the column names from the Parquet file. +func getColumns(db *sql.DB, filepath string) ([]string, error) { + // Create a view from the parquet file + query := fmt.Sprintf("CREATE OR REPLACE VIEW parquet_view AS SELECT * FROM read_parquet('%s')", filepath) + _, err := db.Exec(query) + if err != nil { + return nil, fmt.Errorf("failed to create view: %w", err) + } + + // Get column information + rows, err := db.Query("DESCRIBE parquet_view") + if err != nil { + return nil, fmt.Errorf("failed to describe view: %w", err) + } + defer rows.Close() + + var columns []string + for rows.Next() { + var colName, colType, nullable, key, defaultVal, extra sql.NullString + err := rows.Scan(&colName, &colType, &nullable, &key, &defaultVal, &extra) + if err != nil { + return nil, fmt.Errorf("failed to scan row: %w", err) + } + if colName.Valid { + columns = append(columns, colName.String) + } + } + + return columns, nil +} + +// getFirstNRows retrieves the first N rows from the Parquet file. +func getFirstNRows(db *sql.DB, inputFile string, n int) ([][]string, error) { + query := fmt.Sprintf("SELECT * FROM read_parquet('%s') LIMIT %d", inputFile, n) + rows, err := db.Query(query) + if err != nil { + return nil, fmt.Errorf("failed to query parquet file: %w", err) + } + defer rows.Close() + + cols, err := rows.Columns() + if err != nil { + return nil, fmt.Errorf("failed to get columns: %w", err) + } + + var results [][]string + for rows.Next() { + values := make([]sql.NullString, len(cols)) + valuePtrs := make([]any, len(cols)) + for i := range values { + valuePtrs[i] = &values[i] + } + + err := rows.Scan(valuePtrs...) + if err != nil { + return nil, fmt.Errorf("failed to scan row: %w", err) + } + + var row []string + for _, val := range values { + if val.Valid { + row = append(row, val.String) + } else { + row = append(row, "NULL") + } + } + results = append(results, row) + } + + return results, nil +} + +// countRows counts the number of rows in the Parquet file. +func countRows(db *sql.DB, inputFile string) (int64, error) { + var count int64 + err := db.QueryRow(fmt.Sprintf("SELECT COUNT(*) FROM read_parquet('%s')", inputFile)).Scan(&count) + if err != nil { + return 0, fmt.Errorf("failed to count rows: %w", err) + } + return count, nil +} + +// formatWithSpaces formats an integer with spaces as thousand separators. +func formatWithSpaces(n int64) string { + s := strconv.FormatInt(n, 10) + + var b strings.Builder + l := len(s) + for i, c := range s { + if i != 0 && (l-i)%3 == 0 { + b.WriteRune(' ') + } + b.WriteRune(c) + } + return b.String() +} diff --git a/leak-utils/settings/colors.go b/leak-utils/settings/colors.go new file mode 100644 index 0000000..d3dbf41 --- /dev/null +++ b/leak-utils/settings/colors.go @@ -0,0 +1,27 @@ +package settings + +import ( + "github.com/charmbracelet/lipgloss/v2" +) + +var ( + purple = lipgloss.Color("99") + lightPurple = lipgloss.Color("98") + yellow = lipgloss.Color("220") + gray = lipgloss.Color("245") + lightGray = lipgloss.Color("241") + + Header = lipgloss.NewStyle().Foreground(purple).Bold(true) + Accent = lipgloss.NewStyle().Foreground(lightPurple) + Base = lipgloss.NewStyle().Foreground(lightGray) + Alert = lipgloss.NewStyle().Foreground(yellow).Bold(true) + Muted = lipgloss.NewStyle().Foreground(gray) +) + +func DisableColors() { + Header = lipgloss.NewStyle() + Accent = lipgloss.NewStyle() + Base = lipgloss.NewStyle() + Alert = lipgloss.NewStyle() + Muted = lipgloss.NewStyle() +} diff --git a/leak-utils/settings/settings.go b/leak-utils/settings/settings.go new file mode 100644 index 0000000..6f0ecd9 --- /dev/null +++ b/leak-utils/settings/settings.go @@ -0,0 +1,9 @@ +package settings + +import "database/sql" + +type LeakUtils struct { + Debug bool + Compression string // Compression of the output file (e.g., "SNAPPY", "ZSTD", "NONE" or "") + Db *sql.DB +} diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 0000000..5581a19 --- /dev/null +++ b/netlify.toml @@ -0,0 +1,4 @@ +[build] + base = "front" + publish = "dist" + command = "bun run build" diff --git a/nix/back.nix b/nix/back.nix new file mode 100644 index 0000000..26d5a5e --- /dev/null +++ b/nix/back.nix @@ -0,0 +1,155 @@ +{ + pkgs, + lib, + self, +}: let + name = "eleakxir"; + + package = pkgs.buildGoModule { + pname = name; + version = "0.1.0"; + src = ../back; + vendorHash = ""; + + buildInputs = [ + pkgs.duckdb + pkgs.arrow-cpp + ]; + }; +in { + package = package; + + nixosModule = {config, ...}: let + cfg = config.services."${name}"; + in { + options.services."${name}" = { + enable = lib.mkEnableOption "Enable the ${name} service"; + user = lib.mkOption { + type = lib.types.str; + default = name; + description = "User to run the ${name} service as"; + }; + group = lib.mkOption { + type = lib.types.str; + default = name; + description = "Group to run the ${name} service as"; + }; + port = lib.mkOption { + type = lib.types.port; + default = 9198; + description = "Port for the ${name} service"; + }; + folders = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = []; + description = "Folders to monitor for parquet files"; + }; + cacheFolder = lib.mkOption { + type = lib.types.str; + default = ""; + description = "Cache folder"; + }; + limit = lib.mkOption { + type = lib.types.int; + default = 200; + description = "Limit of results to return"; + }; + password = lib.mkOption { + type = lib.types.str; + default = ""; + description = "Password for auth (empty means no auth)"; + }; + debug = lib.mkOption { + type = lib.types.bool; + default = false; + description = "Debug mode"; + }; + maxCacheDuration = lib.mkOption { + type = lib.types.str; + default = "24h"; + description = "Max result cache duration (30m, 2h, 1d)"; + }; + reloadDataleaksInterval = lib.mkOption { + type = lib.types.str; + default = "1h"; + description = "Interval to reload dataleaks (30m, 2h, 1d)"; + }; + minimumQueryLength = lib.mkOption { + type = lib.types.int; + default = 3; + description = "Minimum query length"; + }; + baseColumns = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = []; + description = "Base columns are used when the column searched is 'all'"; + }; + githubRecon = lib.mkOption { + type = lib.types.bool; + default = true; + description = "Activate the github-recon OSINT module"; + }; + githubToken = lib.mkOption { + type = lib.types.str; + default = ""; + description = "GitHub token to use for Github recon"; + }; + githubDeepMode = lib.mkOption { + type = lib.types.bool; + default = false; + description = "Activate the github-recon deep mode"; + }; + }; + + config = lib.mkIf cfg.enable { + users.users."${cfg.user}" = { + isSystemUser = true; + group = cfg.group; + }; + users.groups."${cfg.group}" = {}; + + systemd.services."${name}" = { + description = "${name} service"; + after = ["network.target"]; + wantedBy = ["multi-user.target"]; + serviceConfig = { + ExecStart = "${self.packages.${pkgs.system}.backend}/bin/cmd"; + Restart = "always"; + User = cfg.user; + Group = cfg.group; + StateDirectory = name; + ReadWritePaths = ["/var/lib/${name}"]; + WorkingDirectory = "/var/lib/${name}"; + + Environment = [ + "PORT=${toString cfg.port}" + "DATALEAKS_FOLDERS=${lib.strings.concatStringsSep "," cfg.folders}" + "DATALEAKS_CACHE_FOLDER=${cfg.cacheFolder}" + "LIMIT=${toString cfg.limit}" + "PASSWORD=${toString cfg.password}" + "DEBUG=${ + if cfg.debug + then "true" + else "false" + }" + "MAX_CACHE_DURATION=${cfg.maxCacheDuration}" + "RELOAD_DATALEAKS_INTERVAL=${cfg.reloadDataleaksInterval}" + "MINIMUM_QUERY_LENGTH=${toString cfg.minimumQueryLength}" + "BASE_COLUMNS=${lib.strings.concatStringsSep "," cfg.baseColumns}" + "GITHUB_RECON=${ + if cfg.githubRecon + then "true" + else "false" + }" + "GITHUB_TOKEN=${cfg.githubToken}" + "GITHUB_DEEP_MODE=${ + if cfg.githubDeepMode + then "true" + else "false" + }" + ]; + }; + }; + }; + }; +} diff --git a/nix/devshell.nix b/nix/devshell.nix new file mode 100644 index 0000000..e3d07f0 --- /dev/null +++ b/nix/devshell.nix @@ -0,0 +1,12 @@ +{pkgs, ...}: { + devShell = pkgs.mkShell { + buildInputs = with pkgs; [ + duckdb + air + # OSINT tools + ghunt + sherlock + holehe + ]; + }; +} diff --git a/nix/leak-utils.nix b/nix/leak-utils.nix new file mode 100644 index 0000000..fbc6744 --- /dev/null +++ b/nix/leak-utils.nix @@ -0,0 +1,21 @@ +{ + pkgs, + lib, + self, +}: let + name = "leak-utils"; + + package = pkgs.buildGoModule { + pname = name; + version = "0.1.0"; + src = ../leak-utils; + vendorHash = "sha256-NDY3T3FhQ2iXJr3v3sxTX9taVTU9LPCLd/emWukHZcs="; + + buildInputs = [ + pkgs.duckdb + pkgs.arrow-cpp + ]; + }; +in { + package = package; +}

    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 >s)5f%1WKT?A#os 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