From 23ae5692d8904ad20a71943c4f24d12053c03392 Mon Sep 17 00:00:00 2001 From: Madis Date: Sat, 19 Jun 2021 13:23:12 +0300 Subject: [PATCH] Packwiz preparations --- .gitattributes | 1 + .github/FUNDING.yml | 24 +- .github/ISSUE_TEMPLATE/config.yml | 10 +- .github/ISSUE_TEMPLATE/mod-request.md | 82 +-- .github/ISSUE_TEMPLATE/problem_report.md | 62 +- .gitignore | 4 +- CHANGELOG.md | 578 +++++++++--------- Curseforge/overrides/config | 1 + LICENSE | 42 +- .../.minecraft/.gitkeep | 0 .../.packignore | 18 + .../instance.cfg | 21 + .../mmc-pack.json | 52 ++ .../pack.png | Bin 0 -> 20002 bytes .../.minecraft/config | 1 + .../.minecraft/mods/.gitkeep | 0 .../Fabulously Optimized x.y.z/instance.cfg | 40 +- .../minecraft/config | 1 - .../Fabulously Optimized x.y.z/mmc-pack.json | 53 +- MultiMC/Fabulously Optimized x.y.z/pack.png | Bin 20002 -> 65 bytes Packwiz/.packwizignore | 2 + Packwiz/Readme.md | 16 + .../config/slightguimodifications/cts.groovy | 0 .../config/yosbr/config/canvas.json5 | 0 .../config/canvas_pipeline_options.json5 | 0 .../config/yosbr/config/capes.json5 | 0 .../config/yosbr/config/cullleaves.json | 0 .../config/yosbr/config/lambdynlights.toml | 34 +- .../config/yosbr/config/modmenu.json | 0 .../slightguimodifications/config.json5 | 0 .../config/yosbr/options.txt | 28 +- Packwiz/index.toml | 152 +++++ Packwiz/mods/antighost.toml | 14 + Packwiz/mods/architectury-fabric.toml | 14 + Packwiz/mods/better-beds.toml | 14 + Packwiz/mods/canvas-renderer.toml | 14 + Packwiz/mods/capes.toml | 14 + Packwiz/mods/cloth-api.toml | 14 + Packwiz/mods/cloth-config.toml | 14 + Packwiz/mods/cull-leaves.toml | 14 + Packwiz/mods/dynamic-fps.toml | 14 + Packwiz/mods/entityculling.toml | 14 + Packwiz/mods/fabric-api.toml | 14 + Packwiz/mods/fabric-language-kotlin.toml | 14 + Packwiz/mods/fabrishot.toml | 14 + Packwiz/mods/fastchest.toml | 14 + Packwiz/mods/item-model-fix.toml | 14 + Packwiz/mods/lambdynamiclights.toml | 14 + Packwiz/mods/lazydfu.toml | 14 + Packwiz/mods/lithium.toml | 14 + Packwiz/mods/modmenu.toml | 14 + Packwiz/mods/slight-gui-modifications.toml | 14 + Packwiz/mods/smooth-boot.toml | 14 + Packwiz/mods/wi-zoom.toml | 14 + Packwiz/mods/yosbr.toml | 14 + Packwiz/pack.toml | 10 + README.md | 146 ++--- docs/index.html | 30 +- 58 files changed, 1137 insertions(+), 593 deletions(-) create mode 100644 .gitattributes create mode 100644 Curseforge/overrides/config create mode 100644 MultiMC-Packwiz/Fabulously Optimized (auto-update)/.minecraft/.gitkeep create mode 100644 MultiMC-Packwiz/Fabulously Optimized (auto-update)/.packignore create mode 100644 MultiMC-Packwiz/Fabulously Optimized (auto-update)/instance.cfg create mode 100644 MultiMC-Packwiz/Fabulously Optimized (auto-update)/mmc-pack.json create mode 100644 MultiMC-Packwiz/Fabulously Optimized (auto-update)/pack.png create mode 100644 MultiMC/Fabulously Optimized x.y.z/.minecraft/config create mode 100644 MultiMC/Fabulously Optimized x.y.z/.minecraft/mods/.gitkeep delete mode 120000 MultiMC/Fabulously Optimized x.y.z/minecraft/config create mode 100644 Packwiz/.packwizignore create mode 100644 Packwiz/Readme.md rename {Curseforge/overrides => Packwiz}/config/slightguimodifications/cts.groovy (100%) rename {Curseforge/overrides => Packwiz}/config/yosbr/config/canvas.json5 (100%) rename {Curseforge/overrides => Packwiz}/config/yosbr/config/canvas_pipeline_options.json5 (100%) rename {Curseforge/overrides => Packwiz}/config/yosbr/config/capes.json5 (100%) rename {Curseforge/overrides => Packwiz}/config/yosbr/config/cullleaves.json (100%) rename {Curseforge/overrides => Packwiz}/config/yosbr/config/lambdynlights.toml (96%) rename {Curseforge/overrides => Packwiz}/config/yosbr/config/modmenu.json (100%) rename {Curseforge/overrides => Packwiz}/config/yosbr/config/slightguimodifications/config.json5 (100%) rename {Curseforge/overrides => Packwiz}/config/yosbr/options.txt (87%) create mode 100644 Packwiz/index.toml create mode 100644 Packwiz/mods/antighost.toml create mode 100644 Packwiz/mods/architectury-fabric.toml create mode 100644 Packwiz/mods/better-beds.toml create mode 100644 Packwiz/mods/canvas-renderer.toml create mode 100644 Packwiz/mods/capes.toml create mode 100644 Packwiz/mods/cloth-api.toml create mode 100644 Packwiz/mods/cloth-config.toml create mode 100644 Packwiz/mods/cull-leaves.toml create mode 100644 Packwiz/mods/dynamic-fps.toml create mode 100644 Packwiz/mods/entityculling.toml create mode 100644 Packwiz/mods/fabric-api.toml create mode 100644 Packwiz/mods/fabric-language-kotlin.toml create mode 100644 Packwiz/mods/fabrishot.toml create mode 100644 Packwiz/mods/fastchest.toml create mode 100644 Packwiz/mods/item-model-fix.toml create mode 100644 Packwiz/mods/lambdynamiclights.toml create mode 100644 Packwiz/mods/lazydfu.toml create mode 100644 Packwiz/mods/lithium.toml create mode 100644 Packwiz/mods/modmenu.toml create mode 100644 Packwiz/mods/slight-gui-modifications.toml create mode 100644 Packwiz/mods/smooth-boot.toml create mode 100644 Packwiz/mods/wi-zoom.toml create mode 100644 Packwiz/mods/yosbr.toml create mode 100644 Packwiz/pack.toml diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..fa1385d9 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* -text diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index e97eaf06..1e530f57 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,12 +1,12 @@ -# These are supported funding model platforms - -github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] -patreon: # Replace with a single Patreon username -open_collective: # Replace with a single Open Collective username -ko_fi: # Replace with a single Ko-fi username -tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel -community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry -liberapay: # Replace with a single Liberapay username -issuehunt: # Replace with a single IssueHunt username -otechie: # Replace with a single Otechie username -custom: https://github.com/Madis0/fabulously-optimized/wiki/Supporting-the-pack +# These are supported funding model platforms + +github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] +patreon: # Replace with a single Patreon username +open_collective: # Replace with a single Open Collective username +ko_fi: # Replace with a single Ko-fi username +tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +liberapay: # Replace with a single Liberapay username +issuehunt: # Replace with a single IssueHunt username +otechie: # Replace with a single Otechie username +custom: https://github.com/Madis0/fabulously-optimized/wiki/Supporting-the-pack diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index e3b755d7..390b7ad9 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,5 +1,5 @@ -blank_issues_enabled: false -contact_links: - - name: Questions and support - url: https://www.curseforge.com/minecraft/modpacks/fabulously-optimized#reply - about: General questions and support will be provided in the modpack's page itself +blank_issues_enabled: false +contact_links: + - name: Questions and support + url: https://www.curseforge.com/minecraft/modpacks/fabulously-optimized#reply + about: General questions and support will be provided in the modpack's page itself diff --git a/.github/ISSUE_TEMPLATE/mod-request.md b/.github/ISSUE_TEMPLATE/mod-request.md index ad8d91b4..19ba0e02 100644 --- a/.github/ISSUE_TEMPLATE/mod-request.md +++ b/.github/ISSUE_TEMPLATE/mod-request.md @@ -1,41 +1,41 @@ ---- -name: Mod request -about: Suggest a new mod to be included in Fabulously Optimized, client-only mods are preferred -title: '' -labels: mod -assignees: '' - ---- - -**Mod name** - - -**Curseforge link** - - -**Modrinth link** - - -**Other link** - - -**What it does** - - -**Why should it be in the modpack** - - -**Why shouldn't it be in the modpack** - - -**Categories** - -- [ ] Performance optimization -- [ ] Graphics optimization -- [ ] New feature -- [ ] Optifine parity -- [ ] Fixes a bug/dependency -- [ ] Replaces an existing mod - -**Additional details** - +--- +name: Mod request +about: Suggest a new mod to be included in Fabulously Optimized, client-only mods are preferred +title: '' +labels: mod +assignees: '' + +--- + +**Mod name** + + +**Curseforge link** + + +**Modrinth link** + + +**Other link** + + +**What it does** + + +**Why should it be in the modpack** + + +**Why shouldn't it be in the modpack** + + +**Categories** + +- [ ] Performance optimization +- [ ] Graphics optimization +- [ ] New feature +- [ ] Optifine parity +- [ ] Fixes a bug/dependency +- [ ] Replaces an existing mod + +**Additional details** + diff --git a/.github/ISSUE_TEMPLATE/problem_report.md b/.github/ISSUE_TEMPLATE/problem_report.md index 7b13e991..e8ccf8c2 100644 --- a/.github/ISSUE_TEMPLATE/problem_report.md +++ b/.github/ISSUE_TEMPLATE/problem_report.md @@ -1,31 +1,31 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '' -labels: bug -assignees: '' - ---- - -**Describe the bug** -A clear and concise description of what the bug is. - -**To Reproduce** -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See error - -**Expected behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -If applicable, add screenshots to help explain your problem. - -**Specifications (please complete the following information):** - - Modpack version: [e.g. 1.5.2] - - Launcher: [e.g. CurseForge Launcher] - -**Additional context** -Add any other context about the problem here. +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: bug +assignees: '' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Specifications (please complete the following information):** + - Modpack version: [e.g. 1.5.2] + - Launcher: [e.g. CurseForge Launcher] + +**Additional context** +Add any other context about the problem here. diff --git a/.gitignore b/.gitignore index fd7d87ff..1c660116 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ - -*.jar +*.jar +Packwiz/packwiz.exe diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f8036d8..5d132418 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,289 +1,289 @@ -# Fabulously Optimized changelog -This is the changelog for the Fabric modpack [Fabulously Optimized](https://www.curseforge.com/minecraft/modpacks/fabulously-optimized). -## Some facts - - Only *the latest version* of the modpack is supported. You can either update an older version directly or create a new profile to update. - - Only the *latest stable version* of Minecraft is supported - no snapshots, no backports. For more info, see FAQ on ["What versions do you support?"](https://www.curseforge.com/minecraft/modpacks/fabulously-optimized#reply). - - Only the *latest version of a modpack per Minecraft version* is kept visible on Curseforge. This is to make it simpler to use legacy versions (at your responsibility) and keep the version list clean overall, also a reason why this page exists. - - "Updated mods" can refer to mods, the Curseforge launcher manifest and/or Fabric. For the sake of simplicity I do not describe individual updates in detail. - -## 1.17 -Notes for all 1.17 releases: -* Curseforge Launcher: if you're upgrading from MC 1.16.x, please ☑️ Update to new Profile -* MultiMC: Minecraft 1.17 requires Java 16: https://www.oracle.com/java/technologies/javase-jdk16-downloads.html - -### 2.0.0b2 - -Differences from b1 -* Sodium is not there yet, please have patience -* Mods updated, should fix some graphics issues -* Added Fabrishot back -* Inclusion of Not Enough Crashes is delayed because it is still an alpha -* Reverted FOV change for better FPS in some devices -* Fixed an issue that could show the wrong version number in the main menu - -### 2.0.0b1 - -Mods -* Several mods still missing, including Sodium -* Sodium temporarily replaced with Canvas -* Ok Zoomer temporarily/permanently replaced with WI Zoom -* Added YOSBR to keep your settings between modpack upgrades -* More new mods will come in a stable release! - -Other -* Added [new default options](https://github.com/Madis0/fabulously-optimized/wiki/Changed-options) to improve the experience -* CF version is now 100% Fabric, meaning faster startup and better mod management! - -## 1.16.5 - -### 1.9.1 - -* Several mods updated -* Sodium Extra update skipped because it temporarily changes the UI - -### 1.9.0 - -New mods -* **FerriteCore** - reduces RAM usage -* **LazyDFU** - improves startup speed even more -* **Better Beds** - improves FPS when around beds (villager farms, anyone?) -* **Item Model Fix** - fixes transparent gaps in held items - -Removed mods -* **Raised Clouds** - Sodium Extra now includes a more intuitive cloud height setting - -Other stuff -* Lots of mod updates -* The new mods were suggested by the community, thank you! - -### 1.8.0 - -New mods -* **EntityCulling Fabric/Forge** - stops rendering entities that are behind a wall, useful in large servers and mobfarms - -Other stuff -* SmoothBoot's config system slightly changed and it is now smaller -* Mods updated - -### 1.7.1 - -New mods: -* **No Fade** - makes game startup and resourcepack loading faster by removing some animations - -Other stuff -* Sodium Extra got an update with many new toggles, check them out! -* Jumploader got support for Microsoft Accounts, so you can upgrade now when Mojang asks you to (only if you use CF or vanilla launcher) -* Fixed zoom key by unbinding the save toolbar activator by default (that option was always there... oops) -* 25k download milestone! Thank you all for the support! -* Mods updated -* Yes, I added another new mod but I felt like that one didn't warrant a new major update lol, it also might get included with 'Slight' Gui Modifications later on - -### 1.7.0 - -New mods: -* **Hydrogen** - somewhat reduces RAM usage (in my case 2,8 GB -> 2,6 GB) - -Other stuff: -* Several mods updated -* The modpack size is much bigger for Curseforge now, because Hydrogen is an external mod -* Sodium Extra update currently skipped as the next version will fix an issue -* Cull Leaves changed the way its config works - if you are upgrading, you may delete the json5 file - -### 1.6.0 -New mods -* **Sodium Extra** - adds toggles to Sodium settings: animations, particles, weather, fog, FPS indicator -* **Cloth Config API** - makes the config work in many mods, now it is separate to reduce space (every mod doesn't have to include it) - -Other stuff -* Updated mods - -### 1.5.2 -* Hid Minecraft, Jumploader and Cloth API from Mod Menu (because they are not really mods, but dependencies) -* Updated mods - -### 1.5.1 -* Mod Menu received a major configurability update, so I've made it more cleaner-looking -* Removed Better Mod Button mod as it is now redundant -* Not Enough Crashes received a lot of updates for better detection and compatibility -* Updated mods - -### 1.5.0 -New mods -* **FastChest** - greatly improves FPS when surrounded by chests (e.g. in a storage room) -* **Cull Leaves** - optionally makes fancy tree leaves more see-through, which could improve FPS (enable in mod settings) - -Other stuff -* Dynamic FPS and Custom Fog have new config screens, tweak ahead! -* Fancy introduction video - see main page! -* Slightly improved manifests for both launchers -* Updated mods -* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error - -### 1.5.0b2 -* Mods updated -* Improved manifests for both launchers -* Dynamic FPS now has a config screen so it can be disabled or configured -* Lithium and Custom Fog are missing, waiting for an update -* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error - -### 1.5.0b1 -* Lithium and Custom Fog are currently incompatible and therefore missing -* Mods updated -* MultiMC doesn't list 1.16.5 yet, so I cannot update it (Edit: added later, same Not Enough Crashes comment applies) - -## 1.16.4 - -### 1.4.5 -* Mods updated -* You may notice that there are less mods now - this is normal as some APIs are now properly marked as such, the main mods are still the same -* Curseforge: fixed Fabric Loader update -* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error - -### 1.4.4 -* Mods updated -* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error - -### 1.4.3 -* Mods updated -* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error - -### 1.4.2 -* Mods updated -* Added Architectury because 'Slight' Gui Modifications now depends on it -* In MultiMC, Not Enough Crashes is at version 2.1.4+1.16.2 (due to CF error) but according to the developer it is identical to newer anyway. - -### 1.4.1 -* Mods updated - -### 1.4.0 -**Now stable with more ways to optimize!** - -Added -* Smooth Boot - makes the game use less power when it starts -* Custom Fog - lets you customize the fog distance and density -* AntiGhost - fixes getting stuck in blocks with the press of G - -Other -* Lithium is back -* Mods updated - -### 1.4.0b2 -* Lithium is currently incompatible and therefore missing -* Mods updated - -### 1.4.0b1 -**Fastest beta release yet, thanks to Jumploader magic!** -* Lithium is currently incompatible and therefore missing -* Mods updated - -## 1.16.3 - -### 1.3.4 -* Added a clickable modpack version to title screen (courtesy of 'Slight' Gui Modifications) -* Adjusted Fabric Capes config to show all types and default to Minecraft Capes -* Removed Minecraft Capes mod because Fabric Capes already provided it -* Mods updated - -### 1.3.3 -* Mods updated - -### 1.3.2 -* Colormatic readded. - -### 1.3.1 -Thanks to users' feedback, the mod list has been updated. - -**Added** -* Ok Zoomer - fancy zooming mod, back by a popular demand (configurable) -* Fabric Capes - gives options for viewing Optifine, LabyMod and MinecraftCapes' capes in-game -* Fabric Language Kotlin - needed for Fabric Capes - -**Removed** -* OF Capes - replaced by Fabric Capes - -### 1.3.0 -Sodium has been updated, so it's time for a release! - -**Added** -* OF Capes - lets you see Optifine capes and zoom -* MinecraftCapes - lets you get a free cape, textured elytra or mouse ears (configurable) -* Raised Clouds - lets you adjust the cloud height like Optifine (configurable) -* Fabrishot - lets you take a high-res screenshot like Optifine (press F9, configurable) - -**Removed** -* motioNO - now built-in, find it under Accessibility Settings... > FOV Effects -* Ok Zoomer - OF Capes mod also provides zoom, so it is not needed -* Colormatic - currently crashes with Sodium, will readd after an update - -Other -* Mods updated - -### 1.3.0b1 -**First beta with Twitch launcher.** -* Sodium still missing -* Canvas added as replacement -* TheYTG123 helped me get a Twitch Launcher-compatible version even though it wasn't listed. Hint: Jumploader manifest. -* Mods updated - -### 1.3.0a1 (MultiMC) -First alpha version only for MultiMC, stuck next to 1.16.2 versions because Twitch launcher did not list that version yet. -**Notes** -* Sodium and Lithium are missing -* Canvas temporarily added as a replacement -* motioNO is removed - -## 1.16.2 - -### 1.2.0b2 -**Notes** -* Sodium still missing -* Canvas temporarily added -* Mods updated - -### 1.2.0b1 -**First beta for 1.16.2.** -* Sodium is missing -* Canvas added as a temporary replacement. Thanks fishywishyef for the suggestion! -* motioNO is removed as it is built-in to 1.16.2. - -### 1.2.0a1 (MultiMC) -A never-released version because Curseforge doesn't like MultiMC-only versions. Ah well. - -## 1.16.1 - -### 1.1.2 -* Mods updated - -### 1.1.1 -* Mods updated - -### 1.1.0 -Major update with new mods. -**Added** -* Dynamic FPS - renders Minecraft slower if it is in the background to save memory -* Smooth Scrolling Everywhere - makes the scrolling smooth on various menus -* 'Slight' Gui Modifications - adds fancy animations to the menus and containers -* Colormatic - adds support for Optifine resource packs' custom colors - -### 1.0.1 -Updated mods. -**MultiMC-specific:** -* Replaced Jumploader and Forge with real Fabric -* Added icon - -### 1.0.1a1 -A testing version to see if making mods optional is handled well in Twitch launcher. Hint: it isn't. - -### 1.0.0 -First release for Twitch and MultiMC launchers. Containing: -* Better Mod Button -* Fabric API -* Jumploader -* LambDynamicLights -* Lithium (Fabric) -* Mod Menu -* motioNO -* Not Enough Crashes -* Ok Zoomer -* Phosphor (Fabric) -* Sodium +# Fabulously Optimized changelog +This is the changelog for the Fabric modpack [Fabulously Optimized](https://www.curseforge.com/minecraft/modpacks/fabulously-optimized). +## Some facts + - Only *the latest version* of the modpack is supported. You can either update an older version directly or create a new profile to update. + - Only the *latest stable version* of Minecraft is supported - no snapshots, no backports. For more info, see FAQ on ["What versions do you support?"](https://www.curseforge.com/minecraft/modpacks/fabulously-optimized#reply). + - Only the *latest version of a modpack per Minecraft version* is kept visible on Curseforge. This is to make it simpler to use legacy versions (at your responsibility) and keep the version list clean overall, also a reason why this page exists. + - "Updated mods" can refer to mods, the Curseforge launcher manifest and/or Fabric. For the sake of simplicity I do not describe individual updates in detail. + +## 1.17 +Notes for all 1.17 releases: +* Curseforge Launcher: if you're upgrading from MC 1.16.x, please ☑️ Update to new Profile +* MultiMC: Minecraft 1.17 requires Java 16: https://www.oracle.com/java/technologies/javase-jdk16-downloads.html + +### 2.0.0b2 + +Differences from b1 +* Sodium is not there yet, please have patience +* Mods updated, should fix some graphics issues +* Added Fabrishot back +* Inclusion of Not Enough Crashes is delayed because it is still an alpha +* Reverted FOV change for better FPS in some devices +* Fixed an issue that could show the wrong version number in the main menu + +### 2.0.0b1 + +Mods +* Several mods still missing, including Sodium +* Sodium temporarily replaced with Canvas +* Ok Zoomer temporarily/permanently replaced with WI Zoom +* Added YOSBR to keep your settings between modpack upgrades +* More new mods will come in a stable release! + +Other +* Added [new default options](https://github.com/Madis0/fabulously-optimized/wiki/Changed-options) to improve the experience +* CF version is now 100% Fabric, meaning faster startup and better mod management! + +## 1.16.5 + +### 1.9.1 + +* Several mods updated +* Sodium Extra update skipped because it temporarily changes the UI + +### 1.9.0 + +New mods +* **FerriteCore** - reduces RAM usage +* **LazyDFU** - improves startup speed even more +* **Better Beds** - improves FPS when around beds (villager farms, anyone?) +* **Item Model Fix** - fixes transparent gaps in held items + +Removed mods +* **Raised Clouds** - Sodium Extra now includes a more intuitive cloud height setting + +Other stuff +* Lots of mod updates +* The new mods were suggested by the community, thank you! + +### 1.8.0 + +New mods +* **EntityCulling Fabric/Forge** - stops rendering entities that are behind a wall, useful in large servers and mobfarms + +Other stuff +* SmoothBoot's config system slightly changed and it is now smaller +* Mods updated + +### 1.7.1 + +New mods: +* **No Fade** - makes game startup and resourcepack loading faster by removing some animations + +Other stuff +* Sodium Extra got an update with many new toggles, check them out! +* Jumploader got support for Microsoft Accounts, so you can upgrade now when Mojang asks you to (only if you use CF or vanilla launcher) +* Fixed zoom key by unbinding the save toolbar activator by default (that option was always there... oops) +* 25k download milestone! Thank you all for the support! +* Mods updated +* Yes, I added another new mod but I felt like that one didn't warrant a new major update lol, it also might get included with 'Slight' Gui Modifications later on + +### 1.7.0 + +New mods: +* **Hydrogen** - somewhat reduces RAM usage (in my case 2,8 GB -> 2,6 GB) + +Other stuff: +* Several mods updated +* The modpack size is much bigger for Curseforge now, because Hydrogen is an external mod +* Sodium Extra update currently skipped as the next version will fix an issue +* Cull Leaves changed the way its config works - if you are upgrading, you may delete the json5 file + +### 1.6.0 +New mods +* **Sodium Extra** - adds toggles to Sodium settings: animations, particles, weather, fog, FPS indicator +* **Cloth Config API** - makes the config work in many mods, now it is separate to reduce space (every mod doesn't have to include it) + +Other stuff +* Updated mods + +### 1.5.2 +* Hid Minecraft, Jumploader and Cloth API from Mod Menu (because they are not really mods, but dependencies) +* Updated mods + +### 1.5.1 +* Mod Menu received a major configurability update, so I've made it more cleaner-looking +* Removed Better Mod Button mod as it is now redundant +* Not Enough Crashes received a lot of updates for better detection and compatibility +* Updated mods + +### 1.5.0 +New mods +* **FastChest** - greatly improves FPS when surrounded by chests (e.g. in a storage room) +* **Cull Leaves** - optionally makes fancy tree leaves more see-through, which could improve FPS (enable in mod settings) + +Other stuff +* Dynamic FPS and Custom Fog have new config screens, tweak ahead! +* Fancy introduction video - see main page! +* Slightly improved manifests for both launchers +* Updated mods +* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error + +### 1.5.0b2 +* Mods updated +* Improved manifests for both launchers +* Dynamic FPS now has a config screen so it can be disabled or configured +* Lithium and Custom Fog are missing, waiting for an update +* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error + +### 1.5.0b1 +* Lithium and Custom Fog are currently incompatible and therefore missing +* Mods updated +* MultiMC doesn't list 1.16.5 yet, so I cannot update it (Edit: added later, same Not Enough Crashes comment applies) + +## 1.16.4 + +### 1.4.5 +* Mods updated +* You may notice that there are less mods now - this is normal as some APIs are now properly marked as such, the main mods are still the same +* Curseforge: fixed Fabric Loader update +* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error + +### 1.4.4 +* Mods updated +* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error + +### 1.4.3 +* Mods updated +* MultiMC: Not Enough Crashes is 2.1.4+1.16.2 due to CF error + +### 1.4.2 +* Mods updated +* Added Architectury because 'Slight' Gui Modifications now depends on it +* In MultiMC, Not Enough Crashes is at version 2.1.4+1.16.2 (due to CF error) but according to the developer it is identical to newer anyway. + +### 1.4.1 +* Mods updated + +### 1.4.0 +**Now stable with more ways to optimize!** + +Added +* Smooth Boot - makes the game use less power when it starts +* Custom Fog - lets you customize the fog distance and density +* AntiGhost - fixes getting stuck in blocks with the press of G + +Other +* Lithium is back +* Mods updated + +### 1.4.0b2 +* Lithium is currently incompatible and therefore missing +* Mods updated + +### 1.4.0b1 +**Fastest beta release yet, thanks to Jumploader magic!** +* Lithium is currently incompatible and therefore missing +* Mods updated + +## 1.16.3 + +### 1.3.4 +* Added a clickable modpack version to title screen (courtesy of 'Slight' Gui Modifications) +* Adjusted Fabric Capes config to show all types and default to Minecraft Capes +* Removed Minecraft Capes mod because Fabric Capes already provided it +* Mods updated + +### 1.3.3 +* Mods updated + +### 1.3.2 +* Colormatic readded. + +### 1.3.1 +Thanks to users' feedback, the mod list has been updated. + +**Added** +* Ok Zoomer - fancy zooming mod, back by a popular demand (configurable) +* Fabric Capes - gives options for viewing Optifine, LabyMod and MinecraftCapes' capes in-game +* Fabric Language Kotlin - needed for Fabric Capes + +**Removed** +* OF Capes - replaced by Fabric Capes + +### 1.3.0 +Sodium has been updated, so it's time for a release! + +**Added** +* OF Capes - lets you see Optifine capes and zoom +* MinecraftCapes - lets you get a free cape, textured elytra or mouse ears (configurable) +* Raised Clouds - lets you adjust the cloud height like Optifine (configurable) +* Fabrishot - lets you take a high-res screenshot like Optifine (press F9, configurable) + +**Removed** +* motioNO - now built-in, find it under Accessibility Settings... > FOV Effects +* Ok Zoomer - OF Capes mod also provides zoom, so it is not needed +* Colormatic - currently crashes with Sodium, will readd after an update + +Other +* Mods updated + +### 1.3.0b1 +**First beta with Twitch launcher.** +* Sodium still missing +* Canvas added as replacement +* TheYTG123 helped me get a Twitch Launcher-compatible version even though it wasn't listed. Hint: Jumploader manifest. +* Mods updated + +### 1.3.0a1 (MultiMC) +First alpha version only for MultiMC, stuck next to 1.16.2 versions because Twitch launcher did not list that version yet. +**Notes** +* Sodium and Lithium are missing +* Canvas temporarily added as a replacement +* motioNO is removed + +## 1.16.2 + +### 1.2.0b2 +**Notes** +* Sodium still missing +* Canvas temporarily added +* Mods updated + +### 1.2.0b1 +**First beta for 1.16.2.** +* Sodium is missing +* Canvas added as a temporary replacement. Thanks fishywishyef for the suggestion! +* motioNO is removed as it is built-in to 1.16.2. + +### 1.2.0a1 (MultiMC) +A never-released version because Curseforge doesn't like MultiMC-only versions. Ah well. + +## 1.16.1 + +### 1.1.2 +* Mods updated + +### 1.1.1 +* Mods updated + +### 1.1.0 +Major update with new mods. +**Added** +* Dynamic FPS - renders Minecraft slower if it is in the background to save memory +* Smooth Scrolling Everywhere - makes the scrolling smooth on various menus +* 'Slight' Gui Modifications - adds fancy animations to the menus and containers +* Colormatic - adds support for Optifine resource packs' custom colors + +### 1.0.1 +Updated mods. +**MultiMC-specific:** +* Replaced Jumploader and Forge with real Fabric +* Added icon + +### 1.0.1a1 +A testing version to see if making mods optional is handled well in Twitch launcher. Hint: it isn't. + +### 1.0.0 +First release for Twitch and MultiMC launchers. Containing: +* Better Mod Button +* Fabric API +* Jumploader +* LambDynamicLights +* Lithium (Fabric) +* Mod Menu +* motioNO +* Not Enough Crashes +* Ok Zoomer +* Phosphor (Fabric) +* Sodium diff --git a/Curseforge/overrides/config b/Curseforge/overrides/config new file mode 100644 index 00000000..821a060c --- /dev/null +++ b/Curseforge/overrides/config @@ -0,0 +1 @@ +../../Packwiz/config \ No newline at end of file diff --git a/LICENSE b/LICENSE index db4746ba..ccd7a563 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,21 @@ -MIT License - -Copyright (c) 2021 Madis Otenurm - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +MIT License + +Copyright (c) 2021 Madis Otenurm + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/MultiMC-Packwiz/Fabulously Optimized (auto-update)/.minecraft/.gitkeep b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/.minecraft/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/MultiMC-Packwiz/Fabulously Optimized (auto-update)/.packignore b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/.packignore new file mode 100644 index 00000000..4151ddf4 --- /dev/null +++ b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/.packignore @@ -0,0 +1,18 @@ +.minecraft/.fabric +.minecraft/.mixin.out +.minecraft/ModTranslations +.minecraft/config +.minecraft/coremods +.minecraft/icon.png +.minecraft/logs +.minecraft/mods +.minecraft/options.txt +.minecraft/packwiz-installer.jar +.minecraft/packwiz.json +.minecraft/realms_persistence.json +.minecraft/resourcepacks +.minecraft/saves +.minecraft/screenshots +.minecraft/server-resource-packs +.minecraft/texturepacks +natives \ No newline at end of file diff --git a/MultiMC-Packwiz/Fabulously Optimized (auto-update)/instance.cfg b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/instance.cfg new file mode 100644 index 00000000..0aab8cc6 --- /dev/null +++ b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/instance.cfg @@ -0,0 +1,21 @@ +ForgeVersion= +InstanceType=OneSix +IntendedVersion= +LWJGLVersion= +LiteloaderVersion= +MCLaunchMethod=LauncherPart +OverrideCommands=true +OverrideConsole=false +OverrideJava=false +OverrideJavaArgs=false +OverrideJavaLocation=false +OverrideMCLaunchMethod=false +OverrideMemory=false +OverrideNativeWorkarounds=false +OverrideWindow=false +PreLaunchCommand="$INST_JAVA" -jar packwiz-installer-bootstrap.jar https://raw.githubusercontent.com/Madis0/fabulously-optimized/main/Packwiz/pack.toml +iconKey=pack +lastLaunchTime=1624093607930 +name=Fabulously Optimized (auto-update) +notes=https://www.curseforge.com/minecraft/modpacks/fabulously-optimized +totalTimePlayed=100 diff --git a/MultiMC-Packwiz/Fabulously Optimized (auto-update)/mmc-pack.json b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/mmc-pack.json new file mode 100644 index 00000000..0801df57 --- /dev/null +++ b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/mmc-pack.json @@ -0,0 +1,52 @@ +{ + "components": [ + { + "cachedName": "LWJGL 3", + "cachedVersion": "3.2.2", + "cachedVolatile": true, + "dependencyOnly": true, + "uid": "org.lwjgl3", + "version": "3.2.2" + }, + { + "cachedName": "Minecraft", + "cachedRequires": [ + { + "equals": "3.2.2", + "suggests": "3.2.2", + "uid": "org.lwjgl3" + } + ], + "cachedVersion": "1.17", + "important": true, + "uid": "net.minecraft", + "version": "1.17" + }, + { + "cachedName": "Intermediary Mappings", + "cachedRequires": [ + { + "equals": "1.17", + "uid": "net.minecraft" + } + ], + "cachedVersion": "1.17", + "cachedVolatile": true, + "dependencyOnly": true, + "uid": "net.fabricmc.intermediary", + "version": "1.17" + }, + { + "cachedName": "Fabric Loader", + "cachedRequires": [ + { + "uid": "net.fabricmc.intermediary" + } + ], + "cachedVersion": "0.11.6", + "uid": "net.fabricmc.fabric-loader", + "version": "0.11.6" + } + ], + "formatVersion": 1 +} diff --git a/MultiMC-Packwiz/Fabulously Optimized (auto-update)/pack.png b/MultiMC-Packwiz/Fabulously Optimized (auto-update)/pack.png new file mode 100644 index 0000000000000000000000000000000000000000..831b8308f73dd060839dd1a5ef258ada508966db GIT binary patch literal 20002 zcmXt=WmHt(`}X$?4BatwNT;+Q5(7v{BaJkYUl9-i$)UTEkOnD9rKN@v5Rep*4yC)B zKfm>?=fyea%~@ydb@smZeP8$WSvx{gT@fFL8V3M?udMW3`{9ZD--U(oaMzyu4-)`J zp!{4$$J2Dz1T&eeXRH2zqDJ%Q_#oH$JwS`3Hdk=A)#>Lh}eBF;S z1il0@C>aST6{gD~;rrVWtav#f#)6J{ibV@W$w=OYiTh)L&D4Mu`tj#i89oP6UmMxW zc;d>PcH9;*sc86?rO~4Svk`3)SuR!K9sIXgg#WsK>b#ZsLO%cXEgj|w5r=U8Yw<^g zrn2L6h%D6VxnMw8dnt0swnfWR&A*fA09u8n_9<)!<&&9%{gmI^Zoz>sW(c?C;{I&E zs^wr>t1h-wOH@>-SzX=cEFn)xVaQqR6)!V0Gha~r&phW6tx%aIUh1gZct&euCipB# z9Q%`QtB6yWy!ZV~bHm1YyPxs7aWT!_MG~nyk=soeBasYqpxjyWrP9YdZbElZ!V&$V zPcC;JbN++vdHdJXs%|yq(-X5Q4Kylfn0lO?7lGhAMYq+&TX5myhhni+0yg zC^Wg(@&sOtwBPMYh0PfDcz>abVTF)JhEH<#$MW;F$l)kaSy1rnDtK6RLs z!gCooIqU5L3R*(`U*d1TC`0LUQGj*O+<2Kc{ry>UZy7@%AGj>gce&wrMrLy9%U3rpA=h! z11>zsLG)hIAldz^S~v*SvVT2fb_j!ZRWpjW` zEqDLf-2_a1H#llJ{|e5zkBr@!B^oKx z3^u|{>@zTHtlHQen)PTM{Wiq9uYzK{BF2!Y;Qx(-5BnGex4^6|6Z&)CGiMgsF0| z8L4GF`QG%(X)h+iv-X9Ap3(}u)kT}O`0;yZPeQfwF;qPx4se#5x-}m^|KeO&V13|A znQ4y^TH%dzCe`HnZ;SnVH9xlzx}k9CAjsnZ2=0shmcxmN)9uM7-e=rpG{4UTigsH$ zf}-=cg}Jtlv-kzT>#OkWQ9Nb3Y=u_&?~Zl9~E#VIM*j-L7U-{8?kS)H7& zHU(`T;3v7U+NOW!p{{2$<>|%{p@3Vc6HrXzBVl^e92-@}Rv~N*(gCuHsDF?RCNE#( zXHw(tYKYMpfCHp_l*!Y`haj;GUQTO&XNv3W#-!PwZ5J81F}!z3SW#+KKDh}FPBzYc zsp(1IuvHRS)A{HRR|XSje6jcAw-D<%tS}*EF`jSU#*mQy#>+TehMF@_ThmmT1RP!zeGcEZEsl3#@dED=ULA(D>nc5^*BDTHI;?F zlOaZS(Z*UQncVMDdB`3g?=c4>UQynSqBnddEBH*Q`g8wjJYZz2@T_1kz1y7C*BvgC z5HhNbLr$i;UL=QYFMR_m&JbQ4Mc2Nfp;;#fzbpCs8U*9J6hcZzXGVZ1Je4^PGs}`} zl}RFvrJ?G_dmp_w%S_>;Qg9iQLaAs$Hql>d|67Z`Vn0`jv4rPSsRo+J3vKzlO$`>I z)b3U5g()+C>78$mPWQ@?U^FOtAsxszx}W`bykG8iv22w;8i?07^M!2!9*%?~C~gH- zX9_XF89xUw7gQb8`lbBe;#cnjW!}eW?zu)mV|YO8qBO|S@s^ZE9V?9FO~77B=F@Ri zdvU?9rlZX5ROZDP`tRJbGzzv;OZZiNN$#2w25CuDta)D59bNlj=8JH|03uGp{lB65 zzE^q;T)JhdG4Ne{nXK5|zYY^A6yBm^OQq4tEB{K{^c4eYKS{uFQPMO&xtR=`4tb3| z&YawhF#9+LGXH8TM`)+(?OtFsBIG|Xc9LG&|IW96`X_-VUmg~_5gR*j_3zG!U^kAt zc~3(KsPbk^HV^@#Zs@^2mhD=6Xa0pyuZX<|`y=#PQXr#eM2rxQTu&K82dw`-*e(dE zQHzwEJ1ex57!F2m&VFL({6uZ*)DA@z+)2O2jgM6IwDYfV@Ast+CrgMPB$vLsy56O5 zYgu-Tc^m(NaLo0sJp`$GA+sGOZ6?0|^V9Dy64*v&JSvl{u5M%<|KU@_Eo#|!{_dlR%hyJ%)Hl| z)|r-{WAeNv^8QjFWj`9Ps#f%*k8@$~^e(x;2;x;#gU1yDDI}9WJTOl6*l?d0b({)R zK*LNQW-PX-Msrh|ZfBb&4V-5szk{H8tEWO z_)a|aFkM!WQ_)GXKT({LHW@)x!JN+qd_{c-8N-wM#@MsHE4FXXHRgE^anEqE&ca|s zAvxmBN&5`i+hZ!jIVzSRy;eSEtmZS(Rrwo340g(KNp4w{9h$A&lgAy+yI5@BFTX%+y)V=!Vb64@WZT zwf}Qu>JizTK+U{I<9zO4+ZI;jZ-k$11JVotE#LPT6|wbe*uKAWPerTZOby94di+A&Xke`=yVIu?9VWxEeXW@7v)ma$ zYU?y(mXgZ?7~gwph;5Z*e!#V9O-SJQkF`MZMxu~=%L)UC^p4HHU8IW7WzVU?Fz4c) zaa*;Ulm16^xh;ldOh~9ZNj$DK)+A@J* zY4ZK?LJr$d)w>lpXeYX=llU_NZmC z%1y{+mI!t4nCLj)=#+YYvlJ;Npt~GA3BnW0sly~3bqMbjf zC0K>2AOQ!Qh>RU9{W*wxYzbL5JLktw6k-;y{E3@Q!8(%8@o0K$-_^eB zrEf6XRr1kllzeEp9;^X)vL~zE)cK7M+1Bntw_`?0!i}F4iQ~jxN1=gl;Tmi2G}Ig> zi+*!5^yAFBeR?rbD;~2kHYn9pw&lBGl{q&fnS3W)B6a-gRh_g=it?0n9c<(h?$e%& z+*{SquWhUJW|*!an<6uZWMvm$1uK64UtnU{-HR;p-66YiGra2f=0BPBO1{^kFhjfu zxUM-zpSn}HJ)!h0xRw+|m4?RjWQWN%ac_%At<%b4?KmJ6{N!aO)HooHsYu4J7{i`M${q|`C{>Y4L$1@?pv86;O>T^DM+^yFTYcjZc&mRhW z>4&8F&f+zdLgLruxNLbw$AoeO$aS)ozV_J- zE0mz?sB72C!S9{gFr1SY$8~`6eW3iQ(5 z?UcQ~-1qU^s_<2~F?e-{5C^#{w}#UG#~qo@3Zs8yI0^l8lxr2)tADv){Px(}P9N58 ziQr4(uhK(~zq+vzkNti*VswJeg3iPs{GXR8djL*^3OAaD&3AyDz+AmG97r8%u5k@< zEg*4D%gpA<%&G$hzUgpQIUX$C{kSEIDCkNo zo2^1Cdh+EXH=EuCwk>j6ORLDWgSwoTup$7e*>Q$JnFPxXlS!$7; z;>2lC{Mb$DO znPRH){r9At0>82~CMEee4HobxB*W$_2GDwe?sV*qz8en>pyGtGb_!P%7=|h>*x6MyXv)={vE&Cn%!X%zI(gO(_niq5o&v$ zJsoUQY=#%+c3`-IY6@Tk@lV?fnK4hEu7x^LRO!&E%fz(t5H4vAm9E5pPnfbdqWJeh z>o^0-SV|?L#UYRBYe?BIbYp*!SbDphVQ*<6RO8w|&et+(-JQl+olRLFy8`DHC;r+_ zhyxl4%OpzA?)@%rFy9IGQ* zEonYq2x5qDuW^Z*k4}WBtykdi_dVG)DbD8g_UpVrfS8oFfk`>dHxHNS(vlzT;$FbO z@U8vyadXw0M*k2~e6BMZ3M+_Y?bp*n!43_a5?m66Ota$B#Lx51Xy4a!1<6a}+_s6k zz8=vN#*~iv@?v8gUZFo#qei4Xwz3;ev zTjs5D{)>AF-QB46-#eG@KP?&4E?mg)5rHhPkjG;Z(^6)22*~!$2XMHb^cA zx}5f3NMG4ZQn97rYx6kl-vs?Xlq!OUm0j&TD?8lrGLvZ2MdD+!>aih@r|S#M9ipCO zDWadkQ~~3U+f7*tS*5d2`|t|&?kFxtSkHIFCNl>Ip@VPQM*GxT7MM3~$&VV594D&0 zc#n~~@kwiiPiD8miqgEl@OCSGb<{{Ag6$u4{e)43c*rUzG?O9D-{W58$$xXQG?3Lt z1!uADpR4sbVfq*>n?g#hRu1DHf_X|tjMeB|^7)n+cQfnsZyTk_e$BY=D6fm4w;O!* z8hkgS20_{Sa-N%=OxDbA(VAE#Qm~7_#RwQ%*49PlZj)@{7pE#!KKTRzJtEvZMb-mA_|+};rTFh6`a zOhp)H^XL5xre0IvYWX*GafiW$s&|$D@Pj?>>YZNZoY8&n_$iGe(FI>8h+U2$#eOa`)Dqz${WhKNn^KihH=ej z;ZdYPBhN?@Ji%-I@e^v_RO@lo48!fyp9{NjJzZwP|M|&acHmI*ej0@!J^VID<#TU~ z)#*-iV&51)4wvgGj*I(g_^s~C8*ECTB%%IJoDs{4UA3s*f5$cqm`GLULri30xq!E*eFYc-$Mua6`_^g&wtZ5e~Itx~Na7t}UwA zU2!3a>M1>7U%?i18auIsAeCv}e@fmDnnDuLc+&I_4>K=O1m%u@PBe#UQiTH`j@3!{ zCg9%e+kdch5o0t!igF-}yg2Pj3Qf|agv85qTAW}err`0)xVZYeWHKe}Obf8rOLszn zUZex56&t8-c!Iur-x1QK9U1KB)=Kwex>qOz?uf_G)saTFu8eaXu zIT{;y`ynoDEm_%QC_Wmlo*|ZuZ~`&_D2eyTxj51Rg}QMdGrFpfBn%T*d9r)fbD%Km=0 zXSW|&h|8ACUQhOLF$B1nvdNKErZk1M_gV^Ey}e0h?+?Y#$V%6E{Ka~VJ}WNX=@*~W z{=!{D;>`_L%0X}%gLw#92h|!cAU9XJ7^UtM1FYx{Siti`EGdY+Q?{8b{m?2>_MgPE z9{{yaNeGfO#kyR>KZu8onjqwlIKOe|i#N6xWKkvHpJrq(c1L1RjWY6q@UQnfn}jiM z#`nsT)_)2IMS#euYHSM^Yn}Wj0C{hG!VZs1!hV^}LQ~OADAoJ+nQE2j@0)rQwI-jP zkY;X6%THC$5|}eiEFIq0UbNcwLLwB7W)6qCzcv{3of7z5kEB35@1;;%pE6tC3`kO@QjXt4Za_lx(r7i}Wb@ zw7XU)*zIx-?4 zHL2D6kq^~(7thft*IcLv&XNX@D~Ylq8#9?lmv);JwS;Mh7(;|xWMt5Oz@8SL)$E?6 zW?Zk$EmO+uLulsA@O82OQtO=1(YxdT=aErknJHZgw$039zO)_z=xvq_>FT%V{WOg& z-NrFeN%w;JeEqt`Z@eP%~&XfA- zu`1AshB)8LXg2$&)Hi~T&o?sT zB1|*YVoissFUq0#-{=3)9%qd;bmg4&+A3O6EeeY_$$1B09MWuySA<%B?)gi>>)Uwt zWxyeh*8Td0UzjaXny`^{6F*a(=41iFS@i9n7opK8-oAZTdA=Xq9(E`wq z2N?z&x=pY%9D)U!W7J8JhSdF*k#f2)ogO<8>oG_64s^!<442TvpLUIMr1qu=LFDW*U#1ry}7kDtG8SgrUkiR3i5|QLM%g^(7gY2sC(2 zTK(^-Hj5s#kRWdB3EuHUU~qg@o8dd-)NQZ!!BNJ44g#f2s{o5s&APZonqCV<0WVY!-q3r{y&bmDDE);w|K{$MYWR$Q}W+nHHoE z!KM32`_w}x_?b{2vB+`%flR~8k@15Pa<;-0DwVE};GkYp92a=JU8p}#Pq8&~iDRMu zTTatZW|XzxJuN-RQYa0OIr^>VE*KFE1Jp#(Ii=r2sqr948%g@t%KYTOnpDc?fKKN^ z_E9eVAWp6!1@7<-RDa4blNK*W>&o07vBfW5PJ&B1#z7eRY}MtP%kdLI%R#v(K*tIL zo~zjK%bhoYS3^daxb68yu3b8IM3P@nD-ZA{0_GdYS%YtQ$8?ht$>@OOaD)&4lbI(Q zCg6yPw+WGN7JC`&x`@^m0fewCcct&{doaS0SM$=wb*AF)N zwH7GHIq6RqV%5eaHye-@R4A! zTK^Nbo6P9>_=>z*++ov}ewrw_FGf;P_+q1G7%7N)>}vTYejbwwj6g?{=wz;?r9O23 z*`3K2pRGb|S5m;l=m6!@oyTj=HvGS`{^s(uL=aP(%zEN5HS4+k-MR9UI*XCQN+njC zyw6?JNbvz1qE0g}6c+DGCZPa0?fJ3dE9RR8xOlQzzp_*dbE^!hpKM6Uv^=EaV9PBM z1l3<(NPSi~m2lmcY%uB^AHBypkNtf#W$*2wn*bPo(x}U^QyNi-zk@+o9$*-&QFc&j5UReg~=8S!|7G49$zT2;@WZ?E~-V8&cU%9VE^D9}^*is&(+0by@)Rx&D z{Rge}Y{KmuKo0ota@6RS2u(k5NLStb69*-1svc%Upd=d`gd5By1)w5-jC@x6)~ujo zSQ!7`rw*e4jXGbz&4Btlf2H^Nm23>5_)UiBTh;;wPgPOtztdiI{S~4n^027i@BpMh zWI$}g-lP1^7lDaA3DqpDaNBB#(q-&Lja57h-#?bwvOd}Ts(qZ zFvWf&Tv~UeQ6WAI8)cofU)SqF%Z7EArZ3EEna3;4$@p@RA9TyxJGeecwSkD1q4*d;L5)p_7gedb%e z^KN=ZG;l(iY0e9j0+ECWUIdHfyWQ&7|8}aGDTY%$21?)WE|&i%VduMaM-=fAf_Q>5 zhhUtwrW>&XF!H?lN*9XMS-tz#CL_Buo%FcmH3U!$S}9CdQn|1wzs9c4o-)zj&%QH} zRtx(Ci!S%BODbcXEhL9}WIMWa)!Is_3$%#UcWwDcJxac7JlL;j5zfsfgD)As^T zS8Hwh?MR0Zaw}o~(B^L4p-83K+e;{-eBVL z=V}lRKzF1;OY2fi+1{3PWE^_aBxWC2;y`*IZgNi5iCs1xwiOz=260hauR~UJZek!y zUfB>24@1GY*!~&r=9?|<$4nJQPa1?;lyO#GvGw5+Xav~(>LL+bfO?(|KZufSHT%@w z%f9IAng=!9MkHLc)Gb0aO3BF+ImSU`T1+io4Wgj}UZGMrxXM9Qfy;K}SXsK=GOzcK zKbBpajaTfyOMxMzQD2RNDS#dNMpl#1m1v1SS@}2ROXm0a6(NlO1qPy_C_YS;^2=+C zYDbuv{cb{gn5s2l9IIz}$%&sakk&%;ZFo?|Kq+L3Ei;&q4GWBka(NC8$odAFpa5^f zTPT79pkP0=Q#h+IZ%zgllf>Qjuz%9{fCb`u6{a1m>{CXG0|L6Gxt@KgXKj-SzrX)9 zB@^TN`_c8h8jMLGF{ktmXhwvj+NfqvhD{|5Zp* z(VLtdfGY9OfTfg-N~ZMmbiIWj`9RG9!LW>7!DU*^b5*w49`^!(Yd$Vi3Oksb(>#-` zHq)R0xoYu+ws4dQQR<5c#mRi>`x)WwOoI9AcL|L8%E5Rb4N~-IM1x|;Pf)tOvq>g* zYa`xfosSe3g~k~ELzLXd^!R6{DHT9L`3ZiJNVPCVP8Aed$*$o8UFi?FC=!1sfbzcW zp4l~jjsWJ;7R&c2KXF{-dIKzhr^frqn?HvOn{TR`v;dNsYzu~@1*jv|ccv8vht>B7 zv|}%8FqAr&>xeitYdKyp6U)m_M)GrnJqh3ILr=pAjN^!lSXvcx+jEmDM8rpT-uhXC zrCwfTp+tbZv!qP^%~hHt*8&SS5D{H~BPuTCRn}iat_WPGpb@JTP+)|N#+&35&`5B? zt@iC*;M1^w*Yi42lj91~&r(DVg&lrtkVXeL)i)I(hUv>!65um*O;IqUi64UMw(mFs zY=Qgwt5H+Oz*!F=o+R~O;OLahr{#JeOqdJ#j*nEb5hTpbMHKyRb{AH+fS@opghsNk z-D5Ey{XRPW3`daxn=2E4T?^s6;|JWQk@t~xT=h%zD}cQKJ&&(*<>|i9u7;gUCS?^xQzDSlXQOc99`b-Ok$o-U5aR{p< zWEi=6zfCWHRK`Zp%nXBa{t)R`ofR1B<;kJ}^{}+uVRSiOqQ8)l(Z3Bw%ZmfiGqk`AWi%x1euDmzyemSgkWeep)Pc1tb`79%xRhm< zU?3Oq&(GxaF|DFuIfL=B0SHIq!@wLhBC^5(c7G*3&dt|;bA^Qx%%IT|wUj5*4RDtm z(Ks41kHnUjtA5{o`q;ah#N1X)kTX~Yg3^$^{rjp&>x)g3h@BpJXJx|2v9&-ZFxNXV*!t$N3 zNnZS^q~5C)Sr4OVjM-p=Q3h`a)?j@WHv9!a<9yYlO`JlEc;7;}`M92-O@06jsag%d zGh!P<`sju-^cV1+BtsxYI{1=N*9{v2CKD#1hVm|4;Ir}ZGcx({s4XlwDgp1|9eQ96 zS-MEC^=Zkp&7fWiq-+P(Mq=oCOokZ^mb;R?c%<&UR{JWC;}5qOt4d4WIbu_`HxN4b zXWVH92lRVL8`?v1;dTY|0F`G)rep!3gjw$El6N28_QE6KfHNKk-1xTK#lK|qupTUX zV^1t5t8`mL(ING82`v|n4uPJe-RQx(y5Q6Q z%_;uUo%v&KY+~KjPp!YNm1$F$_*E?ApNVaS%%-pibqqpLddG-MPoP8|`rGb*1)@1? zITjfI0NQb{O3@ImcUf?CC&=GC3sY0KW8%NpIw0Qh5@@QDZCE+Xs6v(u$f~gHV;dV9 zOniD$nAr3~@(?5Lobcz~?m8Sb^`fCGDQ4P8m*V0P4+mgAHH!q55Q5rGZ1(btgj z`O6m0`0G+9281bo&U`H2k2XSMYsMT6|uK@V5f;!*r)7<(0C;B9M%ph!RIe?)4gj!f{LiLGnr#CDL z_3#rQOb-4RS;YwSFT8n6(J9YMIOBN&*8icQ!@w^zr&{@eu_kRS4|)W>DQ^wnkEb$A z%|$9tp~a)eM53%mU;@=oE35h9@sz9-PhM+bekZ}c0VC1ML(#%YlbZBP-(q4ti-)uv zgWxh8exww?UP1<{)!%=%bB2PeX8Z9cu8YCFjV)0=O7=|UiWG@dUmXH=`2TYip=}v9 z!TnsHR}Whvv5)|{)MSDk|7FhYb{-B4m%YF^4KreNtOzW4)9;{J)pWqBL{EWP2jZ~` z$Tph!77UV-@Y~^wy=&QLUVx{o?hGb~4r+FDq*(AJ$aM)V?>^E0CT_)8j zsrE&R9d4Ewja{;7On~Dyz0NR{ZC0lZGs0Oux1wfs%_Kza;yzDZ9woPM#brEJ`w_FH zLD94Nf>WZuTWTVvlx~K6>h=?XcFfPL%-Bzw6QLY8f3ci7Un85e=Q2T*@ zQ*WjlPs@aUwbIuQ<7Q(ToUA2j(3)I_ySM!4p1O=9D0S4HJ`RyT41~q6LCUvY{x^PG zu%8D?eH+b)xmNM#Eg9}`D^(ZvFsOptEd%Sce&$xOe0h5>exV;ZrD32yg?{VL#Dhd3FPIAo(b?5|e`|sYvQ|Egumf zC?CzcF`F*zcz$6**1zrr{S(f?3xeey5wAf&7EEap%IZ-t@=^9+nf4i_g?xbd%_y`x z-$k43oe@Y6Nrs>d@o}E@d`%EY4_eZe?^_?x*Jxe)(MEa;@A~5%2nF<6Pi{V)RcO!* zq#hTIaeUP5;~*kLM!YnaMBe#;bXc{=i)yPA8?U*^CF%}+E!mgg0C)KPgDv(+lQAp) z(J8S=V+Pc4HXjQR?RPEe!V#}nbmoAk{~<+?*SzEkEDk16>1r2`cdew8i;%-y{9R<6 zdTjC9cShRh1cHIqAisPLvz#sH?F;UY#~jHaI!5`TDWOlU*?gnx=a=nN7w=&CNDH)o z?TBC!IuW9Bw8sGkRIBtATMyk~uqM*8Z0X`@vq~c2*+@*+zPj=k$5u5xMvUY@ z=abn3?BW~nq7!PMT#XSN@85ccNzMyyVx^E-_@+m9xW|rqW!ik<^{XGUt(F?G@b=L$ zA&A5%k|Wf{UGPJAam4fCnsZz*t&7r8gw+hMLmItk7NC8??Sq)+WPQymBzvS!+ozp; z7zz>C?m8cTLHn*^A5!TkT(K8R+r>jZK&$jgWa1C+c#E$zx_Dt)%w%HexH zf!`b2dt1b=!Z1{5OvbBE3G&5>;}6wU8_5K5u_)OMBemHerl%I;C(P-V7$ofA3ME8M z>mB_Dvf+LZtIA&koU;nxN8s zun2*I|Fp%2esN!J66+EE!Z>r(shVI1hxLE*X?1LAPH~UlyrWjZXo@jGKX;bYSNg5?f_fyfsi$RNnWv=!@n@ z*b)TQnfuF1`*qTnV#F_UBMh;nCm%(cX0EBTV8|gCU9jX!$PpT(jU_d~F-wW-Q8S{& zHTP5=6Bu%$FFpoyclF?b<4zo?+#TOp&+*3$(AvXhK?65KQhMs9&@Lgeq&i$%@{r$B!%t@#C!^hy^a}6g`(Uh`eMD#WDgeb5{!PYF6U~N%duHd3L}9an`Qe5`Zy||PcLqZ z-cGIs?zNzmOK@t_GF@aXGET*!x8BSJ6?_u0_k3@@dES^%jPR5K^pwk(-~fjT7C7C= zOqiP#jm#20Bz{m&%)F*>*mzR;61ktbj`qAF=IdOKa|;xC zU!^6vxQsqP>-NRhchWLlec-6d-{tu4})ZQ%_D?JgX?GoC@K$ilj@`O)(Q%LB2zI*f+UD>WiXUwZnM zXYZNwbg(`v0Y80$buYdyKqDuOsU%YB&LcpgsIM8Qw3y{-2A~EUZhZ>%~|{ zeaJV${-9Qsf-@=$u7|CRkOw?tC5d}W@(btj56i|@Z(OAu8N%$#yOl!65NgJ$O@37w zF=@?b`buUD6F5#X#PU#~A+_RmcUCsSj z9n7BR`+(7CA}*azs;a>e_EBlFlBk;A96E%yF_3p_0LG=z^TeHC2|Cm}&oE%mW}qLy z_Vd99XN`E8ak?m|I&xviFY+sP`z$h^ z*HebjQTF}p{uA~_B2}jCV#`?2dvA88JGZ7{q4{YVFz-x*JOSNL^6nGJeAX>}>#amLVdtIQ^*^op1bAE zm}vLh5&j1P>imnwy;cy49jc0070z{h9sFfKWMEuDksoNWxqoXn#aM1i@7FUA(1m z=U;?d1idVEYnBZSeu;EobK#-35kgV`jsVD=CVm-yh&jX#p7u;)rV2J<`1Ex<-Y@P@ z+ZrEWLT%&dRgIJOs0dljgCN1f!^-h%`w0Utaf5FK^Ca?NIl@ly0AD3%KM#|6U@dxt=DqRhnDeA>O5-21 zE9vqE`crh}33JaK7yTOAZ*1D$nVX}v_ift~R-kaE&68n=Sr$KsYvG&>OGlo9%pX}| zYxE>P==y^TkTThXB3zvPTr%lf z{Ht3J`S(z2Aq?+`C<%JrAz{6#h7f7_jVqV=nqs7c#Bm{a@vzV9rxdq`c>bRZz-L)a z>Y*H3LxPkSZIb6-4e_^rJAHYZeTS0{%f)7T0LlV)45H`mm+)x7!Smn5`N_~fR7(3b z?_U1C*zxndfBv)MUj5o~la(G_=i2xwupv&1LlPWm0~BpIlvTR_&QsC5`+VCADTVt= z^b+#W>4E=z>|E0j+{>Eo{$+~zl#^gN%=YePfPtHD$LCrkaw9JBE*DvLwXYoXBX(=N z?qyg_*y`Q&cbStb`VcBd>y=t@l6+>pET0J|3d4YK={8;1$(#h}J%=`|67eGU3?Hlf z6Vui5Zz**!fLuMqG#fpgDceE+*+avrD@jJd)b}`uI4D#j`(Nr^8UU5c_C$JNV}*$fL;g1X z#3D!BTk;*(IK*HO+l`*?q~~bAuQKaCQS7F-r^g;Gz=OmlblAc7g&-_vc@R*MBJo8DhcxR>oGHm^;Kwc-7)*+6x#O=QSlU=)ae&<4B%M_{7FAAim1s~{?Buh^} zei({$JoNlo^J%GQ>5p;Y7r|8W#%N<=V(&0GVUfN43z9J5r|9>Da3~C>;b1Yt5tPhl z7OPGv$$*Mf6T+PK$1|E(^2_{bUZ=S;A{9-bd<*?<=8#MVS5TIb2{8E zQu^PoCHhx#(d(CEB?Lc?yB=xZRlDkROe=O8t>0Ou%PHIWw(Tq6P9(!c=q!x1G)f`2Ki787VFnN&QZXJmlF zCTV-(aUTCOvN$#PYKae)uo4+l$qzzdN(0WH^Mh5t@|QKEaFz{5hy>{3tbe3sAyzpK z8glxKsSRloDo0=4u-|FH{OC<91>}AjKl{^nM z-up+<7Ot4*HO8PYb;7`BD|Y_9l0vj?JEig+m+qG(Dd$dV&0B8%fz4ORZ;T-&&uaxg zyX9ASdEo#KUF1+SBR=81AvmsJa_jL`6TjGxl^JGMZPofHkGdJh*Vw)93`qf2Lst%~RbDC_;-4WB|=+P^=P++AqurH8w2e;-1{_ znAnW8fbQ)NWvhR;Y?kFtZ>2<}uu3r1oF|kFy(7j}KQ>xZ6)NbJ3eHZlG(l1xt8&*E z)FTXbI|Uu3CWqtRx}=JgD7gKhC|hW`TkB{%eJa-0a<-mimYrk?1+`?(yzSa}4eEof zXIrr`-iu?WNqtC+Q}bZ7-W`~yN-?TSe0vrGWq}fou+fw@%V(T zq#3hM;`#R`lsQ=k3voTI6VWgD_i6&IItV)vosL1Idf{zcdneAHRR?S-J-;tM8XB`q zY3t)sdHw(WFzvc~Pz!Ts=uFbp2U!|E_UzMSfQuUlhbsinWck`;C7hr6P}KL}Ub(27 zyAH@@x?u!bOG>^;PP1Ev2SqIws;plByOKcOe2#q+Y57mGJ6a$%Ea}*BeJ-2cMB39I z8B_P}tFH@tleH_lcX4dX+bh^H1)pKT(p`4C*+~MybW?*BhRo7p_wiYOAKR#pYsT`_Fc!)FOWpRqLSQ^q zUcbH4E5fn6rFpRyd3yh!y6Oi{z2c|G3&y;ocSL6={ednXbrjILz z@9=k5H%{)$t%`5(_|lNUwfb>A2O|i{c7~#ynxaFoeQuyE}d5D@Z1y?C_LiVzASuMDB+}%a3{di z&wkhHXXW#=i_bm#dJXznD)&;Cl`ynmYe$C5l1(o%QYYLfFhOp=<>>zco(*C0{I;hL zfiekiji36^>MV-iH~8iF#iQ|)@qOL%Qw6x+@hQ&hq15@^g-b^d8};yPZj)OX_0d** zdbKkZ0Pt3TFOk3vb!{p%ecJHhEl+83X--bIm6!?yR^Q{DZh;8eYQJ1R*-?LQOm}~M z4|tkxfE}Kfeev~cxAY!0LJ{>z$?@fznGOIT5R_C1$|dH`dhq#^PH505O=CnKlWxwN zZjJ9(@cmMrbUN|roR?Iewd&iSez^SFKG#}w2P-|(N`0`6sR96nAAX`k%u^uf1Pd@v4*XL)`N>31a z%=U^=pTLf9IxPSXBtAoor%VC>Fh7tp_?}xkc4&Y4=<3zv1#{j`u{+~yE-LIwljr+! zZj~0ukh!=4?0sXpEuP=;EAH!I^W(SQUpi#W1JmaT+8?vMX`?>rv;e#nz%>K>UP87N z0BbOD%z&O}p5CNakhKHp)_AFEe3w8N3cge0tDW597P!*%e5mnXvTWs}eFu-9ZV5lH z{h`neg&&<>pQA1BZ8|8B2qu2vj4VHp^Vrnk_qJ$$LZ`#ams8gA_}NuKHIb!V)oU76Er{29*p<%dwf!Zo{oN`698xlkP2a~5bh*_mVo97 zo_hSgiOo)I&<3_KDX9sz-xF};ToHQN4t;+-Wlvj0>$?!q) z_L$30Nht>N7Nz&ff_;T#)we&b=yAu0TlenWi`$yWggbupj=Ot!&k@kqC4s_M0c8+{rP#gd-af)p^)VfvEqk7+V!_u5n>!s)5+;Byc} zr!*+lQAcUaT2$6GzC-wb`t8@Lk3HA>qopg?3Bu2x>L~8+U^b9G=D)ZAAc6p*LSkgd z2EjRPPN{uck1h}TwFK#o;sh0Z^?3W6uY&;qsQDk6`M>{L^x+q9mM^dQWx}6!-e254 zfb98vk_;n5NQb~D$Zp-L>5;ehyk=^{`p48OS5AKJfJ?*rKspT@2pe@tHFkjVWWVuz zt;O-#uLI?BaCle$^82q3Pk#Y4|6i8ygV1A^myh@qi_1;ze2xI>g|KD_ zEkX84$2Z99->3Wd6B^cQR^jl&+ya~CnRW=S55Z5D#!qv1O7-I))cO67YgUYZ@TvZ* zzW)ghdqcs8pQ!n9VLKn|_h&|ZjzUQR04Wi_pdJt1z-%$K1P~p1Xwty@8#k)ox^fye z+Txe+rAl$UqfGjdFYB3H)d)b6>)RiH`RI;5;|A>AyBA9vFxtb@9&uBvVikU#r|V}g zwJZ42X)h3Df zsl^Mv$oY#c+^HJRlCS_g6++O7J^@dM&?01yzpvj-CpT?$i>iRmh|}ZBvH%n(-BF#g z9M+Tx7!!!nGJ$2oz6SHV~4W`A6u_>L+#440GeJOl`#{1T_)NWcn{EvVI|kkzy9&#ytfvQ zd1>za?*-up!RLivwvnybV5ez(N|FNcO%{CuelZPhxyV}s`u~qk9x|v=!+IBkHGog? zaC&}A#nk5FVA1$Ev7q&TSiR-l(7`k&C z2s@TEh@}m(vgZ9F{QHXnnOFkM8Y3OzX;D_k^IF%v{L=P)>mF09Ma>%dfd$4Xz=0oQ z-*~WTeCYW4e>Rgfzy107oYxjioHzd?*s&QkJumoR4KT)EDm1_7l%_uW!Ji<~A(eCN z00AV@#tiR$O_RnA@2F8dF9Q;1;zzHc{V5*(^MVh;fp#Y(w*J|$Iq~&3s~;LXV(JT) zfb*JPMtMYM*WUyb!yxTX3M8`xXq9APQr5Zh6#7yj{G|~9D(4tMfICizK)~N46UOwrxnccdx&sKRR1S82u?`T$V2MlhBcYUG z)8=jD$JM_*)o;keC#?0kDCjb+kINTDz7PE@HNsz70U!f`xY!Ekz)_@|w`?P8e*f$B7hitonI+4XLj@-~v^)Ut zZxG?Z*uE^eRjP!)Gy_0v8v;P|4ZMI5>D2L@2IsbG)%ECFHP5eFr4rGdXn!!&!>x}E&7cKy2x7Jc%B<(xP?XLk!$9v%{W}rG-x9ucr*R7xT{-R|s z&z-jj1Rot)-mw)mK5Bhl@Jk)vmyJ_ti2~{7P!=lX!=;!v5P^W}4&Z0xjF!!7UVd@A z%Z@s#`X%{!l`B-La5y>auw2)=16^av()WAz6p(E@b^^!Wxo+M1*XO*k=+!05mapeD zJ_<+olj0RjR8twm(mz*{=juY2@``T3O_SFCV2 zsamC?eWGMp5^z~xfa-18x`XW4xr=PtwC$Up*ZlGJ$Z?OuZfq#n@RQf_qQ>W)To7_` zv#L@r_%fk7Q083)1kpdhh!HRR)DrOjx?Fy4!P#+BvE9~Ody8vFx_RF*!` zXq0Y11^;&M{x`n%&wpkw`+UWMm*%|pgLTA^DEtTl{_lJl0}A~Cr}g=HJy0l+7k%TG zT=LN(ejz>&2GJTIeG1>!vrCH;8rEx*pI5n6r3&Tq%9lTkls_!je;IZuLC)TSePs9U zJs|L8`_5fkHf`R%+JtjTXxa=>W)vH}2Eq{xdJ z@qU8C3Ro5a0YiWGxbCv1jT#->vU;^D|EXBv@Z%0EmqTE&J`~_(r)eXvbmL^-zCr?p zX~66M-BSP*XZ41STfh9_hhLV>c<$AemeBLUENXZDcTwm?2ls$*a&=>TAX@+xki|v# z=p$gYsjcw^I>i5-2ScdYNyq24Kj*Y&wQJRAQnhl$lgpLMsSS&Ba4~x%1aCu?owYn(q z{OT;cPvrQ#ravIHep#{rUQWG?8X*XHFo=NQg&!=1cu(kvBdXf{#EzLFWZt z7STb9!&4m?^8;S+4`e4;XVtu@5&8(cuONcKL4~Xhz3^{57|`jqpLyn~&8i=FeBC2! z=2fj(v10jZIk`D`IXT&tGb5Rmva-VEbF#CKF=>3kzJ0$H7RGiLMT@o<6ztnpu(x3I zjvc!uG|3D6dn#hicMSyES zczJ(;k07b6gv%0er{duA_~(iihzF*MdWyVS)WG<=Oz=g`FIoWE_xy8Y@51pcGaCP3 z1Ar=rfWj#A7x*evQR9Op;J=68#WD@i5f_tqqJ`q;ga-gmJ4CI_C!S>g&zB^KueT?BM+1v2TY&ibjqpt2I8rWa`y3OoFr2bfCvh#(NHfy@es5gHw(kx{HNPjkG4 z<6s7Wmlage7LnKMeito^&hmQs07y?%eu0X^dujMGPjPgb@elxp{ TEl5c$N!8RZ04mih$V&$R*Z&s% literal 20002 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 - - - - - - Fabulously Optimized - - -Click to redirect - - - + + + + + + + Fabulously Optimized + + +Click to redirect + + +