pax_global_header00006660000000000000000000000064143365204210014512gustar00rootroot0000000000000052 comment=a996b2cec65aadd04ded780f141b02c5bdfbeb32 swappy-1.5.1/000077500000000000000000000000001433652042100130415ustar00rootroot00000000000000swappy-1.5.1/.clang-format000066400000000000000000000002031433652042100154070ustar00rootroot00000000000000# Use the Google style in this project. BasedOnStyle: Google IndentWidth: 2 DerivePointerAlignment: false PointerAlignment: Right swappy-1.5.1/.clang-tidy000066400000000000000000000031421433652042100150750ustar00rootroot00000000000000--- Checks: 'clang-diagnostic-*,clang-analyzer-*,-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling' WarningsAsErrors: '' HeaderFilterRegex: '' AnalyzeTemporaryDtors: false FormatStyle: none User: jattali CheckOptions: - key: cert-dcl16-c.NewSuffixes value: 'L;LL;LU;LLU' - key: cert-oop54-cpp.WarnOnlyIfThisHasSuspiciousField value: '0' - key: cppcoreguidelines-explicit-virtual-functions.IgnoreDestructors value: '1' - key: cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic value: '1' - key: google-readability-braces-around-statements.ShortStatementLines value: '1' - key: google-readability-function-size.StatementThreshold value: '800' - key: google-readability-namespace-comments.ShortNamespaceLines value: '10' - key: google-readability-namespace-comments.SpacesBeforeComments value: '2' - key: modernize-loop-convert.MaxCopySize value: '16' - key: modernize-loop-convert.MinConfidence value: reasonable - key: modernize-loop-convert.NamingStyle value: CamelCase - key: modernize-pass-by-value.IncludeStyle value: llvm - key: modernize-replace-auto-ptr.IncludeStyle value: llvm - key: modernize-use-nullptr.NullMacros value: 'NULL' ... swappy-1.5.1/.commitlintrc.yml000066400000000000000000000000631433652042100163450ustar00rootroot00000000000000--- extends: - "@commitlint/config-conventional" swappy-1.5.1/.github/000077500000000000000000000000001433652042100144015ustar00rootroot00000000000000swappy-1.5.1/.github/workflows/000077500000000000000000000000001433652042100164365ustar00rootroot00000000000000swappy-1.5.1/.github/workflows/build.yml000066400000000000000000000015241433652042100202620ustar00rootroot00000000000000name: Build on: [push, pull_request] jobs: build-gcc: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v1 - name: GCC run: | sudo apt-get update sudo apt --yes install libgtk-3-dev meson ninja-build scdoc pkg-config --list-all CC=gcc meson build ninja -C build build-clang: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v1 - name: Clang run: | sudo apt-get update sudo apt --yes install libgtk-3-dev meson ninja-build scdoc clang clang-format clang-tidy CC=clang meson build ninja -C build echo "Making sure clang-format is correct..." git ls-files -- '*.[ch]' | xargs clang-format -Werror -n echo "Running clang-tidy..." run-clang-tidy -p build swappy-1.5.1/.github/workflows/lint.yml000066400000000000000000000006241433652042100201310ustar00rootroot00000000000000name: Lint on: [pull_request] jobs: commitlint: runs-on: ubuntu-20.04 name: "Commit" env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@v2 with: fetch-depth: 0 - uses: wagoid/commitlint-github-action@v1 with: configFile: "./.commitlintrc.yml" firstParent: false failOnWarnings: true swappy-1.5.1/.gitignore000066400000000000000000000007501433652042100150330ustar00rootroot00000000000000# Prerequisites *.d # Object files *.o *.ko *.obj *.elf # Linker output *.ilk *.map *.exp # Precompiled Headers *.gch *.pch # Libraries *.lib *.a *.la *.lo # Shared objects (inc. Windows DLLs) *.dll *.so *.so.* *.dylib # Executables *.exe *.out *.app *.i*86 *.x86_64 *.hex # Debug files *.dSYM/ *.su *.idb *.pdb # Kernel Module Compile Results *.mod* *.cmd .tmp_versions/ modules.order Module.symvers Mkfile.old dkms.conf # Temporary files *.ui~ # Build folders build/ release/ swappy-1.5.1/.versionrc000066400000000000000000000002421433652042100150520ustar00rootroot00000000000000{ "bumpFiles": [ { "filename": "meson.build", "updater": "script/bump-meson-build.js" }, { "filename": "package.json" } ] } swappy-1.5.1/.vscode/000077500000000000000000000000001433652042100144025ustar00rootroot00000000000000swappy-1.5.1/.vscode/c_cpp_properties.json000066400000000000000000000011641433652042100206370ustar00rootroot00000000000000{ "configurations": [ { "name": "Linux", "defines": [], "compilerPath": "/usr/bin/clang", "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "clang-x64", "compileCommands": "${workspaceFolder}/build/compile_commands.json", "compilerArgs": ["build"], "includePath": [ "/usr/include/cairo/", "/usr/include/gdk-pixbuf-2.0/", "/usr/include/gio-unix-2.0/", "/usr/include/glib-2.0/", "/usr/include/gtk-3.0/", "/usr/include/pango-1.0/", "/usr/lib/clang/11.0.1/include/" ] } ], "version": 4 } swappy-1.5.1/.vscode/launch.json000066400000000000000000000101251433652042100165460ustar00rootroot00000000000000{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "swappy - geometry", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/swappy", "args": ["-g", "0,0 200x200"], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [ { "name": "G_MESSAGES_DEBUG", "value": "all" } ], "externalConsole": false, "preLaunchTask": "build", "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] }, { "name": "swappy - file", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/swappy", "args": ["-f", "docs/images/screenshot-beta.png"], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [ { "name": "G_MESSAGES_DEBUG", "value": "all" } ], "externalConsole": false, "preLaunchTask": "build", "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] }, { "name": "swappy - file (small blue)", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/swappy", "args": ["-f", "test/images/small-blue.png"], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [ { "name": "G_MESSAGES_DEBUG", "value": "all" } ], "externalConsole": false, "preLaunchTask": "build", "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] }, { "name": "swappy - file (large)", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/swappy", "args": ["-f", "test/images/large.png"], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [ { "name": "G_MESSAGES_DEBUG", "value": "all" } ], "externalConsole": false, "preLaunchTask": "build", "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] }, { "name": "swappy - file & stdout", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/swappy", "args": ["-f", "docs/images/screenshot-beta.png", "-o", "-"], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [ { "name": "G_MESSAGES_DEBUG", "value": "all" } ], "externalConsole": false, "preLaunchTask": "build", "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] }, { "name": "swappy - stdin", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/swappy", "args": ["-f", "-"], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [ { "name": "G_MESSAGES_DEBUG", "value": "all" } ], "externalConsole": false, "preLaunchTask": "build", "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] } ] } swappy-1.5.1/.vscode/settings.json000066400000000000000000000001471433652042100171370ustar00rootroot00000000000000{ "mesonbuild.configureOnOpen": true, "files.associations": { "*.h": "c", "*.c": "c" } } swappy-1.5.1/.vscode/tasks.json000066400000000000000000000006161433652042100164250ustar00rootroot00000000000000{ "version": "2.0.0", "tasks": [ { "label": "build", "type": "shell", "command": "ninja", "group": { "kind": "build", "isDefault": true }, "options": { "cwd": "${workspaceFolder}/build" }, "problemMatcher": { "base": "$gcc", "fileLocation": ["relative", "${workspaceFolder}/build"] } } ] } swappy-1.5.1/CHANGELOG.md000066400000000000000000000426101433652042100146550ustar00rootroot00000000000000# Changelog All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. ### [1.5.1](https://github.com/jtheoof/swappy/compare/v1.5.0...v1.5.1) (2022-11-20) ### Bug Fixes * **ui:** use *-symbolic variant of toolbar icons ([5dc44f8](https://github.com/jtheoof/swappy/commit/5dc44f8970b0f6cdf21466bc2689ec2aa93a4385)), closes [#34](https://github.com/jtheoof/swappy/issues/34) ## [1.5.0](https://github.com/jtheoof/swappy/compare/v1.4.0...v1.5.0) (2022-11-18) ### Features * **config:** add early_exit option ([60da549](https://github.com/jtheoof/swappy/commit/60da5491e243c9edd85f6225326a68ae5e3edfd5)) * **config:** allow paint_mode to be configured through config file ([2f35f02](https://github.com/jtheoof/swappy/commit/2f35f02b4e89bf67b6e9cc461e874331d8ce2a4c)) * **config:** try to create `save_dir` if it does not exist ([4fb291a](https://github.com/jtheoof/swappy/commit/4fb291ad4b0b116afeaa7094b040083111b74674)) * **ui:** allow filling rectangles and ellipsis ([8ee55f7](https://github.com/jtheoof/swappy/commit/8ee55f7d52ce6ac71752981863f5795fef460049)), closes [#120](https://github.com/jtheoof/swappy/issues/120) ## [1.4.0](https://github.com/jtheoof/swappy/compare/v1.3.1...v1.4.0) (2021-09-06) ### Features * **draw:** draw shape from center if holding control ([d80c361](https://github.com/jtheoof/swappy/commit/d80c3614895d3b5da479831c651cc1afa2fcf916)) * **i18n:** add french translations ([cacb283](https://github.com/jtheoof/swappy/commit/cacb2830e4cc41010d6ab96655054d2eb1651651)) ### Bug Fixes * **desktop:** remove annotation from desktop categories ([0d383f6](https://github.com/jtheoof/swappy/commit/0d383f690b99026c340eab1efa590c48d54e7368)) * **desktop:** various fixes ([42425c0](https://github.com/jtheoof/swappy/commit/42425c0657a65b3f66ba4f64b1727c8198a70684)) * **i18n:** add german translations to desktop file ([c6b09e5](https://github.com/jtheoof/swappy/commit/c6b09e56399369b14a8de090a2239350dbe4aca8)) * **i18n:** add turkish translation to desktop file ([fa5769e](https://github.com/jtheoof/swappy/commit/fa5769e9406b8ab1b67aca3bff2656850362491e)) * **i18n:** properly set translation domain during layout init ([5301aeb](https://github.com/jtheoof/swappy/commit/5301aebd5e5534453621db7168b8afac5d7810f2)), closes [#92](https://github.com/jtheoof/swappy/issues/92) * **pixbuf:** handle invalid input file ([cdbd06d](https://github.com/jtheoof/swappy/commit/cdbd06d7af94b4aedfc2bda2231da8853f775f3a)) * **pixbuf:** handle overflow when filename_format is too long ([185575b](https://github.com/jtheoof/swappy/commit/185575bf75281eba8a0bc49b3da59225bdd9e1c7)), closes [#74](https://github.com/jtheoof/swappy/issues/74) * **po:** update GETTEXT_PACKAGE value with project name ([7fd552e](https://github.com/jtheoof/swappy/commit/7fd552e8c41f29711212d7f70edf61ac6ada7a7d)) * **release:** properly check sha256 remote content ([91985c7](https://github.com/jtheoof/swappy/commit/91985c7994764f52c8e9d864db8ec9cf2eb1df5c)), closes [#90](https://github.com/jtheoof/swappy/issues/90) ### [1.3.1](https://github.com/jtheoof/swappy/compare/v1.3.0...v1.3.1) (2021-02-20) ## [1.3.0](https://github.com/jtheoof/swappy/compare/v1.2.1...v1.3.0) (2021-02-18) ### Features * **cli:** add configure options for filename save ([597f005](https://github.com/jtheoof/swappy/commit/597f0055b9c6230b25a7f7a7bf3f4e14c06b1fbb)) * **i18n:** add brazilian portuguese translations ([4a0eb82](https://github.com/jtheoof/swappy/commit/4a0eb82369a0859fafdcce9d242c086cd2360a84)) * **i18n:** add german translations ([b4be847](https://github.com/jtheoof/swappy/commit/b4be8476350771454b29b9ce29c62a3337acc736)) * **i18n:** add turkish translations ([c8419da](https://github.com/jtheoof/swappy/commit/c8419da7faef14223ada6853942a6d11e2acf92f)) ### Bug Fixes * **application:** unlink temp file coming from stdin ([c24e56a](https://github.com/jtheoof/swappy/commit/c24e56a165394e60b37534287e168e5d8e69627c)), closes [#80](https://github.com/jtheoof/swappy/issues/80) * **blur:** optimize blur to only render after commit ([27fcece](https://github.com/jtheoof/swappy/commit/27fcecedaeea49aaec6acdecbc51cbd865a13363)) * **blur:** rgb24 is properly handled ([c04ed63](https://github.com/jtheoof/swappy/commit/c04ed63d26e5012215198f7b41a7f2232dac1ebe)) * **clipboard:** wl-copy mimetype should be png ([a931acb](https://github.com/jtheoof/swappy/commit/a931acb2cff615badc63294ed121aba008f32ef8)), closes [#68](https://github.com/jtheoof/swappy/issues/68) * **notification:** notification shows the image icon ([eb53e5c](https://github.com/jtheoof/swappy/commit/eb53e5c2b28717f509dd58eab6da85897c0d6d9d)) * **ui:** adjust rendering surface with proper scaling ([9b72571](https://github.com/jtheoof/swappy/commit/9b72571596f9313d4efd94a4b17da8b3733fd2de)), closes [#54](https://github.com/jtheoof/swappy/issues/54) * **ui:** commit state before copying or saving ([46e5854](https://github.com/jtheoof/swappy/commit/46e5854b3cce93a82984b19ca90e3f3337952fe2)), closes [#52](https://github.com/jtheoof/swappy/issues/52) * **ui:** compute window sizes and buffers properly ([5bcffdb](https://github.com/jtheoof/swappy/commit/5bcffdbb01cc6e56f9c0f37de899b46efe68ed4a)), closes [#56](https://github.com/jtheoof/swappy/issues/56) ### [1.2.1](https://github.com/jtheoof/swappy/compare/v1.2.0...v1.2.1) (2020-07-11) ### Bug Fixes * **text:** properly handle utf-8 chars ([717ab0c](https://github.com/jtheoof/swappy/commit/717ab0c2d1757e10bb4eef17d35ccd6a991705c4)), closes [#43](https://github.com/jtheoof/swappy/issues/43) ## [1.2.0](https://github.com/jtheoof/swappy/compare/v1.1.0...v1.2.0) (2020-07-05) ### Features * **i18n:** add translatable desktop file ([cf3d7a5](https://github.com/jtheoof/swappy/commit/cf3d7a5283a7b8c34b05996f87b608513e0830ca)), closes [#35](https://github.com/jtheoof/swappy/issues/35) * **i18n:** setup i18n for swappy ([5b3c8ad](https://github.com/jtheoof/swappy/commit/5b3c8aded8fd4f9d00aa660a24127de0e1791d7f)) ## [1.2.0](https://github.com/jtheoof/swappy/compare/v1.1.0...v1.2.0) (2020-07-05) ### Features * **i18n:** add translatable desktop file ([cf3d7a5](https://github.com/jtheoof/swappy/commit/cf3d7a5283a7b8c34b05996f87b608513e0830ca)), closes [#35](https://github.com/jtheoof/swappy/issues/35) * **i18n:** setup i18n for swappy ([5b3c8ad](https://github.com/jtheoof/swappy/commit/5b3c8aded8fd4f9d00aa660a24127de0e1791d7f)) ## [1.1.0](https://github.com/jtheoof/swappy/compare/v1.0.1...v1.1.0) (2020-06-23) ### Features * **cli:** add -v and --version flags ([e32c024](https://github.com/jtheoof/swappy/commit/e32c02454ae4ec6ac30549d5fa9e80c2b64edb72)) ### [1.0.1](https://github.com/jtheoof/swappy/compare/v1.0.0...v1.0.1) (2020-06-21) ### Bug Fixes * **cli:** stop showing -g option ([ee06d66](https://github.com/jtheoof/swappy/commit/ee06d6685f6f59ffce544b45d7b51f3f4523348b)) ## 1.0.0 (2020-06-21) ### ⚠ BREAKING CHANGES * We do no support the `-g` option anymore. This tool simply makes more sense as the output of `grim` rather than trying to be `grim`. RIP my ugly wayland code, long live maintainable code. Next stop, rust? ### Features * **ui:** life is full of colors and joy ([a8c8be3](https://github.com/jtheoof/swappy/commit/a8c8be37ca996f3e1b752bca67eee594706bc08f)) * init project ([efc3ecc](https://github.com/jtheoof/swappy/commit/efc3eccc9e21892a6b0979126a23d21d3d6a3b3d)) * **application:** print final surface to file or stdout ([196f7f4](https://github.com/jtheoof/swappy/commit/196f7f4dea3ab569f0523171ae7c424b8e8423ee)), closes [#2](https://github.com/jtheoof/swappy/issues/2) * **application:** update app ([ce27741](https://github.com/jtheoof/swappy/commit/ce27741017554d6606e23434273f55476bc8ae37)) * **blur:** add multiple passes logic ([f9737d7](https://github.com/jtheoof/swappy/commit/f9737d78c96a5d9f4566c94702c3ec4a41d9e219)) * **blur:** remove blur configuration ([361be6a](https://github.com/jtheoof/swappy/commit/361be6aa8085143d9fd721e4c315c6b9e6fbdfca)) * **blur:** use rect blur instead of brush ([1be7798](https://github.com/jtheoof/swappy/commit/1be7798a8bcfc494b20489e2e1f8b0245f4b5e84)), closes [#17](https://github.com/jtheoof/swappy/issues/17) * **buffer:** ability to read from stdin ([02bc464](https://github.com/jtheoof/swappy/commit/02bc46456453e8530a3c9f1289dfce7e71371945)) * **buffer:** add file image support ([f6c189c](https://github.com/jtheoof/swappy/commit/f6c189c7b7f35ca4da75abaac0bd85c3d5ce5b09)) * **clipboard:** use wl-copy if present ([51b27d7](https://github.com/jtheoof/swappy/commit/51b27d768eef7fbbdab365fa94a81af5395b0e3e)) * **config:** add show_panel config ([307f579](https://github.com/jtheoof/swappy/commit/307f57956f105d22de2d8242313517b6a79ed4e2)), closes [#12](https://github.com/jtheoof/swappy/issues/12) * **config:** have overridable defaults ([ef24851](https://github.com/jtheoof/swappy/commit/ef24851deec2d6b7f76ed0fbbcd31b54b336cae3)), closes [#1](https://github.com/jtheoof/swappy/issues/1) * **draw:** convert wl_shm_format to cairo_format ([c623939](https://github.com/jtheoof/swappy/commit/c623939e02238f053312ad6367e761aec254c6fe)) * **draw:** draw the screencopy buffer ([2344414](https://github.com/jtheoof/swappy/commit/2344414102789975e6ce425a95e8b96159cf51ba)) * **layer:** use geometry size ([290d3ca](https://github.com/jtheoof/swappy/commit/290d3ca230d32ec2ef4036bf9e32f1e711fecd84)) * **paint:** introduce text paint ([3347bf2](https://github.com/jtheoof/swappy/commit/3347bf23bf17d4c2cc8e5b9bbadd657efafb28e7)) * **screencopy:** add buffer creation through screencopy ([bff8687](https://github.com/jtheoof/swappy/commit/bff8687fc81ebb57a179b1f50300f9c0cda793e3)) * **screencopy:** introduce screencopy features ([53c9770](https://github.com/jtheoof/swappy/commit/53c977080829c7e816db1a9ec45eb432f6b7b354)) * **swappy:** copy to clipboard with CTRL+C ([b90500e](https://github.com/jtheoof/swappy/commit/b90500ed34defcb8ebc67965c4dbb5d068ee8049)) * **swappy:** introduce file option ([c56df33](https://github.com/jtheoof/swappy/commit/c56df33d1880d22372e21ef0ebf5dd8805d65a76)) * **swappy:** save to file with CTRL+S ([af0b1a1](https://github.com/jtheoof/swappy/commit/af0b1a11a21faac04f8b43c4c9ef616ab5fd2b78)) * **text:** add controls in toggle panel ([c03f628](https://github.com/jtheoof/swappy/commit/c03f628de793e170d9f62c5b786fe18891bb6fa3)) * **tool:** introduce blurring capability ([fae0aea](https://github.com/jtheoof/swappy/commit/fae0aeacab6fb28e17975097c8b4c5c7e5ad57fd)), closes [#17](https://github.com/jtheoof/swappy/issues/17) * **ui:** add binding for clear action ([2bdab68](https://github.com/jtheoof/swappy/commit/2bdab684e1eace53ad7b78414ad467d312dc10ad)) * **ui:** add binding to toggle panel ([e8d2f12](https://github.com/jtheoof/swappy/commit/e8d2f12ce1737fa19972e5c4109e1c85cc2b157e)) * **ui:** add keybindings for color change ([c5ec285](https://github.com/jtheoof/swappy/commit/c5ec285ee73ddf90df2cb571e1d6c61159605c8e)) * **ui:** add keybindings for stroke size ([562a9a6](https://github.com/jtheoof/swappy/commit/562a9a6e92201677f31de126b646c619caf33863)) * **ui:** add shortcuts for undo/redo ([d7e7f2b](https://github.com/jtheoof/swappy/commit/d7e7f2b5ffd46aa36bed6ecc6709aeb94cce64ae)) * **ui:** add toggle panel button ([7674d7d](https://github.com/jtheoof/swappy/commit/7674d7db8ba8d97302a045af8d2383de37acb2d1)), closes [#24](https://github.com/jtheoof/swappy/issues/24) * **ui:** add undo/redo ([bcc1314](https://github.com/jtheoof/swappy/commit/bcc13140ebfdefa30431b288f089d23bb1df743e)) * **ui:** life is full of colors and joy ([606cd34](https://github.com/jtheoof/swappy/commit/606cd3459de3908e5fecdb7a49162ef3a9b52ab7)) * **ui:** replace popover by on screen elements ([8cd3f13](https://github.com/jtheoof/swappy/commit/8cd3f134bbd8e05523303914f6c8f3989e6b4502)) * **wayland:** added xdg_output_manager ([7b3549f](https://github.com/jtheoof/swappy/commit/7b3549fdd86fe1a945e1988bf22042c0f8dd6ed0)) * **wayland:** listing outputs ([5a55c8b](https://github.com/jtheoof/swappy/commit/5a55c8bbbd08ad717ddabac51be31483950d827f)) ### Bug Fixes * **application:** fix file loop and use of GTK object after lifecycle ([320dae0](https://github.com/jtheoof/swappy/commit/320dae02d0c6dca3fa2fd7ca934a85483ac2dd35)) * **application:** memory leak for pixbuf ([f9d70fc](https://github.com/jtheoof/swappy/commit/f9d70fc0e22274e6cbe74bfdf714cdf04e34053d)) * **application:** properly save output file upon clean exit ([b5cc433](https://github.com/jtheoof/swappy/commit/b5cc433d75d77759cef139e0e232bde79196f886)), closes [#8](https://github.com/jtheoof/swappy/issues/8) * **application:** suffix saved file with png ([7f2f6da](https://github.com/jtheoof/swappy/commit/7f2f6da754571771475558233f5a47813ec278dd)) * **blur:** adjust blur bounding box based on scaled monitor ([6b2ec90](https://github.com/jtheoof/swappy/commit/6b2ec90efd99e1979310b673ad40b3724669dac1)) * **blur:** blur based on device scaling factor ([1699474](https://github.com/jtheoof/swappy/commit/1699474c39fc305492c8bb03063c4582af4dbf9e)) * **blur:** use better glyph icon ([97cd607](https://github.com/jtheoof/swappy/commit/97cd6072c986c9a7c69306744390a6ddb6a44646)) * **blur:** use rendered surface after commit ([46fb08d](https://github.com/jtheoof/swappy/commit/46fb08dce17a820fcb500d2b6ff02f7d682f3c18)), closes [#20](https://github.com/jtheoof/swappy/issues/20) [#22](https://github.com/jtheoof/swappy/issues/22) * **buffer:** properly include required functions ([d787586](https://github.com/jtheoof/swappy/commit/d787586b9ed1d7e855ae2d416914d619636f41b1)), closes [#10](https://github.com/jtheoof/swappy/issues/10) * **clipboard:** handle bad write to pipe fd ([f963a76](https://github.com/jtheoof/swappy/commit/f963a76c5c01b9b5f81b97118bf1b9e6990d995d)) * **clipboard:** memory leak for pixbuf ([665295b](https://github.com/jtheoof/swappy/commit/665295b497d7ef124d5a2eeb7eb76964fdb3566a)) * **dependencies:** include glib2 ([992d97e](https://github.com/jtheoof/swappy/commit/992d97e94d2ebd32ac3e1901910050fae1954ed0)), closes [#11](https://github.com/jtheoof/swappy/issues/11) * **file:** properly check file system errors if any ([541ec21](https://github.com/jtheoof/swappy/commit/541ec21ca0efdec4d06c96f5ad1768b4219ed4ab)) * **init:** fix segfault for unknown flags ([f4e9a19](https://github.com/jtheoof/swappy/commit/f4e9a19407d8d1bfa59c08f6bf97617c662e1ac0)) * **init:** properly handle null geometry ([c4ea305](https://github.com/jtheoof/swappy/commit/c4ea305ae6ac9429bf44fdfc7218a30363439582)) * **man:** remove blur_level related config ([ceb907a](https://github.com/jtheoof/swappy/commit/ceb907a5dc736c7d44318b35fb911aeb2360d851)) * **meson:** able to build on standard platforms ([8abc5d5](https://github.com/jtheoof/swappy/commit/8abc5d52ec2962a111c6d44cdb5e9e209ac219c7)) * **meson:** remove useless cname in meson res file ([9b8ea64](https://github.com/jtheoof/swappy/commit/9b8ea64307b33eb010b8ba043919f3eddf935b19)) * **paint:** fix memory leak for brush paints ([aed2bfe](https://github.com/jtheoof/swappy/commit/aed2bfe29465aa5161155c1edda9d03cac607906)) * **pixbuf:** possibly fix core dump ([8a82e79](https://github.com/jtheoof/swappy/commit/8a82e796bb871b57fa6ab4d2ed8d761033370d8c)) * **pixbuf:** properly grab pixbuf size from cairo surface ([2adcf94](https://github.com/jtheoof/swappy/commit/2adcf944f4a7f2da5b5edf49a37922c43b2e477e)), closes [#6](https://github.com/jtheoof/swappy/issues/6) * **render:** better handler empty buffer ([acf2379](https://github.com/jtheoof/swappy/commit/acf2379ba3117ba6eb8c426e85a60ce71a3abe67)) * **render:** draw from last to first ([4b69ada](https://github.com/jtheoof/swappy/commit/4b69ada9a1469d3b6e106e07bf7155836b31d613)) * **render:** fix arrow glitch with 0 ftx ([ec6e6ab](https://github.com/jtheoof/swappy/commit/ec6e6abae7629800fec4c715957c4932946f51ed)) * **render:** properly scale arrow along with stroke size ([75bfc10](https://github.com/jtheoof/swappy/commit/75bfc10fb7a5507b66bd6d19ab06f2f6a393bb6a)) * **resources:** compile resources and fix error management ([05d87c9](https://github.com/jtheoof/swappy/commit/05d87c929ff8b3311cd5db111cd2f53a32c35a19)) * **string:** fix algo to insert chars at location ([bc3264e](https://github.com/jtheoof/swappy/commit/bc3264e9f11bb4f3a02d7f5ae92ef8a4d2b42513)) * **ui:** add stroke size increase/decrease/reset ([5930c99](https://github.com/jtheoof/swappy/commit/5930c99b9e0208148d6bc8cf0fc3aa8f69dbd36d)) * **ui:** move paint area inside GtkFixed ([50e7c97](https://github.com/jtheoof/swappy/commit/50e7c97042805f5550d2a62d45c8e49208d7632d)) * **ui:** prevent focus in panel buttons ([903ad11](https://github.com/jtheoof/swappy/commit/903ad114f516981c8d0644f704af9c722f74a61f)) * **ui:** small tweaks ([2b73777](https://github.com/jtheoof/swappy/commit/2b73777142141598c14d37d1b6fa9573de12d914)) * **ui:** tweak button sizes ([425f455](https://github.com/jtheoof/swappy/commit/425f455ab7665a046060fe140c861aeb7ea8209b)) * **ui/render:** adjust rendering based on window size ([445980b](https://github.com/jtheoof/swappy/commit/445980bbf4702e59113fab506b2e9e36ad931666)), closes [#6](https://github.com/jtheoof/swappy/issues/6) * **wayland:** initalize done copies to 0 ([65cefc1](https://github.com/jtheoof/swappy/commit/65cefc1da7fed86508301250ffc1b6dbc9fd3692)) * **wayland:** replace g_error by g_warning ([64bfc2b](https://github.com/jtheoof/swappy/commit/64bfc2b3a71ed00d0dc1102501ac85792735833f)) * **window:** quit when delete event is received ([0c5e458](https://github.com/jtheoof/swappy/commit/0c5e458d4c44a2e2e2b4451b4576724aef2a06b0)) * refactor!(wayland): remove wayland code ([204a93e](https://github.com/jtheoof/swappy/commit/204a93eb0f696bc7be8335d46212c6024e3b2c51)) swappy-1.5.1/LICENSE000066400000000000000000000020561433652042100140510ustar00rootroot00000000000000MIT License Copyright (c) 2020 Jeremy Attali 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. swappy-1.5.1/README.md000066400000000000000000000134671433652042100143330ustar00rootroot00000000000000# swappy A Wayland native snapshot and editor tool, inspired by [Snappy] on macOS. Works great with [grim], [slurp] and [sway]. But can easily work with other screen copy tools that can output a final image to `stdout`. See [below](#example-usage). ## Screenshot ![Swappy Screenshot](docs/images/screenshot-1.0.0.png) ## Example usage Output of `grim` (or any tool outputing an image file): ```sh grim -g "$(slurp)" - | swappy -f - ``` Swappshot a PNG file: ```sh swappy -f "~/Desktop/my-gnome-saved-file.png" ``` Print final surface to stdout (useful to pipe with other tools): ```sh grim -g "$(slurp)" - | swappy -f - -o - | pngquant - ``` Grab a swappshot from a specific window under Sway, using `swaymsg` and `jq`: ```sh grim -g "$(swaymsg -t get_tree | jq -r '.. | select(.pid? and .visible?) | .rect | "\(.x),\(.y) \(.width)x\(.height)"' | slurp)" - | swappy -f - ``` ## Config The config file is located at `$XDG_CONFIG_HOME/swappy/config` or at `$HOME/.config/swappy/config`. The file follows the GLib `conf` format. See the `man` page for details. There is example config file [here](example/config). The following lines can be used as swappy's default: ``` [Default] save_dir=$HOME/Desktop save_filename_format=swappy-%Y%m%d-%H%M%S.png show_panel=false line_size=5 text_size=20 text_font=sans-serif paint_mode=brush early_exit=false fill_shape=false ``` - `save_dir` is where swappshots will be saved, can contain env variables, when it does not exist, swappy attempts to create it first, but does not abort if directory creation fails - `save_filename_format`: is the filename template, if it contains a date format, this will be parsed into a timestamp. Format is detailed in [strftime(3)](https://man.archlinux.org/man/strftime.3). If this date format is missing, filename will have no timestamp - `show_panel` is used to toggle the paint panel on or off upon startup - `line_size` is the default line size (must be between 1 and 50) - `text_size` is the default text size (must be between 10 and 50) - `text_font` is the font used to render text, its format is pango friendly - `paint_mode` is the mode activated at application start (must be one of: brush|text|rectangle|ellipse|arrow|blur, matching is case-insensitive) - `early_exit` is used to make the application exit after saving the picture or copying it to the clipboard - `fill_shape` is used to toggle shape filling (for the rectangle and ellipsis tools) on or off upon startup ## Keyboard Shortcuts - `Ctrl+b`: Toggle Paint Panel
- `b`: Switch to Brush - `t`: Switch to Text - `r`: Switch to Rectangle - `o`: Switch to Ellipse - `a`: Switch to Arrow - `d`: Switch to Blur (`d` stands for droplet)
- `R`: Use Red Color - `G`: Use Green Color - `B`: Use Blue Color - `C`: Use Custom Color - `Minus`: Reduce Stroke Size - `Plus`: Increase Stroke Size - `Equal`: Reset Stroke Size - `f`: Toggle Shape Filling - `k`: Clear Paints (cannot be undone)
- `Ctrl`: Center Shape (Rectangle & Ellipse) based on draw start
- `Ctrl+z`: Undo - `Ctrl+Shift+z` or `Ctrl+y`: Redo - `Ctrl+s`: Save to file (see man page) - `Ctrl+c`: Copy to clipboard - `Escape` or `q` or `Ctrl+w`: Quit swappy ## Limitations - **Copy**: If you don't have [wl-clipboard] installed, copy to clipboard won't work if you close swappy (the content of the clipboard is lost). This because GTK 3.24 [has not implemented persistent storage on wayland backend yet](https://gitlab.gnome.org/GNOME/gtk/blob/3.24.13/gdk/wayland/gdkdisplay-wayland.c#L857). We need to do it on the [Wayland level](https://github.com/swaywm/wlr-protocols/blob/master/unstable/wlr-data-control-unstable-v1.xml), or wait for GTK 4. For now, we use `wl-copy` if installed and revert to `gtk` clipboard if not found. - **Fonts**: Swappy relies on Font Awesome 5 being present to properly render the icons. On Arch you can simply install those with: `sudo pacman -S otf-font-awesome` ## Installation - [Arch Linux](https://archlinux.org/packages/community/x86_64/swappy/) - [Arch Linux (git)](https://aur.archlinux.org/packages/swappy-git) - [Fedora](https://src.fedoraproject.org/rpms/swappy) - [openSUSE](https://build.opensuse.org/package/show/X11:Wayland/swappy) - [Void Linux](https://github.com/void-linux/void-packages/tree/master/srcpkgs/swappy) ## Building from source Install dependencies (on Arch, name can vary for other distros): - meson - ninja - cairo - pango - gtk - glib2 - scdoc Optional dependencies: - `wl-clipboard` (to make sure the copy is saved if you close swappy) - `otf-font-awesome` (to draw the paint icons properly) Then run: ```sh meson build ninja -C build ``` ### i18n This section is for developers, maintainers and translators. To add support to a new locale or when translations are updated: 1. Update `src/po/LINGUAS` (when new locales are added) 2. Generate a new `po` file (ignore and do not commit potential noise in other files): ```sh ninja -C build swappy-update-po ``` To rebuild the base template (should happen less often): ```sh ninja -C build swappy-pot ``` See the [meson documentation](https://mesonbuild.com/Localisation.html) for details. ## Contributing Pull requests are welcome. This project uses [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) to automate changelog generation. ## Release We rely on [standard-version](https://github.com/conventional-changelog/standard-version) which is part of the JavaScript ecosystem but works well with any project. ```sh ./script/github-release ``` Make sure everything is valid in the Draft release, then publish the draft. Release tarballs are signed with this PGP key: `F44D05A50F6C9EB5C81BCF966A6B35DBE9442683` ## License MIT [snappy]: http://snappy-app.com/ [slurp]: https://github.com/emersion/slurp [grim]: https://github.com/emersion/grim [sway]: https://github.com/swaywm/sway [wl-clipboard]: https://github.com/bugaevc/wl-clipboard swappy-1.5.1/docs/000077500000000000000000000000001433652042100137715ustar00rootroot00000000000000swappy-1.5.1/docs/images/000077500000000000000000000000001433652042100152365ustar00rootroot00000000000000swappy-1.5.1/docs/images/screenshot-1.0.0.png000066400000000000000000013217251433652042100205660ustar00rootroot00000000000000PNG  IHDRCl4sBIT|d IDATxy`\uwf-K$˶, ؆ئ!45[6md$P \m67x-ZlK^4fyɶp>87o=|=Fo|?s     H-AAAA&A AAAAAH AAAAA`>,I"q퓥jjJ1)lvN@P,2 ,QHJr}}ȂpqD2t zw    bcXZboGK$}ͳfa$G9}wM[PY=le9ށTiT +a9a`}TdR_8z ``H 8G.Cو $_r    ZkR̾$&^|gA$0e2&;d]ƂTw70xe1c d } er&s10,P` Jj\q'   (6k%ZJ1R2N4L4( '3}E%d`(DW\q'   (6{ŵR̾8oo"=rh~Ec pnxq=kp    a^kqo ŻZEAAAAqP     ^?ɷePo:˞2w}鳘>urzێ0zDAAAQ3gLue|掻ΓGvͽ'O?흳W_ʷە!s v$+&OS'Q    иOF*?/휳Woo % aB8;[m;ۥB؟    [v'C\9r|qu6 vڃ?^\a8\t2~OHd$f_24a8vdAJAAAq~e|@:Ҙ=kfϚ>v)Y3q縈 Q)AAAA W%d֬dž[_ߪGګ ofl߹(P?3gLE.Kb߁V9l[Ķf[    \c{^ tׇ_XY|K;v_8,|7XӧMq+إH%    MeeJ~s/N:uN#zA+[Li9٩?P    bX~3?/B(@zVH$5"[e AAAA |X|UZy{Ξ }5q v^G<:+M AAAAA#|~r}M!PS3^VCK0پc7ƍåg?3"    ^ l۾+2gݻ?)_9_xC7ƇL_KfK7ڎ`d4\~,\~,~ϳgAAAAĹ_>Bl^ڴIds9]G:z{3عe<Eq6tvôQ[ST*9.AAAAyz-x;>8.̡#8vd(M[cimv!   bl˝ Oܝ_n    ^Эv'oz2     ^o^'     Aɒ2Ϝ _b9uҒ`scg8o;\]q'   (:yŹR̾)ZUSw=*YsG*e^M$(PdM r    ^kqo*/Rطi+lt^͜:=/m[LcnJ eן)'y. 0ҸOiz$r\bzBspC.Ciiq 9AAAApYK)fTؕWT*[$,@wg'Ϫo55Hf k3ɢ"c T FW:Ws9巺9LPZZD"iB;AAAAD1k-qR73Y %    Р&OAAAAīZ %    U-AAAA ߗn     9ڱ APZnCcv    zƪ"h`&wzAPl#3_&S::8E:: cNѩ`tt;1Zh`z2 ⁩`M6?!6CɚZ5nj1U-WZloSKGTƋEIzB+RgQk^o,l~:X{XydS'~J9ASơYOhV'֠<^yDe:cMVa7=`M:ʚ.X9ԐbLz HɯZz@B7 nMz󟮣4ZUG:4'6IO}ԁyRefmf>QGFS<lz.Lyږ_u6جAOCi q͓UQ Ys>P xYZ)D\o6fD+j-?3#ySɃQ ơLzڧUxyH:"J&s@RZmZ %x_ V# 3Yj~)V:-[J~9,Xؾd Zd~2?Ѫ:2Zr\Vudr|mz:tkީOc,ueO c 4h~j: 8{>TV4n?#hw:d2iө}@ջ)YYOeXt ꟤; rw-TuBx"4F7Oͫz$']`]hŒLKV{ޟt,ڠ5=F ^n *]On0GJ~i7\Ӽ`f7H5C1KS;Qz:j6B=SO~F,t41]6PҼ 5?tӶy\xiq4Pnєe=y_jy^n= qS`Tq詎i@nՔT=mLɔ}MIiAh1 Ad;dEh~:g?TkOtk`%+5l"+vǓAMO*~hqqXՑUuQ9^LVztKkd=-ŨS~Fѥ.sE~Fw3"IOhVӘ\K6=y0'dkOjVlmy\O[uUiɃ<^zZ J}"T'tR\;-#<'s9dNuuv8|L)Lsƙ֋9Dzڋg-Yu1 *U1yKF{x*!#aь=no 3l;TvkDg!VHJf;؈Ӿ0a+y'X5LO?r=CN`QTU'ī{4`QA_'&\oLcծna3a>h6+TB=-f=!MnM`tf%+ᰬ t4_7V u|r D,=# jxӀIG[IGagS0Nd=m bh0M y'x3&UN c!Z\t(tn{VlXkOB\TAlx)YsPg;͟0*̚RC10ܮ90Oڝla6* \)6r_~{6`ar-$e;f=m}GۦK.O':v+uu 3Y&OXӿ-Ɏ_EɶSO:%8qzS(=ݮQO=@G??GǀsPKnܴ]_ ZWL}M1cʅ2)/Y"^=N?-ܟZě&R/Cݥϡ]y֐_ ZXsR"m/ytLd}{6hs=CPQqx/a~KxB:tt1gw(UGpk'|=`,ꬣ g:fqkY&kY1(AUc]Y=a)ƪ>tuno$XhNK~ZtUaLc!s N<4fX%ć $kPQlS&YN-цߎlCJϘl5[VyaF3XOB_$+5ku`h_MW?Y5Y7g դgh@S]* `~|2 6=UX?J%臣Pe<ʽt ;G?Z"Fr6VȦܠЬ1T#zR?K$``, 6ߖD"a p,oM}cm/h7o98f58Fwܻ~T_M{>!m݋|,O27i?3Nxqy^ QP`c$RkWNP.e?5Oۉ.4O?VJoSMF? 駭6n=d74lO|5GGR jwX漠\hҼ֪5V zݜ,Gd`lK:|'R1~ LJE=%?*II[ H1;&@vv񵎆" 0 `A6/øşDn4|?ǥN&R/޲ϡ_aދ8#ӭoD"ďE8ŏs&W5q 4_>*9:a0:F>sXu_.|`Z'T:'BMzlj}'B}kfX3KĚHWMe3B!NDd:dzNt@)R )K!B(0vDjI1aD[:dI #HwcML?lŖ{,$ "ЬɆ2xVU ~6[Òr<?`U,CSɥ's;]ughmzG_l?LuwؙlszJEB 3= oYI}{۹0o•Zui3_ LƌLǐz\Ӂr,mJ^\ZLS.LC~SLyE=n~0W,|5*MG~0 >.]u{H5(Vy%Oe5ՂJq5NsɤhWtMPqEvcaPTZ vpz&t_\,TS/ì1kWGQ$P降V# Ɇ-dkoh;L6oh!ZssuC߹nULn% "Y&Ukf+4km5"ʄ3YOilV"6ت#UumGjVG;i^&kcf=ҩ)/8si6=UkQZ]Owԗ6=.2|gh;-E@o7ހ-G?Cux".R}kw ٻg'c+1id4_P:ah]Of_y(zFU}P짗d #t$UGC hD[ΏJ0=㍏Ӏw,R_.=o'=?'p|z:lXTκ Uzԓv7Om`{H-RTϹ#8{x=MH <94aV#k̟=X}ݸ37\ Yl%Nc<)X lĀ\.UιxwX|\/2t 0pρ`aO'p8o7yՂ1x@ 0/^n1/jyؖc_XO@;x3ab@4E5 4}0xV+pzfF5JO=~,ZOczqu0 EOu.@PMƨc<_ǝح~)yl=LSЈ!$o~PGGIUGC tdgrD ơgwpс1,nu6b/S8׍?cgt)66b87߇C= ,P.Gu]=JK˜σ=ZqL 'GIe]pKV xOu[nB%:7{S_;fTyy= 5(0LqS,fVshd݅ݙ:TIȞlǩrz1x~@1*-,,`DV`q:o韬QP]_|~Ty\sGh%Yh]Who~!yrXXv̡ch-8^LQ|U'?:Wb_Ŭ ~ 28ܖb\׊=v&\҈O+O֓l &lyp@8qd#w_TBPcT4_^߽{:c ƀ!N UGAOVV ߻/g+KD׋謺 +w]㵋0QP_GvιOsI'kp8 aܕ;xR< cBo1mC|_I}.!,$)+J l@EbǯƖqhI5MǨo=Qtc&N(Sk~5KLkPB9EcO:Ltl0Dr=ڈk<}9vx[w#3GO#DÑ 0s^Sh~ywf0b|#%ql2\ؿiK`tmܛLJk:t&^ ~lDUUX/>+M{џ蚑u=e-SQ1m?zx R<#hJc26Ծo\nOԢw*tL^퍓Yv,vbj<*+aVcv$ǣog ڂ,NozZ(l?֭CWO)F6ECeؿa72J$Vb{3Z^;#2q%xyEFS NO<ww7Jk'&l`vMho{X($N_Mͻ~ ϤQ;:_isG{xͨ[mPX$SDYr4t?W urߝ p(G۰v#'6_c7mH]ڴqW??ŧ"'E0w>!.q\'1q<*~Nk/8cA ĶsDž68bi_a[bJA8pqExlxc!nc}c0頾̞oc,(~`{Ft;uXPpx W T;p6<+ut<gpĎi"q_ EG[)$"\:d*XGG#uqf ;cy~QmKGh{ 9Ml#!b{6 "Ucjzc5ފþ(R*]=>t=0`.\3i֋_dFWfzw8MitQ0pq<_$ 'VD PQ[8 #M@Z|8T><PO%F ÆvckFHGXW]-ЖMch}HV"ѵ5Yc`A=[ 0:َ+?>CmHE_cX1:E~2**RB~Ќ4N<+Vx_364(1`7aB(2˟PZ]q \4 u?3nEW<ܜP?8g8rMWqi Ԗ#yr+v?kgxbG[ i~OD1L}hý8 |*HrL]܂1`N6ht܏-+(w`ǽxkQ^և+ǞOt*&R/êm)L'=-O9b"epeRގD]3dpjSR ^5cƕyǤz<(.<*ŗcc^ ]+U19gS1-WO\_ۇSŽeb߶VjjǖKq\VY?/roA{2s ؏{q<₩@@;,E_I J߃,0g,KF}[-B7c΍чǓՊɷ3c Es2;}Wpߟ4ׁgV!{:&~狛An3Oo<q7D|z_sx0[~}oZϏUػ/2F]'BKx}{c/PqLLA4xGi IDAT]x'ZF)J#{VA?G%@"]X-Ȯ]spFsmIO-]7-8.ͬs-l|bZ=|xnE.]p{g{oh^k_aX),{w8KМ65݄?ƛ߆Km~gV5 o7~6=;lz>L4!m< :jVԱb.*<E7y|P&c|`5N,,ͷe1>=c_&}ǘQͷfm%.|2뾊r/v.:f?=)|󍁾+-Iʸ.6L`SA/3wX0m@嗡zf)F2lFwcW0eD]V؍{aڧ?Ð@yh2~i=܊߀wǖ>cn9W\H+a13\\^9mq?w^FRpq |7\#|/]kV'OL6̷Z_ph'B@Q1^,Vfc+vu U!aAqi6 )n\\ NOfGf} Q+IGZ1 \ݚD,=# ӎc?R}/E83>ύ/f[Uo^#n?~es1Ȯ{G8Pzo!1 \"t뼅Pp =][mnsnU)?a\7bc>Y3Z^3wĠظlw>:„`:W<`!>>> 79-ń+v{)mSAɇ4|º!cScߦv\7p#Q~BԤ]?-|#;Waݳ{(l~d4]5עP72} "7kѶb9Nh}v3s1y^W/>5OVo^i&8n*W!Fr8Sd7+z17W2}ޛO=j;9 :kY UQ Ӎ,~1_߇&n4_ v:2}>%i? >jnpmcvO߻ߪ[ӎ!/ۭ@}T{+4st**|q*xO;2ÈÁVd28۰?`HK`QZF ށ2"4 Ӭ;p*gvmKn_ji)q UIҸ5oYdH`iVк)qeup1o 5aM: w-\tO֚=H_ʗGku8ƫ? \!yg{yf1`iьM8`FlO(ٞ܁£`c݆ ]SZK\%?ԺKWBmvгVG; d48O'tkR20P 4O5%dP.=a֭UAٌO!K0qGO}p)1d'a| u4CA0Чځw\7<<&/3wxO"1 Q_}l޸zv2 2#jºpѲcghj;gq7v4ң*DD0j]F닏c_;0s:ݔArޛR9Xačw?e- ||3-hb[pH#U $i! eJuh;0s:V1d^&U;?]p8sdV}K~PŘWM[pxx_WGHuIRu>Sעcj^apކJb|9[1âuވ1poa#+p~ Sa58ж=U3!(EqJd?UY 3]$}ʸCtZ^QƧ2χJ!`ޟQ;/`E_iܢ #kۃn,B'z;fb[X_j20i$A;:L0^LU 8Nntk2i*ތ+{3[U?^1z\¿2bXT|1>];ɭHO'guvcjY$Ns1ez#FG nyӀ;п~?!]$2.$ЕA.]ݎ7OMmB_/E y ?GǬwx/z$ p >7 :q!䟿ݕ/31q6MòYa`ʳ Xc"Nl~yU\Ƶҕ+An戯l?i?u2z:V= #(K YCU~B{"i#l9V'pd%?:ƠWnuk'$l=>,[Td/m|0cj<9]n:þ3]8iN6eV}|P3R@/zud{b& d4.6gv3팝|L6~XKF,B r}'p2+9Mh.TC0FMA:*uı5Hͻ` o@`3ܾB oF\c*24,Z˱٣Z4/@ yBm`qnc1]:`E+zkPF~P(ʏ<yzv݂[0ynu?Kpz{0cvkB9Hc-?o!=jP__@foqmo*'E9hnƾCo ^g7>rXn4q0Eew]xqjt>nZJnC`CDkڟ٥;̟xyNvc#pe&.I(z {'Kѱ0)@u?X.bnО<Jtt߆wcXU8~5 W1$wNxHp/\9B:r޶[8Gß}1lƀ'~ ׽')MGU㭸@Gժ7jqy{2xB!SV^74R89|a3fẍ́s+aXx=t0,Z%& Ve~{~1:AoCvQ}' y>x~~ی %B;;OYB*N`YמBrp\ J8@BrqP.i> u꾨u-zVPNO|mS ?цEO)Ӫu$h}c)[s8tkfzZ%YG3R</8Ƈ[Gc)'(} 6L:0 JOM_MG3úO?>֮Dn-Q_<_c:2\1ɾNl%z8`%3u..i=cDY /5(K,tǖ [p{(|Ua#0ɨ8ϯ?b;-Tf`18qt1?4t 5/V #j;, O>U_^k/ExaF9&ch} i4^5k M`KPyɩtnvhI?*C< īq][_lz1&+ԁaՆ6bď1yBeepQl|4{ uO܍5o2Utk}x^̼h( S݇~ /~ Ξt__ otsfSлap7D6ӕHu_e0hy$U'dKwuUuWwՒZeI-X^$yfgf}a2 `0`f1~  i[RKwWuW׾eUqwȬj+ϧ֯232w'nfNqYn>?8G1ҽg u_xwsO.VK=AOm SOq2p ƿ׮7z$z^UG~}It~C=o/w3a3ƥ 6Bp0N[Ew pC?g8=uQWbJS3]<̗5׃RZ҇ɣ1-/ıBq=ح]/u)o{baLr:{a1W>x=v61U**\AOHk>J^>>'zp++(>0& hRo3`Yc㳏g=~poÁ ƻ7"w7U{oySџ]=^Epgxbrc?˸_@[O|~Nta<</¥@n6b@YWӟ /  /w^cw~"E>5_~ /OR_Ϗލ?A}?oO?xO~ ":<~P[pֽ߉'>'c쁻suD~#xO?M.x;?˸mg pr%6ݣ ?Hh/௣٧1bo|ۉ@Y ~{e-9mݓxs3YBCExASA|wC@=$-;*ZhT tf$K?&#f(sD PB]ÑPOP>ŝ%7%֝Ķ&¼D=)J[<~;d/gAf(" 8$y\٪2`0>а br $]CNoONdf(QRZ򨲯/3Y4ѼO$V=|AOM*CƎIUv&Q z>OV/<&Kl>!zSv>쨰k3w~C.ץZ~ /~V+s7þQiXwxaB3>7VlW8uBnā{7B!^n|i\[/ws;&p9̝YkidDp0Ep^* UOB? ܇џ|G>ѱ`k W8^2r< xt}XaLÍ_1'~W>L܎~9lT|blGFF?'Pa`'Zv7R>; 7?k+(nfك?pØ0MT`@~`vtvA@p>pO6n *h|^tuOꫳtD;ؽ>q7g_Ng/Nܝ(m#H'<a$pUTVP/->qo ܵyAQPRP~WlJQ(u Vy:[t:ރ{@\SI IDAT5A(X}38xGׯC-E M|&S`ٳO|n 7nCrBbLH`@ݡ8 6?\eR؇'Cߎ   !$<.$œH =凡NQ 1g)Nps== em#Ki^m*C"o-hD+8(1+U/ڢ}ڑ(/>+Lև[M|vU󙬷vfGhD(2{Yi,DA{)Pbajw6OaYE|52 uRJ>`1Li1|'fWţOe^dg@۹#4 PgO^k><>ܤoj00]`oa-*(%?rizIB{p!L4k?ڽq1G;[S8;-҈N6bD`1<`(iG a}f0''A G߃}ū8@K],ſ Lu߆/ᩗ`*0>w19qZ='Pf}%R%I:t pz o!Gz+/ PPڊ dXՍs yܒ^C^[«֫px: zn[sժ5Ltnь:U>W8\΄'?w*4pAY^, OX?Ry4C?*8^_Bi14^&<X6 Qi C$J?hbA܎"4xd@N/"Sqc\>}UHwb$\@V 1).‹/iuW跱6#*@-|,7TRFD*CƎIU7G$Je{S >c#yaX;r'FM`AΞbdVxTu;>|Y jxBQvJy)<)TX}cw`˪ b|_'*z%\{C]ī\vqпooܜ3 A(6lB >v&;av\{<ʻFX&R|'TH ؎gWQ/w7GcCiwN7nߏw@m6 qL(PYof GCThUz>(]f)TF]!rIW^(?v'17 O8Q#Ҏ6ߒ~%Q8G?v"D$4xLL9EXBubXLnW>9D@Pi xxc$𻐓/J&8FG!;ه.H $M\,JSZ4ZIASIm4A ?~\ɘ|(3:A+8(1+Rs /r`WC"O.ldjWXĊoЄ~*3j>zvlO z)N#"-J>41# %oFD낛CbUJ^t @#J"&У'PGq2#MH,d c=X>cǵxR}(FKQDw縈_np<7  z4jjrM&.>!q JFE~k(B@ȘB%D@[$xT)!rzU!H' sdo0hrO6Ĩ ,0SL2U:|jNCG6u5 mGw }R ؋6PP>. ~3hn!C0%R@`ۋ佨+C!- tpnb!WHc7@"&w5,]WEE1A;!* U& "A.Qwqb _} KWKy838 Th*<%wJwJR ~p5%)q!oGN{_KID$2HB7%5QBF%Hq〸u߰DσNDO4wpI%r$,/]@mo C> }s#Ï7~>Qh L‡٩!6CxaT#ZBRsja#2FM6s'$i$ JH=،ni2 |q8) T(>C׊ j2k%1ǧh?bF3N"2V3wHcu]eh7J:6 2{)PK AԘGC#uu_%ZI`?J>$UhSWiJ;BC;dې ,_&Nڗ^Z}}v n=S!"N 0sö(*p5RFn.ʶM} I}m=y/BOҋ)6{?෡TMׂ]^n5Gt"UtlD ǰ<!Ǯ >-P ʠ!(8aG,* $}J 4?M[!(?!THD1LphTAun1)k$w$D;-L(0"k #8&:"|6H>G,Zp6|P*@h2&fHէ;Lԁ QL#$`hp'(whٸ*I5Sn=B@‹_$xDǴW쯒z ~*Iö޳ƅO_91Y;BOU=!4Z'Ybn|҈/=3|ScG<xu >c ~u_j>zP B悹q JNY%|}+sϙdt9@Y{ $?qG0Xbf)WH4Nds? u~PN r_AH֎ 31M_#鉈&LUw% Si?b4M1Jx'}G(vkFGmR/&?gS B}G}؈ _iUiz@%IS^|'fWţO}=m@J^fQUOǼME RMW\=[Шt=ƇʅB `b wPx}v1Y~z+Zh]`iQrgVzqQ[X޺~*$C|L @|$$npK]Ƿ͡kkIH%;+ʦdk;#8+/ ټqtNv`zI.l;;Lg>a4_A/2.u|ZP+P;Z W9Ns񁭁x$$ %[$9&:UK8 M$k ϺY Hpv 9" ČI :b_64,A/$*DV 2 aѠ*1%fʥ 0^/2>c|Gs哬|G;j#cxLM`˧D :A=8LdWI`S(SL2(_Or>n'衪 "YG7ROs~!SՑp}%|t _(lː 3[:Pt cT1G0AAI# u<'N-]_Efq4[, >ŁRsWōUN/(  .oᕗ98a3['˃89ol@؀R I9/Ihd{ a%G†" mJrf$6q6t1P MBJU0'Kw%wh n#bHn, 2vP^G]E>h`@"R\~FX#$J(G/:iX9vL, Z!p3ƍeNBѤŧEk${.DA_a"H칉Z/WiC' lkGA8GDKE#Fc_i&1x&>yҘ%_ʎ*=>WG*{ w %<(S#4YM"F=W_*}u8E &ix2Up.]3ׅKy^}qn/~ǎ}()F=T._ŅڮЗ!u_ŋw[#(곯੗qqJ +Wή7ݶ|@ m8Po+B%!~ y 8.8GsDDJD2>ͣ6~r}0qqv*LSP3 V Z 6{ 9VnXf>~i߃LL8]QϧD "jha"6niUgMŧ|&/ĆOtu|jhl(9C{{14V+=>r}WYxy,מ^ފZ]翀`hP<V+yǭAIzh ct {+Xŭ/!(ߎ3$ v@ GdHм C nG)0 j ET w:C0I`+CG&<Pb;ي-QWaGڶ!vp>AţNT "b>S>u<|A~>P hCIV~mMTJ!H13XKV MkB|V=S$% /5 !6:ykG(G~Ĉ6LIc/3Fl_f*YwыϻbGNHiGA4hU'$K#L<8/iG]ǎe|DOP'hS\Ig@J>y.#vu\ rc%7xUNbz+u)Y\:3K;1+u !\S_?`D}VxLVi?>wi`[y(n/Q,Q?̀ VG6PGdّ Fbӊ_~F뗶9 ][>Q '>$jBS'Ohsjk~%NE*YNTۢu:D5dEkGLmI "ُ{]v6d|j&TRS|n |-CƎ9r>UO|*mB=SF'6|i@Χ,y3eG I_ƅ,4OWc1cآlc3%-iɛI0@B ďAs4sr;\<@S.Q%' }g0>Pz;DB9]PNO4HlE'EƎ}G(,엚OG2ldlL;=@^Σk"fѵ5WFUMHs8;@')IWG,|y46Kp`pE&$3+a˾$^Keg%HBh^C$yyMTwa) D(mh+  o,&ޮt!4BƎɼ Y]`˧<+$zIm)..ȝ*,uO+OI 3ivOun6s;B~)Ҥ|&ghsByzSەY6S T x$S' u{ms" (^ӽyi"X:/HeD-"@7NaEѠc1r4R0C`cH9_Ɯ̞I=@1P)ЦN053Y :![3UI7gxLDVxuu|(Qz>P3 gD}^ ^%Q'OR6a"?\V3%-iISz~cUzpku\|#{'*;݇,BS%^Rb|U'xc;6 B?ILz%̈́0vB IDATz 2vSOoF>H`?ぜ3Np'' VA(dۺڍG"O0x7@u8DT':Keݴձ xS\'鋰z3l qՃiωNtdBt~Ap팄 <ǻl Fhax]rԯ7CEm)IbϮb-ԍR]"DI"cFvզ 1Iύ\fjB{iIlJ h39֎Ф<ސ}Ghzg2@M|73:ց}Gh\4%\X5C 6WVcsHyym׉Cu8:Qҹqi黽bw}vҍ9d#F8*@dI"*9ll"?B$"5~OçNw>oǘ'U|àOOQXQɧb?Q#Q'mϖ0|΅"n!.Ppph sװWׯ~|¨: `H8w!@opBHx {e/PB= ~r?QWNA 8u,Q}A @OiS"~|-=(QH!b|>ױ$􁈑ĮN0yD<jgSc^ψV3:!.ݤVسK^GS>[$xT)D>7TKz>!1]`eWǣO .؎PbO~r갌L3#9|G3bxLL](oۻtn\Znm.hTB@WD׃,RqJwD!P4pUa+iIHDwu'5IPɧm/cw5GNB `CƣO"ZNcL:2}gYGTGj/.ĴE\kG|Kia>҇=v &6x (F|"^0l.p#q#?JSWglW5#;BcB9K_')j>]ORowz)nSXV 9R~S.*ȧU9"yc?lӀ,_' TӢޱu GB4OueQ.VЎ>/nu!Z^^g AmS=C6u}]wynk(`Aq-KK[}ED.9D,+I"(_S`DSJFa 2 B:d<=@9= 㱨yϯP`)Y>{So?> 1~BIT|.>I;X,`L7ϕPH1x/G1XP#wvֺ\5o|rD`ar{kmG|z>+=:s:f`5Ԋu 70G:>~%E z4&'0;"2֔3;1F|ɍ,5`U|&QV}{>|&1Zi]#TgkGh:Z^Og7SW2𨩿t| -Jf Qg-_ RT#|&Qϧ^R ڑ?:A8R(SL<|_J>nԇCB)LWcv͵ck=ؕcߴŃ'J쒳]Йn_,G:y%=)t"T1eiɧm6vT饳_+D;~S𙾁F[$Ff$ vzi*~"h\냌bSg5XOK̐%ECx i,MkuQ9Ti[zEK!QƧ?l ;#C3A^$WIvP`|'֋y]:c6{j<&T6 ~!=ġXrC1F:_]K;*lOUˡG#x$ r#Ccn25HO8$r!0!2>yS~$B^|&"v6P|5ˣMSW4ǧh?bFTIaSfBcLQ*׶]P'XiS$ 3hbeR~|/>OZ3͸.Jycii@|'fWţO}c8r>e<y^ ɡ+ᗪ8I oksXMc՝GFUoIKZ" "Z"FBeP>EAQ)V&@cd<=%|rVǢiY> R9tͶ|.u ;+YuX޿*:mȣ<&τudQ~:"Fӝ|rmv厗X_MX^& F?i%ͣ?<2|E3,-+iǞS}nQ*u,<>1 X޿! D<Sɯ$Egu|LabҮ"2i*> eQ|B@I5Z3#"LJWz+ɯO_xwd|(3xTWCChN) {Ió*dS5ut ,):G%Z VӎOt5 d *zG5~';1ON遼~>vϩ8p@]؁\mIÅOuGk.w }[V(ߩiWIyi#DȏL|eC @2D?M>u͔hP'Õ|>Ӄ %XiGgO,b}pS'Ou<j9F.>5y%8tzQO S'`D5<2zd3M|&Ҝ~$FLOڑ$P?F4^XlG*UwLy0?3,U򩭳ﶉ]S'd2q 3i6b=Ā݌::DSG|&EBo 0>6 {OČ ~bv;Wxu͉rghЗۇR~==(8;ϦQzuz~x%-;C܆cO6>;u^ɪ8_SD A#2OYteڎI JG{(w&nx9CeT;hiTgM!D~O9]ڎ_F[YoZ#k;J_-tyaC Շ'xPs % \47F)V1}ևM TFWӸIͧ2HɣjYk%f>xT*b7E#Gsv3mƎxT5& lgFx2h >׈Y sKԇt|aI$l){57hqZ0v GҧX',3g_C$t˞V}g ( Aoa }1ק╱a>t(]ϠFv\d%ӯ"k;ٍ7d.zB )pv4TQl<Ђgky8ڱ6ɅfIy+Ǡ v}+ s]8aJsڭ+XyLa5ѲfYiOcOI\j}T2]ٷ;6=>ԗjӪaU#|jj31YxLe~|GYo#"دFaŭC(obaf)o6£,Fߍvģ!li<т)$px'lo+~3*?nӦq f2?L|V5JKatGn Y,WR5O P魡<\&Vo#9At͵m=KVߓ鑣X[;B6N#|&'tCXOgSbZ֎Pu7Pø y8mShKv?]Rʨxe,.HCIi.. &&\OY+ ӏ;ڳjd{@]qA ehL zh prT5 sh_IgB(0Ka$M:>)3O_Ks܃׺zPy߂kpEBO1 $IU'Q XiVG92i m8$NЛFNtҲ;̿e /gK ;]-q%_V/00[;BCB!t4Z<ԝ Je]pFpvXGrwmy8uK\4Pcirn[AƫQJ7}n3K\ęww2z_KZU'Nr/l&H<`|7^G)H;1{di)#YS&S(zG({Eb)flXN96ckGhJWȯy\G]OD/Lbpl|j̒:LV<#4Veazb:'z)74gmsuyt$-FSWn;ְ|\kak̽Пޅyǎْ[,Y(Y 3c1f~Y 3Eⱓ4 CS2\kEt̵kKḾPsbn?Sma3ݎ5[4+PLݳ31vMͣ.°-UNhf+8Z68 4˖|&R7p,Q"x%8___ݳ'gY (}V,4S68|ZҟG cx4(X'XkOtYhkMHRLl+X8Ԏx {s]<ۅak{ptR-,o) yԍЅ8co3 K0(^襞(c/K5=\{378r[;B3(ᳵ#TM~55i4X3$ĆvlQ;BAjhH6g h6BQ(ꗆFhήʊO Xmɧߔ|Zq}$)G?d\ƁL66M[8|zQZʏ/9bcY}hro}_/Nuw˵+XO.)mI,M$dّ0k`͸0KxLY6RgYq='{I뤸yXHnR,MaZfqs5/a=_b/Ot#XL;K<+78[?5qW+%]̱ԅܮ)Z?1O%Jfѯc>8zͬn[gPk b駙3%ixdavѨgvOӐlpSi,|0=S)ǷH3BkDuBcN,PW<]>oLgaWɣ Lܳ!"0)xT%Tt| e3|jQn~b}_]ݚ)eK͸.I 4NC<$ƣ£ɧU;C[&˦ʲӅRn9Ҟ^Ho 8oypCrASvXxM(V-gܒ[a: 2OL(_S`DSJ$vd y="u"M] |JƇ0Ǣ <\l. Daݜ [1{|vW.\XTWG)&yLh#SWdzEi),[+9 PtOSkS˯R?^VMӐO ͆盦q-?>=:ASwIx9ϲ4Q-+`?J_r7KӼ3ю|^I򩴟u ~"+&Y58IB?z,~ 7((vMd[O\3]h? U*Nh}Ub ukU]:g "!h/vxmmf+-y} }(a0:a}?./}ǰ7ԿL5Q cNFJ*괒}-qIJ" § ;ODxՠM SThy#+4$P+C̉IPϧMO,jAbb&mac`@ |zEK!QƧ~1Bcn;py,M1!B.ƒ X_Z>nz<5$(^t_RΎUɡ/4| >u«@+x่BTK2^| :}o9#OOk:sKX?)YƷv<کGqS[E/]#F85`hazkDMQ/2DS~iXeܨ+7wTq0^~PO۩cpLWtcCc9ճ/qo˷s7D hjӂE:STb1yVŕ3GgG Nl(:66P^[ƾ+}_fKtRtН߃}_Wrį3 SlT29ԧR֎ВlcJ9I% eydf\ᒲ0 ~Y 둯0t_/N\ҁ p)xT5M0ӏk97g{1|:ߴK,+xtwOaD+y]^&ziTOɞu]x uWժNX'Gqǥʿg}/eaJ%b 1;Q\祋M45Eg3vv4P&Me%6Vh4qu=N)5cq#Z;?Ig;BS-m6J;q@mp:;ڀp~Y⁊tD>yS QV]+*T9|Q'4w{MZ:xeT0_=@:qP: N\zJ9x):](:],LJu]kLtսt]v4x7lGSC; H(; ]#4D"A 7ީҀԡ=-) $P'\LݿKJ/ƞnL Kmx=Wy>w v !6B'˘;*`W4pv4L~=\ͣOCPj P[Qܺ/8W8Ηpѽ5>/8sJE,NbVϾY?qLO. cB zz*jKN  +0^whUAW74f7_!fQ`GҲB.if [_7r$-d p: %i;<d=NJh,K= uN^mhZusGwMwXRϾpnߘ~ -k?Dq#zQX]Α#+K(T+Ff}[XޜbekZa+Iɺxtg( w*; #4h}CU_g_-an8_E\ܱhgG5|hW7cGX/wSiBnQz*brlGcvtt\{ /Oc#ԆO1I'^QF}}Emh@HD!Gu'AsU5O Ov-iIKZҒ%7<eT;A=w/p X&>QՎ#e5䰉 :7g@4[8>|/w}88-iIKZҒ%79 ]/DVjWO[LиVɶ7CWswFiމ'|I6&W1Oak/t=.׿ >'N' ~};BE>- |%\mb`W7X8nOjxa(5-ZG=m. zΤJfAA>&tn"NcffbA*B&t]GCcjS٩r]z:UA&4P(x|2/T[ *jGФ=߄r_v} \s`]֞?qU hBOlá+t|I0|.,w5V}TR'8tݠԩtv0x2,} Dlf /.Ʊ3/*Z)M@8+zszsCJ@|To45v]U%L3=r7#5"n|zKkFsT7"ԳTQJ|dWannD(DD( Ўҫ?vk@=OdGtJAhTKZ^@àÀ"@Hg@t`ғ:<ÛQJrk)IYĎus+:!hFpl?BG&Eg^BSj#ρSDfQ`O<.2P*|\΋q_( RСh%1ۑ#h9K?ޑYs~v,QGuQGK/{.o[n{{ :::@055t $)(&'(!GCdq?_^{U=z=>bŊg>kbU*uYnšC8n4>]ob:7ˡe |ᅢ߹wfqBIMqWꫮuT ]vax' 8*‹pW^t{5hnnpή}[%`= ߘsR~4 dG"T M:3xo:R\s`Vd'.B&tz3?U(߳ '/B 06z:`ebi7#G-ԸUƹ%T@ɥhFN4'Jg]yFR`v#B"C+}vH3 Z tzŭ7} jZVxS%`t;v~c;A*mxrC.גő y0bJwuzD(lW;/ª#=t-%XBL.ɡؠ; GLbbiǎU)"{ S=ve!=Le%J%xgl9Vlg;F<Gk]O[~{ C먣:c^R\z8tVZ~⑇Eo}+Omކ1wPM7>(nx_7H$+W_v :~?͛O---9<{7|3~~ϭ5&@py?~t Oވ;x'(Xz1Zu_g}64MCGGzilkzxq[Ӄ ,]cǎAQ\|;/|d --͘pulFӀx]TUa[ -ø[5TݟH2Ր $BYLF T=coq6#`!Xه  3(vbfrwaW0q|#ώ}Nݏ}8Z܋Tjӆ&;?n|+ ,jeǗn_r{/MKn(jփx>⽗pe({)JOk?~ `("tN|]3[e ^Br;-yd)_HC:ӞJ=tT^īx0!jģ_v _5BwcM-(X$޼D Zy ?z%%x_Ed=ە1qՏ3 "Jh](t ػw/4}}}L&4|c~S(q|BUUa1,Zv;6n܈v0=aE$ {7/^u1N(bOARih% `:;/}Xr%zE&455[ԄbEU02rw/OZ{_ ٵN3"Լ?OW5"j/>br9#T b`O=gʀ*CՀPP`hܿ /OLئeV )E,jhKD(őn>m?B*GFZiBWz=6\tdž_Ƶu݆~65V4ɕHڌ(u 8J8#B82P]/wP hoEƎ HH^y?]5ZmtO3\> 03+<9LH%C'9"ՠz;JcOsgOΧێtu8#BT> BO\ϠP,h!Rh߆c)yvGASS-ַ׿ dغu+>g7ߌD"opז?LLqa~]-+oNu<7H$n ?C8-xFo~m459}RJ)>_W܌OӸpS IDAT+qCub횵Q cll _~?&&2׿tsE4~x&"TzQ<)Jy=ݽ^jO{+^`Os>t\T]XFU0pC^Mm9oa:+֍r ^Ɠ;Z} #뇽^7BגJm=VxxȈ?_qmó]…/o1g1`tK/ `BFQg {ww"#93g'LV?q@JwAđAIAYPV\}^z)m@>R,Ks4dO>Bvv@#ҕ9 fJI߇O Ci{!$wQ>i[5=`ddj:wm靇 GuJC~_?r{PŞiVz EEQ@>F_ 8]3ӇOP3xx5b/:ꨣ:^JUUJ݈֤PvJ)bLT((JH$U*X3qAMאL&: 2Pj&4Mo%+%QkQUUK'H&(!C!E#xKX$QԈ St!W Xq|NG~v&ߕ~ondY]?0ܽ򐡇߇?8&>Dv4#<0 z 4!4aAr77Q:Ɣ6Ae (HYb"7#BĕHZUX$e#BŒ&P7CU"A]~oIYvGЇ~m|ٽXX:Io꯱}̌+je-E+x# Y)[A^!;w c#]P\tZXO% "ǗLsID;%$9tHs&#מ~ھVvej kա  Thh4|WFh=& ܭP)N<ކ5#-]Gtesl:>;7ϖ#Z-Ob5<2 bjZ~Q 躑o*Mw-UIn:djyQ۱> Pfտ/G~ODZ.# ZW"+7.h uk@-:iVG:޶99rq.<{hp$hH$1dKTq" Q:Y2d=1 eV v8Շ_@i덠ñ/Ȓ]<(jҪ6< zK#/ѤPpѠ.n;Օalg2|v+z|gワTWoƺG0>= V?]5|[jX[(6jiՇcG={F9#mO8#)4NziJ t4tn-Z[T*ptG/.l,kSx~el}eŗ#c,&!F45=WoS]:r!pbc:ޙ.l{s/ۄx\Yj4Phxo!PʳB#dX(6>=Љ'qQ.\ zXU C_9 dAp>q45N:$G0v9 !1P_Qy EbPt$噁 ' U9+v۱nJ}.ev J Y;#TOGR~tD:Џ v2?;1QgtX~suS"i Nus_ gNa3њ\Dړ@;e Uxя(-ied[+jYd 0t̯~ Y*xDj{EoK̕Z.Ai^ۉkwTڌBF_}0};7|@:7HٱZYD[Nqxv8?0h˷vaPR슍|O'".;GRT!fT@u0Q kÆx! pUn`z hl7Ҍq,{vC^ G\}Ų꽑SN{D0&C]! AzP8Ĥ#AۈE _To2V>˾?@%CvcTLtq&3\/l-pmLofZ'ݣDd(j+PPu PI]NG J܄yɝO)" Z3},g t~D> P{MGL:uOP'C누ֻb#c=;s) "Bi۽5>h>WR+&KØ, 0>@aE F-hVY]d=U#JS +D9mi 10VpEh1s>ʒɈP0z O>r7r -+]u>3BwvDžeF$+hcWW˞VIS8HoՋdY߃gX -Nm+{@y؎VPScD1kO9Ѥ:U++lTQE!/oFgZE67يg^z`j:p.IޣހvH~5ݼP:vy?}.,l`ѦŸs.HuFFZID唯0Qn  uC#exQ '"=kάkuVt]Cڼ"2A&d(Ce˅#+P̜++RR@gVssQ#7MrnWA? 숵^P|7*P "] kvb j\0d(o)/ʱ,aʡ:Qd yd4reikO"?-G P'C누4:^ƱS_d笓lD3VDyK`p*mGRZQ2^g缺J(mQ9$> IZiN]D)%toPj)Aw̯WyD)-';t~D)|(P"y't!n3 w$8Ø<]5RH5%9#BQe"B&B7#BوF]al)뱰ǖg1,!oa8tCeϨvM.#מ#B-;{-7M@:gAA%Po:*^޹__0|fApA1LxЅ8dhp~5Vv:ww)|cѾF|)4eC-d osZX\f+kK#U r6 bŦ(3݂_w"y71WDBg)z5[OŸS@[ #C)rP~aGDb .O.0<-HU |$IYs; VMCDRM eZ* C:GIPLPF_''K/"ӎz obݪJ_0=׃_F/49@(0_uG+F5Nb*9=Ta?ub֏P(XO0w@?Zn]cEd贚|g6? t"ٟt ܛ߇u?8I0  #BM" CAZDtkq$Jq& 3 %ZJw(آ9vj""`[/),GVڇ9_ҶzҸю㟌5|Y,}Kg\(፦b,|fH KێO=-d<ҪSA+T 2UO.8+~<%C'se%+aOP1LlGD(w"rڗCh;ùq&`.t̻)}˚!m;w_Sŀ'UYq!I.-G_ qUxߊfͩyN$: }7xY% '֏8̢At1_O-Őuz 覟D?^p$%_"P OgLJ:aPUcN7mg !V =Aʗ9@ dI(.Plo32O&OEr. F=J ߻'Hy:˖+2iNw|,.TZ7ko^O6#B+iÏ v2p+kG1"5(dE-~v?Ʋ{OCXh1?"4Ŷ#6ZR83-уRQښFsv &HM$!Jb(i Y?"mOr jB[t&SV={ǯ \ǸD(l<Jw@=Glt#S37<;WtODR>"ԭ)$*fdl'=rӬR"Be靇BTeO:z/qc:2z$6&kwN6 )m]d%H3rDeP Z;/pJ{U,VlzUZ'me+'#d){ז.(*~YΊK+&$0ȔɪrD)H tj OQd{nB|3τHpllrP{ljKa!B# os*Iy;nt *wt'Ŵc9w"M:7y5+EO}ۄYw8"B|yEVO3 v2td]1kwG&C;lLv,USU52tyK ^9\'Bg 3z ;q[ZiBLE]ފ+C>D)-%QZBYLg:"BMY.O;TJ5(KγpO?"4A۰,ӷc yoMBAdOOD#A K<ݲ-}WJy4fG#uׄy!MXQ,Lݷ>vF 6|u+^b]l>CGF}sc8=6bC`6c̥cx魸bMkoN\uȀԡujdc~ik&ؠSLu!K:#.$р4orfzbM?*#MeutM$ H_TpGzƿ*k?m00Ʈ'!ַ7Y^bu,[?* 4b!Xwp3i?#Griahb'C8oB'/[~]]ր=ae$!:>a?l'E A!'wv։9ČŌ^;лrE6'hR0mUTB!$J@Kw,%:(%vUYZr "LI9d#HPV$N zh۾ZʂX4{I {Pi`6,ɢ-HUd_궣Gv<5e"BMiSA#9%v\8 ,E$Ds'*t Etb#xy0Vg^|5 ee}l&t\[lM xW 29 dB-mQF̛iŇhN\`a_L{a&zu  [1Ͷ l)LLR ⮩Ȟ,׽l:\uG*xѦKƦg~ӌ/"TO;XI?{N#Bq!v2tOS+]k u,[Mq{[|O8޳j@X\꾥Dc .mv\d笑*!8u"쟜5 Qj$JO~O 5"5@f4a(hJi{j)I5;w'˟G4D+^}Iڎ z򇡬 JmZ] TڂչEv442SˋQsm$}PzYKvbȞ~'#qڑ+հ%J)OeKi)bǥe'( %GI`h;ٶa*w6#B} M6]X,m0`屇nf8. X  -g.mT>lOep{k979 C*}'Ā\zyI??i98ϰ=_IQiJ02(dߴuU~ODNGz->l~9>%*AluCv^WYKtEy_e|P~ODD([A5[םIet881;pP%V}TL/9_BkHu?tcHo|}kz bg"1wXܳͪ_Ga0<U&4=>GbFAb$Q,Q:ZLGш0m+AOpO܈PS:4?ԘI >ҫ?-PWJי )WУ0i=,>h*mΦ# hN\H}|0DIA{&hRmPZl8WcuӮ~'l'Vҳ e)|‘ͩL[ o\:B)PP`D Er{1)ĩWX4F15caqb h}:l<_ղ f6pɇ˻ — dY׍2y2mZ-+]0 NٞSdu +1ftSвczҊimǥ˥p "'$KB,}”g!Y)OLO ?Sʭ )'os#9ڷTM(9\߿ {M+!{ܶv3J?-;HIۆCW)|ehK]o)ՐDænK ze K=?!ѿߠ2c]S޶!ruf>cRruNf$e$JpoHA$J6aY*GE '!s-? $AZA< [It:y:ݠf M>{ }9o紺yo/N9 @~z~8 8+P^gm?ӎ\YVז>+0."Pwd(DўL"VġcߊwmTbO]-eOdg##EC u/8SqF!gE<q.?XHH#][Ş.$*# ]lZ!HZ2_% MZ!PjgJm/>?m:Ǽ3dk$!VINA\$0/v^gyؔ]؆xT~nsM᧨dMMenͩ`hNO1£Nd"H)kj~a.=Ea"8`=Ӂc"CG| VBtu?>Z' P*EE-Oǽ;{p0sYPCvvx5RRӱtF?3܄`_MQJXGX(ށ3 #h܆"RP*uK+&Chjv IDATΎ#c?7>Jڜ`p̯G(U"S'$ FK8d*k'QQjV ""u?'A]p^*tXɴNM>tf~2@Ҏ?t/GR_u sk eK^ ;3J];tJO?} o{%Խ}q4йk?TW."4㏧PSe3ˠ0nj4c!ao5#hWvnu{qzD+/rMCqr}C*"XYDDZa.ƆI%X":`93 sQk8ɜgjeKJݥyOyg*]t"Bþa5R~U#CMij?;T {[XX'U/u8p9dj1A];3 Ǝ/`QOtk [` UV&V:StĔxcId%R'QJUcN3+-%[J$>>령@q $dz1=ރS\:ףTzv1Yr,&0Yُ|2+ +?|DYPadl:v_tm+Kd(1gOㅞ-|F2f}VGXN6:$CyJˬY(oX?{//l9C .#j4lAF!\ev[DcPLv~aP0r[qrP9Qǜ 2^i,$5nj4PclQ+a#Ȃ FU,|>j_uhռQ4'ue{Xβ]("u@gFvID(מsjJ]wF%C| `0{GUduT7 g"Ӳ]gk 0-RM' BQtZ\X"ڑͳ9W-_(uݞDD((̗D#Lfdڏwg>[dvnֽG<{gy?G ZD\BRP*be;+"CkTKA ,( 2MC*O5Hav5%`+e: t%Լ$ңI&U'ʄXj1~bBI#OQBA4]YV[IsEdƽaa4hG+ K@vxP@A@gJy=,"y9jؼ("1^8 $3d?xݞ{ R("鿺YyBc:4(Pk iҀ__'>{ h&Dk~v½X63(#EfcA&𒝔R(ş=~^Kx*.Hl|ጬ-ꞏ6U a8aL4z<] GUv>KT ׄYg^,`oOP|H5<ѿ硵2tj1L=~d ]KWε'(mP<ߙ$CDhɮLuuJAQO"5@]T(%HD8 0ٓg &Ǯ?XIJ=&[9)C soր]HMD(0UWdG=GZzZhZnfd(y@A0hbVta{I|N7ss 5V;]01W]c]SJsq#AgE:uAp#E켅:N8쬻1ᓰ#knQ'EfWLѶVS#ӟc]TQD70!ŪJD\@Fh{c׏8^\uTUMGCD–:(hf X2}b/J"(94ڍ_@<'K[O@),BP37)6A[>p% $N%t?@ɴ# 9k |a9!PScD(@dP0q<8VtIvnн^~w r>zjA bKӎill6ǻBp'2j-=4pD ODOUA({o-' ORo8יR$׻>Z>ei-O}l%b8#>Cu-HL{ f{GDZC6 YVEz^ GhT҆0F\pķYim9HQ'y <  ®'P"´F#hF9rTT+,e;?";zGi2hD$ 'e+qīG7؎\{ED=uo?CXANq\k'rQR׼B\enO1;`&AQUOƖ]PWl/ZpSgp/;Wͥ֕4Y) rne@?:?ڏv|`8d?iunfϵ[qD>JAOimv|jDaCGыC@j8,r3Ji $ʉz`Ԫ/ߞ;z uv&UEykAn/^OTvf?+ D&Qم! fP1X=)3?{EWʊV? W Z>K2[oS(Oe$`|DA"=$| [NX_}ㅯ\&V:{9Qh?C *Xب30DVT_ 7hǵ7fsl6\,l7Dei?#Gri%*j+Z:ZGUм 1ֹd'6viUGm?"ԔsjJnD((ҵmBy`֕HC?zjn,DAC>K0HTgNГ:FLcd$r !lG'<׬4Β%k-"ԔUA#9UPSFcE;2'2Ȏ{jۓۋ=Odh CdрV$("<jbIkoOy4Rtq#R -q+bRdu~(!.E;sߴ}!F4㴭p&BC?[6<*!Dj)>*CQ1[h>yĊ 5ƀ\A5[e\гZo8#BEHŸG<9:(cCk=׆޾ZCq<Hsc#ᕜ QIb:.kE^[dЖH^5S USHEN-5VE y ^;EnAcѤt-4Ph*ihq zcOʕn;ZAxvIRzQG~|dӺ/viiK?F~Gyb{::~N5^|?y)s~FxHF<nPhU0B3Nuӹ :x~%BMQc"YMD^ctLl7-??[`}8h;C@?V`Z=2>(5䧖)a½X(DDD) GR)/{k WJ)@? }}@HH^mTu͔j(^$RmH^.lGG-h]XÑ04ih==ydǠ>:>}}^fa!Bg=;<{%ϞOSE"zƇ|‘_qَ:+Tv;Er{Ǟ>42Zx7?yɻv_TRD( Q!^](52WVG לעeBPW/ r?qnbn&ؿS T@#BY?3?cEnyV#ByuT j>0pNKdhO4)|鳡呞*˟$X2喂D#= ?v(ڶ; %a3qFUIa ۋ]ő (c]yv!1Q=3h}+!оX)=(CZmJFR+mG=qH@r'e`uD^/}2,dOi+eOdg#D=Ϟ=24NLfs]>H#Biy"ب (^Ԉu'!jo1c? lfisGVZ}S[*{ {9y8.NϹ( ?}~tHޏOKEuT`r(Zv?T ގ|u]v@+TI @b$7-gn0.hIZz߃'$3,KO/(J1<#0ٓЖ)^N =ĥՋPSdOPGdD5"L;J߁5 s&qjJ&245<>֗|F'cϛ] :Ag)(\EZqT5 Ű rNvy"CyQklwpbZ(X~^'$DhqC2(Gn?> mZVOGu2yOZv-䚣z&]lj#BM N ՕA};@sA@ P J©p fVgA2ؾ|jj@Mv일JMK Oiu8!RZs]MT hZ)G-5j=kdJҹ7t_Ȕ+?`S-_Q8#QTתO="t"Bj0%"T.2ԞIyQc>py2PD$Mzi&`Gsso26! I|.4 0}e3 )L.Ƀ*v5xq ŗti4ha@AK,ԗzzAY晣PqWD$*/RhG#ųC3Yd;iDh=t躎%GsT7 FL,a.871’2QQPծ#ڋ/#KƩ|#ڶ=gU 06xQmq*#LTUG_/5pX9ԬBPS[ Ɖt'=oD(WKK< $ek)zkw mGJ1#-Ɗ1t/A&z1oAx (VNKmkM;^e@iZн鱫o/mG=v:vOa|=D׏DS]> "47"Ԕ/v7~ss_/̂P+}#{M4 !t3y뗰JGECJ4Qe1!(y?IרqsE,٨2CZ9P UP@Qi?/ֈЈtd?Ou2C'J q}:Z IDATN#2ċs|$/>LD(^"EO2G6&U pR[5V7:=SKQ‘^8 mw< _w'Hyà(qz@)(O-I*lI]DǞDž|B2}v{hO"C) j-@ "~z@Ť?(Q^ "{P_/'uĦtB报 '(3;LyGTv?uB?6 _T!*̜i *?Z ʎ4>N7ӹ[wuxF9BuIb/2.KD1dSa Mu]$s3a7>`F~%`5#wEpq-M3JmcD1g+gޠQ+(Q4?@[yE`#B}֐tȱN XfD)Eu zZ!C7?T#B=oJ=p>E9靍xN$KMlƁUc@=}àG^hQA,<ͶuI=/ȕn;)֏gG=}E]X"BP˞ލ?{0;v=j {#_[>RU}x [4A2(#K3j|p/D)55t(Wa*#N&Z=oY2Ddl Kh(5F(On$lGYws)Y}dZ8 ZA9`?CaPӢ-O[GsQ?-B cVкs!Zvwbrըw80$CH̗E^ށMhPE0HeʒfB_e&h_ ]PhX4mGKӈPw!"Tb}txt(OdG=D䱧kg@{=y%>(Hsϵ_v{ HS\J_k#X“z58z~>d j%F|"҄kVPr$JEՌǟN"bGFO~$*BI7cRR?6aN2tmH~1 FO}!.47<t%P{D(E]-zYTs@‘,qQG"RahwA5 ą,Xxok\fGUKav|=D)TMS." ǁNǾKQ8?-c hH^GVTWwO}!NP "BM);:n"BYF4>j!8ě*g1hB~ھ @&ʱ'mG; ڱ҈P]>IB{p7"2Ք*'C;IOD{ڽ!#S6"J5VsmGFb:z>&K BG^?^4^#G12'k0]j@&*,2wB<¨NyIV:ݤE 2{&P#bўܯ+3.4~Dh 1/ōpziGqO|lx/>3WIZ.:"OQh Gw >k(j-hliǑXZD6Oz|w,zU qHNg~%ұc%-j?ȹyP#=`'-'-|e:뮐^hJՈP@f!zfjyRp<]q?H8ȕe5EtK>cP=mrk8zS<ap=]V(IS-Giz={ ǎka=+pk}7Dqs}_zVԭnh!xay`0xc76~x3g067xe`00f ZVU]{UVUVUV7ވwɼU?oqX9qnܶD,hCimeA(_hK֋! NMwJyu$`O9D@3cw:lwg’Db{?]q&`Ǝ1(-~UV}6p)u:Ճte$/WC r"B'S}B=w7 xY;ҩ@Myv[skFIN|ve _*~Ҏ`O#&@33NdVٹkoMcfr eUӖobcܵyw먞"(n$(l;G $a+Hw%#Ԡԑ0!3B9@^(tQǗql~gs5jEj&RDRS A Fv(?z3ȌPK3J+DF܆O_   7;&;]UgvHֳ!z ̋J7n#dP ?g2f^wGf,F@(,CZp z"%ݧ1nwNJjP vMe/G#t\j»=Ɏf 3B}ӕZ_^^*4ui]BaP= tڋ ]Xۻ]~EMAW3%íp-A 0@ɍP{Ӂ6>`V}~ة[w  2JA޷Hף+ahy z/)_GAS{,=O@?I Hܛ>QJKק*=TUIH\@ߤSuf{TQ0 TԣW}*}*+2>j{[CCu µ9}.u;.BC>0sz@R?<>Q #a%~"Н+AB Cw |LJ~w}|>P}&dQz=?xuD1·x1h}D}z(̎Q||8IN?JkRӢͤNsH4\NnX)IR@eS>Flzr2>Zi~=c2tq׊(b׼nG;{oKMPO5Gqkfo%Tƒ3L0! *Ե:WA Y B]]OYY^&AC9o@2m׿hW>Y6e]';_v4cO ^#*CjO{ Ѣ=hM¥ʭ3B H\7lK1^ƥJ|WOOr}#V'.p2U8~5x f(C%{q<3TqO >߰s*B*f~4Gmnjs` PSZB7C2@rxi>#+}eAyVLoVnG[?͞Ďj;j{.} m@t |Z?؁Ƹӏ\lCm}$=ŗkPԺ9#kja.J>DZ"^lKD<"-!SIiZ]Q<0ԁm1tEC\}{~%O^|abMītd)] RXf>=fVLMLG҅WUrdn;ٞƇv,Q!K<݃Q0uY0|:>G?O~hs"X{uH'=;_EpΨڎcvnBz{n:ɬ/9~tPG2 6a11c8Nm4Bk>kNɝ\Qrxsyʱu;*Qϔť@{%ApP%Cۦ ' +HF Y׀ +p@&OJ}O߮t cRu"#l|e{ZSI{ug~GYڎ DmLugee^"NBR#3aUnG[n~EutvhOhw{Zk akq(?(nPw0pi}#5}H!|d])$CJĵ (D*ܨ88k / H޽:SG+xtbEh3:`K[_NJlqaK'͕ks! a_(, XzhiXo;2~TㄩInn5=#yXq'\YYF< }zSЯj&bgV֋_{vq^~~9<+8eLeSBN9VhK`ߎ{xі#-oϮ($@«K B~ (Tx.)a !g%zt #ugf"\тCq o%2_ā_A(hUg҅3j}S\x_|y{paypF 6@-a?onO49!sLb' EKˡzήcW+ׂ̇^;칚 S&),@j|o]$*ϻmR3/ݷ=]-_B0$.8 }9KN." ]X/u;COhEDГHc>U?A(vgqy>:ʤ:`[k/qfîO q׵x3Sf\,@G6k"oAt)\&2|yX8>Ѷ޾<hwGe"Kkxbf9[ԙ(!軀VW̠Dt92[chkPȃ>,Y85)O\OPe:I\=͌F5 þXX/R|z,mam ao[`6ck;n¦)&Opn%3B /wG>*8K_?X+ݭm;Ա+Z:fkv]OiT\Jt58ZI@}x]~s5u$l#uzj֪_z颅@.[՜G]ML33M;ŞVr %={u{oǝc:w3Z9$VuC'[ԹSxub j$ztjZGOfSF٤ EISE ܵG@"44 X`GBC7'ڷ߀ 3D0n܇9,3gF[@z L{AMl x/Yq&RύEJFj씙"KMd;t wmZH+kYLdz+!GjZᕿ2 w>vj2BQ\$h@A1rR\]5# в5 ;86=#T.㵐j#XZ05QݟD'~ IwWIygRs2  @Pl*Bk\& S-?T@hu ꀊ?cA9iK%`5o0YE26#9Y7=!gϴ=Ԕ;^t{Giݎ 3Bi$N~c?P3CIێ<}xiz}/G/$AFq-wM1F_Fr9 4:zP;q‘6 :;3HYg[ԃoڇxx˶ ӓ8x8y?<= m莏'Ol|c+dW#{b;f_?]~-JA;Fq-Gj^>y/l Q&^Qv" =J vjeX׏ᖍOZq<ƳuΜL79Sx1m[0(=JB@h m5 9-:x۞G$FKHC_<=^]Z/ﺫR (noC㩙EOz %|Fa_Ggq<^YF(!hbϜTVW~xp{a O,JFGF|qxmV^\Suf i`_ #l2qc⩂beV43^̀ҹ/:g g=0'vWȂH6NiDc{pWsfîҊ>&1)N EPĦmوB/֮lQWG.Y/7 7`f誆2?(VFhȱ95SC \[9jR/pj1֣`Y{`%m1\Z:+4N.qv\ߝg~v^\"- xt2lZ'Etb1F>sgK(n`_Vߗe9^e=ېϽkcpzD-lبyٜmG|VRe=iHJ3B-{ڋlGt=/#5E  }=|QE+%]2Bt ^{)>qr:#ǢN:qԮ^9؎k9|  7m̃ZkHtO_4(?W0U^Nr>-Zq]c (2}B>S~6>pt;>eA~#7xYgg`fB3r=nj6ñf ]WLb%AtC+g=h\SV<ˁ PL1Y+}  tD#066Pc_ bo hmTf\1; nfh,y+ף?)]\ ~Ğy2BP?'6$.w ×7nck/X(; fwF}'캎8~i4܅<\cvl soQ\5c8&CzGjBr*G}jPS홐Aw>0/^G59a.@ >E4wIo,/ig0^F2[[J$)%I39NɇJ~, O闑u%<+?#r&ٟ( 7'^^*5(LyŭsS/!mWÈ ՀF0H94~4cbNmfpC AiOm.rL_WRC{70´RLXۚHD`~]@՗!(9Aus_l,6ڸOk11ZcXBRahkOV^ӫ vF(.IsDa;ko 7YV`.Bv U Rb`ZU*XLծ~iHu|r ⎙Sv [~gYd]^uFO^+٥렶w`a$ckk6GZHV=oR@ЧjY^4hP>O&Jhst޾oޅݶ Z#|Z0}9Zv^ioy¢*}Ry4EXWTiM- <8қUZ0duj~P2~퓽㙔>)'_[%aZ3PwH'*계NLJMBg4l3w tHopߥ \lrRmk :.';k<BckJzyO5B"]Js䫤 vdg oqGUӟQSjmW-%Z*Y@ch!n \MP/J~׃o {fO;G7HbO"uL+|2~;ZiOhC`ϽXZ%C קx] (n8l;JRPNR[Z7J(G$3l1Wğ<|і9)l76BF(@ K-;Ɨ )X3N{FONsX+Y0~aΧJqՀ;~>szhw3rL==# @#H"w]7 ܓ))td~u=P'xqE~PSvu/TQXv(S#$@lwE<ֺcf)AՏ?^OV_Tߨ#"RL7d|]l Z$_p˨)S>k#Ti9u ʞ'nqrVZ7 z[_IbvJ%e[Gx42#5V CAhPkbsN@~ao/[ČLt|Y d:TIyIʉ,/M`hl NiƯL|b;j3B }q|}C4zxZ-ve%DY;wűUw2 7w_7(< V8I[)i7!&ɾq mE꺓 RέP=xxGw$࿝J d;\)a.v[^NK 9P|AgB 4`#*d,E?q>^g9ΔRΉf]K}wV-^磞bV@ʲG5<D#^vڃ=幬2ͼ8+>W=od@yx_Ӝh}[b1t-='_i8?bk }H,aeeYzՕE,o(2kٖ2a{͑(-í`tse N@ZW&Q- jSR &UfJv=yiޛE1gH ~9lbEI)KЃ('\Yྡٍ_~kER e(3oQ8k7ǽ'6|&=WkS7m`7+C#@A5h>_'P_Cixz;r̰3QE,J=?'.g:Eoݪ"tjP~_8Fv$ff.3_w-%ފ{mI|x&:ȟ@ V þ!yBm95;]|!5Dm+9c'QƎe(SRqF?C*J./ B((%R P$-T+hpYT#Xʢ 8nzoAuDQFB Q:>$#0( 0w'p:[3-[Wp"=ʩyOLp̟9 kVH~sOvy>yן-{p׀:ےEO,w;чLvbj>0)r_aiucy`%?;ڋWtB!u9)ѧ_[NX-fCNߌqJ8.,t?ZFydP T"^Ŏr̠\9#϶@zwfunt6cpz+ݍ"rnv-_nWT@!KM'9ݱ>DeIg87? i'ȓd?fO^3Bt 6p.3]x- mB"53 ㅥ‚` 'm 1B-)2{umob7.m٫h^Ŏo Z]a-C-3z~Di:\gfqaG[/-vĝɼ ѣ@ ߎ_EFr~請i[/ Q1 O=?~J4ҾW 1* 5n^i$9X;z+u1@ii/sa\u|F/}{/ Nwx-y8Zč 7 uAdk}m䔟~Gyl 6 * /~;2BTbO"֎vngNzjf6ѐyi-SXN an@Κ-=5(Sl5 ED+Ql=2BI!M ;gY5sé'н2b9Dڽ*EqG>܁^wk«q{r=*2B; k"N-gpji!3Bg4]-k=1n܆?=~Exj&!X >節doH||n=ϝßfwƞV D077~8܊gC|[ϣt*'pccf{TG>W :&rk{+0-?;Ff7 Q9uW:3@VPu6hgfPh/R” ~/z"Nf3 4H/{-0jp>a}HPW 3qQ7BG(՝?zE]g}?cq\5z{3s #QgP]6|Tc\ fݜ`hO,f0Fu.ɇa珂wh&03 2# OB Vxui]CWw"38Z3ВAB MBy.KQZ #D.ԁLp_Z-"\\GK~qgКDFBB_EtBfNrFO;e+烣2-llV2E Dps_ {\q8#;zKs~ <1,Y:5a5_Rvw,]⇊Vrd:!9ߎo^IݽB?8B=KpIGzZw5$.p`~l|ރ>eߝlo Nk|VPDQy'A ?lyL@K &W L/66q; ne5>C0UNNMGtW@nuY@%Sl]es 6楊lunvTs~l3ީ\~Q=dG{8X*K8UnGu 6Ѱyl.܇=X*i5a(vt;#?A",WN,=[{m1.#T\%AH VX)E{XC Qt]M`qGONaӠz i3ԕ%|roӋ;ڹ8EdN5˫9Ls¹oƗ. xp['6n>DžT :=_;4,EHK;s"ri^G>Kzݶ,Y Vm}p{IUSJ5;C7V  $3 |E;W `gaDufQWt*b9]@hbhR?3+'a]OO*Ld8?_;ly nl$e ^ƞ=lS}uU|3tSc 4?޳`(]TL ɪq" eS ~QE8 UjѼ=-C3D"؂c7kC(6sF(sĬ.\[y]kALj;P+(>w(eS،BC.;x8'ةm5#T3S"a ^n i8ؙ5ys~R|"{`F:Id :nmL9ۘR\JcsnksssPQH1{d;,OR D5NlI^ӌPsSea|T-r޻.Fђ?3P`DO.,H tHJ`w̿;2WOTn5ZVJ 3D6\ AASiktG>m.7J4[ƍ|fBJ׽rPQ+ODk}3vo5Pj|9k VYyN,x='A%<.e[ʗPEiN#˟ul0~hў)#@3DCgL$J(zg?/n EH2)EՂo'Ga6|((J!stjRN $ ' ǧ~vdaYZGQQx:x^%ɋke'}ZB9wv듙_TgHUt_2e  gbҬЙPrkVbt~RmP tf+>Dd77PTB%ER^!WYpٍ76{ҍB(eBkm4d|BAH_ 1kU³1-ü7Rh/_dx⏵S=BF=hG+ 6 `}΁jzkAj\;I,aˈr-.㞶ТȮos=HcµagP <ۯ>+سesb&:N>ՙ鼳[a{[ ;;wu#)k4P9ɋ͕>ϗؗ{ba Dk:o'͂L2LH0SF(qG)˫Q=rTf6HFZP+,3Y+iE|Fh5Nf8+ 6_=6"d+xCcNeyϑ,gOZB<Iϸs={`=K- xs@ iȾa)3݂nvcFಱ6Dp DY.IoȽ7_dޘ3/NQ=b6 #&ɬ(%A<֊aDNԷ-_@A@CV=پ4N  P n8+TIn r||ED80I}Ihk'-ב |2w-g1%.| PNc@(M>!O±v8! V>[m]s2rԯQۺ8P$N02-qy5++YL[|}<~6ǐwPmz>}z˹p]˝J!|!liK%QnV}F('GGƐ ? 3kΏYY'gZs {[ nj5 ƜefyVog*,+X65]QqͯV]ѬZyW04\~67!GdAmv=j9٭.vԞS= `hP0yo&~~"B\_LF0} ֝zzb:kGTl1^Б/%P~ܿ}Oxe|%csoˀ\ގ!]-hte[PA%qѣEWg:9Sjat1WVkpV#*L|=_p+ V3WFou1*`^UWydCQ\鰥b֚'}Տ>_gǢx* )9sbV uZR5n|2ӝzdy{hcӀrSh;KucC˸k1L݇sz fW|R,dH-!nJ3؎;1Wǒp_mm>C`Qkl29d.d Сv=R"~<S3)egRG<=[FAu_~=Y5({c8( 3Cˊ <#A5pX z\}'y:!~0虍>K< 25{ҟ)ۦ9SY{{N5{dݿDg&?߰R'?#ԏ-d*<{/nI3Z'd2ܵa&13s96-= !6@vrhbcׅdB #TSfLVRpbۖöGB3BaJbFA"Q:ߘ{5A,UH,Bun>Iv;u;]⭱t"YWӫ76-OuQZ%q{~}-}l7#J3;vu w sgNP܊Nv 쉵zlgF4WF(eiGpZ7$#O 'eAP`wIsc@_.Щ*a@U`W7r'.J++(8 O|TThzP"_5HgeZ^UB9~կ4<8SYL T6́;`-wNsX!7~n3Bigq2B B33M\49 উ'#T ;2Z.x =F8wYEС@iwUF3x?/ݟvXf[v2'YؗE|I,djn~r) ~@F^1#:3{`rYNԐt:KidTlKs܈qba͡)s邎TЧSF(sKW2vZ_ӌ ʳY̗CY=hGbFo_QowSiS53a?y+'{61ky VReUY*W#lPN7z mze[ɮy{6y7M@-;c㱺lP'n4~ ZP{Zԃ_$ќdѩL3Tkڀ/|?sD9j }s;k wM"׻Bm?ݘP g^CϼC¸:ZսE c!/_,d@b A("};#?=D(Oj~1æZ#_$ X%ha#D a  S䋘Xrv6(v,]+xp'4Bt RαvoӇDWr9n|z5ӳ舄q6D^njϟCH=:ez|bjaBp@;E|c|Q^2BE>]2B ZЊ-a>چhJk/`d7AAGAK1XDP҈^6g|ݱ$\YUD5Az%2or99_+eۿ]-cVLoG ov,߀63BUyu m@x ~~n<3| r}V(fÎχk/Pv -=bRiiԐN|·iqp;Xhf}N}{2_ GMT!7f< p %X$aTzAfv\Je;OvQŕEUCY3+R90)B6;=-`=Q ~"HYϒASo_^ķƓaҧ_ d)fFUxH1҂mO'@${@4D1U[&Cu}}%>`PUC5 Y@׌/uj%x=ATr.05V"(B}~ȖU 4kv;ZPoN/hY b=B0FnynP&^c'PK6})g8pp7 +yn:?WН8zxc@~S34Q IDAT\~׫ܽ?u{?fɦEiCFAps qhK: Qs\#O߁n[F([SlRIuNPU } #\޿lzt5 @ vibU8 f~d$DFyM *Zg sYMxr r5C^d,m?ֽZЭ9s vq`ȞoG*H L(}fDq|BA(vgqy>o^pAM_J"Gѵzra'_ĕlNF5؃؅ [qwӠ˽)t>c SK?|d9 NO2B(N *Fq.,"JӗVbmj hG1D^7e/Rс u.ˡr'ڌP3B .#Ԡm풍d6;߸d;UO 0- (#>q- !~]Z<QK`e{3ũ :_Ksx{70̦[+l EAyV^6M߮J;_vticfG{}^#-~{Z&OZqݡٓ-c):qםzM@"MDR8:~_vY'vc9~8/ĉcˉؖ%(MH fcng0=UޫW'ێjh9~3ߏFq>ػ5 Ww1"ow;15O`V+4"(-M;};j Q8e*&{_v@+)@;1OFfl*+BP iƍ5WkZeK XaL`5itR)=4z#)E?^ j?F1{aGs4Z׏O&7#ԤP'(<#T:NhP~\fƱm粃m/>3G3B HnaMWGp ̖G9g+?~K񲚞4*ݬg]'QR3o[k|iS5pBp-kqrjOUJNky;}B@(ь MVcVYNcj+2?7Ser_|2!m%L2`](4Ia>Ùom?c&Uv{ZnGgOi/HԹ 4نꁋ8zvrކQ-k<C ;{æs8rm S}]u7bS t\h$&w+TI~5ߎ;=x3#Y3 ЉŖDa^K򖣦rm@j<}M<6't dԒTIx`+FNEȬKr8T9>+y1eQ*8QHƭӲp=*X|r+%\B? mwj,S\we;j}:3  }$ yz>ES|pfd8PMӠil204=oN&keLʆwߐ8o@ha%(21[84o؇>!@S@A(EXӬc/ ?~I+lۜR s8?F4 t!ll%31̃a@= iO;ZEUEN{Z\htp;AUHQf(Ayqߓu 03g4{7i\mBoN*گ"\TƍصWy]sΓ5ن僸]LS%dbd RUcK&9ӃY ha}u-~z ,)}aev~R7I 4-\fǎQv(!h~/.1^Iq}<ޢi aå0JƮRq~ \8VONJˁ7X/ddK^^/Ԫ%J};#43_H³/[n:,+Z,欟Չy"P:421 h]y (iq@(bNn^kD5Bl;렔6>yge+*<Ȗ lWuoYzvF#,% UȖ!zyPޞ@vĞxF=܌Pw??EP<"S8}:evhJ45qc .cεnevS"ւry]ع!gϣo'o9dH!݇mxDFctӘʰu3>e~#܊ 1C0&4" x;>Ν.>J1e76a)%4n.ѻZǍLTf ͠@ AӅ0{B( 靃>3hx [vw>~n窟jR /f|HZfNS:]9.K?cz IAnzr{Ւggӣ&uFH^,E[3''Qh s}VOy@lyV5ݲi&6ze.QyҝlY߬mLmIVnaokv:ׇ| MZ4aOcG~U{گdI2{UH3Cntc;6JPn5{Zp{l݀ҾK8v#܄57 @ף#iN17A <=]ØlJTLoɯ <%܂Xpn~(޴@3фkZ ymQC[F {GǶ-  2BMgQ5؇;z/+ְEÚFQtms4j dQx >^gTP#3PeSp^sPaX{@7%:#aO٭*;ŞGh\~=mrJA\=sl' Eg0z &)VoFs .^Ֆ:҄ڑ虣xx zhlЌ}JP131:Bt5h(鍱t o99[@c{c M8&]~,n^ 8ЅY"N5 ̘7W⍃⭇ۭ޻-{'UU w[Mԗ5Dh5]41 t@fŪOvY\ww=;NCد| yMwF% tG[Ɏ z8E>%`o6W p$*FCj57a^D#\gٺsѸ@5Ngk(,pj]$;#l<a,[|eW_Uk0!WU/{vPH˚ ;_%3=p?|lfd%>lM(6%kךǙSA=crƣzʞfOoG܎N̞,?ɇ=_B:z/FD7.;gquu#C8z\>! zes Kwd'yhyׯunˍ[e&CWpW'uз)bnٌ}mXGS4pZ,@`M&N [FQ/Ouh[׌`oawMhz Nv+o0YJq)QLgjjaMK3 4ۆ7;S owPۄ3; fϦP8PqtI 4PTCGόP"ONR~^ӒGF>eY+B GQՒ/=R@q L0< w+*\~QeL\ڰlj}32 '\c*xq+1B {Hǚy0:;=pffZ";A9fyVB[gS5P)؟M@{XϷ\\۾mGKi`G{:aO6#4S9č/2‚8y mvFR_Pk /[E*)+# :;y8z)9j{p!lzˇ gl[uDYs,PºaT $ j]FG0w|g,Xy|'*oS4<=6+3Bg|p\Fm+GNş ChW1Y LP gj n4~Q]ź ;6K:?Xo&m=3Tjp׳TsӁh{:=9 KPy#<ז .0pȨ#8q[XHF(P^r/n9i o=O97Ϣhօ'(,Tq-XcsSr"k30eOK'R;ۗPvJ0d9n6gIwu 2:o6d+_Nr=6e~>[9 ;c9 "h1\-hwCj붶ttΏ^sbτlÔo}&bOG ,#ŞV! MFG#B@ӒvLE X{7%L/}!ٰ6w:# EJ+O|L܂8}-6:6۟L21`El:kٯAJbݎSy!e * }I~i3]MvJ%oXvXDU_]^c.$agJM-H|IuȞh"Gaa &QVVQXX2BH+gc4Xԑ,fZ~ ɆtjRfLeF(wK6^{/P61t9vBhjQ`;yXӚenmg#6<.CLW`v&OEଟ$}PS d pwRCeʺ[2+*Uz0iNB\b!)P]w< SYsaP,Jӌx6ēz,4-P8';ô\~$٭ s2y ]r37~{Z\04MGog,mYz4qL1)ef-n  5ʠ'ڰM -vɖb 1q]k":sAP [No/ $U^MX9rKϣ!ϑ!l;F$Eas`>LlV\-l<^?qѯ\Oe0@% c<%&RO/,(i2vS*Ǵd'ьP>E91h߁C>)U-P>,aeU2'[F7Sx9aubR9C̘|/LI|!0nRC2Fa7շ7E"kϦ˜ppr}Hs\W$ap[ ~WAӠsr3C5w?8ٚCE3B* Xzh KPЈ¤xA?!cݩh[qg- q^i( ԇpPۅg^!]=Tt1_ 기3IByOl蚆S;#ϡl4A+<4Z T |*tdljxLUFş%G[ } #|CuECv!٠tP#E::Latݜr|f (qS/b'!r Tסi瀙*Xz,N>J%,~srV|)HSed&a ?3RV9il,.N2+ʏH禔[Þho{ڗӞv3vr4"ڕk3FRm4=ܱ迏b q$G/Ӡ5&δgNeS>b>W7?_Q>2mSoF&?Y`blEgc7F@||gxp)B(M]V58t}|%zw#L IDAT d% J?ݍHU3hFI+# Q |A8MVkF46#7a;#TO kf>#ԚnLoY?oO*\Bd){6! bD)|MK2s)`K2b CqADf|Qǹ)Wu:sjڐQgDXYavPM F3)ޤXG ոK:Nlj=RfR{5>@ 4-gHnG~ę걣 氨B0h7):h2B@)sX(RӘˉ<M:Vo{ o{;nb{'7Q0;DYT T ih~/:6E۠q!,S^]J-G厧Im5=܏-?ZPz\e>P8pt_5#'1y9lEnq/ )_n>ӓjr;]'"OaQ jۡ byeЩBE' Z)≀@ QVy;/2L~lg=<;b0Ra-`G_`!L;\/s=AT?M3C/-4؟̿K9_kLxSDJJOo\)}W̺RuB^sIQ})+9`ew.G ֟4|f>&&iwó%A?yGTjR_)!5>jZjR;^ia_F|k2B.8'E9_ʱy ghastKg2Ro:K-Lc)@zrr90`8O6PkNp[):,Q8t^ 3#.f'novhO*wX) (ՍB0[hW9xg efUCC!~Y~YN/}[_@X6(!-Ĺm{SLA`>w]~54 ^ <22 H+_NU:AP@d8xT)?nPTDFt\}[Ѻp;sL>: A&!f5ftJ~)w\8'&[2-v,VYyf*8lpeNAG~#7{ۧnO5;'}E8?D:;8SqTH`'1=&_D9 O)5#vf+Dnjyyά:XHѧ!k]1*_'\H/LwKEƋ> ;2xKG Zꑝ-IӶ P Gvf([W~ʞy7;Þ/Ѣ_䶮傡9,J8-9Y똞Eϣmh r+LC3;2B%JJ,dYB 7?,CHMU,"0:Wރ?s[ =[KZ5hu_gִ9\FH7]s\s2a8f"VvHRĐ 3 i ii^ (.} k86et%+mʄ-O|`e$לؼ@4&ՁМ}Kض/%Q\04E T\[}ϴ悡 E # Ej'!`vgLAA.Dp>|WP85wn~MT (n^Uf Lg""u QO䩜=҇5,G2!l|]qwp}4j+ԥ@*mj}@j}CP8Xy /VC 9\.+,2 ^>+L][= FY eX+ЭT_EQ^ -` B4.@) e3e/暳4tH$* Q Bq< fĊcVWƽJ2G6@ڧ؋Qp{:aOyӮvÞcG 氨ꕍB0vl?!<{Rց²'tgg3z&3BaQf?3ťi.oډp {s31Q\y܋zɂI跁eFº#+gsU;G}4N=:5R}կOrWGO}L& ׬W$p<Oԡܐ18AtS.ܩtm)DdS=gBY'.9=YǍO'XCg07/v8w͔ ]d l.{ݼ2E~=u z9ooC'+ۋ(!8a޹7@CaV 1##(=Shy"<'[:W|7¨o=rGߺ3 jN6cTWU`"#(Pw u߇Q^1? #G*\pf_?57.>,˲eSju=0 8eh"nRTQ!`ݻqyITZdT:a:FV@?Rek0RF7xMc!M|e JRJ}2Hu8'zj^N_g1Y53PJ*ӟf4;qerD*G㲓Ч\~ފ(Cʗ$M9hHʏ FTQr0,`K&9^P~Bl_6>`ne |vX6@Ǭ2%ygQ'wE-Q$0R~IAlC6&~㩐=?ߎDF=BeCC* >ӚnrPؤoK+s * a NJc.CP3AaS?xk'[.8ʴK%v(S >8eEhM'ODN5M Bбw Cx6WbYG\ֿv?RLv2jpէ8nD}PqTG:NN\ʚv2_b䏥OVQD'Xy ;^\ NSJTn>7xqڨN#[14TybK_xvh][dPG>`x1PB\ǀ9At:I;yyv:˗QN)E4^;l< RM/DxX\vB5PKN<#ԖLQ)}e7#@je TQ>؍@(O'U, N2H O׬GB!F쌚l"[d'YRjgr'WibQ 5ԫљ'( kS&tdLNI V㳗vkPўvڞ >$ ;M\04%m.w*5 +~q',KF'_@Tζ'*ɟރcrRI;E Bv Rʷ(}:>E9YIllQמƌ$ B*ouNIƯOvBN}:NjZ~ҧXNT;^L0#k}M>|SΟ?ƖCpy;%Nz ^*[1eРH` /0a? הNHbTJP[۵SA vB 4UmM7+n͵]$Q~u^6,E\w-\@hڐ f(CݏyRKrH*IEԎrv4yv;TCsX2XRpll ePPaz3B͒S JZSPg9ʔ.S[E\VJUϢ2=z|9W՟=!)c mItcJu]O/b#~.6e83 ߐ=5@=R6\l3Y`E DxMA{)kZ Tv{|e2eyPxɝ9ǹ{?r,bAiN4ʐ dPzJgZ2MS̸DЌPiFp!| j,*. +yyXTN:QVu;yg =rԬoO:U;rE9Yɻy:n>֋;LRlya'LfF(NcN/zJ?*$|33Sq "|Mg* x|Rӭ e8V3Nf=uEA  5R!,?"qA)K A ?<%Ѷ83;0lν)k1hE䠀[8ޠWT\ےP_eG;ZGJ?IaOmH+_$ IDATNtrVQ8XE`sH#ꙀN5)w;J(NՂf;Kk)-p&#GaS>jRӡp>-vϔ4.ngb4 (Wӏ>;|;B-2B]3CK )fR. uR\LEF(a~0ހK %;p;U2TPF\qA 2%H hdP04Y u_`;1 Mۗ`F Xjd  ?}6ƥ5V@ЩnmP6hrx:qlNhHi_䴧~CwXŕfO;oQ4! aIFzr`PbSnG:4ۙS =r6uS&v铗w;FY5NmalAּ[dHh>yzq:Oxqm3ЩOTOTgb֎=,>9(x3B+aKkP'-~(+Ovc0œ u JvI hM`ޮ[*퀛Gףn8JR9Oo$ r?Hb?"02ɱѽd!A2lj>I}BQQ)Dj葅* lB ј9U3A[wK# ! wj{2_$iv`ɨ `hK 0j4 ǻɽH)$t tG?,CJ!RaApU˗g{ ,eZRh>S:_NO fB>J$W;U͋h}#-JP{;~w~ҧzI5()/v2Bm l~S}[X.$j"li<п~ מ(dixw'?N~ɝ.%$T>N\s E5l2By)6W٢\~S_OXv zky-~ Bt).+S.sOe(drg)sүlyc @|ޞE* WENTh%-V6 rzmdžAh&7,2a' Ps⅔'H3)Vm<v=UX`Ûx2B;s*)J$zKZ2rh}4j]d,.~+P{9~Q4^b)YVu'<)_7}Ɠ*'<[3PFhP=Zr%DTV_A*]'Psai*'!t'vvB4Bjm,ON?tsRy6trs&,ь~M I9vU/2DT<=Yv"|1{'r[uqVwy~ά.w'Xcqسy|7eδED99bQ 9jةPׂL_ 5>ҁY8Ato֡jͅ~Ky8 Aw=ƍ΅xG[0'YGÈif2BK 5XyUyD(hU2BγkjBz(傣A2ts QohA7sŨ&ׁXQBs+f  l'ߔ?Cvxv,Mi9X/Z"3~  ?o`+1xi.Ҏv*YPoHOF(+G?$C.ÒDh&ڣk)e BqRj El';ywE+gxXXMd[L,ٛ:{p+Kh?$۾h믡c^ޡw?DqҀ((PZ5- vZK/j}6C%zY;3BNn5p畣' `کtٝl}m5> B#vb䩚X|+t _u>|c \:anUi,Wu7(Eb?܊1~Km B , uWMa:((PTסG02gK䆲1V4Mաi D6.Mnʎv-XwBbGim}RC O/!w?pK^(<'ttS? mYZ0CɭlMQL1DD/C%=P=9\?GՆ/2oœ;f,T r;|?x 3- >ZyfK<ߟCQgXO1|0!d5 ec>~>ŝOR67#u ,q#cN`d(&Ѐ*ip=” G =]4CywóߩAeg EZz)Z3 ~8ALkԣ>o7-Pyw084֣qǣt|*nUgƿ0NAb.V+AG5|E7?rrFP]vu_ѼZImfV03b =fb? Ymv dU:d0[~CB4Cfp̒!-{@h2@WON,>tau 3_3]G4W D<' jky%AdcNnkRh$edOv_ɱ}T!.iOhr,[QֶLx|7P?!.;8<1npԘ o ؎9!i\u{kz =>̡ܾ*zסMȏ3sE =X6V0FhT r4ϝ;P(+&z0滘{+7-&^eCi>घk;;{l;c#wFێ 1 Щ?yЋaYY&:K}>4l]ٶXG >b%qL;⽸g[-(0r(fGU,z߾)`*f:׆Hj,{H^NgqJ'06?suP9u-XU] vP^<1r(Z: עb4"L,]կ7n;3|6>ǀmooQQp^LL  f9} m}ЋlTחrԇΡYL 6܋AȞw^hEQ|玢-ՠj߳Y]b?ut`.R݄Ҕs,x5twOPذ +6g9:zNbf>Pw_cιc\cxD7Ū+ Lw7zT[?5oD B>Um40څH^ v<k3su01L qzZ("ZwzgjǸe@tTcRJsY#3YNHfsMم=HuxTQ&" M@( Twqc6{7:QW$Q}XHd\g6~;|o\ч#^@uqS>׌ʬdh 3j~V^_@6%?%zbaqv7Qvأ4Pv D*¦ Y?wLp .PJ9ԧi>Z״w\9,PPb.TV Z4D162JypG7SeRj.J62[H3Kt}m^ ~5!7p.P_2.˟ڃ"`8_cX''yDQR:ō7o()?.+E[O!oڭ Xf;uMe\81X6֡aO4ochZ7rAϡ_P ᑗq5GM]m{~˺۠[?E 7{z/kD5P(bț zXT\/ֵyUaqt"XSI@GϢ~7/N":ۇqǯaz98't &0wN7JvCq׾c/ph71sh;ޏPis7B$U@տ{{@v~Fh~c3((XXL.^|q%،koEɵ9:F1=C+с&T|C׭ *Cn"jo }3fUsLA[GC~G׏ Cy~}%@F[h9vGaT) imǸrOphz= SFLPXJ'JJ]>;("CBFVl 9\fH|d;c]1Z#JiqrAT7k>jn3+UH#Xu;{gZ}8v5qcE@kzF(F q|hl#ssO PQzn@2Qv?B[ZH:{AcZ./au{fM29f&E)IK51ǜJ X~$rheUJA ABzܙ&PemNt{FI%L~6K~9x8*R/>ÒF[sg-X"%s{6 gKNKv˦2 8 6=_ƱPAڃ|kG*m*1`p4΢X Do^(a[)(C~wq'v  35:ixtjoc(%^GGPcg<>~(/kX38b՟(QCg0nV~ 989ce)?_` djOD ;~3,H:g%DChe\Q M_ qW|]%"-1=(,H*ǶA^TN^pP !s~&lᅢ9|p0_Ae^ zN~>hbY̔ESs>輣}Gyc뽥8CW(lEwQrVB FsgæWQS#?pwz/}Eu9_p;ʝ7wvV &Wkڅ}xaJ#Í;w}[BY@-ذn[#o秛 }0ϢS{׿u/b'Wڅ}0":_Ё~v;4P-}ܹز3w>9T8y4|s-Nt=[o|e_Pe|נ_ ܃9^nĩi[ߋ t= d=~ogw ̎`z@{Aޮ'=:B0-+w }/@ @a@}U/q7>2!262^GC{+n]?-Hx "W?͈R,Tt,h +Ck&b!31j 0hD )+h{#."Xt 2b$%={Ne{x׏Pkr?'; ݣ?عۂlK0~ q5#>[/,[SVcP]EfzN&GዽSa~0jA.yG/WJPBsGXyemMJ 2RHYk4ـ*4B-r^C"LEIۏYt IDAT5wl6BFp=_$־keFlj~/Z3uk9w/1ah(կ6N<?1JyBh|fqo j EzzKW2oMwl#zg]PY:@RJ /UTwl7кePB{I#$Pc)XˊgZ)n yg/ùxj?51oѦ_]7X ~1t|P{SzڿKnIVuPӦm-ۙ((nܟe#54-Ԛľ9GHTEPRQ2ՠ5ʾnom&2TX|N]3 _[BGH ܘӃȺ̿M;?ZAyU𧻙 ǟ)Hd_}?I>DxaO477Kw3=!,zH~{VPs-z 5Eb$MԵDݷ~a~Mr$a#%0O1w8P%VC KD=f]XSxG4`oyȚZ|fS\#SJ 7aTlTU(BE3UɾEV̙/O1Notbߦk9[HDz¹P!GE *$Rd(ڤ2j6%y뙃Kx%iR%clf{5c٬8_Ƴل+_bvuv0%%3g:Y#F=b?ov 9"{s.:/{>"Wew@\]Kß D''y{/ro>ΰojcr_7oķu0v@Wߦ5 > 3]Skk{>kSu^87Ddr1tr:jm+$i'DU j2 ʑ$Uo\ 47Sĉ=Fi/5J/0 cWWT\`zb Ynl TJ餉? 4Si9L7+nJo5KsSŴܚ J 1Cg(IגG͡$wB‚ {4 jؑCMz%II%Ӈ923#uwUaB܄esZ% 3ҙ4 ';pnUg_ƷC6-3T0v}bR45enon^|Bhۜ]*vޞ 7/݊%!t/ 3'P(t6N lPU鸤t3CFJZ@&SYC30Q%*PR./b3& n_uj`>;۞v+69v:[n.^0 9=_š($9ےfc5#m )[& D-{d:6BWܡZ;hZdD7믤 kژ::6R3\N(btO:O6N~ŁT"_r7;qu4K;-;"qou|tj'6#Ί=n9?$ 0ؑA33ԥmѫ9jRqksęEo^1U(=Lo8;Ă Ԅ{ RhV pLfٻ#NI&ji#'Gkh_}A`r#Lg3)3plחw183Z)>;d]ӭ ?$1][8r=j?b1-HGGxo32ZK1f(F:BB,# o3=F:6&>kcQ`u5@PADOI]Â7d_p=(B-M{Nm?BlaCG|'iŗvN"9PU o gޕD NIrbm_cq r7C>f/(ҽA>Y{RӘL(3]𥃪b]AtїLl:{3A "sɛx [%DZ;1I~CD/?"ar2&)#ȤA#(DZ&4]?&}k~_@/('#2r⓹EIlA*K 3pSfu{G>$J-?lf˜lSЅ/+Gi>< /mE.S\>p`]@}j†nOek<#T[YLFh'Z9@Bn;n<qï6Cz>=5  W# + &VWWfZ4o57Q k:Pt xy3*83CB,۞7Ro\igLرF1w-_|Aq_MK;sB e !ƾyG> q':I,)rUVy-poΜ)/Pv ߦ/}$qWHU\wj|O;:C׳='7Rg38!AYZZ?G{o$:GAz/k?2LG΢,gUUw$sC7`71pi6f?{ĿD~|=-=if^71,BWvj+fȗcdH68:&˝y4y)M9~LBŧJjįB(>S(lpGr]p%yf*և2}L<=I@)ʅ/KN D _ ^)RcIP;I5(FQ䤭30Go&v}]dǗx9Ql^OU>=ye_93\_U\|yƎ74?q6;͟ |PYv'{hmpW9=l"]KOmʢʮ9\lFA L1bc |fB K\IC#PBY~fWy;QV|D[&ezP}P!nRˎYT3 '*\H*zIT\'HCe#eA  -`ﶡ|pnD\*Ijd YDYfH6>F<+o1>ɸ X_G+CICQZ|~SsQI|-b0LXA,Ě˨ %V+z<$[ L.*2$=1JGI"=1eVV:| u# x8vcٳ").\i˜fyL$lEE"[zKe#kX[qsrO̡G^h)7i,So76֋-ȧH"b9C15_*(ҏD!#R"CDbU-n'dY " 3ڣvI`lB4|Cl[UK>R}d2iLǜg;]{Y Q@E[t=ޘ6࠱(Ǚ{^v”KgW;:Ӗg ŷEA0[agiR1F]l٠)ᅥRQC bM(D0(N{n/21^]v_Ѯy[I3r]u1:sMDN]0fGY.W// ϊ\dk7zr8KdžSr+-EoQ 3Ɗ!|vRn`}ʇ]rGX2RD-r }/}zj 88tw1Q?B!b(ƛw=@$iqsyFEm+#XטgCWv=zS70=H9^r PnXxtէ />b (q!UOQ> FZ_uY,#6?6]>9.<|.ŹB VK`vh ,sk]J^D_uVC'8.!PMg T2.F r9TP%3o$PMĂm#5K)ꕴO{BJJ~8یL)sK4:O0[F"nHUjgZĔAʹg5dUT,:{Uj1E)CVmU\xtneBft,Uct:.Mgr=peݾ4vp}w+_B`,(7k/oyf}szpTh?"ِ̨g BLveIQ_KE(DZ6_Kx+P bePd)M\ ۢegPE ;ϿPsW/I~$- uH4y뙡 #k։bU_jfksUJpMSoG{-al"kOU7;=hOa{E=s9ۼomy|2i޺r}^am&cl`9v2hF苚Kׂdм3Z{%!i3c,V>/OCt2g##T_U}ndD7TDP%ѲĮ 4ԯMy*tUz5\h+sn)OAVw}t Mcl`$#lϚm@t^5 o=JLrͿ}.2BupHAk=$ML?b h$s]+ϧ3&υ*u 0$B-sA6;Bb9jY&fPٞNm0^ yI7. c s*Q۪};< Dů "D _&nG*mj **>OS+3.^E"RK4Uob2 iSM.ե90{XKfvdDžyTUW[L}Vșf{X43Ei7-C`Li|f|sѹ`yo0&fN3@FZJ,y!?/le7! Df+_6J,#Tǁfjkv,^|ˣOM_4_eO0\OVK* PtrZKuӣYf"m

sBq_nNvY;*p^&!Ǚ`{Ln \H:UxۛZy, Ƅ~)ׁ5SozKPs R1GsYׇ~yGS~/Hץ')Hq=S-7,xeCH9Im(CPւJ>`e1| TL f$P詫)l/P٢/'/J?+Tah4r+CA(VMsp>w4KIgz\oƎߵgTlVbmG{%EEy u?YnO3`^FrwkN\n^^L(60csN csf +yؠN3.(lp;s;e]ogḑtNsrnI tfNW.FFq0kNÉ*[;ۉ}s܇ enz`pYǪ<v3/$^˸tի?%S(L]ZyXR5.\924՟ntgqz)[;TU7E((BAJ-8-hR@(!hcz"_{5Ñ+71^}-ԕlɔ-"Q D Cr 'TP=I IDATuv)$e!&:D|_::ѿsa.[t eRPŸON F*W/ nZZriP"K.e,șvt!{:_d?_jGiOڧ.Oop"i 9A;f"]Ds_ EJ~pce^;S.)jn393d"ݱu'˃+;eX m-vhtnEo p]Dn@<>u K%xۘdu-_ΐhi0E:3 EQt.栩oFpqI-#RiEX\t%n!2>J2 R&GJ JH⢌LH'g-%0)Mc_Fy9>>o-rBoJASK%3ej"I)%vG95NzZtQ~Qt.^]= GsY}1xJjEJ 2K6AEs&;v匋 Zl:y0f;兕+"3h'&~\súCiǦb_|}cӧkFkӊG˂]ncHEp{# Pgݗs:v'EͰvKңS3?#T ]gFۻW' Q:8㳍 УO]\:Q M˄ ?7%Ř95<~qvfwsEfaȊ+G]diPqvOM̘?c3l>fq|*RII)QZQ 3R}uNK`eL]Ib`'JIR((TPyT@E">O E#J2Dŗ=rɌ6(wƴXku~*⮳d}j  SvFO}>u}ݛclY\i.o.v+~Cśv[R4fmG3zQj_[h{)žݞ.?r3E3͆ C`\`EJj0c|Jp.Zt{)ԍ&0;vN/PL|B-NV>hhPhnE^8?:>8RhL3B=嗿xX1N2fѳ.K'^k3-Fe҂}4>^, 3Nlf bw}ZDži^3u {[Z:|5=XghkOpg '*]ӼR ƘL\{ ĺU8C~vE,{z2.xF^1y1> 3[./ gw 9ʸTr-f<j1l7d)&x981W}vz10=&jdJL 3}y|+BA*B2syPT*qcr$! Nv3vKD)2D#P 1HD-_{Wv_5Cqt5sT1O:&5# dP!JˑWZTYAc+6qJuFA0VM֕,6 0f]ys sPd5z%vK>#dOoG[zOC`<`}O@\A0 ̎]&씙/#Tdzg,Ѯ%[]\F y2gҧ}F_9dz賰/QΝO pAFNh{#s9o:RMӑjFۣ HG\ϳu3Ч[F(HH]wCn@hS"Yrf-O+F&OWCtg\wڝx382ΌQ]uh{],/N43g)A9y$j_܋tLY{s֊gT!K?er&^*aRI@$IՂ(PAIA |)*K KtPb`(c:˄#nG4Wob:Uɤ203Y1QoG/. 9=lAq)">k}|s6&sXk+_&\m< =k?smO59ZU=]s9}EJ}<npTA_sTp2q {.H?1;eXEE.2Cm;?vlD,yx1fgH05Ew=Sﮧ`ЪPԆ!OB<;#TѧNv*Z:d{3B 5^%Q)h TL<P\l<ҞZX-KG' Ky P-cAJ'JW=J$V@HmcO$"),BM?(I|Xr*q%HAE@NMJ)t(B퍨UĆ$Ȉ )QNyU#P2XM&؀F%H2 &B7| Q7u)WXc.cTU-PmlP1KcjG}~9BO]O8"6:]PlZ-֞.lG::*}{e6/s|{1/yd'0vBNƞ1o0njL;v/_~CA\W[;۩}H  Hwoe5ywc]ث9\Ÿ~ }ڱ^4#/},];[l?חG^ Up!z׌’MtlOyӹSl[nѽpEC;vogHvq[(Ols 183#c,쐑Dn3B-§t!hs-OC3rUg^6E@Ÿt0 Zie e[=<8ڜ%{td$в0 ~T0~ƅ"f ~ >D{=R\g4gT?tDG$>$PPId|H$"T-Q&xŚVTb2SO3@ > IԽߪ"/OhXq;e Db 9v_1)rz1lt^.ӳ >Tm(vnLAUPLkI&y&k}wΣn|^T26." BusW/xG8_ߎ66jh+!Cߐ+f^~=]؎C2C`8=܋5Ӝg^@^ 13BM *lgpߥ*B)hpy&BҧkU Em݇ݛhh$_gl9q3 ZkruW@v"bBu_¬y]t=0;*Ytzxhem1oynky{=8ɋ~dj\j?|S>[z~ξ+/KG>kFhQz0>_ZߥOXߠ^~+W/cHrΞ+'^%(D%%JHhd`rPL_zI!Q{Uo"J0B B }d ZM$uD$TǸEܼ)c3PBE 2Ir1KY 6歘S`/>j|٠/AQm?2EiW,d `Os턹`ALѸNZ\0tAuG-MjLZ(tc$sN(YAv B3B΢K$|^ؙI2'<-ҧLh[xY܊O~JM4h3Tg7mpQNQYAj׳D>V=oz :Sxr}qM H|f߻׆0S;>*w7L*,r>e.2j;D+]`xtәϒ2 Y> g太Pkl "aovzc߃"/ơ/.Hcv^`mlȬ,V溚1Q*]- T)F?dc1׭q:TOբ7oJROZ)G ?HAZT_Gj2P^Hi*dW]v}GI*dOv=Ky02P2HJI)!2:BućeVb:2 f[€MdEYʅjZE͟xkYJ¹Zxx)B(͂_ow3/D/rhU Lh ,wC7IMs0`<=gFb3ZxO2xt7ҼWNJw͌Ci $dz߃ p/@$vh+'Be4o#]Fk߱irB~!Ή=1k[ zg)Z'w_7b^q A\3Bceג[;Xƛ nP_ lHD#ӿ2c )7z ɘ8έ9ܭ| 4ho!hZ6HUĬ$Gd`aij-4wԡH$~#U] 94MT]}Ԑz{#WJvk 9͙gcd y-]K8F ڈ=0C]Q t-0H+Mk WJ=ټһmQB 6HMUP| u l;o[i]w(+YDƾɟ q/q0݉{$"oںɰH?$/eZ6Ruŭ4A!C{0ZƪI*hf:h>9\8;0Z+r\vܒ}|$iow12ˮbQOx'pnR=rL=g\p MDZ}LQN5,[ے_[ˊe>'{v?%W%%=@3Vn:nSY$|-3Ԩ@XP{|9H;܆Xi ,X2䑗Er觮X׾RBx$BE u0c#x*{Gg'# 0-A0Dɞ]">T k!$e9Q֗+b] #ahn}YIZ 3@ߍ8wR'))2 $B2ԎJ5 !:g֟ D=DR:OΘm`g^/\DtR S`\Fh>LA; |KV\R8sr@%$U})P %cCT4U[s} I s9#  "i#:ıv hlDL,z9szL(ONu7Q=q7}?FQT3uׯgQ^#gtn#rF*BwǿcǙWw2zi~%A$ΩTUKHؗ?ʑO\!H!00\NYĞ[Pl@t]=Geb=9,Cp *cOLMI"3?71I߁Gx GYs?sk?7)Ԯo½O0a}n}Co W t?3ZBd|!ӎ'>Fx >d;oD5/|tQV#qto>B0v?rg|9J 4 }|&ue>.'~;lpceϓOϯ~Hh͋kμPr?bB.Єf ׶QˍOFT\+,\|/!̲ |d>o~|[l/m `E~tyCǧ%ۿnbq9_Gq俲H\s}_?pxex?=G~b bp'[Q%jm->!H-IWg7, 6>(aPU2q2 #d&QqnC\7rvg:<Y7@.lcsճ[VKI?$Jv EHEgM)iCzymUb"Sexu+Y <==XY#)ɓ793|=O F*L2ukȴ eɛ_tԲB)^)n`pG/ 3m3i#%4pVHn9/0ӭE!Ō4c.!x܎DU֠Dr-}ss^' /3B9lÍ0}Ϲ~.3tHe.׽<ƒ\HϽlóc\`'>K[R^AF_!j́ld hac|ЋewR,XDɽ_Q]_e;r_ˆ}뿳jM$v}wok+m;u:ˊH \Zfw7JV9;u)]) ]]Zk>z~ ]g84, 5oVgev~q+_]i49< çikI;/58~K>6%a}8m4k#b85Eek -fO1ZֿuR{9g++.Z%(wOh FvlZC{)M[Wвku}@Speӟj}lg IDAT=̓Lֵ0>[~sׯyZ.c Į2,8t0^S˘!ٴ j 5Mr9[S7=VvNhQwv-)5V^juܑ,w[oq`SL*VFZ`g[ '"WҴ:D欠i]`sAFpO\AзNl Tn|d;rֿ }t??Sf-(Ϋx˕sU3"b`ᚊl~FN&L=ƍb?1蛨vy A0׻kpJX !8WN{N $bW$,AތT}}?M1e4};oZ@(@`-Y W^Ft {MwF{8NI$+/˾,ʤ_ÐK5M󗎭-3d@k2-r=9}!2.E"KspU6>uFlNd>xQL ՑrWN/PDZ|)/y'fG[EO>!YI'=0Z䅔eڛ=$(J{n UUBIR*JHRΫ7wpY&]CIe$.BQQRiF;P;AXG,# V0oc4trџY4M0K&Z*$HӪGg$GnDK͂_ qUt!l_?b~(WKg ˦oBJ}<k^uum|JDhs= ,z:*O>4ޞr濶5 N% +/|/|/ )9)&GCI S@|i>NԳ<8; 矡7?h5a44B9'"~^LX3OgRJkRgBsnl{9p|w9eTnwB^O"dG<ܕз/!^qlZRiDBgBSi%$(%!_eWrS)RB"#IFդPң?#]nP |){o&Yު^f3Gx1`;!` !$'@B &Ͻ䆬ccs7,ybH#dif4=[?֞E󌎺. M21~`즅iIaa^}n;vEyXBmT_{yN\JאVB&-koُ6Qjy Rÿr?5 n(C(@4? (]E>ۊdOX2f~Cc;QbC5g-+d~?hɄuR̊Uv A yd,~?m +RBK 4?Vly|MS1> nP}V[`WEDrsВXwfӯK GMGס"Ӽp$ZK~.+?̶_nWXtΤל׹W>K[M@J@T9?[WhM\A5=ax2A ?>ބ_joxSLm7BUgg69|5ap[v^;w[s26.fn3o _3ŀoo^.s*눌8v&,i59$Ai-G@(e}-/:MO%궰V<(yEn| L6Ө2B5Mˎ`肞fJuQN*HMZD2윥] b=!X5 1WR:PRHTmܹ|U* ʹs>;BTUSiHֵ5[ 8iǤqriP" = EN&F!NR) P4aIdž!9!!A hB}-SȖw`~[ i`]13oQ)3h4BQZ![\=J4-]e\F01uu6]c鬗\J7-o][@D (꯻f Y;ڕEV 9Fb0" D&B˘n~'mֶku3Bu:yж>{zL~r+~Ow0sKfoMJ -|fx ѷR6.' ~@F;Q='\=BMg ~nk3- H~qR в5_V怬_GY&.#VgztJ/Jty=0g5Zd?vgaOB:¾'M)mixz*`uэ58cݰ%{s1ik XڗIV}cwMC.{+BegN&'p[?њ\=h<^]k?3nOP~ Ot16Ga3}^ߏw[iMϚ ]:͔%O*c7ʔɜ Ri:z<, :^s"r0@蕂DuUxߖ<>]hMAC^j+t12B-}^ ZQ3" H5_7+0H:=B?A{ 5gzP7/-G= ZʺĥWGnD9oAcN۫2Lt~򷽇jvG"5E׿DJ߁/k 7fb"Jrg4߶:Lȫ_a"r'Tc_.Q⽯p GNey4~{/:VcC u ^>CtƱ@*x+\'5=ԡ;I{23#Qұ~&^ {_ ۽Cn|ǾHǁģQ{9׿:m=AO E$v4Șۑ B۝"gHF>='a_"? N&ǣ3+Ú@0G~5z7e6=B0S/>W +(߰.p&=3JO@)onq4l?nYOcloZSt~|qKa_/gn-ԥCbz,ecj=:xWCpj{f2CyMe VкQgx+O}.J-7}Z̫͕2{bB`8Z w,q 9 k==*ٓڳf .PKI_l dr[V7Q뇔)ʊJ%%~iECCI/xX  H!;N@NHP >͇E@':hxu'XFZQ@h:y!-@&%XRx;?߷Ͼ{j„B$njR)p~PԤs$Ne;V7Qh ¢*)V. S,R mXiB_xyŞ+D#+ʍ]sW =cثK,d<[h T WvlZ9jP.˳xg{nOb3C(bh~җ3 Mޡ õ%SNm?~@Am;=䠄 {7.[/,/?x/FjgZ!++[LƁO3ﲦ͜R/*VkH[W ;2C]Kk_eN`O Bxoc, v#B;t~Af;-oN&G~oૣϲ6G>ߥV%`lҌ=b"%s6™o}F{ס1HK/˶[z}ŸQB{|3t*)1|vmRuS-,c;}W?$*y$ZRވ4n&8^j+rzRl<XKMͧWXSgװ٨g-ge}\5SJo&]4hH{>4S=Σ8JiyN۸Ӽyϟ V~[TShdέeuZYe^P7sZ9eep%כXVoSлٙ. ɾ4ww›;\ly4d%iWc1;8=)AZʨ) S  R#366PtS)f$!QЄ@ST$U?Ɲ$I#|>fRIT `Uf"kUV:CR4 =Th÷M/MmZSisޤFI:C%]!σD85+٠H}ӟe?, _=~=5Qm- uI6H?䪱Oݷ Si.*F8W-mk;BJjiz#LvRӕKc XJJH$}*J1q/7"QMm8J*JQ09 i>ǣPQG@; YTT2!cB4XJ@OӜXU£$'#QABU!|s{t+9xkr^f ϠWfuLc)%RsӰFxO> iiH&Ik{_#51Bgl{vn o m_'Y 'h)`_x(,묠gJ 4p4{B3׈ ==\`0K2cͣCz$%!476h(X\r8?ɬ줶^6*XU&y[)΍N cElY MD>~*h )T>k%(T=zi%ޤr2Y[ίHx{r>rkcQ'^kF Є@?omD)3(C) jOo'4'A҇_$޽㡣<""HR( mzs>KU={QdtNl Qb"?:yV<73{]d t{u4^k7Qq5< P%UojJ ԐMJE!SeH_HNo.OY2rUYXt( ԄsA9 U {/8DM_(L2 ȼm  f ' /u$"@gO2Bh1mzmtZm3-5^\,ICf|}Z/vY yGyOSP>r~7lÎ[o(bRAJ=oD.# Wr3x3u^nvؘ5s4˗u]ϒO:5'eQ|fgV9lɏPvFӪYd~i-0_=qP>sBinG^t^OЧ37>+=[F9~%fJt+J6j/&vfOJM) 9[7p뤧>-ԤG u9.ةiyh9=nz_?>u3=[cky2'#TXvA13"恦rG,kc Ck+j'#TgO@E3UpPaL "/0uwFAGY/֣>V> [k+vs2OU&8n6mQ>Yșj8)t!PזC #;j4 2O03V9c-zmn-a;cеF4}vkƹ2dn;~ g6oSO3ƏOѐ"E* ꐆi3jT(z1@?Hi D E9 !IE17HSVq9!M^U)Qj~v]3o]ДpLrwCzT>U?HJp~(hx,1ܾfZ2丆 +lh*!H^>s$-Be{k9(~FٲR L&<6Mkjų#<{2B"s|0]  = R*ߍckkc!k}+;O-pBg*79ndA6pv;z͎Z/DP QfG[A&$txŠ& .pJA:[/MO޳|p I L B2}*}|3wmYQU}U~0$̦*1=Ufٽʜ)X=]Iޗɞ.O2My -yɵ`Mkb W3 5& ZWrFPR%Q țj*8啁Iuud Z/֣>P;|pA[~=!H ՗J9Xu0=ZYxF(B P1 -d! SE-4; Y`4S/uA%X2 BF 겜gi~1a/D09rq@X~9H$i8m߀_ H@N hhH UNIRTr6_1+3cDiP.AKK>&^ T[GzjfD~j:z^&i|7͚WTiɟ!F]D}m7lƧs++/aB ! Mx*KTn5nۺi8u7HGEcq)|-h;o؆± D 4EpX˦FK.pQ Df!Vcy붕Tvt2P0$-ijJ(jF<(E"<.,@(`t1/Zyho(+?~"'j40S~'UIβ7\Cή_'n.6:ezJ1)`7S0,+|Wjjz2B>튙]̢Oҳfۯ>E /}4#e1k}ވGFJd+=G<0֝ӧJIVfH4.֣УIW$#ЯK곀p+5Ɲuu[pZbv>2BBMOk܉~J8NB@d#fqo DE`Sm5uT8}QV$NR/ci8Hi~>i>@OWt4 B1EyjZ&&w-]|hH1| OC!>-M)22|XWZ%V&^G#ol/SQ4дLL U?*IUЙ*c\A))+l&'hPxyfh /tu~=hwЛP52[oX;m@Et8cQG%)JJi`Qܴ0̌cy>՜BФ,OUm ,c-ӟͱ+;FRMO>k?HF3zq*zeb@=fi>AF,̫_k͵W}pMw]h5' 't'IfP2i9Z(oͲZһQW62`J40#*P(NwoY޲f2AKw_f*> V5VW AT)R H Q Xce`x<P鉳ܲ&KA$CL!s$U&R(iKpa4 Ĩqv.o6HcE 'Y gjBiQOAaa;ke-Wyym,mgZA_Tu1aO{ -d(Lͫ m`<བྷ,,ePek J sL=oeQH"xilK[%\ 1GPS:DRǰo%j;cbSOJA*4}Y#<$TmUܽR%872&%Txyܵ vDU"hRrq2NX5>T!8-8;:TC*$h+H˧81G W4*i65Pm?փ XDiCYʾF@P#@a\WP,HN49\1c.~Q_g:/<R"9 Ri㬧7r4vycFx빩9 MTM吂 '%?سI8I(4G2$0#:z-o^ !?N]"d뚑i-uY3BqRrR|,hP)/ ?}3ViVnz_|igv!&cz1|i|{&^e;jozEx3t|:8uo8S{ iNstе͵.=KϞ$+]ۇpyc5о/6DVjgJεk^ɳ |DTLpHq[nѥD@(bQHO\ޒ҇Y6*^'[~R AB ir>ڡ~RM 0)4( IRII:4{CÚ 44$i)n|^}'>3"|z۰ _(<4a HL #BJDLp҈?q`E F>fUBZ?XR=\H $WM.IZ r/Y .KE1ױ`1BX%r-yXLKbGs =n /r7=m)?_w^(fQ!4Aӫ9{nvG'Ɗ:IƊZ1#JdF5uU |aL5\||tIsnr:&V}ve0 z_HGjZ#V}F/1|5\c^tէ!Q+\}jP$i.p ߶P۰F8i!`}L> g{aνNp:j| Osy [MM}Ξxm8ֻ-k/Qq~<%4vT:9e!/s}fb*9r*We=݈m5\Q2U(\!r(_4!HQB$#ӈ$M!z?!8>kj9?e @H@h+'%t jzgSHFaa #!|}gQ d:*$( PTB"#'gI) fKDzxh*&K6^g\Lj!|Bv/VM(R  V/PPT4i$xeUK# za̫n,Xa,{}ΗB}k>ь}h,3CZ5˼YǞYÎW"X4= ;f9Hi~ѭ}Tn]?@.3k8aV~2+S6t +-$0_,yI򑧂|V /qfD+nnvjTRc=pɯq~חh_@Q$7!?To[G{UBYM.ȉta aYC>}$ l6}ʷy3A0>E(W]|'ya禮!5^dO], O:K?5US*/4hViMz3B9yy@c] 5h/acQ욏+b>,z; R2MJQ1AU\P3  6M`p5 H ^J\3'5)Y"BL8#h~d< !e R#5TFCS Z.}Ef~Ԅ1OLI[Lg75_W!~3YuH T)/inK3J gnmgiׅڎcK[gno7#{1f>1n8!Լ:+gւ)ͺ'd,<t5cҶ F gz@ڬ s<9B b/raOEy$yѿ -EAp(B&o|sb0@ c<43xl6g pL72AzSlc#^]AԴf4V@I^2j|rObjkWL)6ؚ 4 Ai:v24W5;o`Y8#@'yX;?H#[6Vek:=Qv 2H)8c+i+ 켗+&90WKB=OCvUg8ah1m>X IDATZՌ{i/ XOo-V◯d=[Fh1}1N'A<¥vvm!`j7)*ﺓR}+Rs 3'dh| 30p D([{7˶HWl0 v_8]P2 BzW;I ]2B/d;n .;Bݮ͙z'XAu {TGIx}.MSksKL KWۨ.u h}bihU @:HC|?!4 /^EE!Fw#nZ"i^aS MwPb3 "wcrku,dui-3Ի>6Yȅ`Cm'vnRxW2gdf@AjMHJK#Z+1Zb&I5ir󕔈DET5)# i?BjxJ$j:M@ӣx 4"U@yPdn̛{+v "]"@B>l ^;(B#x%rЫ2OK]WKGVx.&^G[Jgf[-ܞB1ZD':;/d$t~ )|+#κf2ږ3 GQFyr8~`R'POsyǟaɋooU[ Ltʗ^㝿ɻmBû*9AVӗܳݿl'c섕h=G;EVU ~ k-^"*6oԳ|ǿy V|S~#>;cB0)^ RLAM%MkSlYiS̜?L H0uTxTA g9.URi'8ķy_+Q`I:*ۓU.zce苏_U~TˇYOIkՔ"k׬JVWe>[_HFHfo H a]G7}{[ٰ)yBP Q"v_+%#aձwҧs,kfT浆d{u6O>wxڐX5V|/_w&?#/qjU6H ~Kt34[[ c/26d/]_]YDL凟!GwT!G)c=mz&^gv(/~%ww UBx ?b-sCfOV_gG*?)֏'bOIF.R_{/s~ݗXݒcOm-P?LC}_AAcmN?chkZW4|,-|[;HlfYcIFnn&xxZAP`y&S !AQ2d;Q޴L)MOJ$U#)"Q*7 h?i%HoI-g+D%ZV2 @&RYS?wjíI)saw^}=pn]x\P鍢|+k/QsFbd:"/J:7Q7{z>v͞v&S=b0"MOG6nd>й`ـ`#"fQ21)b>J>Hΐf%$$΀csj(/?$ TJ/E|™z&k-u蟣}SC5tQe')O'o9 o03#yO|'jx R+@f(  C& "s,&^Ufáʤנ˻3N92F*D|W)q ZY#/s//ŷώp)Pg"oPe]dd;'Q6J/#ƆO} mνL)N tRo+B ܙQ'_ĉ}{ױ\;k8cײ>>AxGXϟaIO^dc$|e{mMD]}-H43kRxf@Tϛo twuW?3Ι^] 4nK?(ui'1Z gguaaN sLяrd Dj5$%%2u QX ?iMˮ3+^w[_ɍLfDDUTWPhlx6:kf]Wst.|JjdS E>4a!8k-/u*~|; WI ϩ NcA}1,lBa8R0hH=9fLY9 efHgR i8K/uI~RŞ~~R{ڲk{kGZF3 ,~l?9_n(p 귳 eY+&#T)3anPIݵ7pUk|JdĈ rr;[q4_v)q$,\֯@RN_px?ob@8ɲ^U\Ƃ‡\Uyr ox/mw~]{-49k^owoJ] k3GeՎr৷pbçX΂\ ѩ vzvle4}-gmSZjl_(XrO<:.ىj`3aWR_7/%ݿd5{>=MrLi&_\D[}}m\ ngv"O\95xD?#^燅'eYh:=;}k'Q ceEJU=2O\=:cs:w/P כGH2v6$f;9z{sח &;& #n/(RhP?zhU1o/FyX>Bz$j!P7zhU Ͼ }I*j,ȎDhE4x8j^zi"RUʫ^:wlX~7fٰӯ=B*q;Fo h"`îg/$?Qe@:2"34@E&b2wi7c-V]Eޖ=)5uNy+-*f"*ty"C)/BR3C7̻HBe^l?(Xl[q=!xGq)En} IDATd5 SH*]%cGX7C$c rE=FqF" jaw U5p /RIVۙ'f0Oh !u"a436#cwlYcd:dq10}!V\1|6>1?quJ՛.,miT{\-S j]feݜyU' /ZJeEx-"!w<-{z:~Q]0lk706.9*RjP+{v\ꩌʯݢ<.I4_^~LGeS)ՌGפccSDbJ-u'[1` QEf #}sB1 )} m:Sx13TQ~tYБTTUP[Wp`0ϗB7r(1Kc^_y\^\(4]ytB@q){޳ X3նJ|B~H!iEy$G;ӧt2ʘ%,ڱP%IrKVƥU wi]>S կгV_~¼te^>  u.duGTս_TI!V@T"P0AFIW,p+Yᬩ*!ګBtD1N!.4FW\]澕]sf^!蠧 !B!ѐC>@tDɣOs/թO\En>Cc񵀠c)?o.hbN֌bd)2K(. Bt0m3Fij.?a;}&h` SWt^;eO -YXټ6W㣜м=Gmv(Qh _UPhEk\ G@\5 G_}NӒkTէ}mF%n33TT! 2cf ׹e|4U".>,~rOKӱSNbp;}l /|z8`w.=?]rPtZAeA" Y_ z@ҥz隆Ҝ%J#r38YSef$ߕ2}L\r6wIW.4* ;Yt0מrt!(~4EG=A)9t!mp*|U>g5yQQ,c5c=WHfjYpg)s`]@ІR B|S$t,T>|N?9YQSv QOP0_;P>E^Av3Bf_FJOD6Xt#!]zuWdFMs{~ɳG?sӁp@'/P2v]9.F.c0e'OL8S | ]jYյ  2iѯgՌN_OTFq^_{gjBx>%A_2Ϙ6* ]X(:/2ÎoOf/rP?(=]}- ~*C(cPJNGxdO#n͗3B 0Uŋzqb,BÑdB;>z`}:ffZ*#[N9yDZeڎ,>[H)À#,Ùy[tݺ=~@|N~SHoSi1BHԒhH""7_ȞK`ƐhB#kDR{5{|7PY;_6NW%ͳEg&\ {憧}&Tz:#yJGfqA~Gvt k>٬G/A9ZF -*/I JM:s +WV3qNT>g>মʇOE5n`ǧvn}\B|[S> ϣOЧ[&Ч?TX&Z3H(nv}zNw/GNNwySNq 8]`6NN@B $  us_\NI#rjSVPY I%~N&͊߶B-n?.cP=]d4cO G>tvt[~|eZ]7udcˆ:c RWS 0;#K ygI|a`/|!i~j ~kIjf0_>,Z~Ajc> * /Hn9b>gs=#Gw1&-v㠹V1S+H܊'^=Zs3BR<lj` |f}J{LJwx wg oWqvmӔYէ7!KVy8^  ^jl!$ 4 }Ȭq[i0*H$X53m !raR׍Qf̵Hp<\]]}LLfJu(v͠[)q4yZ斗R Ijd @ .K fӕeי)AZeE3v1i8 ϼ~rN_"9Vπ=[(c"֙ 9^~R&ԹcE^*P74<ƓG zLBtçu]v[\8#ԤyֻbwOy25D_Sc] =i-  '>='/s}ShQ->ԥ }:vl7>_9>PAxLѯ7I؇|iu2BMЧs9kZzQħJMk%c˂q2lǥ<9z* a?s6ril@Og@O)BpM+ddYL-DH !)it*]Oo~{Gldzsvz 5= 25PR~J?;ҙkxz"i_}EO9u -9B})uo9B:5,T΢qmu9e/&eQ69mY bޢ͇_۶IfӺoK[C4cx[TN:{ǟ ~i'çKAvy_ͣѧtW3pLֿo;$= o_\?}:i ][tJΣi=#<;ͧ%OolpL6bO-Yd{뗯,H)1!NĩoP/ A6eo4Ds)3q1gjiNVZ{>1QpE}9]JJ彄91?pl@)T׎.lOډhWqȗ|Q}PQgpӣY^^~ u''7*ԳC⤞ڔ|s- pF/w}d@9j2Go1xG.FۧdQRw< w~cmΑ[Λe\\ [|wwClWodkVN/#T:K;86`7gh~=^|z2BZzPvnǍJjN?NTαa$+]t[A3B[ O[!Re }omHIAP$0Q53wDITSW45-?d:C}d<J3[+a,MMhhpUǍc*\K1sSsjҧ,/ yij"i_}E<:,?32Z*DC8;;{Ι'\hmWO>JRIP{ 99hsf:QS`09ҀdSI' U8_~bMuke<\ј*y`;j)v|\֮t|)XzL1?Y3J8n6?gTTTN嵧"h?ylӅ|Qh >u**2Geo5$ P?f Ã'I$:w`M`6o耧p"8{:-]mGI[5VIIv:?x6U {gZNf'pDS.(j >|?ǟ}.=I͢jRk(+ IDݜw/ܹ8F4Wxy*vsmë́헣z$dN`T?e_DUؐcw?[h=NQt.z=I?ӣ=)8"ZONh%h1w؃8AA~iѥ3$%L={j9ZFsp%N0hE;S҂/ǻiRinM$ԝ'Ŧ`੟>Ast꧜D98ڵ%/#$8rh^}ݷ~]X~ 4x'8~O_OCcxY,fM+9{(M.!&?g߶ogLT^ᅴ,^ I Wdhۏxt'=4r3vi^^DzK"\ YP!@>PyiYA>le<$8t!d3Y:CTԅ([hh4Ra1mm0Fwfx^zeb8KB'[JjXW/Y*:g8[Zj2⧾7Uc ?swz*$aiƟ->BW=7HH??ʁz 74 wyO _̒u aOӜ|Ĕ>ӈ&cOH%IGGY|f*P3 :'x1Y@Ttqѱ7Bj)4/Մrji &`#ӳs/HٻE_ ;xv.hc"tTM~#!*ByWRh?Orpcx)yLh,z-o癛Kp Iv?₫[TgG>E<65 aNMQ0T:ES=ۘ9FJi>igH8)<Ȣ)3_g9β>$(Z6R.u#VT)+M2|6qr|+wO)D]h_˻{^7s1>LP~IjP^lmYk&s -|UNB@t:й5 炡0泟-s gzk/u8~[v-ULv˞eO {(cѺu C8u5߽XtZHy3BPT?lwp q?wJ%bI ֽe };~FVM~m$NgSJ 'iETm[zKc4Sl)c,̉#}<?Y"}z< oZG-{\N.GMa|r-~sb{ϴ35ml<8 ߹ o%[9U\G 7&jd?ݷ|?Odn_G?Q2Rw>Σ?m7I%'C/p[\. Kկ H2"軗gڠ/^hd /Ov~N:]n9һ8/PwD%b!hW|sa!`l>M\-Hm~ Dw7;@u~dᵬ'X\BaUK]a"NGn⬥HF܎{:j =L\CBGv[~{輯U7oD&O s/GN>Nfg}47H <8~Yh7} COK9ˉ9nK.7R[a!ɉ-}eKssE0͒-12EfϹoJJ<h~Ӛ;مiPD {e?5 N:υ1u̵tj*e9 ui1|NAgsD 4qBC I"YC]mp =fD}-hDC7f,Lέ usfNjP=nf.Ɔ-1%|lݧSfr\<+Z2Bx xA/}WZBFh4n`OSKg;2 < z,]/k3`eӹ! >eYC|Tg= R>ι$ʼnїWEmcA(cQ̵|%I'?(;fiZf'vvN좿+B+1HMr8S餞@N<|7Ƿ=PuK[;j0YrR9 kY 1ڡP$z_ʾtѲ8UM0>HJ˜CN wG"r#+I.%#G5p=Xa#5C6$a2g~'Sm04h?S6׮%Ӧ#qy.TVAfxуM=/,i91@ :H|%*rTS &D!%fFVP4iԯc|& 4i}}6ν¡8FSPr[k&sCkGc Q{#PuF TE'~QWhsn*q@RdRϹMk}w6#?#IaԢ+[WoAyIF 8ZPf@Z A"]1.xiDDCBIe"sD3!hN,V?s<T @FZ|?9߬' x.3BFc?wÙ66" 2΢7kuGpi<-Ju_q=_~9(J3ʅRDlp~rQ׽9Rm_g?ުq% :*c\\zjhکĸTR*^9Z<A c̈W9Tۭٽu %h5~(Qj7݃^$9V67t09,ɗ.>-}178x㌍GŢh1`2Df ZbGu"I!c|p/wR{> BkH ^C>PK:z4w K UƯQq܈-*h9+[A_>9 㞸>GV.kXs)M/5-+=Ђ;ٞqG2B=G3 eI]7^dUS^[n`we$.Lʼn%sWoխl9$jkB0?T¡F;S)I&G#/ŠP03Dd~BXϫ̏g:ӁP;ufaڤk~f(\b _z 2[nI {:؎v  -yx+^s➱y`ڱNtNYH_66eh!>ozǨ_vL Qlx;<ms<.ۨFY?%D~WS̆#4Rigywؔj. 7ڲOGr4!bQH]H*EpiP(K;!+VBwC͊,9軋o H4tӱqOkUHSov"$j .A+zL=U'M /lBz_3̤RqwFMײk8m<_YR?2okl=4=hHc*H5=U_kdF_?~DZ,dP}á/} e|kOV=?H E\`ҫs Nagpt0 D:ӶRC~bk lB˺8,2f׹u,ϊ+.y_&Y RcMZ: dj ,=½Zut6iH+ N1-Ͽm.1̀% ?X vۅ[<Ι,NԾXʌZK)ك* H:>E?n-Ҟ CE62ʘTv"n | QJ )ۨt8eMp2gSl%5gtUUtadW3.I00#I9m=(Q*]Ē?޾ct5,;M7#dNxګT#`w1sƘJGRD;c7?<uT{<ЩZL8KI..l1z_1OaZ"O} =TN}7#\Odl)T5I*W$O{ZS =^DrnA8qtװ&DN T͇ʧUlà BAoAq]<]!A:Ԅ.7akuHr'_i=(:`]KVi52aPE<6(_䠊]E]vb+.lGPJh| -y’k<Ǻ^N&9wF(yDqrQl XyԾ#;У7>KװOd+hq^(hlmaߏb|"EfN>fjj B(= aj,0Q&Z/I2zP7Ï'm~I [H#?|Q.]IXk_14pߡk1~C: v)˯ne8L'S1&ɾFZw{͇y_ĒKn ~^w̡'#$WF|:I|_ABO;Aovzmo$idwq"1Hwddpj_[FZ9H׏Aw ~FQ{ $-u ) UMGvgߠ7 ŇT)Q1v8 {~~jgS+kNS zQ@+R=={;tQtaj|G83|%Kzy;G$36Xqi#~TfɃO47{ǧJCO!Dq:~m͌3q Ce}+!e3oSZT%+jg y q yLQu˻==X@zaO)H0R!4̆3"?/A]RS[CuC-89mK6a}*KDVeCp:#uȄ9qƈ񭫄 hlsO%'Hq^K*ƮߗbjhGc~q_PM2 -_?I&nge+3t_Nk瑳zL=#ԤE5?f-o ǿ}o%Y%jp/O~3./U*m1s<6Os8O[:ZZ>񯿋 ?̖mqp^03 Oft˨_dz\- oqQJZInv̙tg݇p {?yq[sb#KI֬ڿ$2~:2Ix~A/y.S ;͔ H}o-IFW`߿o+#z\V_6!Vs{ēہVm}[@)[Ye?Oݸe7~UJ3!{WwUg-p݃oYv#_CIZ !IQVM|o}N |%-2vD0*oy?4 /Īs+V,{Q5 5i.0Wޯ̛.a;BMCdi=ijKY_8$W}9kqUeT>QZ>K׷Gyw]I[ȗab7sްy7aأ6u*DR_݇]] LWJ@z َlU iٍM@J4U7Eg_^_;@l5}l>`;:_ڷ{rew'8VsK?yhfqdKWSԹ?i dD3y&jj1BjASdH'V[pH!uD΅p}N$SU[As]7p'n@yMQ!&i&+W[z#Dk 2cL j뉄+l4ʎJWPs`OF*xLZ* =pPC%ȉRq dujHeDqBQ> uTSS>1Hj\mCaW!%Dqo%72Q*qI/:CdEWo]O(aR#i$H)Θ=#yF҈&*xE?+Gh>.J'}(1uVm -PWs4hJY.%%h&'N>D"qhs\ऎR &:^U1H#M l7"%f"f`jJR-`;1nY}2bt8kY{yTJIN>=F)P D /2?sG8q\JR+bdz*Ieᢪԫ?-^G"S"bTE$U>M4Qң%MTyƩ) {p,%DDSZ7$BDGzQQ/=rիٟpR>(C>3B+BFt E}o啂T^=B|NlJiֺaDсb os33fJҟBeN'Qyg㸮` (D5$%8*lu%r-ı'.uo^BRDR$EсeǴ[gfv3sO9瞙iko@01<\Tr\s#&DKtK3waUPkvS&/n@[<1r~y}mO@ l|0+3` p*w\Ok*/}(אsq^EhPC3DuDP'2a9_N\ MGCA kzӥZ어+s,eM/ ߾ݙBk,x =/z=2a3Ύ{҂(|]ֿ^*}{ڞv z.O:6?mG-%C?ѦJyJ;gh1َae/ÎWY0 IDATG\gw39 ~!$DW׵.]Z HQ^YkUEűAGUIOQ ſyWwJ.ԶMAA(A[{09< R' ^'0sE;!ڎpl򒁍V&]t^‚s\ FzJP>KjڑT1>R||"!EbU`?ڡz5M4Qg,,)z8!2ӜJ F R&Lߕ7r*BI:p'kk?KG"kѱygۮ Ƥ`˯x_Vl1sp/YsYd oO"P=!Smx3_a|c}~Z~(w5zYv<ף֍ aGckO/@{E(gOO_DńT JY}Qi} 26!JqgusB@1W2b^Ϡ/nRiA l7QVN!E5ZUNOc0MZ.='i%dž+|":/69i]|!"_o:cCIbkWC :`Vn,嗰fPP|ʣʄȧ۬,DUKZ[(g3.B ѱ-T%BNtP1ƞ/ᓭ4MuFtO쯔SG:{WZG;Uh&ChΈD7u_D@)< x7vJ+S: r|9_#w} Q^P%rr+)TjP+6+'xK Oe9ˬѥ]>DTU2^o QNz=*~ |*Ʊ&pSԯΞ^+")J})=5E/lrL# 8`.R!V姽9U\t_.4D?S-A+sJ&D鬉 yFl}j^ʅ)d'ޫ߶uQRLv6$7NȊPa?9|YjE=!ъ*B*SOS"T^/x[ p5eN?lOav<*FkuaMP"l%_YpuUMl:#k&e60TMgJz6δ!Ձb cDryP0 o~e|ƅdxMk0,Ы*N<Űh_rs QJozܱe'6UNu7jYǟ#&hvmصPu(r%Ǣ)< Mf1*BMrz YJN J{΃PjlVּ"Th˜WL_Sv"ԡsˣ]UP%J0 HbQJMB8g#u0؄,X^|ltfo ,iSo)Ȥq>QFc6_$FK^?Xz8Q'eHgHwv$pW{* E<95gc Iv۠٤|-y+ @]u xU}9^Rx`paPuV ?̽O~s7zS!p;ܧ?|UIf2ۧ݃붅6jX uƟVIf2&+:KwQl  Jވ|j]ϟP"J0b:|QaV>=9HEPDC^n<+B A]tO:{jW;YP4zv(*|.Ƈ"|@\~׵0e] QDR[$D}T.|RJC}pt&d|'@ X,˜Ӑ[@ТwO#@;hH!s )iOUӜ8z?~OGҟ!iU|śhH_/rP}k(Vr) "-$o"k@+B}\@OĊP"Tf4NV˯m?QbD!fJ䩧gў Z&ǣhGF!$SٮAyL5ARbq`egl.AcOs\x^䋩FrANi #lfKMО+8OUԤf]V5S:F# zC@1:2B!_ovAiZ ;B}}+/&# B[bֱa%X>`HU^׹Tt?Z×_ D/>iTh&ChAb#ʇyYtUJW>e9k[ŠPΞ>-3vtF8PKY_>eSJ{>+ٲB<3ܫS*c:Ry̬Be_>J{,(5M_IC ޜh_u ʎ\$~IGBsW&?C4$Kڽn7iC3 &# 0c#c0Ew4 IK4JW@R\4ss=k;؏OUӜj/>оGҏi5tPpݾhzT~SCJ`VpUe.-eaZZ󉆺|(_jrGn:' Ea) smE(r"\ӧ"TDvtFZ$9*)9>)4WjTWJu$ CM(FTVS]ˬUh]N:n@CՒYz$$9kSM:؁ ~ѓd~gQ*B)t&bTNam7a*ӣ!V~rr\iW&fH)<]X%tA)=&~=Jٯ*ӝcޣA 7:Scaf*D#D1S;bU/PK/|F_96:*gޞ/h4:O+|O~ZSG"T;GkWF3D Fd&+r:q47`W2y D(07?8wb2ﴬ[<_:O_uq .~%Ǿz_EqV`?Ɖ1O_d)]w*BE{0y({5V׋ NmDT"kO 9]=WypUEO'R?m;Yx"l@M4DJ>trN:}YrsUy\G5"%LtE*B# z %DA` FGG~P̋wE5(-᪙4ׄ8 {W.+oʣhZsiȡ*QP"~Ÿ!fOim&F>e8Oh}=N\ѓt, ulUWKq"ܲ~ JtQwb1?`_ȣad@则t'? #x :1Fby; ʶ00EH``#ݍ|c'w1bLa;ptc::HO/Z["qpكȓ8G!sIQG0㘊B=cQXJܰQ[q? ^E2ttNaɻ}sF'lk'1txDP@t #0w'wF>E F`);߲cӈ-[x{qq򹝘13 ^:c69L?{8B 0yD+Bbl={ ? D`OOމێ^`{0}Cbpq3Hf0o1vislmg t ^$31IL>y7>N>w3BjqӣG-p-FliGJӇ(fNXdbp'06XD^Dpmll$RvSϡ=(DKn n9ci+gs0?x7vFgഡ~ 6?dmۑIczo1p$S8q=HLG =ͿЁaЎ%H<7d%݈ay$_DAb c( 09 :;+^cKG$ t#l{Ep40-Ք/WRǺm~6K]\ӭgN[*Bk8B1 Vd:XJ>xV$͈%KiWSZRz JVx 0 |ihXcJF"V0V>Fړb8#;iD)ax ,o!\Ѿ𓟵ݧyꌹ OQ |Eţ؞ۗ ojC$ lo%1JsuV eG44CbGܮl mD|Ǯ:x K=:qU:JI.jm!G`RQ`E*x{01L0&]>#9 WxaS?2W^T?݊\Ħ,d b@?> 2~ gÒu7݃ȎaM9XS5w0fw1κ]qg3h(bk.G{}5/jE|%X|R+jqvphg=Hs:@03Y 2$,=6vDvh HaNǐpZ#SCx'QHw߉C dM'(fOl0VXD:ɭÇr$g0u0fDȊ޽o -W.[ wLt5"a7nFS</}D#xכP8JtuA ?{tw݆c%Ò]܏_o~q41nfV A+/: [Ea ݄Wc0;bm8[10}2x3 ۿ mށC#?A29ȟÏbQr1DY ȉ/~ǎGD06t_DrO+@ Fڶ+;1Ob#O`m{9K_hNx( ]-샟S{3E9sx[]qرPJJc( 89 S e‘- L-so ՉPt7!i+Vm*Ow娗PMq_ZpPⳅ̳q @.7+!U D HMv&C$U g3Z9z7z'M~v+^U 81^2FdD"ֽ>aR%?iR _Й$[@T&+ڟ[]W^ksq-xyԚ|ߍRF\TE-gAd6|?Ʈ .D)@E1w~¢ބu:BP|cσ?] {/<Ǣ|/b܊߈eo=)<нqr߫pз¡XD{7ݛ?oa[>Wb,Oaeo YwK\OGp ig](v=;Sa-lзU8g}<|E*-DnF7(s\5QbZ-|\C|fLo5{P'^E=FM .?$&5j0&m$ť NZP,m3ŹB&1IHc1*G={R٨\SQʏ$JkS0< *, IDATf0 a {\ٛLn`-*jS\d'iżWWKbHFhZ0)KZ}?NjK q*( "U=麍:5~k]6(4h3& CJ z,嗰fP]Es}D{ѱ2\qt uYhc-}9NVhEx#N?fAT ;wb*kIze_Yf8t:; ҉W_֡8@_4_ۄc݉cOnLP&,;v ;m]'_$u@[g蓛rKm tNȷ??"7:b$PDl 3bz7;o߉-},=+[` -|MCG(bf(X&:>D@i w/笏{lSk9UwC་m屖.T8}~MD%B60oKON}G ]xS bX PQ .Dkԏtv b8s 3n"$ǰ o|ʋ 'B٪PoUEa;!,^q% MX Cԃ~`!1 M%+6VEW]wh^!YD eK~R9 a,}`M9 eV+a!TI`])eٙB"74{5]Kui'tf@В vpk'?}f%Х}ȡ]˄w.Z$~$(M)z:Ee}]L:;n,"z0|t\sq~%lyĖ%ףKyzӬfI M}?ƖwX F68'|'v Lt ˡ0Ex(3w!YI,bzo8$r q:CGbh]ˮG  `w7rwq3v[d d{غ)kuٵXqeHF(0@8AK @g@AbYL|/𰨮@@Noax,FK` Ρ+cc1ޞP8z -|Xkjd/x3>?v-rxʌ!px>D49V8\^~Wt ^/})2]qSaE(7AKeݐx&tPFS8A7s]|Eȫ^6L0&u|I+ =5Mc&EˁUF'[kjС8NELNaR[CM PSS Ų x xjhyAe$U)aZ Eˠ~<+ZVyܢv 0$Uqq0BO"ifΗOK~dhM4(Sql:_<d2T+@a5fHJAR&B0c㬏+.Ib^2 k?r5 |qˣ87bYBoAW5 QUwpj,x-3]۴Ķ-&AGKzl4 Pax t`%;Ǭ1t9Adڪ ^Uƒi0"i Gf),h="^Z5ׯ69~TDh=A= ' λv+n>x\} *@B88P QxIDjS&g:,e&XX~YҾuZ9Vnj >aEyJ4;O\̍½,9+Wat<8hZ$A0[1+/²W7W{GGlljEʸ:>)xwa}]=6>L `__o3;"I${{(tFw+XhMP`x'Fc\u,<+ \)`NA4\^`fx UH)Dbc;nÞ< C dž.d?M~=t m> M98TRPv݁=?hAˊ Xza݂#Rzhk,H{q].Ydt1VB[jVBw RK:DVfGg$ 7~ûFyD-;.еKRg#nF(F2bmO# 8qb+A}z+^wt>EkdIʖw <~Ł~ ڵW~ߠczwtƉK+Jwd9/wG| dBMV P|7zߜ <_&OA}Xe 9aH}GjD1y+AŽt 鎌ȼ[xI0"vqѲfgsVnc4=4ķ7ďGVPӤs;y T:J}l)ñ{Q쯕M -9!48{ D:*{^\$RUEJ|IiRO?xSG/06M4݃ c7m3?eUY (s}/q[!&ܼNA߈.ls5Ƈ{?2\导P$G0wϷc*;Aze+<׏t^3q)NKtfr{v)ހ%K!oJX~m0!zLgsȏ[nhB,=/U$F1wۑY EڝIvncS0#xj+Ёdam`*Q 6;NhO~ycgOqstƩeԿvK(*.JL^;pdEKpA_}y' dj1.)BN ;lԪPJ)Ld#N"ٙ߰N$0IZ[I/7ձ*~d5 j%O8XEkmsj}=]8^ U j3%GS51wPT:sK*K?OVD*lSeΏ m>&D w;qa"u6P+OP8%A+H,rpf% R8C9<ވ~gYy+.)|u}ݺN`q] /̛>e<H=x_]O}:YCx7'~a]r)`I57`_OaÖY+{bz{{~s<7[ɬ?e(@.™o5vv<$z,C}a-b"ssfN,wcW/|oUסs506scwUlĮ_}[X^57\$` SaXGO;>E)@£y1{ 6 O8|F7`_\ߌ?q3$R]L( =W߀2 2OmoĚ 3?;>wuK%wQ[xz7װBHu8gpt#:{n=Md;}-{O <~)>,z_#Pz9x=E_™g&9Xi0xw^]]7c~8bg^ñ0H&7bͻ߉?'swݍv "aQN-DQx= 'b@ع(%$YEhM~הIS&+{W]`=٤*AzL^a* Pd*PSE}9|25)L1116Z[*?^`ڭaُFz'(!+MbsH4{YW*g~lbcmj gg [eGݹŠPߪGKU~ks4Dao"?ĒW׉p; uz&!(3Qq'rMydžQ@١Ibw̢0>hͤYCiCnxhA<hC1_wqɭg oLthɶoH{"QGat5S+A. uZ B`0T_1Ā@ ˡ0>܉Ø90>5}Ts nJHZ)N Xe|'1PRUiԾPJ/G޵Yn-E $@~%N- ؠ=Mi% Ah,ǧ`Pc4*ETN?HP7T[82 5KJ6fR5¹ԍ o_Ο=Ԯ9:?4mU:8 oҲ"_$=L|es],d't (5a^E 1D{GP8X2|xXD9y+w<~z#ڶQP ;[u '쪠66ŘO+1Ļ${E4Ӄ')It5sgJ+B Cݒ l36QTPUT}n ՗&@('8w}).J>=rz1{mHTӶRPAPS]JyIySrː`VIdX*Q.`ҨF#Gh쩴Au jwnӀɞ#'GEB<3ܹCIJʞPM/>{UShBGwp[Mgi*[H)iݿ)4B`DR44Le/GE0MLML"11P~!xи~0M j~Fm*[:8|??C{>.i-5tPjV6<@ǎ%Hi"O)X1_+BSel`"*$P1\+"ԡJ }UlOgP5ӥIUj|簴}5P U/PvSYjv(Mўm#8+j%~ 3."(ef`t^-A)vϟ.+WB]su- TE"z~!%.RVj)'4_O귢JΖn>㷨RQJ"ӳZ*RT[---8ޏ! f5Rk MO ՖF,~]sp/}8\_GaC#RZU|^P>7YFW- a^?ٳ: `[xZLN~6QTolw!V<_NWfuE65IhGб z9 $yBOrBebnU|\ջbC$X@ N Zd Ji]oU9]G%ү2T~tp\OG%WRHzbL6<ΐb#u*Vę$~=qĤrW:4DECCS_*SR7G*Be{_'Gv('kGߊPӠG= 5K 0bJ+XZһB}g=˩%tOŶ˾QpXD"3ȵ=}z _*h T#y^PKH(!ff!ĝ8l(.ѷB@ii@\$I!i*!#mE1B Z4GkL6DX*1hSo QNz=ؑ >%>\䏥:;B<"1G%Y޾ ;J+B?(DSG:{6TEȗ7IGP0TNrQ XkQ P9 jx*~|PxQbh+ND`_Dk6 bXiubX6LH QbK_Rh+CkgL4Rԁ.7o{sz-rߙ Et|ϵ#E \WV +D{vŽ.O֎ U .WVnV#G9"޶F?chVlOƂ_*KΣ@N6m˅ʮң *,E'BLq)+]ZY2@[:mW[Zh.6"Uzk!Ñۯ_"6+{LA(LۜrUb]Q=F_5YZq% DK~&>rnBAQ9 &g`+ CJ~B UeGP-<@@de,ϵ答SJ)W+y{Bz9S]Jx*˩_TϟOpSW\ l'?k֢<*'5r8SMC3iM4b%/he >9cs z_9B@E"D:F$Ҹ!IM5y2"+D-iN%Ła437Z%7{77#$i=OiDEh׏."h;KM4rŇ6:pS%x$5UURJiU-i-|ϥTu>NȊPa?9Ôiӯ?N*B~ SюUѥy1OPqh9j]ЙTןPI4 T0^;ٞT{nkbpb5(;f'xվBQK樶hj(S. x LhoS]@xLhP:Y>! /:M5܄w&E_mjJH<\O5Q*B}P~t?@TSM4Ѩzv2W3~~U] N%VX oAHyYYVѾvN/' A0B'_Y?DD=)wCg=K-Վ^/Xy7_ᚄ](I ljoW|E~wEd2+B׎ߎ|J;Tɗ;* 'ef9uaM珰AP >ɒph"uW>KԣI Iiu{_$ۖ7ЯDWLUU[ZK|ןu9a\:_N*QhM cE]!5@lvDFU6߫[Μ[gu0ʙtX=p2UJg0Kk6I ít6M BwʹHĒ>,`HMqHi_?ZO>:UXw&X{RfHI7*V">(|͊P('UH|(ԫ#Tէ"ԥ&Aױ69=kYԗ"!)SS١;82vUs_E|\Dh-&\Z`8(JzYvo>0nj(6R[[nk  $"c*Bm6=CU]yiUejUڰh}\$y>EFdhMS,L?s8yq_8bFY [TG󉆺y|a}KIiP¥rzszr+orWU4um t @ ɜVĕ=sF!XʬIBֲ;Io0ֆ LX W:B!_'gaѠuξ/5/@a!h 3+'q 3/h)F+ ZDG tTO㤠PٟhʏV my#q%Ǯաv0*BባTu>wT2+j[ INŽ.<2kG"uc`GPٞ:Cמa+BC4(@eOS+4%PٓףEn>?+By{r!%i[e6 mXMWvRZVMPf߈P;b1鹪*Ƹhep!d)+wLDm0"֫UTs'FP(`:E1_@G㙋x PK\]= ZF%콪o;%!9Ty4lEO|$;Ze lf2&3PǮg7N'/Qx#Pe'累C";]'ME(T-N~rT J9SJVNP=]`Oʎ5u(cGrտ"Աgf@svƣΞJ{\kU*쩬u8%m@^ҼdV3v>bD]FץT+*Ira%&̔Y8=d*d2 È(U#1%OB}33uq${<=YZ{HSMc]o bAQ97,?-E"^a f2&9#HikC/gR'lsԕ](QP|H¥8jZPhK%iCT:_PaJcOWa+Be{TaGu`Dž[&*{T~ -wjPdv-F>ݿ"_5*BOŶ˾:uٰ!b0 ;k'Zk9κrXIMep5ӆp?aҁIMJy7@;qMBc_^QGFc>+GT*RqOG?_|Gi J4M41I`^iJ=B{>PvGEu|f,a %B~rB\)KuNPEò੎?v%Q+g"ԥ9"h0=yX} DLtOj~]*Z )gV""&XP}HiG1x>}HI+&!'B^(rVoIKÇ'\%4W>pTԬ𧵧e{J_El+BŽeTSM}=y^^ D;{Tգg=ݾG:{AtOŶ˾* + ی2_hy:LϤ؏?]_GJE"HP+SDSƬ2'S]y% \H+P @;j)'xYVEhYTTⅰZ oOu.%:ꎏX>e:!bwC bhOڑQ^e{BK|ӮΞz28z;:##Ieɖ%Mb nYnI7i& f) $MhBIh@v ^ec9XozѼޙyg9mϟ3<<33Rջz ,uakׄqzIu Ǭ!ecDc@!G{`X]y0f"_iN GK^uE繸(_;ӨfD.rtƢh]o!ùW;YRH&(3Ma`L xߛKyw߃farR2::N2aeSoH~3@t+ sN~Fݣ3 #!4 ϾoL縿 r{T";Y);PR~Tݹ",EB._#aO(Ԏ1L~Q=bG{(dPy!RMǐQùjnQ{WixVt {'<oY 5MCD)y? NM U*(%ч/yS9ta̕5ϙDJIYyzy0gμ.)1&'c23Gj 9nFFsa?gj:O7UJI,9擅&sQQtNa4"#gOg6=#t6޹ hOPPyϮBLzQzj'ǰܕ+G[rYzjRsS‡OzBH>O 3<7Έ`M?O>=f{NԊץ~=g10}gD ZYo +2#+a>(LSyGhJvCڙ;BԴ7%[GT&^:Umf27]Vh.Tt@9R5 |-^4{xNgݲ7RVJoH3 QZJ٢2ع !_£uZ5sT;[1b5B)шm^싐sqhj@Q~ffGk(OvמuW4vt  8OPҗfWCJϡ)2%K5 ET ] Ce/Ш=+d:~dFh8AmCkIse*+mOZzV>zD d*G`7( =ϫWx ӧv(LUFo0 ݖI;rcl‚~rq|䚱{ޢ5'~ g>ȧF.ȕm@R'153ܤ|d:>r}Մ{2HQQYc;'!PƔ9V f((BABZo3ɥl_ھae̥,ޜWw8vKъ_dȽ3B5Tu(C ('mݳ!C xCa"6ĄunhnxTSjYWS+[ t!rr#yRZsOD7C̀h2p ; ::: (C |B;B 4U0P0ջdaݽm6llG,i_3#H;z2B5@mw`hG@iWo IDAT,~y(?L%#Ԥ5 ¨nI+X3{q^Ȩ{cJFDs=*1#ԩ8]}{/~7{ѯrg:S!#\MLY GEz]~=$\ap}Fdz/Z}A}>* | jۏ{dO~e Ea1s|[Vp.~iƴgEE"CsC>@'haH3&t0"eQ`?@"]+ AJe/k?f4#cLf2@ ǀ|tQ*@S}LZtA7&O?4?re>6 #q  8 R:}!)eTPd`i3Gy__Љ8~8O)'<.O4njМg/dѷ NSkO_.^H +#TXw)bh[ݫ+?NT٣| oKCz {~5ltWgDZX3mgΛ6m(R.eLCiQ0ZBtg" .Iok<NJ )cF~tsYPZlN3 O@TCNNR$3v8~Eػsg/9c0*-@T+> *˹rj{:?hiùK (H4< axoKG[wz8:y:XP| ) hxFB nr`-n\Ts$?@ ]ՁuAB Dݯv?41Qץ4/@޾]|ȭ|S-)M,s&n KS_a0>6df"Ww>!~6k# $kMϳ/r&ulF{n3 OZ6 f3#T'v!Q@()fw=Wy5扫ܠ } T`i3Új%UDuʊ[-uNS)LwJr ?Wqu lpu4\R2gvӱo/ý)/-XT&tT; L'˩n ~,:r][85Q\DzrgMޠ޽tpq-ob b_>Xx[YuK&V~qw^"t/ck(g=Xu7F[XRmag2v:J^[8+o6:۲̊կȶ`h 2mnlĢr˙]{酒Ƶm\OI<"#4c-[ztDC+زXuy$.k8,CM\MJѹ{KSTLMYri{{;񫮦:1\I멩)Q >@Okԯn*R/Xv֗XƩYj=bR)?਩b[CN⊛XRmse+=c\StK/_UoX6. <N ~Bi`p6FΛ6Tf/Rp/@+}}PhpSG^5OL׉1'(s"{B=6 a;sb6ʝos#d4wP4DVK8Я[B<ǥ4"Wǥ|e8d8|b,>څ$ xN^4"dҘdllˍ(ΐ6y)6\(䔩[\"aقy?1_s"@1/WVH)]LfFn4,t(P -)uo8D.LP˄S&f8™_a+V7\֜%^}QN=t/-?ŀuɇ7Ď# =Uve% <<#}<}/wvKhu槼sV22-?X-⑫ {l|#Ew3$@9(-Onaܾv>Ñgbhyhfah4do8Rs3Cȋv0Qd#u!-w~nz-qh;tv:~^;4֣1c` 3D;;9 #EOȎ;硌߰Gt>r+;<֊g؏9OӺ Cgr9[9>Nv0.vENF8s]Z1tS{? /;!6|ç<;JГʧiy~:Nf@J0%ӹWQ^~ᤣWGQ$uG2hIst D?}?[v0ݽic XuӴ $eԼV*{C?*yN9ٓ[Ј>3d^"KGm)@Vx±M1a'Qؕx}CByBTl"6~?kYedFLǤr.23Cc\:de9_D3'C4:glkn Խ.r ;n3g j@Y.6#s8̎'F!tKulGRBfhHiO9KGcHr_ec#g"VQydJuWL_A|G/ro+SYp/^Ju'mo0N=J&O`K)O\ o4!a,{[-K߲>$htʙ 6?pYw?:z4$r;b!`d7GyxmT^L{y-- Q :@:k@OQsr$0'i u^=&=ș}Կ);$,9-@lW#at#MZ&qW^.[̫VzVk; m6~u8 Gp9Z6~:O-.dz3m7'EŻFZ: 8>D+=BXkLڡgxũ}j֤1lq$i~~gن*&ľ}W5s-U -^s Eo 7*aK #r%;j;Jv 9G sVӣRTd Xp ht)k%؞~?tZo=g??WWWX67r+uXU^]B 8GRF{7O?(>cd1JE 6G@l}<8?0>;=> ~Y833Lanu\&.#6 D9f,ΟwoYit4Ğ02C (<0o:G#<񍰅"5*ꗴ5ޕ$ Kzv}Ox&ުu,O1t)axR`]lCnz1. 6)bc2e!d+]Nne&꯬u?k?>"3Xoq2o{ Ͼ@:&߹BW~+nh"sp})IqF8J߱4NvRS>HW+ jyeHVP\<ء-~FK7Rξ bh/ݧʨyz%oc` iBP761yh+}N)u::&ޱ_zpCћ]käīHOjH*5Z3eTeJ.7P$FH 3)'L׈Қ2*7n n!k(MBfh! ?d&,s2KVn`p 7qas#+"s)k[C>zʨްbR Kz.b{p GZ VQ_ADuQ[ v91.#T7T-*a?NӼ|Fk4,T5>.rٲ0&?Yrp+C5\z̉.dJ^KQig|PSrsW;F&H. _dYwiЃgL[TN,3B8+;6qge<<ٳ?f)N90Z05@agGz9Dž](㽣?~F >)Rsm>C7PuhCf.-H"jVWL㤩:Pgo8oDvbЙXP?!+(| = {h}\ge/ؑWԋg*C|{~ҘONc8Tٟ&GII 055 `$f@GfoMESyml͉Nu9@9Ee I#}Q8Nrb8HΕ,wiƫ@iQ+(hT@ҷ 3Yv /_O G=^ZNՉ֗d. kk7,(l|^`wJ-c&}SE$<}\HgJIa {.`*cI(D"Aqq1v6ddV4h>Sﭝ ڽٰx8aS,gj 3mU×FJ2GԬ/{:ӞT=v;ZoO|Ak{p^;GPRm_ Z >0]ӫ3z!'X;S:wZ9ei`=6Mj >s7;i'_gZaeIgBϕ,)]09[e>Idyd傄$.52cCt2q x-HKLSʁk4a!rBBkp7P6mӖO4#Cz,mBL صS 1Lߞ~;:=8ž֝z{: `hXBJxZ|zjW%L/aYSv*֮7u,дV}bq#4Sί}/c@&򙸜W2ڂtUvbYEEM8xQ:`ӽ- ^.Z9@C6@f-wUJ+B5T/ngLW7RcT^U~Ir-ؿat4j{W+Z+U}+Լe=F_pYt{hGǩ>2c m-/׬2M3;@ }P]0)@z6@z[N^*f43?po'Ça+m7Xױ|U6}obm;1 IOE΢6NHuԃq6IzG0ƺz/=5&-z:bSC8 0y$]?3}+ׯHK~ďýƣfWPEC};JR>o:8=jTAog13Rz(k[z-2]̆KjDNƯ}:*(qs!Շ[ua T]k w,-MRVVy9ejS!#NӼ*R]$z0?Pnɑ[>PÐ8tb8OKS5̎ϡvt='Ğ:{:hG4ʎPxLcICJ'qǐLَ*+OK[ַ$4棬_^{ 8qUUkO핵fRl (2_Ǜ]|@9oں'mgB^Bo@閟R $@G.K?]8qMP{em-%>˔_#dKv.n,]UE\F+MXܕgF8; ί IDATٱLSU7gM.N_!(Z}ɭ \yUq6t_W&yeNA]\\[m|.l5_YF;@6x>UH "Iَ 7G [ތA_ ]\y[oU,ްrvVJcPhu05KnE^ϒ6//EsGA^%҂/0Nb~K/8ծ >QƱ/RG5Pgq%4l;z(4#ӏ?p?oN2<w~s s:ϓwVǔ>n? T f2`bH'#W¯PLBUF-T{MX \+C "9@h0f5;#;Ng؝Ol Ha&wr;'%1kfv!z^OuWl B_Եw  \nG+tk=Q{Zc(lnOFho?N fGh\qiN^bh艁@h*&@:|8SZn~X\GIWU䁯ҿJ]yx@(]ȳʍclTDUH`rJg]J>.YFOX\+TäzGr/X?r>~K'(4yzN264AqM5#vY";$0QĢed폑슸c$*˲?"2MZ}NvU,r=ԷT;ƳC*l<E0bbHEX1_(U PN'u5Og̯碿;k/]VL, QrlagDy~U4u!9KhNL i.biǓtp./ f0+L3G`ZY$0 cÐ}[s_QS_O??#cNy:ݱ*abl2rIP+**x<7CJS?nt9% rSaF0 G ϽW(G8Nb o/&V^EWPQ^'Rvtv(';zt}؏VG (U9ѧ_! 1̼ /}fe[;S>=0?hڀ3c*eDΙ81/$ũՅӁLg*rӾ4nY_1s\>A,Iiy~r!@+/)%Ges0?嘜έ9|"ިny]!Scs.ֆEf8eW6vfᷧ~QaOG!vtkGGa (ugVѷX[^#x`e/WU)UPj3»} =ѯqplQng4zT<|;cUŻ-=Ga7 N 82.?)<Pa_X4zg2#Ԗ7p2}|qw`gM'[%]E5W۞1=U걙߳_J)ŊH& !5>0ro3˚4&4IqqiH04(NOz0;:Ğ̐_QtB0^XE%=_7)]dE|o3k=E>co2*1+H+GwH=h=F#ԣOB(#ꝏw:R_yQ䯮}0iw /QHÞ'&Y|LM4cfu{4*_4qeB;mv2f?.tyX\3JYa*g?!dnC/d)Ecc0)tڽ)s&{\\ Ƥdb|Q*(..6D+ݺrNVkӳs^?AVR iߺsmXk Ӝ<((O=M!Z@I>9_[G "lT3C:,ȌP܂7p }- ygեn$FO\ A[,Cmy./q Yy/hg='(p>g3#Ԧz̢0CoPF!2w@" st}Tu u\;ΒnE>.cB=f'`w{.X#x. bV 4nNnm7{UKQDbr?w_Poj=WZwȻ$ځv @$aR4et9}6lC _ȩ4B ҩ4yә΋9t}FXsҺk^Z~B< R zȩ|gلm8[tm'`MEsv]05Ki?ϞCᝡ:gV?vYtGADfjٿc!NCe2_[SzOBN+e3RӶ/ˡTSS4>hgʧb +Nx]c8>>OG61H|5?^[ӣ ѧn>kl^4;Z@/Ӆsgf25œ۟*fT7 IoSe{j43 $(ѣkyc'+R7=S{lZ0]Ķ%RJIЅ.OlcE"dG3 1\Tۯ P sm͞\;3?0(+W=t(C (ud"\8`>$f|94j Ь( ?(S9ԅSpx;=4`&aJfgTC l'O#/)mgx_ѣC}6SiPTGDxVӧ*QRvNw$.C5zFp6XcP .#u>ӧ~;Oxvh"~ȼCPa+:} + t4 6VB|C)>߷'g1a> %G3=I)?GvY }WfߞBw\㹁?}͔ttEgMxθbV}}X(M%I$KB>EO M?2/TzLJ c cĬ-sћ7i [ә? BbsFeg A{:/jGGAHoOъ=C!Z@#,fUX׵"x|6 4K[3zhȊUd :OD]逸]Q m2B S9](vNA^=eFM]9ҠOU[IAf YcE>x(}jWUy@GO;s-`VefGì`#8 bsgN>F?K 쌻\D)%40|4D.uZ5Y2VUtW~}TTUeѽb0XsP a><)f{;2KC w N*$T2pG<؏ʫ1/+yխtNmTpW!7 `XY3;V8f:o@܆LPe[UF,.XSC|s8v?}f-{dd]3?u}Fx d&X S~-d<1R_S.Wq&34_GQvמEъ=v=K󰧣`hӦ60aȆķc;[j%#Ԧ|Bg'#]J?:`FD_詟?DF Y0{9+*D0}C>SBpt ;QazקTѧۂ ˵i@ýZr!Arax B 柹g:/73ff< iO3]07xRbL^ۙS7uf5rgRL TXgpd%%  EL̤uZobbYʛ bT=a:W].@h R>_=Şf2#ThE&tl (`<%?~s\Wŀ g0}tCh?_fF4:=O!LM}O7xÝOOə 4t;]A^T6̑6ug4 Wwf#&bG['[Tq 0a޼>UkAP[%H|gwKKJ- s?6@9׍!jCԮÔa4"/32 BzC9P8MG'_G|tFe)éYo?}[3f?֏1)l i֏~e= !O}F S7o Uv3|/TG%a»?\96‘ OWѲ|w1 ]0)Kia?~S567٦9Kͮڽp<05PZjDB%G慔V602x9BG I4[ Rw7=DО9!lgtaGGӅ`ho~H)19R:g2BఌP]<?w oeJRbm嵟苏pG?f(N\3By)bmF(h.< s)tY@,*#'7Fqi;60}zk1֎n4)Q+)Y&cTUG^*'B*ף#ױ:~$v3BE>CƍF~?hsFϣO=tzԵSN?PVt]soaQhR?8\o.'Y__r"Ha˵Z lduAAj"f:`l/ Xu/ݐ]Hus; J̀(zYD̳Ŵ[:/ -0{_~;:=? bGi_ՎR@eb?1x--\eӵ BVg!HW\35h[S !@FX.ˉZR[158?J:*߽MSe˕˗z}6r'd9eg=rA=Pcdw{`D #Ic HiӣO/U#| L3 e^E,(uf&m{5P 6C9Կ}5CϨq1ܲ odB=z PxD4 ˏS{=,<|`6^.tl_6r߇By`[xU׆1#ܙR{?vLF1_|S`SK:mˢUj=Ics2y+rΫpLDŽ`2f$JK~lȘ$"wt}(ިG.a>M0|CK0Y{[^sx֡.bM|Ylp,vݚ(;zt:EOxy õSO<+HBGƱ|1s+=-md\K(;dS_FNj{-bQ@Y c' FʩF @kVJ` 31Bq]3o}IfIwnam#귾ue [;Hzy i˛kIZm %v=mtzdM6nbℳ7q)`/nl/wRjyԿR-z7/Ћ[73@Zt,.KK+Iݪ%S|3[$~sWe>NHq-S7h)]}+DgX\kUЋ嫖x&NM]DI\Wz4W lC3 tkCp=K+e8vt2PTkLݻc!\{=Kj\[qeF*u-8KP2P$wl&3B.wѐǂxC]_oBҞ@99={ 6[W MhYN4(f 42{g> F*aήs]8d2i b1O^_V ;SX1L'tTgQi5uS s xuo>6܀v )ef2!*lC.}W0h-',zRm[9~d C38S[9~Q|U4'rFNF̉3Gˋd2# =7>Y:,~;|#[crOr(a2ڛҌw`oG9VS?fg%alwwjˈqvx;p{9`G N#7j;tGh>=CGq-F|?'`ohcp_>C#V=)>t S8/swrj7Fާ;FGQZy1ߵȷ8ç0_Az{ ]_.#ȱ [rqVԚVڿQ<,gF8c=4A|vGϝL0y;-O;U(UdGi?* xU $Mz5É9ƊT3+J*|;7^]CM>CR OGXb镬V.X*@'ܿrm_FzΩ!F{;~ۗP߷%'_7P*p/Qx)kO !@5'͊Qb鋟c)?p+evY?wΑGֱCQ|5T =,kNY) W&+ˑڟ=Hr1Y=v;$KLW>;O2J u `/rcM_UAݏppR!Fo5v q.d?(-CM$XvG=Ho~574X|}]_{߸v؆O[ofn;FWQB"ZM> ʉE͔U $o`Q5wt H9Lϟ+Q|fU?c| %Eo ]SKlsRr>+?_0cG¿Or7KMS_b͆:$/|ek?Eޏ?LeQא^4+ ,#<2Bv,P;f*ۘEgO2i V4Q۰svFɆ.~v1ry'1BG3n-fC#~`ɘ4 !dj!H$<>]5ꚜgHBcHg~ )f-w@ @מ22:~=M=M :F7?[9f$&~>>,i,]FnBe_ a)Lt?2׬jV_L+}-#W;Ssz dz:˩M$ma%ĩ{x'"&3x_ ŕqA2vCC@v:[[X^²wlo;gZ]yQe TNZ'YVcY}C'B0{/g.}>t{ cweJV_˒rK̉F*`rhc4K$!5TոLX h&nt 7b6x=5ui4ڽ? +;B0|"2Hc7[!6.sޕΉv $k@%^`o|2jjFt`Ov:^ao x%P8 N3 e+C?H @l{7Q^ B4{Y{Lu36j ؒWi%! wvC]I$BQPdiƑh{VԯÏT2X&]^kJW}?mB~}UWAz;>~a/*]^P$?{gU͌43eI%Jbo'! $В%Co۷-ҴP(4)4, vv ɱXX5#i{?{]gFɲ3|&u9ys}{/Hci"/zc5zV:̹9cBǩ۳2``7{qɮh߫"t\HI4 'bVWLJ Ybp$u n5[Fp!VA$N XQE| &477*H}6kYS 00O.ǿ- 1 m#$!)F`܆ ʝAxP@$*U9vnێ~=[jRZA/bU}h#xv|>:{ sXhg6%$mQ6X5嵦pL)nɟ3DU!4RSe¢=7}&A8AKe`3#f!*03m4'3-.$RM֖q4ŠdL9Ӱ!)Lkhg`~R7^L5=g])=mzVXB:W3jBPC6SSo|֬m*;@6Ҹϐ"khK}H.5wR#@N.YxEUfnПI$" {1-y G0tl67)FRTw蕠C̝koFjN :h#/Y~?|s3bQB)2Զ{~w$9D|:;X ǚK/m 0<ۖ){+T bEUۨ8%`` Ȣ~@ fGWx8K啫Y TT#t>H* ȦDQs>H4۞+):-~\\X ]\sE aQqvG(пU3wQVz8i C+Ep lAٮI/+Ri@I7E0yA3\G>c* t ~͟u324BΞ)[`?>gq>vmg?k<3̌)33?NPEZǐI#BU$>ޮVc1 tni&ڻeFjƶMu* Ȭ@U}?d2.T(|õ;v}0S06MM:cbFC2uc{?ʦ}-Ό#STwS h$큋!rjپ$9a <{ٮW~2K6:ڣ@L ±X)gַ};8?@1f >%"{DxggM[1Rs47MH6-pnM #`['?Ño;b H0gZu\QAƹwʼn!vc7sk=:i J{XTEhjR3+(rMAy|$c9_NaT3s.1qq`9U9;lp_-5[RJIMu H‹* *l&C8QJ\! IAP) a'~"ߡ~.žIK]|-+Eĩ/RrB1N.hZZG2{k_Cg> -4Ҧ!$ Fk, )gd6']RjÓ L?#-N3qraBd3r.qG17heΨ)7+⢝{hrHu_Ks+igbMʗ'ۦح@Ouz"^N-(eH Vs.[t1˙o=L=v0-|gܗb [zhm\#5vV% ZOPUJ1R㊼GkhKB$9E ϐ|:H44RL)4ϐe.e6^OD!/!!||沍e{#-tqⅭg׫%#گgZ e2~y2جK$.j;xg0:L27*:ݣGPe@v9[gQj|XUž;wbi].V(LJ-.^ ű]+> ]y4_e b%3r924x@rW\= j{b)>.=~j-.1F _x٩BGUx ;UxQ.cGşN-֞vu'ր+ *lv~u?DzPu,We(Xf+׬mx8ɳCL><^fв?N< sIm_}Xߣďa~.©spMJ:_w? }cdSKl%Bo37<+! "cwL*cn\{jL{8v!vVFQ0)hF;fe5#$ݱ imyyɾ#s%6=Qo`my􏒙`} _%]S "ܾ;۟uo CKOJ@<`?s'2;)Mfn.N FwP.LyRA,6Ź3l!4S0+1qN` #j`aN#5>́/p}͐],N sϒIC ̣7#!Y $|s}V~R83ndE~#ԕ1Ӷ0| +\S^ΪG";(fIfV#M7nQg15)рjjjQ/9eDҺOa{B6DXtWn/Pr) dɲ?dmvHYk>vtێvӮ 5mTP{ZO-ct~ŠT+D; sfTd#zN~_ FP.:E!fJhȳMOsWECT1Z4S1sRHrΉIp+ͯ0`o 'nDn @<" r_Ȏ[s$ʧyw3hw\K"w#jfLv wlCmGc͖kI0J=fEq}5f-}0oE'"T_~#k:z9kuޏd_(^۪tq6IZϚ-אGUvwܗ~0J˦- Lo&}] q=/eݚo`ӛ?š'Amf:I`|~ke4@߸Mgy/pwy%u1 ak|&{uD;׳=243&CYWɯY@4cNR Y/{h-zE}zlsߐw7@w>Go:^Io^OỸݥ?Ө್pS+M l[*CUf@[<)Bp'xW,?*7B-_t!©9s/55H`~aAlX;Iy 5ӫeUNfU dƋ=*DHyaoֿU $.Jͣ`W3BU;i cli]P, ^K"UTPA1}NX@W nsp8]Ž鲿0S-Q P{A.5A:%ڐq?όo&'HgDT) | D&ID\I0@hM3adgjJ,&oK@d,̤o*\.2{D팸i!}fGF"HM15Aa$94QUH@nz\H,▟%}.C9?>f~=:A(3 D[*7HBֵQ-2= ׈xum]Zx[~mnLǐ D>cZz\ {n -H4-z:|bLS̟:™LX/Rڃ7 !,g8[J2Ӥһ T \x R.ܴ!ݢyr>@CWbަ\:_oU!k-vދ Y=o]6~3ʹą[i\* YS`y\c Xn㷞W}_)P!p}k|B9ߎ{z\)sE/5sy&bXTcPNk/Pm#BtVnKnA{ڗ"0sz ʄodfBҏ xZcTśyᕒD5 /X5*] "VjT8#D[%]-MTݕ8i{TM*ɏ ׷GlzW dZBN}ZبiN7QҘzT2#=N$4r>1ImwKr5f%]&jZ8K IDATL%D[] }33׿tǯ- O#~:_'6 punϮ(6+̥O羣P_tquZ`@ S>bӤ#>|P_Ѽ]N+}1ȵpg -½7 kލRꢪ/$ ґidY_YC#e6$Bn+eOI*B=i?ho{T3\Qڭ&_AzhóL_:f;~>֬NYP+碈~ #߀U7ֳLq\G7*-&LgXRQE}VlPCA.Nμ< (Z?}뷙Np6I&em8i ЧX8~`Lx'Fj4ŝ D3-(?aҥI g*yyZt),NEGc̀ %ԽlqIH4ړң߳ .(ih' " 4 oFѣ_Ez;3S_r4Ӿ΄!j>+L90di3-ՄBPJտ D^L=ޭ'^"erh!sw1WjW9~xX ˢi9"Ֆnk@Y V{@TgVf,cm'JKl ?۵],5T*İC Gv{z)~Qa;ߞƏzɂ{@%ZAXH7}-,#=+B !õQ;pde4({^{) ~hi#Ly:Ab* #PJup2ּTr\=aMia̗&b9s[5 c1<.whi<,Q+f\&eJJźV~|&!ǖ҇ױhRoDzl5A?XrE Gh ;z=3C+tkvoE¤Q#гQ̆=+|){\?Mq ;GqMIiQq _j˯""_ F=ڨ'~O+YC?}Nԧ[v}&&jp\2O|}ayE=3 M ;У_&ەiקK^ d:N8.R ǘCeDy4'вJ¤ŠC~/^ =CА˅beg[4sVTh`\L;A65!^kq9j S`M2xg(BJi㩰 ]Nuk GϲmO9iN "'v=ǟJ=f?ͧTTP =is/XQ4_S[*,.AL:S{e7yC@ƧdjOvW=zЧK6QtE*ȩ_OZC6TM:4)UPOR'KGiު\}d;u|f%B"^3iO;:vj_vt_kGCnÞA%ZAP;D}IC7.{L&uPX (e^aESً;Cg9*B :qT{C^N|8SC2 rSu>]|̧o~zy%_?}Zr]ZEAFc8qiޡOvt_aO#yEð-YHfCV&UZZ_6}:֋>n}>W"Ԡ>W.cEjUU1V.ݸ$$AH[^䃤ǫ-ME~zy{8茏mp-+ t~m]+G*1-Rd*5[C"d{lɳߧk~͹WT~  ͣV93  H442aU!!Z܁MKgkWoo(u.wM ~}a?e܏BY4=_tTJ* t=s}P VPAޥc3=g9q^d2x4ȊP‡b?]V*Bz4C&N*BkQ 8=fO-_Eq86ʼnTÂ: U5Ph*5 I?Y"8vR[gJ?Xr`X(OФ@݅r1z]XB}[\1DUU!`KM 3hn#jRdV\ VE]AB$sYa@900e6׭vSdp5Sudb|r[p|]:WvevWE}}>mg~L."H{n}]Z$~(g'P@HBB.5* MjE}5"W@3e~?(P)R"׼!Pί~k˱,bV1*@ċlSc(WRWWWQeX#}UxJg@T]/6x^rX xReaeG/oEAZ=I=paZ#TPEJ'W]3OxQTZjE$?&L2V6TAݕ;5eQƾ)\w8ͯ3rFRzwّ.j"5!ѿ/qs?>ɉFl;|Gv,4?GI%w˜4F]jy*B=i뤦]H >N\PEO&> `C1dcC>qKW@; g 2Tm|e.ݙYAgHRx˸m^|5qK ]5|Z|4 X{4%K_/ŌUSP7yAyd,19)DD"aeJUuMjzRIlѼ,;Lb*byG~v͞Si,9eaOE.hO"oTTP/>94>OgP-c؊Q&2G̒*x׳Sl:iQρ|)tY+BԷeb&lYϸ z=07vʶ_uɟJ ={hh٣h^g~zH1t"AI•-^e4n=5wRtk@ɧ)?kzt ĤjB9;ߙ,隬7pSuMw6\w\>qG@^,"T_(w H5_^'?R~y J<3Arh˥} ?7S?-YŨ[VCoAa F>yx~yP?ŭr ~|Q) ѰGa]oPDW3 ]:u٪h{G6 Ѣ+Bb"o깂 *xQj>L.N~kЍ}ѦRO̻ALjdr/}0J({Xo3ng$S> 3Q⛯a՗5xvT&XwPԑ MW_K"W${뾁Z~M=vCr%Ra@f3>f#У}OMQ{ `w9gsPZ_C] F=Tw]C 2<㽃d4~%G3xtk6Q;3 ZJ40>EUzrOxpVZD2])xCdí︖5Z 8~$ZvmZc=􄤦ZRfLvfǂ^EV:KrVPQU3LʲUĭ1ygc|j ɀԤƅNyQ鍖'V,\-wԖm4D(Өa2/fLH5 F"[x1ȅ l%ZhfA4@[~(]]!w=VuS?[Ӽ V|i <'{I 1BTQsc~)NsI5RO} ~udYN~}>1JxM b'W~s {{%I10Z<3dکpoocx"AMu4y9S<}C=yWӥ0#}M~Q%Fznjcn!AM-wҼ~3w}Syځ$3?X5QF*g&{X}~>-;X_~ u0+dˉ>; 4z\w_O]LѯG3ԾaW@뻏;; UnN~/LSy%|C;}Hhwlgeqy ( ȥiAԳ | &0t}Lmc3b N|ߙxk@{>@T_F|*6Z_mw2>SGvzqGfXs1-sO1o0B0}߇ۻ$9@㕬Yg'9i&XsEa Mw⍬lٳ/9t~k~ѓSl+ W]}+Yˑ; ŨiN=#^Om|M-8ɩ#CǟbqrpEA_qkj$bcma'?MfD=ա)&~y]D@r7>&_"3^l^\E+HrhhiӓȅyzcP.*+3[#R)j`[EE(wAlӝР{UKm{A\gA Ce R}>>ߠ S=w1ТW^h!p85'z(@ P"4M3Su`9~תi/8W .U 5 j !Z"~}sbQyk~mٗR*B ˞v{:'euTbG}N6"NP=e;<5of붭/8K2x_Iwr$mW7=Fgzf}aعS ־TeΛy2KFP2d LefZƞ[ :666y}]KĄ`'r xۨ HçXw>"w~ !sa_ H {4r^jɷU!dVb$92hZk@j$#2# *B-E=w1ݟ9SGкDsws-`o#Wu8 6tF$886@}s{{Y[/r鯿aλ}S#=lz?BzC M r02L|~Ϳɶ?ejz //VdWj!(W 4M:?;ܷkmBuOJB4]!z!@M_KP<24."TO[PC噡TPAAxҙל$W])y/"Y꼝ȞJPu> ȖjbN"_g\f} hsSǧ4AftV⬽TVK RStvȌ1?GWxgQSFRHk16Zvvp?sXÛ>ɕ[4鳣,KUj]nbxpK'QCNϒ6lG}\ ;=(9 JIB{ !#Ju0??u%7Я_o0w}SnMnZ672bQD6@i_K[gk 0qt@( D- wa$cDf+㙸MreK+#@xIf& hG5'(Laj` =\7dϯ^je`E#/W|_#%'LLS)!hΈ^f2_ B]Җܱ{Xl+[؟ Pɋ9Nݕ{[б2Ǵ_Ϳ嗩3,LD E3dEU_~$ wn$YѲfGlfݫ{u=q <ǧl:Cq/Bm}ǹN 3mPkpEUԙw*]E(T:ˁž0 ZN#R`>Ty~iyEdgw/q1"ՂB C^6Y]b*0DAI >|K\ε׊hp4F9Gdb[ݾпbj LX/vkD0 tTMdzD? '.$0o"}ly;W4rLμcGкDO^6u߼o'9˹ 9*%M[!# =2̞*E\>r_wjoW]@(fc=9qg/p> "hsp"2Aus02CgRBfׯqdqB{92؋ґ0X rBwQ`Ղ;Dz81Dj.N|m9~8@!o=_fZ`CZ: 3Djd y/8B( hO'bVj@ Dd60"L9: bM5[y Ұ-W?yG'4nV.bJ٣GȵYoi!皎.CeSMmGWvoI٣LF}Nɴ_\핡?"r/emS 7k:09V4.IQEb%vtX Z\G}{ԉ^suР߫+M@EPcԶ=J~G "^2Rc' 3|E*WDa]9ۃfCQ|,ĻPI!&X|[גh$J$'-/PPBT}_^!A(=7ԯ7#SV=ϷKة‹rQR{ {N-"eGO|-žE^~J0 *( ϶Rwu|u}g3NOELu)g^eRxeh #$c*0io鳤&gy^ȦѲLy 1t*1m #hsO2JdzwdDA( 4,L p@KhM&=3F6#1f3D;"zzS h#y _O0!;|/~sй#>D- {ІHoƼn.G8WvFyd,x i@Hwfm = H2>fв^ULߡ-71ř/3gFf_ޣIiXOu,4km\zl9B̏rnoc㦛hkck_`t` Z?&::g930B."y~=64j_;7MS’*BvSn}MlQQk_hHk yT.J`2#Q(Nzck)Np[R+DӼ `vJNDQ"/vZuZ|PH lwM\J<ݕ_iJ/s&A*Bq;}ceGgO[F6 *h&νؙ_x~yU KN;PGHJ1g 5~66-TJ#z_ FP.:E!fJhP"Rhwm8[ĉ?l}˕DH3qrwQ7914 ~-Zz;5WIj&B#Vr3w~>uz.baWR)GIQA@6wvo^I>p.%f> #8Csh[e{`VQKOL3.bs{ශfڮIgIwṕoDl4,PwQe} M3~ >Emo}/~AqΥox^N^'~y'{vzdzCKv9|Kfk~[e~=g14b.˂ c#mNw~"D6"k^6ęe!vSt/ w~zP}+kccZ\†w9}O8_t_^W\..;}?8bhݵȁ&Jeh>O([e\/}|@D\UنspgRRagC}M1_(-ꑵN:ֆggP|:.uq:.+Kaw (=J$"3܌|»@4ZUD>Df U mD|ȹ)2ju>Hj9,;bzl8? ##ipʭHE呝E4 pec_s, xvIfsݺmo]_Ӑ4I2#/0s, ?Onf7#g% ?mپ=bSUj5c9+uu׾mq(тQ^Фf믔z~ŶWwZNS䬯[Ȥ*-'3?^C?YS$ǡ)%U6@{vc]ny9P$DD85-MK :E{1npf<Pg/u> d| ?%\J4ׯG'5O,n$Hث٭?k^珣G@ DuuӾN* Oɱ>KU]+5 _aO 2QD}+$ 4nDg5QdB]z6R`AX-h_rU*rľ-_dA)6z씡/mA߹ni9j R\-(&%Iuz"[i9K=!,g4˥ɴ<]X(HlIBU )~|4b_,UCڞc+qJ|]0-58+Bc~[o"'Hv*h0jѸ,TG$4u6) +* z6Mo1ϩO-/AqSovĀ+0 O>K֯mԔ"WAO'#&Raع^< _4T@xWSwphv8}T[z&5PdRX;rTԀw+O+rBL5k?PN>bVz; U^h(:X1uR |B(5~͗jE!B41ϗB4"B̗""/~ {pC<`?e?IuWd_ø. y; 'aOGV?Q9h_䄗_䢋.|*,yp8u LɕP<0#&Eip>1ͯ~T?8dDj.P}yPT{E0IZZhL(22"9$܂(|^YRa /^P)K -~MoRCLLs.;X5%7w-Ch6?I|=m͏c^TȉPW*|IJRek={ܼ3gVQ-@h \)*h 5|Xzyϔ v?DuO ͖e#ܺNuXzh Ov@PۨO>a"E׿n&ubLv'>j*<l]M\|l]* S\IoQE_F\[=RNd~+c &kd< س͏K׵ϏHዸlP)g&˳"9v1?T_Ѩ.̙_Q2!E+\;/ݮ6OL!>K IDATrhܼ(vS#ܼ2Z=m΋::Z`O&ع7PkC>I{S'D(m'0q"T2 ;_vh8pܮ{svNzB \@Hu#Ik̲|Ff >D >v<'B|i:J9'#BH&?ۥ^-q l.v-T$ o7BZ&# Ŝa |RP~6&a2Ş쪯q \sݧY}RfqI{gRBƬ h )!l? ~ψ)"&PÆu)Ur858۔9b2TJ55G]9oO,b"Jx,,cvU[fmQDmg2ChOxB}h,2#XFɃ**GZH~ il UvM/0zM/d^юzڞE=ja"K'BzհJ%)IIOG.Tx,Dh.c=lOhٹ@'B=5Y~41$W6}a;!'VUJܮ` q"l@$v;WUNz;m>B9œ4 0?U }^'.=1%_y-̦BU (*X=,-(@G4ܺ_1r 5A/ܸ+Tۗ5]xbuRYf\y)YYAsk"_S{VfO$e0ԋ*VAGX2vJz!'䋑̱yס "x uROos̏:ӞO:*-$%)Jjk=^ݯ/th'B=t%nW,PPk6N65S}"$*$N>Oy"$.skGy*OZO727 6Qy0bN ; q4g'쉾/ ;MX ~6 )!:eB'ĞiE&@EР/bhi4I,}/5v)³P]$rpztvD Ḃgi-spAB!fe.ϋo+t켍"OӞGƤD"8H4|eռd#|ޭLpmD|9 {s.ps9\Ju=o1%% TG;i{^DQGUG4UGV`)-$%)Z/R~d}R"*ߦܮm^`OTV>{o}>* x\*L(fBOjQI`a~ZyO]̄Ŋ_sJp,ׅmb. J)gg.Dx3"LSF"T ' )g'ǝ-r c>qOGYs=Gzl8A%rܿO}W)-J%.Y yfY5[1/zwnnm"V{D,[}12C?T7海}>Oz;!*şlL>ut &?*nsO }r|:ƫoH> eooPiigXGn3Ta>Nz/ĉPi_&4/4kA,Cb*n#gV ж֎6#Qv탍Zz槯D`},9+22mT'Ŝ[PuY_4 X(0E=>wn3e\6, 5yDž>%Y-`!db1_DU/F:Bh1s`a-xtϫ"?v%JƟ{!n^fw8$ڙr`1:Sdo b"OYR"FEE G6j{ϝ\6 b.7VZ-HI%sԪLIȎz5/2Yuj=?ʮz145/h&Zd^ҲSM=ZY)3}x %|nYZc/85Nswj'94{::jإ'SC ~S1[/ᑿ0M7s~Dž:z'>y.$s''>n0m| ۿ78 _(>u~"TB"ӆJ|gO>V5;J;>YMڑ4, R9Q#'h_Ưz"4gA};? >'B 9PbOLr8&OԲQ>,PN̅N^[`g&nfaf|~*P]4'¹J|m\.gh@Jig^Sc;f&sss?c,\ N[hNDJ7n!$Wpʋjn2^Ju6sy5H8w*CXm'ˮ|m~.[_X,Å^\ [^>6#kFZbrKET4' :YP&gĭ\uϏ:{]_j$G=u4WQFyJ@t$$οT$dpOѮuV2@zJr B vp՗ӈWzgփ']r۰l9ak!,{,O͸6W Ap{I;|?蓄!M/˲8՛AѸ.(O2~]F$`# ˚;=CdN6+酬*zs9 W[77cX2ʣG C (<'BԗE1@XPVX2l"oMhL~]%BVgU~e /KEf϶E2?GYR|==C-g(C°"{M&uJl %&y|Eu@< OeqHyP&&9? ?-~ꨧ FydRZ -IIJ2oYy:ýڷȧkOu#@#e 4C#q;`{пgK~-jRپ'Bˮ>S7ON"ּ+ )~Fxz_y!H9w`PR-Xz5h>.rSBLwbG1vr shx\3=OĒMj^@Z4B$1w+dpzuo|+fo_y=SyF5[ј9o@2Obr a xUf $8c'^D1}!>ۉL-CMA=R뷢W  1v`bx]Bף~38}1 {gXͯ|ϝx=n *=L?/5?~7q̝89Ն6"سq 7)}?9-[2p`K^a05X%Xe *s!ݹ'xF~1g'; +WvV,[^){1|r yVlJNÙhj஧pj:s߄hⰤ33IN މ)dSPe+r-N ɠr󵨭ɷ}ߏע91-4CNSH\ eǶcH?Z_چYL>l|^ySsV^ЄLSN|m݈d׹x|/&ԺhؼJ!67tC{p hj,Y@'B# B 0WY8l>_ ~(E$gYnh/|Y@~mj"H-(OA-?1s C8DN _pAi1$%)ɼ%1^'A߫:c=|>S$եq"8z X~#4߆gމ?fho?Ç1фeW `yt|38[ mm{#.~6<ۆ}_ hXy6U!Q_J\[o":oEW'!0ñZ,e8ylE~3s?z| 0|KWUbk'َgYS{{NfGaxL~`i~1O6&?=Ez-*@=4mBM 0X7AsKD(\D "@$Ms-y<`W /ðuVHI4ׅl\OV~uCn9#‹l5E:oEE,QB*D;_!t %̌CKR,ܶZ z +&꩎ˋx"?y'~B_W5B ا>7׾n1mHpIΞ_| {O`ECN3w|뿂nJwcoEFUk;cR;t d:p+F8;QWӇS)MނW|h-Ƴ; <։3h9q./0Sw}{}ò{nd7]8^ToAs[wAxO'*n46 چƽw>u%oY2u܌_G] ހ?kġ,/lv]O .ΝxwuX4އ R7|_CunC>vr5Rb ûq`=e&:G @ -%4o". Y<1FT6LcgDCC}u /Q/b㕍x18*,`5Vh<bU u=ۄKy;.|ob 7P8wV`\=tn݈s㝍XWOs ?MoZ!%D-şboAU@z/s|֬h`WlK\ٳ8?gĊ`|':o e.~SǾ_mJHI qiAo #Htl]'Bx9dj Jg\v3|^b9/Y_j(xTNw"j~,y mi"͉. nu^L-;t7o%AM|" pz.n\ފ$:pzBgHB$75BoE/>g:p޹ko $xH#3:rk sۃB(XZ=#5^EC/1xEc5XST\W|U@-|ta>!!b1De$*k sFQ̸ ^|++\;gDh}MͭpEk@lo,x!.ӋpJA|1Z?)?p}QqqLCe>ǮB\`\ _X>A؈ k ܾ IDATWXj" QHT[ǐz"Cb.d'-CᡰQ˜'PR1@A FJ%)IIF$uxwko8n1qHfR u;Y(R>g`<v2}8=6!oEu0845vOE߭7CH$SUWũ~̢ ޷ q)G*Z ]v.fT285> )kQuߝhOcYn bGwfl2Ղj|(z2}]8崌 ́Op_*f'Aov@m[><Kq ̠.h[P Q,DңHOF+ّQy,35q)Rq+Dҝ8pNg5nU?F美kpm~khNo)>_w)x/^nlzMKƾnhKA&N|]8Vk@'WC<"J?a!'BO /2g X4af| 텝ŢOк 8.OfR?ϸ `!OI:S89ፋ+n.{ h,1E>^) *ϰ# qKog|LUTtI!*mHгa0j+Ik9!$ f3Fߨۇ7|pۊMӒFő#>ܗ }n~㘘v uUZ@_ƴ~ʻѵ@|۷@|EEcNO:ӯy$NxCOރ_..*uvCOF+b($bv,H s"xYCqRݘH+~D^0G.b"e5lA+O2~+d"ˎב1m3cLѸ1ʂ{B Q<#?q]Qp$ʂGׂ3~ dgDhp}QQYЈ't7(|:ͧN`cb|/EWWqa c<'=ȝ~"@vu"jP]*IIJRȒ@s]oKTy DDh\ a+ԞV|cC T_W(0172)zn'І(;Nx^|ŭ4'0u2]sggg~jv(vlǩJT.+j²+#~'?хPcSڂ!H+vfr1MFl3-j]5jaRrgũ5h> S? U$)dJf2ʧx5f&QwzXOq}5mFvdk|5[Ç1swyzCG O"QP,Xl 197BH9 IċwE5@4nS}ބHkJ7߲j~ҘkxH#Z.V޲eݘJ@UjT\V6TA <8V\:Ώcӎ9@. yz"T}o"@a "PQP( D  B@2 c&=^B7B>5^CAۧcC0hF=&:*v|eysOoG/41Y4>,$3FG }e6:xз#`A⟖oxyqF _ f? 3hO4f?qiwO"v*ӑ-?`|/wޣ3eY60hib8KW>"^f1.> oADY뗑vi/!4]O3u&;q4/_ۉ:U }:1%)IIJRl[o]&߬ ܦ <Wޑ,P?'qd0chBAѾm7fB?x5XuI}c'=EuC}?G.yw|G3lYNuKR~Guyz԰WX]oBu;_hwG1yhIegы3޷ /ܺCØډ÷nLX>+zdc.ml˛_7 qz<7ĆqN( t _'ޅC>=Z!Q{qbd󟩙< )B/`j|;? oP@*!d&0'M^s@p'&㗠aM񲶭X:{cQA>aExЎCLO"}![02]ʤ fJ<=LTa@x O tC8׎1 N\c ~>:T~O }fdpG,Ktc]G:]hY9z;17;ϼNB:ȡ}w1)Ly @yg 0h`C~$~"vP Q$iӖƉ7N'9P9#?|*yYEs4ѴoiʯFV#|椛i LX^~Bin>a!]y0,84 'WwZ8jIGD?_#輧\ȼ_{>?P'ۜ--:_a*~*̎CDu7~!ѹ FgbD=ɨ*GG?N2׍B4gW#ExٖA{vK!#>27]ʚ~M-&A1sb/>~ Ն.A≩`&X} oþOto?$B@16?+Lf(hh9!58= /~ݹ 7b5.OoB=_ŞR+l뵨}'-u{<  mDyW,I+;Ů]7 ,z$мuMX/TbF5։P-Pco?'H]vl|uH3Cgū?hiTkf1B%Ёnslбh SWc͍aıKk'C;l>Lهix*FK*0{w>74ވ/o2|ǿ.t Kmo\-'vI$^g  닊z~KCeAK ]~I> 8: -G}P3@.{ͯGO 4O|"-JVБX#-v:xHxdtv;#tlhG2$#.>:l5E$v KDD&bŧ_O_m$<@~ >-~,O~i$Os|@m[ϧ)6]6$O:9_%G%)IIJRt~=ڵms|+> @f@VP0;֏l 4F1EyeY{ {n|r>£0ҙrT,c߉}o}+*C'CW]@N l95Y pE㊷DX?Z$*mS#H4ԣ,b!) ^_8U@fǁxC]NgOf2фDȂ R%[FzxnB2F!|6%ذU7)&ԍGNǬEEM24~V'/g125ӧZ$(>#9X҈cx#"bW8||6C^ A ]g㫷(ҹ0Ʌ`>>CHu^!u1uBMgx(ω;|[KR,o3$|A>VQ?( `cPݾ$jr 2o?(iDrNoDy%$H& ^U4 OOOHr@sGonYu*jJ?ѶOH贏G +kQ^^Jԡ G 5 oz YP SӧAYFBȃN;u3,3ޞ>j Gi#~ieQC>)94yW,\3SO5ԑge'jGL K瓫qHͷ:nSͷt P(ѭQ D  >On:ǎCDM>_\h޴OEGx_"_2\SIiN#2ٍ/#(%*اo}N>*67\}_Z< wCKR,$GRXTuEJ>$?:Ja1wRGWG)V7B>E~J>?P>}KhV ׎(?}S/A;U(!{(Li>ZKiO1|EGN5^*4 ,O_/Z?t{D񓉓G3v913ގx>鼣J#Z~mȥe+1D@GGz<1h<٧OEp|='WìO+|2a~R<:Kgp# S_anz>9PSSGQh4ϧY~:hOq 3ç9ttt2LX(q|j{0<[ȟ'>l (CDEbd#ŕFPğ1@ ~;)O*s|BƓb7_.%i~ Qx4 04LH!c8|γc>Cq%>D'Q[n򩡻!$ 4.OCã6WXDFŧ?H>\ ?όW$jvEg>G}&WGYxX$ruͧwlx5泀>VgңK-%)IIEwD[)$z^{~(UJDɆN,Q@,AŚhx)jWfKu7E`FNd3jMm͈a QCNɡCG2gOE| 0hG\!egATe0LYb{'[Y8 23ѴOg4R혙)l4vxL?!aew>Y0o1lS Hv;$wM($TͦTk qP;d^0SSQ"탍J'u":!(%<3<y"S!z{r%'^/JSu"AOبG=`Y.Ql`U#jyjvi3@S!>`81 d+t<2v4~R:Y 6<:K?ZdeO/RZ6˺%(UNY~ NMsMUQG~3=%4[~*; þOaF"'ŧ*HF5@mwN S_$;k5m>bI"*`DJ<:<'B 妓Ϛt^8'Bu;|㢞_9'Bq%H^GI6wJ?\|ځw.>2c}8" (dWwY|*G"dO3QNJr|e&'ɧ;TkذN?**(N?-o9;1~X~u4ɧn:ð:ڈ-|v>`IB5~dT)xGVy=#ϰ:}|1/+/|@#i)-$%Y4$Lu"%e> ᡽C21RρѴOݩ:D. Mnԗ}~|IGMϰC>9aė3+#i$O3L/RHO.6Sh(4>i te{Nzh~<H~L%hO f[X~*yyb6D(ͧ9":*FPSG.!Q)C|ZO,}T^ `i{ IDAT3/bEQC|it'H.yuS3Of Sܰn0?ռ@:7| n۝]~u', ɎRطkoc_:̩D$t;=%4[~*; þOaF"#(8I] 8Q п];m>B 9zfC-%w%cNv|~jqgD(BT8 z;dfW6lwt?ia|ji9>M4v"SWx1ZD^/ZOON#O c| >}ti?>{9O_n< ᓥɪv$CB%4_9>5'՜8y#&iϠqݎl?:Li7MW>j_F?2[ivu?ݼ'_>C#NY1Sm_]Z< >Uq]s"l>͓O#u"C⧮W퉳Ja$|SȳZݑ_ >uVi\||QO>1 '(†?s|HH"&ONGO_M>?~bA'LM~GO$hOSO (ut#WO$@OvmV?q#LW0BGv.Hkiq:ڋc/DʇnGOOAF,g@1lz:bhIJRE!V<κ\i9w`!iPA{ j|G~Sl\:n2;'@x°ZLAgIrH)2jAM4vb >Do/hiA#JsЊSI4x\N8?U4y<3'BSmG >% S|P&T6/D~}:OZ|2yMg6<ǑVSƓjr|?'B<`(>Ju'SwY|1YD06FmΖ#vD=#7:ڰKAOS3z &B5~dT)yYO;ǣWLMv gD6LtKp;ozZN x#yZdѥY=^65j#-;eZE)R߱}Ԏc||ٱ~LKOP?f&~~>O2nF>O>abGv'yttvBGnSƧi>ԐQ+K;`ʹˀlS'mŧO3s'B >K'B9?v~j >~cCـOG~fs6_.(§L>q%L_O|qG!M&r 'S|À͕L>qHEOgs!=fTx Sb_ja~{3JmإΧf::z"*İqHѲRO*3ϧݎe6َh>:5B=mI ky_G&!ί9/Zdѥ|"_$dž v: ,dw{8xϱ ODS/W߉G?.w.1L&)2'Dףrxzhh>_?S ņXQoǧ63|{"TJ;b~"TjϡYR| ӡMǗ|'Bs_G !BiGNva]~82|(|}vO[GV?|2Z|ya4QyH_ްaUG+QϠtц] |)?n:817Or)HEUA?r|s< YԀnęI^W@"'SF99ߦ謣 >"xȔ$%)'B#1 &:r띨SYjlٜ_|'"~ ãF<>AyХ/OD(0h/a2 ;B7fGjq#G''Hw3ͅ^]Qk^ #F8lɧ4f:r'pdQ> | |>|:h@_D:>#.hɈgu'|>aU'kNJ'CKRix)':OXs'`1~<_8? >!:Gۧ A`:ѺK0׹hCAMs+یZ7myױsPzǓ]C}F$1^HT!)4SGOs4OY@4vnI;ٰi؆A+ }f? L"*~" BHӵa'B ?CY:NvAOC='f~6ǧsΊ#-?DGhG_А:Ɂp?liqF sTlG\S1v te#ܺ|Vy\v#~\ G Uk򎫎6leDh"uG4Z|=ޏ<sPYW>oS]|.|q ̡a^LM'N :D= d3ITH08^*?^O{ѻg7&Pڀt#k?U(:gaa`9HUB~$[0N|q̢by+qիIL?8fЀ*ЏGx U >s{O?(F1~a A y0lH =ۈ% iLx)GoBY( }oĩ1B.FUMUz!>q=4M"_ۅQV=z4T7v ݻva|pɦV$R!(ӇE82娬S0~5"{>t=Gr UF`l]G9u1gӡUc]xLP1.^LMV!)IԾzTG1|tv9RU @лs;lu_yI2Տ?G305S .Fގ+^v=z?bf%*zw'01Ei% J1&HJ;LLqƓb  OvD"xh*GGCyXVMq QkA<2|FŢyt5r#h~r1"7>É]Z]$aut/hjpӌ"t^ f~_>#":!nF ͍<|WbY|>h>4ZdD] TO5N\4j6uD vz0lD̽QCٓO{!L`(CoBAtmO@SH1/qb{'RW KRRNbbϏ\ubϡw`(ϫP섇>2/-w^T]v*z0}'I dBjq =Yg1Wފus 81lZ!2|TY-eCW-m(/~hߞA.C ȼ_5x] NޏwkP7am`tL"Ȏ Uhچ!`?08u>7]á}UhzOȉuhyz$ at|#8eO;1Rk!f0u#NLd0W݆֥J+ܳB]ϣ밤<G=׾K*F1Ï;v#S݄ >ބK )d/wA7a2`:8{xH$ |r}xw<P1 z':Mܱ`ߗʗǶ?K^08`NO|4]pK2הc=J!0rۇ1eN]U#𷿏COL߆ǐڲU5f}gw?t?jW )zѹGLiy`io ؎> N؊ #8/=(o؇ޛUϓ&4m)j[ * _wg,.6:3:㾌AeqADE)HAZtO6Mirs>9'?`w?Ƚ|^=OwFşвd6A0x翲ѧ}F]]kV2<+С&:1v1M-]_y#Ԭ9Y=ZWPEK@鈮ESeWR>q'!ǜč.8C?_jrXKJpGG yӤɫN\| ?6DlG$gVç.>iJ`̓Tyԣdi[HR~%>p?'_ԵG 5>ڊ Nv<7yQ,n>+<;#*p^O?{I|F(*.Ӣ:&]>:tt-׸&>aWq]6X1AˣʣZpahoFis6fiBzS{NSڿ40T+3VI'?F⍧?ùwr~#Sp5@@w;nȟgO}ZsMgsSi{LJ}+Ȅm1Zk! Gq@xwnj^\~RvSO\:v5=cԇu?~=,F|WYy^ 0gp=jNǯ}K% ?.$rO|_ዾʂVܴ]Wrpd+=9_s.~5Yҏ~yˮ5X,ZF_=]SODP}%y3Gz°->m}8}uavo~Wf+_1*5ZⓅюm98M%`侏wp+?{?tOy7k s8Oh эSC70WWQS@v2^H:ȟD>I6fz$!@7kH歝m7}9K,? mk\ΔpŊO]ذW/>cr4{K?Zsmb#.gosd\N?0wv@c֏?ew19:8 C}mCn-s{2#^cbN7Q_ =t}6|;a[꿹Y!S˙D;*0,XX$$n$0' 5 >U`c, lvD̛̯G:31Btx4QUS)<$fuG^S(+_?G'eg!"$ 0u!iŧyd>m3]m dIZ:iZ>03l>Wc|Nr_1D|}W`ӮQQ񜎶{Y,#݊;ELj.^FX엜W86Q]  ㏑[ N>6vEMl#(Ptwdhz+,֜M5o#ċF8jx|vg,|I8翌o} Maw~n\`K|^ӼPTyTRQet6FG|^e.'?L_w s.A,ݜj]Ѽ 4 \rj+ ՜żk۳, mH2Ψ&v @x5ԟʢMm̪ɡe6]ΊWLd:d=>gs{ƞOi<v YuEAh>m:9HYb.1E|2g,0'?H01xNBe ?RsJ3-ʥʹ t9z C^FuEaWai5qEǞIh5hhp7P_~hu}c y` X:@G yӤiVY'.>̈́K|ƨ#'B"i9J.?-=Qӑ˪c:uA#vqzaw"Tsf'BUhp/δ}Oqg^qںCRE>}<6 6Y`(ʑLJrs[!$,bmzz ۟-<%oanDLJ`֢u1F] (2g 3Yja7K0w1Z>hQe|vŝYv[(la,y ye9mh;7QV_CY.K aqXA7.![80T-;a㣐ii5iXX8Ɏf(PgL0T~yvշ mvƎC8Y]65C. '~S`G;b-e"B=qM+bd~~ƣg_zijģY}|zg]|D3Z>zHR/X3UwZ|zO =|r"TS1BttcrhS+,q< gLx篏?s{"4-뵸>e4EF%̡`7#D +~!k201E&Ae@P}G9蕨y{ CE\0&09篥9z9^s.UAVd(r#O@n/s*W]B㏿Ñ-aK;eڀ0Br!Td(7P â(Um x̦ cGL]u2rLNH-gXO -Hu! pʛ853CES- Ps_O컛߿.Gy/;b#,߸PV5a|` F޿y*C{Xyf3A;JߘǨQVAv9$L@Ӷи17q+3jЉ(ژ^ZP}}g~e}wD_V].w\ǚ3ȏjNxѥ聋}Wi#N|׉þO ?0_H|8SGp븮$i5y}3p&}sɧ̣>?I| iNKRy~ţg]'2`ϣd굓(1 ɘ0u_.<˟(An>g|3DxtNQ5(x{0 z 2&w0@oиQ߷Eл/vbN*Iʿ>Xh]NM١ uSwҒKmm )}JVU(`gGnDqo_{G\um9Fk snk[M8|0gK[ Z S3K(Cv6TPtU%#?krzCg{90$ji[Q/ZNuB2F(7ΔdQNa=h= (@ϳ!,bc];#WhP0b m[8ƖFʂZjښum^6Sѯc3#iL2#dŃM>9rx_,5݌+LƵh~eN FSԁ_;c;3r1 lpx';ԃuGSʲ}\j[!lYJu CԶ-f)16$5nƺ1PK^tL?[Wu0CJ>tZS09NټGc bF/_S߅2w^'"}^zsߗe*{?| <݃jZTs'_cgG-)}/Dgak7n]ǘvwNΎoJRlcdsL G/EV}k5Kdzh=C#LnMѹ?CUS̙,\hG;S.bNgiyՅT6s<;đ ' 7\ȢUs64ed΢ʈKncrpb|udh)_wýF7?!X4\Y=#7ggjp?}Ov0YB쀰f-mg72k9\-75,"Cq>D;Rs'mfߠ}Sa>uo[_3Bůax#Lv3Z/3$j{;hZH%Ìplǽ~NG?Av*sűv+9u<ZiՔo&;4@v}qu;-s`}dO>C[8ȬY-pAݸlA6~쁉 ㍉3&=ll[oao92fAPs m&{س,G6̷Mw&5nֺ0TXVBO}(IẊDD:iK>/}bCCeJf1S6|b(b&"ftguXMӬ"dV[2OO]\|*}nt>ipƙOOEOg>M .:Sn3q|'NU_]|:Rӊ姠;v.|8!Xft謸Ѕho'AO[\ߓY |CVX <ʘPw~[7yjy{"'Bm>yn)O{ݸxS˗ &#hyTyLx*!O~J&_Qhg}g^7^F3T7Ait4`#(4!",}=kXRAns3x8;c|*wC1ovt4|?G&j^z]vdEbCL:v|||+XO%UXR~uŗx|] YKCrQ^aa'ȴ]² skկ]KRs޹TOVv96 !N{_T[-?bTgp4V*|_7ݴwŋ ʜ} #7Sz PCki>Ą遚^fN{S=2O>+:o7Cji,[@E3e,'0vJN|7_Mwq>|/~22Nqo)?A2Z|7s QCU.6Fby7yz!s/O l#;u_UzomaYi{>滁YKi>{5 #ʼYϙŮ>=MƋzO*o@0g5 ׮fCAؠf &::5gCCgӏyyYP@foGŬ3_Ë^ո);B/q!(0Z$D u7a/h' u}GB=zB`~ >1˘O3BGS tOMge>z诒F̟KXI|Z(M]|7<>u+LG tuQ{J|PӞ31ʯGu&{yzP1n<]3T슊d/}O7X]x^> M|/,Yk^qV;()*a;<'2}.`8XXC:\ʯb.1hh2#;4p|MfMTiƘd|6U,s˹n&iO{?$~ ]?‹c4WLePY#<|׷Y5owr`U,aC3OB&X8a-f>Ss8>ю$;>tdz|Qǟ,$~O,L)q>0ĵgȉOdN'}tL3Qӡi~O3僵+w%} /dS= +i>(<& DwJ&_Q&B"cV~ޱBb]0fU  cb/ffEB_5Tm!S8_VDUC eFTRQLem)~1ВhнKSiE% T͟]ſ8# /dRbA/kh>#Zk-ͅ΄tk|\^̬Z75TBQ5 )[jV𫬡Y 䤝]ݿ@LUsfSaٹ(_ԏ9=l22:)1+`0k6 6rY19?_Z2sR>M3?bbqU{͹xt:c?yS4+i!Ns=gG E|+zGZ,ݓ3̊V=]e| u%Ѭ2O]|%|6gKt#r,"Z|&e/qƨ}09>u]׉)f৹N|q]ӴS C 3M(_YI}1Aut𨡲]|ZߓQlײh?eͣWR=\|Z'.]ߋ] ;嗄r%ņQ$1NG(= -(m,GPF /Ȅ1 Xh , HQoQ˦ˡz퟊N D.G _>~9%YK5P9Ȯry?ad˃#4uxw8%>5l^yS.6} Mhũ旄f=0]/rNd9qũɣOO_ΧC/&)3'&IM]59uGɧ~L>jiOSg ZB-N57r=⇫0ŧxt鳚?>çiˀ4M>Z| ~Fyl=Q~t|^Pؘ#?bMtW@qϧ6RPӴ,ũ ӣ .MMD>i[\ߓYUPO{QOmqy4ɧCR-#\X7]/!N=1QGŘNEW:U6K4J498~X+L{}*W7aȍ\$I#J(^OP9)嵍T-_45:piiw|aÕS_MJk9iGӴy0PN䴅ų>HLx;=tN| ԙ F> MBΝH3r'\ g h1'|ȣ^Os¦|fc#^J|^ә𙜿N q|&(x^{Ym xwBAA# b u$6lmٷmb韊Nnl%t_GP/9ydIɗP%>wNKOMO|a:ZʏjV[Lxge;B|*zOvoFN;n-LS?'v"Tױ!K_<ȉ@͓OA8e]׵'6/h(끎iOn ?]0S O3g5B;"MCç2[׳Χ #I4 B2,Ⱥ2]vw09Nt:ӯ@qϧ&ǜ2e)N}#zVxtЅhzo(란bVT֣O֣EM<;uڨ"Zxۖ|t)i!~:N适z8?5_8%5Tί}^BHS͋kOCqZåb|2/ݑ+y & :ʼnWgec똭{|Y]돬~IYs|((齏OtK`|O..|&!Uou>.Qt/;Lſ8c C+PwoD(󙢏:E=_QfG5tO'yкGգ>$_u[Ǽ v侭 _ e1l>c~/rcBsƩX>1JCK4Jyee,)mR-ۢc(c韊eOw"[(}QNbDƐͧV|&%p3GOO$O4T^6׍?|"ba e۟`b sU Q~ |DO};1 ߄8Dh0>[ŧKw8Eºu!PQcON*ŧxYu)#b3t0I`<|E]t.|:t#I4I`+-$Â_|TsX(LS\VRMWR&b8EeK b僧P>u<.vN !i.DͪPAoecoy"[g=I2SGzjCĺAx׋̧# SOZ/;Lſ8c qIq*J : ': |O3vu⫿H"Nhbi藂n>4l Oaݸ៚/κtlX IDAT;g2~:)NO(= -(}Tm<l7r`O!#BgULrSʨ,{aESDQ|8ͧħhI<jN$toOc'Hz TmL=pѩi) Za%ӾGO޺Pw,j4mA$]7mqiO>]ͧ;VbLG(itZ#:(= -(8[k2v`1D;mQO}9gҎg +ёVa{3` >|ZӜG.>$#BP3mkh(OSa "Wf ј@O1ĤH83Nl>cD\t+j a >qiF'B %M}"T5dã ݺ'g'資 rד$:11Nħ_'Z}v?sA4'B3%lA.w=We{oUħ_$LHЏ3iӖac| qK˗bɣ'N+_8yI,yFahiFi Ƌ{^AuI{ml]-ww1(蠅N,[;Vˡztx .12QWt(fUXvT>];.>tk#Bo"(oO=_Zd:AˆGO|Z;8Ui6h遌ˉTq:hn9L}瑛OYw8Eº4ŧg]|Z$0*:OwЭq:kS:jY|'y| ȶ;*9ݼH*IiXӜGn>ˎG|Lȧԧ|POMEtiΧà?1RXħT7 ʏePw:9“E#K^#>ai"G%ꪁBBbQʗgPQeTu a!t0B{;mI/B@Ǣ*jqw>D;F*(i+p|: zx1ίɧI;&JB<摋'B"I'DR8uQiƙf;p|.B"BH6t5 qt"Tͬ>ݒyt1_}V~u$$s:11Ng3^>-s ?c%SU-Ȭ#xO?p%>G9~%i &ǩ-' #kia@DG8eo=2ni%_S_&ǧ1~h_Q?G]#cZ(.8iO<.<_z~~"ŧv/bcB z>' ˋ0JCK4J13@^_ٛ?;A :J;V0<̱l䮸5oۑw<~Gb6ՍȾgGb}%Gr}ɠ]c;{щP:97 S1ru nD6zw\/6}8zjeE0Y1a}&z :^&SEPS҉PeNSG4ehVSX7VP -PjfV\<᢮GG.U։OW?!_% UGB/ . Sc:8 = ɰ|"ͧůy?pIe]?M#PoV/4-Kq i6Qݨft謸Ѕh&"j~:tUAA5bVOW?GztZ +?zQB5-o݌AIL 7ͧnߋ((ʣg~^Gē(xa 1Xomo1D1,`OORlw9t$zY!1CSTDΧf01v1Rr8o#1idzM>͝nO{ '8yxq:jZ/:a;8\2؜eE315j}^:!8)9N_O㦭jv4@8e8I2QSOQN:aGO[l54s:c83̊V=U10u姩{0SGBBWd&zI!0B*HeU^b'JuDC;NG Mqa:yDݳTץ%)N&u3\wv?S5>[>i:hCge݋юӾ\KL4=paAG\ 2I޻*5ed~ͧ= ϛ^{,u運_?'qFi c )5Aa C6;eel9+bO 4}v>U%s"_v#k._7,g5 ͫLu/c$g|_V i穘?|B0RNlOhi;؄Zc>cGPyTqtm<6r{=8UtO,|&ũPO[T;c=qUC>ѢOM}çkB;*ga5OpZOSYm}<MS'Vqi٪U둠?.>4qӴ\ MRt_*/.: *84ig=R֣rdQFwGjy?DWTMG(ũ󙮟vũD> O<_|oFiFi| q^k^t !Kغf&Ƣ }WƇZNML=0ObI rxV&. M~|7_BeE n}L͞Om]e^C;Ȭ}= wڴU,ݿ}z}fPќ6uSFBOwYCMkFY8`h7G6n`Y )W QvC(ي6Cv7=oai6c~0KUw;<0OtQ"=[~tMvo_J.:?Mףwo/ak3mO0=lk '~KѿO\Xn--={ӿc,Z=?W=Nף3UGX e k"$!z7ɡGoQy y{TBBy9Lurt_/1 m ?DdyAFN"U[9FCӽc'TSVXS92=T@F:WR׷z(kk_ Cc[ӷ{;@0DX>#-Xiemm g 8{~)P`.YPa휧i,Td: 'Q:gLCpS-ɭiiT%it<w}7Gozf£42Eqzrۛ.|N;JOǣ}ӏГ4bÉgm~z| waLxLu4ytiNX8ߓfDCxfuiaLG199]y#q:}?3gw8!;6NFi c|S>H;E ) PG",<=᯿na~C;X`9o~ca-<Ͽ-wl̎OGGq4Rߠ*{H@%O֑P诮c=UZ obߏ>Do7Ŗ&w1Bu[?vdk ; +䫓w@߽e|;yty;cx#\ﻖ-_"=yf0+}9pO F0>Gؽ `bOŏoOasپc6 y`O֑q|Oodߞ9vߧ7sp t/s1F:~G7йs0sv3_NnbW遼tF8Ο}#ndb>:9rΒqۿz#GL։# t-s-_qOѱCWd#9\A;6w/v}hhgl8P{`總S7Fn`+aWǡ=LO-1 ^|;٤nolj-/NNy(OEQW tDFVD>5 5>M|>t>7Fy.ևcOL71&bgQ:b)|UIL>O$t>}xL\vVes!'B:M[7ElY1tP3G@VG~)(iZⴧc]uҡBȧC4vɯà?1RXE1됺#Â2r韚?N릡/I ϓuiͧu8ˣKb|^Nz[|4J4J3- o$l[M^c w4$ZZuN[QLl&_go/?3oq80sBCl,X̎g_?gb՜Ƴ)7= w 0GFӞk14,a?~;'73]_a9=q6z.eA7_OmWρ6s (ԡ`g|i `|{? a+KO_KYd__UWϗAU:Nsng:BdFt7JI Â>ytF$;!O$8KyjbvvD˛?(]OD)8񉑇_ &Ǿi(QKS)1Z|*~ }N*~}<:.;?f-BG Ӽy [U&nj|%hF *zTz `bzXN+?sWP%-P3 Z *᛼_O-L0ڛ!C8d@2EԵZBP}rʊνU73bmX zۀ0orއ^G}cbʼLDy4gn_SD_a|@< P_>ɧUl>]uE_*J|j(~CSB-N5uznMu)~d.|c >cSx4׋̧rwݪ4M>Z| ,=Q^@҉PC3G~>}}ᗂ2e)N}oVxtЅhzo'??SluF9 FCztZ (γȧP5>jr_cie0a*]K_e S:Zak'Ð**BsԞ{15Gw3u3ݳie6絿eG?"KSW_ eဝ?S`& ~/|O:T&&390zɅvr(iDh5>] /| ~@#6uD?iF[f(,Ott(7^5|<:.;?fzx|$?C>{"T9T: zcѩFߓ|#''§D^BHO1Z|:ƉY:f5JCK4J3 2^*ֿޞ(;ΞXqM1. Gd2)Ka)lIqF e'&~-_|%Kmc_c/ly!E4<ʯ]El '^*䋢şssn_} >[|ĖQ|5̎!ͱOfs;{`>EKK Ap;odP?L?5p͆gT΁LrNq4,>:sOp3m mC7_MW'Xs*ˑyPVS}>C\CY5*. CPQGtBrʭ<)F>syJeZY IDATG|J7 =w|Rw%UqtvebLwCۿ4;'35'Jo7݃N+(-0Qw%=Z ~Ys|Y~ ؏3(G :"ɧ& -]ϣWQd:xM>(8 ->݁%1O_˰?93# P>~xti۴uO@HS##ݩxtQ Fͣg>!TH(A >k'jBGWb4O s/ǐp&<&5Ng 8>Zk Q5(xBÐY,~uɶF}@ahc5-jO2*S L09Fɍ3XB"Ť_?^@ MW}e9P_~ʖ^¼z;}j,&BzU NA. dNu?LSS2[G&ƕWTPV] #L>9&Ȝ ZZj cbBe#SFl[Bݢ%JZFf/121h.j,"uоnFNW}S/lfjaW_x:3<ǫڵwhm[b o0v1Hy۲Qu# [h:w)S;`CTz扺 SybyA'Ρ-96Jک0q'yA\|{R2BO遊8%aoI'B()WS{bN:P5$c¯cR,뎄UO&5׉Χ21sGzp`'\/2F<ʺ`i?ӻOOXH.qjTK3FP>N)Oz0/~莓e>Sў~ZӴ3=\'+{&jzo7FOFLi+gW1O?p꼩n>$_u[Ǽ v侭 _ +_tO̧wr嗄& }fER=QzZQ/Q"gt]e][-y $ƒl$;rsso2ѻC`#ERn:`?ccO Gt#/] [nbw2vw&ftEheK31_4PhgjE4^f 8Osmʐr7;Nm_d'  Amg2}̞ s.*-v:F?s\,gS77Cn]sGvq/ӱ# = f<Zh*v7gbx?=?n!_EkK]7#u{w.G@شpGu-OP!z~]o`<7Dfz 4-*T~sR_x2r{df:o) vZ.~#W crGo6]}0VS@ #`KñFZ c}aHEM s{\N᷐xg7?zs~ndg[@Ο>]@F6q]~ `J>`a5-jakhV3ъS{e>| ٪#QExPȗú- FyytMKDDOE%.>̈́K|:'e̘OrfOG,.|:t#I4qZJ Ȱ?]]Z_MNY1 K| .>;Y7%ŧŧRbLGƩO_I:w:Fa8GK4J374r*k8RYn{Odx?0705:Fd1(+Y~VY6>T1TuvF xyG8Uoa[_m(5ϲw\kc=Y@a4TF;gQ(Pl e;ױ?>2d]NN`d<2sp S,~]%? Ϣ+YmlxbP 9.xM\} g45Wot}=/yׅT|+]ve|0 XK ]wo U]ܶvzd┫.f[[j:CLm|5'9ɜr rfJc4[<6]w3fp2jy<ߘbo7ӟ1? f;)mNɳc;Aù4Fϡx4^*Ꞽ=_x3>q0{@eUYR6Oc*ɷs.SvIXOBʟC P Z:|.Reb ߔg'bd~XQ1B#&'i(?gO4qZ<|zO4*PDͯT|t0UxtS<<0#P!!|||9^6gQbtj i]+擈OD_ ~xcc޻ye'Y%; vcLНIh M*z)haj4 5K knB դI2$ ݤ*!͹۱؎eY]Α͏k}{˳{%Yo6hkGyPxkko'ot{ɇnG^9`Y"Oʦ~K'"[[2M>}R]dR2HX'-㼼^Г~(Fꩣr'[w-eS?Y9~Rd!Y^*/޵rB.ټ,5y1Yȶ[IVeYٴ{lYlE.:)WeXK+K{ei2geywKl8/ٶO-6魗s9v$;oYJ˧jIyi9M&w| ,Ү v~K+[XvOW< |4򈘕Vl!#[%噓GC(sM_NJl٠|.LO†7G<ǵEd;g4nM^ ksK:GϹr)3sZ3KstU~z96jg~DŽͅi\<6_ z ym6`"tMnKt*F `ړN.˪lT^Dv We\s`lv ,<מȕF|Uˏ⍲,Or2P)"&-{&_ϪCgeY?"TY'[~zmuPٽ<7xd>5_-{R>$Kۖxp9suո]~ag?&SGdiAY'K9핲Pciϡ {Yy}^(΍Ofq-퓭fKsoLkef9V?|PpnPQ:ixi^_aAlJ)M|X W^k:O >>{n>|Z,G|&|"x= I@$_4zϗUxǀ 4| %e@xbŧ%=z~<~/4*<ΧEsR֏nR9}>Rx/+/<>;ߠExtaL$13K&GS<_6h:(nr| 3E<^ԮEd0/ڣF1?j7y!vɃO.7}ke{!33L8zӆ4/ #,}O,gPr|vm7Ȟm˗~G_z|"=]{IѠQN#'eoCGǧG|Y|cret6_$76OcӉ'ςY%OR'_G0N뾁$O8~<8}zL" ]y[G&>W/ BX>" :/d7:| +2>.x>yމ>8| i?}$f@7@bE>㾡u!(HA(8P/Y3,J]Rɏ6hϚ=AW/DSn7 خ׿Gduyѿl<{I\vi g88T/ؽ˲;eǶi ɜoӲ2\yR=vRCȎVV7O ܞG[ylIGg+r//~l]f19ҁd?^kX}z[G|}"|.7"ܼ ^0gBh3h \F>a|ko>nw-|;9yli-*k2<~/[o o4c5?~l׋* h-<6W#[_ XsjN.u$yx$;o:ӺeQѺu݀kյuP|v z>eKdm7xncWp}!7Hm O_'/?&.9SWqOH}([b^u!.Ƨ)ǀ^ C<)4p3"a:瘳*tϴtU~ݺh\j|.>E>E>k3Z`~Eׂ|/UA*|z6A '6#P@6> /CGm c^Dx؛dNYS^p 7ݟ\|>sυD*8u$Nԏ{v'~-ŁK`gÍ8da4 ᬎ+=ǧq'q}S,B>.g0򙟴j 8=4(O{bN|I,O|aMxp2t׉mrȵ 6ג4Ko]ħ_~yb]|Z+ @Ⱦq<=@^F(ADZS~E.w#+|7+:4X>b^>>!Uiyjy@7x<q4y?xD 䣬D+yʀ &u='g7sLi} byDyZn( Zz7CGmgOup^Nmpre%m7=sυ3"=RYCthqeuڹԿG'5ǤeCPɧS§36'ZGry>W7Bgz`׍;ʹ=C/µ05))~#R2e 7h[O,>Q >GX\%R^޸7B)$Bdst<]KD#5SqʂsD?&g[.F&tZ>{^=;,_Ҧgz /1TGN<ɧ8q'^np2;;I'w8#jϐt*>ٸ>iiEtR출`P-G^zlO4hlĩgm7Bgl3nP'K 8sw#u<rtz#T4Yxa§O۟1i +泵 | Xv^oЍ<О>g}%u`UQZtڏj Qc_M/)/ dNm#}Cxd(<2+\JFx3tFГ;V>|[^zo;\{.$eJvgqIʼno,TyxYG|E';|m=kIt LƧߏODw]i |hy9l(c%OSgA(I`gُ0Q{=O/^O1Sl ϻ_t/bicT:2n,l0tNs4cb4>Cs1 P>Y9}6q8I/h/CGm al9-=W}Uo]j{.X& +Iqqɉ:'34vmVSP|$'̣PCG{)>Ρ~2 6+=ӟxF>%b~X<Ê!>}=Fhsb8!O'McCxoSgS }\3"xyړl7tyz]|VtIe. <3tħBJ3.پrpݞ0'U"W?+9'~HN<ɧ9|ɷz7:jZtP ݂: yb]hj(}|FJ;~Btǧ>"h ՉO $|mzE$>.0F/HÆڐ']ӿLj*y~1>i <8Տ]m|_kz#T<  <@\~ Lw9lOc*|-:ִP!"dNmCbϨ?sцO0>1<>/QP|N_W3K!3OV/oOo9>O4z+sfj?Ka-O_>O3 m62\'soyG?$2Q\I>~9Uډu  !>tNjpަNr <Ƃtgs>Fvȍp]1c@.Nc~S2) GgrӾ*Yz0>l3?.hp9qv1><['7!O@k#Dg;Pj0>}^'(?~U&擷$xM1o(O_I*>gA(yeGL~<% 3_1ϸ=g〮܌ϠϊǶQ}_m9 `H+s7cuAӾY黪?C^q)b#s}nZ>E>վa}$ @w*|ryyj4>"rҨS|/ɥM,=^2~ H7c+r!9,^JٱI_#G?\C7ʡ[&(g?A9y/-SO}N|?3e_}RNn9v[%wt"O~>957)_{l[~[~E.Gez׾\ -;=C)7K{tcrK;e+([MTuBiix;Ej(dw5$.!'U1Wv>`4%=q@RWcz?lI''6+۞n,#G|,e|h:R|Ic?Í#ѠcwY4<:> V/iXPOcΧ4Yu35DXU1mJ_[G0 q@'ZGu}|bg@8u;3O"ţO_W@/gS,y)|mqD"/M6 m6"O^{?^ =3]7NrY ]"gӯgrdr'YoK?'[~J>WK/[eɗ.yDEzp;?WVg^NRN~7䉧YO|WCcүI/"|'_?r+J/C>._zQ9&~&@patʯ o $[zGPx1{F}P?R=5vx4/  Oǩi\-ϙߧ~"߭YGKNauy:8O8`}<31u& ɾva|#>s>sgп$|݁|6`<)>?SxFrUG$ci1˳~<:|+yOpe|}V<2L6:, "ӣ9tUEiiħYiwUkx7Ҿu'-}.bAA ByyzIqgX<|ƛ6چN]{6Xd?eI+r'K^~v_|O)Gr].9zI5{Ecr3HwO˵zt[?|lD_}Jȝҝ+9ɦn"ҝO|ۯs{GSnI'w ؿ<7K_4i`"+{ɦgM?*]'eEy䴔:!>10)E,rٛƓOxu)I'+ {N>i\.h XC:{|Izi9W>U峠@> NIm`l)cAFBNS JA̧OQ07B$qEã`U<# D>b>Ϫ$ҰOZm 3_߹L`>i᳞nUڔ#M0 .g|+xK> O#֎G|k?L]#l L K{+9ӝWgϵӅOoOl:hmt7(vi|[џme˕m_t: "r3%{C*Mt[WV2;񭯗>/'^9wEN>Y:ӟn}llݯs^DAnֽzrY}n9yfo-)7u\9*._-[wHz^.~R./e9!gψ":$ OxrIc:t/=7-E3PkSQB8E!q!>I~ؠ""=5:5%ĩxjG<'P/}:"}ozUĊxy(8LrA7:|Ϡ5>C]\wWG4m|EOOB X֕ib-ϖc'Xt9ϲr>gg(Y\ yh$0LU?XUVE>㾡u!(HA(8OgIԇr |y"o6h&}dj?+םS֟g=NZN'yy""7ÇNŧϋ<.O+taEDoESwKoۡLA?5 YcoYt͗gN/UٴkltNVeIv 'jR0y\Vd9~/c |5x#^GD4Bԭ|"bẉAUdž'5Iru4<:>=&W9Se)I]ϪSOW&'-|6D}Ϋ/= .B0CxP,z1VѷlN_p'lev"3a\Y]Y\߼}IduUK"_X+$A~^^_.KK",H9ɓ~[d7ӟ4PnH7H:fA|ԯxx頞=M/km4 ׯ"w"_erv9RW (vςZewgJ(s Ӕ)Ϭ~ ٟa{: l~,.Ճ2^a|nj.SXpħ+31bgciYOG˶KcOa~l>Q.Xo'9o[lR}!3l]5CO?ey|1gUѠc?Lk'GE烼_n<8_Ol.B<:>$`:&/ħxdE?&?hmp.s7ɛ{w'|R8o[#_EA˥7Ɏ7/di|\wےcGd^99qʕ _rc""Ed7ҥWT+r:K}rMr]Җ'咨z͊0m}ߋEvn9)gP{rimh/ ;~lŧ $9`x ? in҈W8)V;cbg'v^oB*ĥ)}|4V>+ۀVcq2VS#ρ/߀sh'? S>.PWaG(>sxV ;auH-O/Y[oou/g\O XGtVt+Y{cma$}D/zGa/"ڏ9ȣR_g#~/-o\GO>GY'yz Tqi7Xl2tF6KȀ",_!uokY途p:ap!"ݞ?&Y>rd]'{.#G~ryrmr,wʦǎȹ;o:}ˣ<&+Sz<{|˛E7]yr 9='{ͲG: |sO3<*i":n{_]Gdr޷˗gH*g?9rCrIdxN4=t)bNN1CaYGC|qd9Daw{ '~8+|<퉱;i%q<5%yzd'g>rybgqu# ӺӯO>CmOC^, x_c=PO`D=kO۸0q8[ȭGFhE]F|bsϨ(Wk|B~Y?Ii V !Ydm-gXG0βDouĶb`|z(ϸItntP>>'A'/qji?Rz6bW~5mk~."WϧDL5V@Gv#_2 ~#'ɏ6h:'uq?!*֟[N ?s&uR l2}/K⻿ ٿ/n.\/_kw,$vvv.ٻ=p*ʱ?)?-fa9\y~\v_Фr<&O=k_Fu/GEp9!~Ksy<."NrOȩ{>(GW eًg^q|7Bu:IxT ^4x ⒈e~K"JrmPΧI$|V{K߉t,,zJg^`ρ:fCϲn3>ԭ| ^U=,qhxt|zlhXߌGŧE\I< 9^s>|byyt|O~ߌDŽdۅx :›X)>\ЦܜկƳZ9a6|F%Zǡɜ-8u 1ߌǁznkq9:_P眿?WBXtF<Wbjxt|I+8ܗ53+O,3x}Ǜ~$gyFmA{6{kdj#Eo_*B nSݟ>&elݽS:7~+I=dy HGD'eYڽC6W+^Yc+vf8ˊ\?64HeD8] ϕ[¨cV?kAŵ R|F~ֱ f-ɦ+qyEZoXkb|6e>o̳?C!59W|'n 9 5\bmT] >g][sB;~dNXʝ̰ٜ0/e4;>ͩ@M mS~ײ_|nl(m]<ݴ .u]D6G}L~F6d rFs%}ze3eS4^5И$Ӌ t>()ODr? 'N^p˲j~Y-*>K}lݽ}E(oilI\ IDATݿW:uE7M5wD"",>`i9 ; q0':>i8O^2>Ǘ4q!tY[[uISb|*<{j̧[G,>Q >y}Dú0,/?'e§/'Ī[[_ϧEԕ鳮~ LƧߏ) Xo:|/>1n48'yi}ѐgA(dۺ~e*yʀOOX~x[>,OLAlb'4r6{(<:uյևJ]':/ {?B̩ t3`6Gic<-9ҏ| (~<_>G  m6MM$UXFo?򫓟N߆pSNRTrʽ?:'~dw? CM|N=CȡP݀CGۨ3 SzhO!#[Oǀ 0>bṄ]omA=Yk+[:l;51`%`-O=u눮;n9~p>F>yJDgN4ǀ&̛޶Nu$Y?!Te|}鳮}`M`>!>y^~|D@R m$E\s$7"b։P3%yug`|z(O~fӊGpi<4i{aUtڏjEnRgC_}>*7m<v'Si#3瀄tv|IPmV[hҏLϘSHehA͔U8xmq<5ӧqxl:|o;;N x7ãL<ꆗ:t9/I6xg|4|~0"xW g 8wfPǶ|P˳$5ϰ=93>z!Ӻ|RlF蠃&OIu6X=v *tiIͭ"}u)D|2C6xd7 -]ZzkL]E||&<2iy4`%?^-U1qy95mt4θ#sJz*xB|}ĺz#Q" >k7Bm`x#O/ՉO $|mzE$>.0F/HÆڐ'V^2%yud6G'.ĩ~mZ8׍PHTW}?_}f|U t'?fۨgТcG>SB̩ 4uH,~>>@S:]i?qHv=oVFmX<)a8R?0Na?y*ӧqx9]DvPqx48:-qUKx:>y{#>7B- j%OW'Փl>p>e׉mH-Okl}-2zw} O_0 Qo}B4iy4`IV6:<"3?gm COFh}6z[uGa/h~>+nfDue>c|y瀀G!ltzD!|Z]՟!Nj|4H@P|v}Sp|OoOoX!sWN(DL5:O^RAӰH4*y4Y tFmgIp%8;\tV.l} ́l0\4~27km9s7eXs5\_[~fldπ/-_ 0UW /ظ%{r\Aq>O;QfNɞZzZV6?7C7*U;B㗡6p4u+!t7=64/6/ z~RW0kss4rF3 5~W.W9w-|m|>/0)wA>uEg'D>ٜ|Os<5E[C1!e_ ,<9ujê;' nnѶ<ƓE?ejC7'%Wm>9p>-fc9ljk΁ * 95dҘGgP>Zx\ӿO/Ƀ|Gxگ5]mÐN QKb61FmYg_Nha's&r=y#E`p#KXwӄ0fmϰi>cuA{݀N^F>"S ;GvydNWj,-瀈OO"| Xv^oЍ<]q#yy~Ǚgt֡8:JUYQgԛģIDgF0|i _PV>O(Q" ?]i% 36Gy:- Ӧ^A<>uy[:8`yz]տ#FmY?~ ow'mL=`9"rR2G qtpVJ}8:>^|6|n`߄-OL`2>~$|L<]@#g&gGX aa㓈Pqe=󴉃ِG:eu m6uS_O;EosƁsG^>f9u'=?mCGwPģN^G>sw=WF m$ $N7B%SO̳> fyZ`ĺ؍Pb}e7|=">RA#ߍPW/ T4e|¯ V 5⳵ u$>> @FӯD<ϲr>yuQ*4D F0z|)ɜ0OG>s+/iS/-pv]L'ύF:^7FmCY?/9*'c'ȭ:Oq3"f/x{GGN>S6X!Σoc,Ha߀g|ȧL1f|lI-sxq@W gd}6ouyv1>C=[|Qs/yuⓨ/ C|s>A87(JͭӢwL>-odۀsg0C鶃!yd8T,hT <8ȫP%1>26ӑOlπ]=vDy7Bu|/CGm dxx҉>yZoJŬ14񺓺|r,_K8z<Ƃ$|JOY?ɖi]@cF;iC|Hxũy:7Bs> qn;5Jw%nZ[8OFhe t0ua=o P({?D||?'"8>f`>}7B>{ӟ t&0 ~`>y^~|D@R 럝Fr6Іg ߕۦjuQ"bPGƧ~X p:Svti㡰Ce=E>ɜ0O3!>$q^t|Z<"_It L'/& XCZo-鶫ꟍl$#+Y4 y:6EX4O.'SFGTh{_ =}A'>OF gsXY?i R2:n,! 0.ϸ>CbO?ssy#'yM^j?2"^ }>< Zޱ2tF86_F$xJ?Ux|#{eE7&$Xutަ=:_d)S!>#>Mv 'Oi1`n|z 7B]z0>g5OpO>ӆAtG4eMBd9!zP՗ uDΧ}`M`>`>y^~A|D@R)EynP-Q~z>lym/ӯZ_GO:|!OcWn&ךǹnBM1<]s@\~ Lw*:oW8훉N yu: ()bu.7B"Q#_*DL=5:ώ5y9h?qHy#4gS"ɓeha{~HN<ϟ*<>iw18 8CC~x:Sսjh41>i؊G1>{yB j%OWjpj=7؍Ю~O q#Ě\s=kl}<[WKv=7BueQE#zL@:oiIͭ"{'A&0)h1>Iߨ7B>!yz4U|< F$\m!zz`bΓͩO{>YdP6stO_fPhuW ^bgyDiIsLƗ'u, U-<$ +'Onv ykɓehaN>ϟ*}8i|veE7$*!r9tyƷ8z ;cATa8]O#hg(!.`xF>gM'}yj4:RH`7B{~āau-g*XB^ɾv<2YFސ7Bg]^ O'O_pħ55_M`>@>y^~<2L{>τ&gya@f7BT$-4O2ȧ,O7gUp!$)ug3s#oxr3>>+n։"e5:y4hz@9i\UV}F|zQa+}Wgȫӱ6ͧsӑOlO##@wBa| byDyv$<}D8Qϧ9Kx ƅY 9ύX;,|bC<<lx#4'|GƍPe}C2IRFS"I/-#'^{EMD~d|~Rskb)<חj3&>R7BgXGH(^oq@b>1iVFhy`-OC[Ke<"O 3.!]f轏OQv-|Zd惄O#K]hAy}|iS瘧cgO6ԋ]`{<&yI~-sdҜ'ӚntUsIl2tF0fzfKNxaϑ<ꃾ҈8E'@i|[{hT>>ɧ/n@','!R=|'GzxyDy`?/o<^dǩw^^ħ/8O랚i't &k#8!F謾iiT 5z7[*uۀ$*(moi]n&|.v#编z:?_c_Gayu#ȗ,.ϵ|zPоehau'zV?a#wr-lyv=7B}g_\P|}ZgAr}djx> Yp֟%3F?!.T'gڏ|tz%: HHn?2>i[Ke6$ZS,TfYO9G16DkokSG9ѤԷ{G8O/+/sQ"|D>?~KA"z+sfY̳z#T+0j&>2y.:"6~:hmC'vN<'(O\󵃩Þ#;x}޿Ap)3'u?o`ǧqa9X|JA~0|j'<<9~o< 85rycA[ġuOĺQoJ3׎G=2]pcgsnW. Uゼ:b|ܚdg7F xTb|>һRDu>Q/G4m;6Y^l$~#E֕֡#4ϐ-SOg/̧e9 t!F6GWiڏ~6]0wYAKKhgmvz3|b|}C? *AB(8Og tehaYS,'r4.b _)N;~Iy CAW@__1$7BEN#IM7B8OOlGg F<+qYٺ5 Ny6`d?~Ayx~|F< 'Ϲ^j +? n:<2AB 8ϒ.0ND_! +ϰ^%ģAGl MrGn<_>P>C!|6\QϜg վ q$uQQCһb>gg\8l."ϸ<:z.n6y9eh1l:pc$ѢL(uˉR|As'ǒG,8:>2qZlYnǵn7BgI'-Q/s;CW.Ǻ SK}AzM 1{P46U 9p֟%O I|)x?3>="!>sxxGgETRSK~u&[S|׻{Ti4[#IIg|y['I!:!ԋj?R~"K}Gҍ7#gP '7O6GűH<5s>Frun`nT! m6M:'Qn?B'y$'ܡͣc8\N'?7BC^JN#R=Q<ˍP,Nv[NRSR> JuZ??f3:[oPae*ye|FyF]|z(ϸOs]~(y:Gep †ۈ韮_mմ9IԆy:- Ӧ^ OKDbS+}. y|a0~ yxPa|Y"VrrVm ^<$n:e|7d|z$i'A&0~?>Y2|v5xqNX+Y4 ~ۺ4βaz2 3_<ϸ-cJ2Gw7Bſ^z?*~'1>ud:+xYpa>h 11!yC(,N6GOy:qΡ~2` RqwP'U/$0)𻀞 VvrmO#֑YO7 <,4^vj}vZt{Fsphr O+u !j-+顎D||N/~=oO_FX8A Xx?[>IO Gфt60uՒYQg\1ϸ13SF'B~NQnRg'ϐWsi(/G"dNestX6/ӈϹnʣ׿9z@#$ޅnJR6(3єOl㗡6چMPDvMO2B#:x:>Uc,Ha+7m$0){>.tyzC<F`zz[ϸzg4Ƨ}؍|}CYi'/ 2IdmXi´i |ۮ >>`q4U|< FZ[w:Xӯ,Q{=O.g\O13.fe6yGևۨjtšVG>Gs2!>< yU9_$GԆy:8$9`6Gic<-\:o3H&/)ϝ$CM{t'u>PG1,]O 4zg$["w=V\FhΧ{s#R<Ϯ{ݡgwlӹgӮ::}ĺz#Q" Pv u$i?FO0U>% Nk 擷g'I4 t(5~Fr6Іokx(~YOO26!1瀄t6|zӅ(h :-曡p>t94pZoFh!!+s:h}]X'N-xN% ;x}8<\ԡ^8ya'la+7m<ϣi(! (>q^ kS k7B;~'oM^v.ל_uˉiiSF qн/Y^m?i>&A&0)x`>c@<.`i|ۮ6>$OSgA(ky:6EX4OΓͩIyve|b<7B]݇A|t!Q˳9ZU4iIsK7^~Bg\^"`>kst}q!'st st > yu$He !zP՗ :)qtRO;OWOhQj4<h95y`Ik^fx/ӯZ|29x<ylїL⪆/~>ӾϐWc\@;>Ss}nZ>E>վa}$ ^|ryyjd|B~I=r`}Dt|dNsl%O]}s_6h:w(ĪNIbt_"IBcPf~tc}j's,HeӨ<3>Ot ):4> j%ODTSɮ0P^Gl9\yN}jGNixi+yduć3/Ƨ'5ONFgm})S޺OL`R>:b|28*(.tۥyjw랥Y4ymU0dےgهO_xbΓͩOr{>Y aǧQhuW ^O-4  Q ￀GA9}aBՑLQR>E>aL2>Iyb~yիPK$Sܾ}eh!'҉ OgnG'<{S#ױj-'ɍPf71a<{f]GO;&LFL yz=`|&d9!zCa&>FOO~H nNjtۀD<{>τ&gya@n<_Ebj 篘g\GBBe&|}V'6#ʳ7B: iB7BGn}&Ohú'0\ T~d|~Rskb)<7cOL`X|THTuI-.ȜOiU>^l=,')Y|Z_hlN L( _~ `ǧQ/caOL".8v/HӈO 4alfitds4\h=z+sduuiK/ ]jeAM<͔_~yё#C^ZKKki-@#dRU'OIdUKn+$j!)iJOir1ESr:4>&BTS`/M빘Dh=tS)`qzfکp,!,f, #cpϮҟv5\OM2<5EWNYD( =_yOK> $f,U"DOLSukQR, 'T ̠n~+q~GȔK&}=p̠ju恙lQ,"hbL"]ʸU_7'4~zR:M>}y^S˧S;.P G.װξ~$9d5(mlSϏ^6j#zxr"4@j1k}:4O/ 멐O^M@.NOtׂJ 9qZ: ]ZKki%TJ͎k@ ̎B.u'Q㙤YOmnFSMO^])qNKKMR=w`dS?zxwMΜ .CJKoL*T%oBD(2T%V4|}3 5uT *4GD\ZT25VT~a_xfuf}&͢<.k?<<)O}=36jZzjY_i=U0"M8jR fe(UZ|=Qsc0Z`U[Yʹ-*WVPjxjL<3FHR+#/T ŽrT⹸zZOODe O.M.KUJȤN(k@.Mf$kANz.F0Ty\Dhzʩ%Wz.GMR~Y\L[йO܏S^:c"R:)'gʾfBzȳY'V3$N~aYjO܏d|38gfgڎ iAjL?yA-Z tqԕOn/thּo(%]H?yߘe=~~lzjХ[bI$X$_/S w0>gCH;bU%aVνM'㯽A LDɑHmyT(dzsӽ㫭; {jO[ʎѓx "_d_aƟxj҉gJ?UVO<(9Kx&4(#wĵGMOWMR<s dӉQD=J?Dq_ COMwOz _$]CG%M߰D7^7UTD_g} t)K0xf?xe|?FQA׋t*YԅI/j9%9~O41 _ rSkc_2xn"g≊zqEE@06b'BcC3G)-O;J3.v& px}Od ۍ+,,dʧS;͟_/g{2˨vSMpԤxfI_L9eq'B=x?wRYˤB~q_is?ae}SRx& $E̬R3SDzt|΃Yi~+]z}OJ#pEz/#Ok53ߤxoJr {i'_2&~>_%Q]FJNk?YH3h:vVj22.׈ΉP2Ou4|2 MSn܅RBz@=9HD^ZKki-S&4R(FrKv.A<{ qno! } 'r 1r K(_x=*t":ZTeGR-3૦r9aͷ!@Ny7W7lMpӡBymNbNk >{7b_zPgwaYXzS;M`۹"-Ob3BX[ȱIX_TrM;5TvbnyK`[Et=3MTOA*ɿm̉дeƍMO.:wxɖ62<&iJn9#)͑G\)d8j$~+<ٷ4%j\M5XLpH-,梛R~/I_~C.7|kLi?S㊊|)뮬pX JbERą\.EZ @F5awaW݂Fo;3MꯅU+xNuMutzF|*64uHf_Ӏp'3c*/ Øb;oZ Paz23n!{nJ4`N BPS7$n`nJB#"!fN`{)]SBNN!O7zv0E<a~eZ<%oҪbo0~l.WQa9#-k!8PDɵ'9YbuS܂`M0 D0Q[ELl0c Ct5Nھ< 3us]FLXW]F,I5-Ll"s/0@YUco0^FŖI~wܯ4DiMMtt: SpILHZ+GpnfǖrDQ$lTo%߈0{k۲Z7אoƎ3# |u;s̫S -瘍ڱ&ݶ\@ ?3c!W ;7!ދ(Qf?l-΍SD8,P[Zcxp7p7069oc'5@15UCl]3 6t0.wO~/צ,"O&R*G%6|%6suq%{q 7lQlOl9Nx7yx[:)۷a 1[yM5|RuFOidnVĴ|;j02jpN^GAWU4 Yq5}8a_mhd]GA(6f/U[D/ 'f }xZ{#q6mÚ('Ղu̝?D`"aI 9:r>UQP{B4%ze-w*9Т2KךT4a7i-~Np/ˮ@o"5j*hv+_XC:`:+ol1&Ob{'}Zʫ<ɥgN`TTA?=XrL|hv񽜿vFXr c׉^Ea!:GJWI&"m" N1LP zw@Η|њ%_va޻:{IDkCrL 'bEla;)NMˏ-š!ti y6:OL`M"_ITkz G̹ucp0ý%o]%`?AۃG0loYGr|<SfS~%mn|G336Ix&FN^^OqUO2=119&t"ɒ.ktr~BO>@|DQ$ /9AtA`Շ9xB͕5/rL(ˇs{i϶2<5GԸ5[36kfcaΜռY}q{0ca;6{)\0vq@SH,D_c(`&77QN"yEn~.>qOax=XH\|u-NVST8a[Oq۰Y@yaU !<*;C,ENmꋥ^9aai ݄'!EvLS'b>8?{{|Os$բqax& /0z|k.rmxGj}~/bǶF#/r3vɀٙCk{څLq:húrr?cO7W@od 9B b.Dž):}sPz9e\=\|x?`1020{bbԊN|U!j7s*0z GsfeT/s/2tb Cn%Z.t 7z7xlf[g>=}Ih\C9Ǟar8h a1老>1&{; WSq%ӇN@) !O3/saf3_L*LDgi} d5em,}F0ZBZ_d ; o$N}q(ܸJ: 0:08+3[Wa~3e7PTiEm׏:;((ʶY>{0s898xe= ?mΌbp:{ɗok`A K?L(Z]EL|NV\C̹f+B0uΌ׌!>A^&{m6ah/?W[18bDvpwOxb6cVLA}V1bj~+qp܀ ;SFʮ(B׃`G="c'5ob' ] ~|jJ {1k?bvىkGI˄dy纉,F3u(sqo|g`>lj1:WA.Jהtez5O2a'S@|~9"}8x؊m8 L Bp jw $W''':ɗ.`Jr+ct NbFxژ>hj$lcqrNo ӯDr>03|L9f[2qج /AVbyEFBkWJ ;1{7^!F]_GyM{M5cQu72Ƽ'f ċɭĀKwпb #|Ѣ^؛Lwn?I(l N<2^;1"i5Lb߱ kNB\sV_Gw,BUv D"9IHҎb;8pX~)F& {BVJ͐·8=FrⓄZ:4w0trV!bRr"Tx#)q"".{h8J%oy+M {9 v}%&ʺ&IeBTUpIPdKQII%*ZmFG7_.~UsU!'[);fSs"TWޅT֧J%dZZK-~tG;ou:@DcCr4_aqF]-MkoPX"8F BI>az9oO}?]?n֬7>&_Q|'Cw|g\*ԐMf<Eо/r=L_2>l{3ɟ~iҰ/|#V6M&NWR!O?E.4a@@oϥshw3U/?v/%E&z5ܫ??k~Pߥ95blj*EE45SoR̄ ps;q(:(/Qx8pt3+@ϯ>OYO>|t7/RQ2yٳ/ bC_ʆ\:e89Fa0X[7[a=54P[fqՖbiBu,tbaG@_?:1o 7gfQDr䇏S w~ͣ[o& aKsgʼn]aQ1[o1W*sxWѸ)7qMۿOrODu޺b޻8>C*ޣ>=Hq1{0od }3//oq ϸO{U C­T}p >LĕT}O"̼F5޳FL {w}r2$u󬽥^]t6$~{@aG 9M\_|ඏX{%=?xW9"t<""1ʚ0 ?'=0*Mo#G_jIZsL??co܄?V*jvJ:i%A@~??f!Jw>ʕkf^)r IDAT6^#V~x'}O5]`쩗[A>~6Q ?3<09>D'mjyG{9FrY2/Evj7(&MB9c6H=ct1[xn~AG=[ˊ2%@20k)wr&Ǎ%۴uRJxR{eŧn01p?fYyoߡzSgB@̻7{it)hnQLH &8k"#qwMRB!G?2a۱ x#FRju{wMNDq%U@h^Z*?v% ~C{ \1vS7DY0ǾLoa7Ԑ%Ɵ#7`EWFIT4|X >3O>Int4U# /5H]?ީ(+|1jVQ'WzE"@yf4U"%\(>uثAn4XKxbyH zA&ߋc[ Ϝ?v%/bN: ҵ_G1z5};v@z&uƏlˈȪO\ 'C_݌ y_z !LI_AG>MA>bc_҅8 cN#g.0/Ȣ+(OQ)wܛBS$Oa|B$ܱѽLflP~|/z)F6a%b swSZiQτȿh&zCOC jzKI9QC{6b:9҉a?P{sTO_bWT\1:oDP!Y{ɖƆOi6߱7{,BY6]Emc0w-ْ:JU@2~uR^QqPO[BedXًgleI1n +$CϋG L_3gyW(I_ xڎi̕X3Y Tn0^悰 im {aAl} v0g|U=cI"Be6#XJh\I^)^DA`(3^&=j[ϲݵ:⏀i7i¹ lILU'yGRKuj#A3SDNLuw-M%4(G`'w!&'ѾVBP;i#DCDf&oQ@g P# *Jy߉Uv0ݸۧ0yEi NUrSB;0#*igfʈcn LU;eUթ3Z䋸«w`3}.ƯgsqF|D Ϗa\}t 0~la`#wLIՠu$8Avvz%G)h)5bDVRpj BHG$ 0"5oc DX BPD镂ph۱%K&iS6r {+C<#.DRCRςFr]V֩"ih˲ԾFeT{q9<ÐD^pRp6L>g)s5`ĊGjT@YG> QmD.ёaWA"ˆm& T'+DKr7+M Ihm#Vg*DQ8,'Er4T]KAipg_bR0DQNNn#waM?JW\ߋO-CliN܋k+b.0DO) u-[$Mg"kă~b(뚌}q+Tba~'ۯG}QꓱL Dwu/JA=L+ >>873FxN@m#0Z-."fNJ:7eGK,.#TfOQǕ4&xf/'B۴ ٩.C&BіK~?5[dZZK-2;:T)B5tqܰAc)uqDcύkaջCb8?>ҭ',G1} b;Fx8j7>.>NaR@Y{vf )=(̻@I1-}oJU Q%>Ǧ1/8Ih': VZHOV%P):={ᙈo''"j|I):jrh8T D GXżDrc7h"C= jnjbc3FIcVTfx& LZ3嗺0D I_@^CM`F!P7-gi+vQW9N)VSl BaqT`07##D̺C0gH<%{wL5WQRTNLȫ3ki 03blK <͘K%*fGP.KVb%)kplYOo翂kX@H;:E.Ò/3*='&_ү2PUM^Ag{``5!FE)'Cr䐎j0%Hd2/!/gF$eW9^/R*&v>JsOEɓ*ȕɩ1M*}N&>w"`mr~(3g>ѓwr fV yA 򊢸zFb9TXd9"ΕZ$9fGpL#ZbAI+`YKA󧙽F.^D\^N-@ yAņj">4 2Rz$_EQ$#Z1ī<>4Uؚ&?Fb mXOUvIF2bUe.NŬ01 2.{} ~ͧ(_|rlU)~J*gE/Qoa*rB(AHLE5ѧcG/&aE.#jI%To.rBrQ)с)H<'$jRQ:/cQY~PԱrMgr09Kj05hƘTTHNlHPtOF׫rEz0!B_0Ig2" #80)HWduDzG Γ)B&o@O鋐k #'t8\Db&*p\L6i?D}Ҫv7"B;QaZZK-ҝY-ME-yO'BI5U#/(c'WQTU1zPSy`Hm$?B+[i/2:k- 5ʤd꾿}F^gKٸ#/˙cb?~|S.9DGU%b4J cWQ}puǥ !"p}ѯ3'S@YJ>li-f30-y*R`'//# y^/pYvLr%pQ2JK C AXC[y2vUN2lF $Shx 욨ƴ\9d,*lXOdӧ9 \!?mgQ5Qxc`4I %rl&FG@0%G '.ղs,Q4Jw+O{7(n*Q$C#9g(y?'_NBLs:\d|i9Ebhx% |aM!L%etUsrUoX9|O}5TKJ=C'FQ'#O%nATY"Pt?x.׭l'g#czS;IX$}\mday.,/xhG@&}_`-ͩل _u`E07꿍շO1)i0I6!Qy&W bS[S1v7j]2q[j'x_yo_…uOW7!?uIy`_#+?uE6}@:M/'_8}MjDOϾQ\k1o%e^ e`4I{>]㨪Fa`4ޗUyK\1uFTm-Ay.F$6ve|(hR rۘ?;ЃPw=Ӭahi#j!8) v<.}NfR'oDoN ~ݦD~:$P#?9 FO2Hâ)}|NQEU~ץI9IL{NĘ1ɔ~}'啻D󍆤N(٨?é~  F wo/Y)Ve,"XA$Q0 )M.G {o=IGoЕ2`O`#وu FGX4*峌YIugh"L.UQ?N5Kb!-8E$-cGi8gh! j/oh_NDgdQwI鏁i'UD"4ׅm،īMvu1gCxGwOYqc6bpؕnxtB. տ+tLQ4?0ՅSH))a4]UeVPM~i-Y5ELum& / ?zٲJ;(p6U22p u%)UÄ"U"oyu?[QBIa<}^Lkn41)EQBA'| 3 ͔^i?L 'u ) 0u8+Mr/ru}{Qe_a oH y_`-Y"U^)!O8=]1QS*@Ŕ ~> ȯYw*r+WaOP벒 >-'*:oDD*8Akg¦ZI̜ eآ _JVek\eBފR(ck\da1Fhh+i[>^6VlLLaOHʑw 0X-Sr,UU]xezF,"PHㄈ a(*o_dC'~L '@sftezZVavy`\W}E34Zmɻ-N'N8$$6@B% --}@i K҅e d%!Yʼnvɶ$˶}I313s9yѝ]6Ne8f,oZ/B݁ d3~Sg*~Z:)(o:j7V2fz3Tn=+wGnp8c]3B}(mXF(I:@b2 H40^UINFN^s9z;A6 )z/~ĕ.]F8{S3B0v;* Dx׬VV榲B}aN8,?`~&Kh].ϱ*cPp0]PDm3w굜 } WRf;W~2shSkɄS$lϱZfH"xp)ɅaFsc+  }˧Lr+-7"5^A( dsjגZ;:T5U0g uא\]q7FI\h\L쾑a:'1yon]Mm\;nQ4V!RG<Ĥ+;%< 2Me s|Gr-#fӄ,!p<.!6ǯw>P|VK u*X7QF {`Z͌IlD~d;ʲS =cٵTtY[G 7]JUm_Lyg~N>х ϶2ѓU.xF,dݢz8؏]xh]Rx8d ζ1ńl̦sY0'%mcU44JdįSGY@;{jF?NlF(\#;f1Q ܸl_e0چ]X7sjwCL.5S[4F qJk)d3~"> $W/fn"$-"ׯGk%zC;I̖/&VX]QHk!պE &ϡ(GMHK?;IpfmB(M0ܹi l +q/jdu3I;Rr{X+VsE#x>ҧ_қ2J[v>eD0{ @fQs2q1o}i' <T>h)D>F[I zj߶i{3̎/b25T^ʥ)j# tղtmKB ٰdX8qz_^ !jGX8Sk^s P,FZGLgHjfs8i[1ɪWHhn=c~C&\hWɪ+i\:B~H㻾GI*.$p?+. ^&]}kzʚ }&Z}Lyckʈ!{܃vNv8 1(Ynw!b|i{yˮ$`N1hPBbhwNlq[d'nSJj⻔i}ԮI*8=ߠޟ\O~fz\uAC?>}f'H>̱"Q!{[;ma dg'4|>h9"?!(Y. tM3⵴2I}Ilή%Jf|=h%~.YC 1'yf'N1t9ǘ,}T|dVQ\c7uT.dz Mi]; -H.$Ze|= 0 w4†RV(O( J0#F-| -都eYT 0x u ng[@U~RQjjxvF'f~+2̵t";;̉x %k~:KAw>u-uO=Qf&ԜO2 `f:l߫}ԭ*F- u0$ӾaT.h#=>ɜe I;704((`,\~a&eGHVV|SB6'c[${ #icFW҇܁{bgpb]Ex 2 #t@/qyŽmzC ӻni2_C~ 5h 9(=#̎f;%=SFzGM0&NE(۲(Zv( > SxZhӡ7%[I#= +ϾL21271:+DtN_teǓoDp+jeGw}[g$V?͚gk~ͯ7ɲ0zDE S,l;Bņ5XjJys*fj9Ts˶,ߐiGs-Ċ eeVQ9j~]x5=.VEh~ơ}l`KF}R}o+hYp2952~4y* X2wwiϏ殉5PuYVCF#3v_}oUwꎸ */,+/n̿Hնf4|?X-֯Lo} ;_s}X6n LTRvY5%;yb!ygi{3dsG m-}+u0#P7 m,k?L#ھ]s9 ;ub ٟ\o%Zʷ]ҵYIo)7]ϩ ^y9m=Iz&U믐VɄBOĢ s?>' w-/_=bI8M/N͆' I"u '/%0$Pa~)o'Ķ څg@-UgW2t8=eUy>EϿ4R㣬"e"es1)/s(+~;ν~qҼOb V!k mg[XWS4};,Kq]0gϲ`eif7q LxeTD;S( 5]DyE׽گ0/',> :2ÀD9Ezr0oeT,&=}@IԬ[H|_rg_? PA]pƑj6=gC{/eէ?Ӎ_ϼ~̪LcMܯJOUI#{ZIS[H l AY*~jϢ}og枇hC@Ky.2֪\},6o!Sn>.A!:sr*z3qtE^v)]8Lb! n}QR·휾y Ld[XʨhW)sSy<5T/h\'+%\Oldza;/ ̯(7ľ T.!r=ȽZsy/pP5xz} Lx,$o dJ5(跐s72Oh3~X"_hO*7R`AX4G.M,.N|/( VEˤ,LG8¿rt%,$w3tsm.@>D}}g*@=7~,Pw}ښWа(v}=@h khݝo\>]g,w@Iy,`zsIKf[stƋ)kQ!9.Kk&stNckiTsH PIynXbYSmL&h۶4^ľNg qi$ƪEs{?Ps&qr @Y=dF;qzWSV){[X3t? P+?H2).2; }AOUѳ?QH'Bv_AN̚_k~ͯ׵N8늺_@Nh uȿh.6,w)qr4kwl`v"^VGVqfF3TG>~4 ovE@yf& Vu_L05!\r )IVY3dGƢpc Se+bNq8caRP0CzhPL53,deu _;"S`z4C&%lH0 Hb<=ā5D$͎'H]YpVhss.=L&"j a"I,)A_?>{㵯KҴvvy-y3J)QuHbN*̎3 ա2Ʉiã̖VP(3/3xpUJǝDz BY- qdz*[$3CXJ±}:8$V]mů8xy+|+=5B&!R[ĜǹlhyA&2d3X>37lhL# UqڋD9/ m-?m4 '?,Sc^$A8%䉫GI20d-%:SY%RYc5B,6?sKjMg1#}[lۦ$V _J^+Skn]LPN%e5a&C ~ zcaVyix N~*><:e5yù<p%skPe !'u#+kd$"MstïPr]D"ʸ'oG* St:ZX@+vۓe-#%ڛȔ_Ȳs]B%J3O-,_Sge׬Z>U u|ߙ(kEG|s@Sdc[X|ՖwUC^c__uN0GO!|τG-[^>f|'"?M=Q7_#@?a2D\@|Ti<_iyui 0my(:O~{&~tЗNAGWBÚ:z,!i-OӸ1wo9s6`GW#oi-vEiPA?zxT1ӻ|AWI Xztjыxn04{A!~_7qw%kJ"gMPΐO7n}L]Ȋ?_OIvC`TQǣT.T='b$}'߿NMZϧO,=YxXKxY?4ӃTOoOY2'/g J.kDB=Px4+ B1Pqh爕k?>e9__k~9M`yѲrv,c]oTV*Z}M\nogm~"l$Q_uh9A}Gļ\u''.vԷ(C  z<˧NyXi=(O; .NUW"ʗ/uKV\oz>KA(SvSJ跃MbڙljPQ2TQ_Tï:Ř.>uZzOCϣ :>W#Z>]T_@i2 FeS˯x,_Ej˶܃PMj]Yc")~f3=vӷ;uAn Υz&q}ƨ7^;uAϧ*Yg7j>bK@NOq?럤"V+DZ"zO}bX!NM|oKcOs3j>, -/*xԢ vz$cf (4Xưvyn>j x=No|КP v{.x0_%ħȕ?ˆyW4XxNI@% ;Z&t.*;K>D!*~u ;*RU2Χȣi㯀[czN1^Nt|?}}itNYlmRiP v S?Zq>|jGǧEiZ! IDATlSƂf w"Tϧ' 5Ac`کFS 0"T_*oӍ#>z>U:;7ӧN O W]+fۨB\D^>5ycC|ک~~Tz꤉j* /O-)Oׯ,}PMƗOSm48W<ۇDvZtVvZ 5S/NFInJ _~ ۉz><2D?;!YDxU=G |4bPrS:G+sW?x~j;{W?ÜZyNj7N~>] ӛ%gJ|);*)#>ռ1)塖O}^vEU? "OJW:;~4U?Q4yDϧ|4SSL<Ds& oEi gկ Cvqϧ7>^s=de3} OO^= j*&>yڷu!4rlJgPHu|\|"iAs?OU7Ӊ7r24΢BN1~L|w"TA|j`}C_oe{Ɉ0s"@ v*v*l˖]<9(7xDOݑNmG}[^S/%gPci{*LJO5'byeOA'B -~T%O)%>M:WW'B'>4hTL|J(VO<=:h*0|N?oh:I(iy0V7러hBG~v(5 oOrP_1d{8;wƻ̧*OO׊MuO˯.)5꽪ƺOfQB~s4|~@>չMu\|OmOz h\ET'BQ R3NMtvS7v"ֿ":zs,A6 ŝ|w*R6aVQ٩Ch~`-~aS݉sE=[^?ȣ|}'BT1hgvħov<Zv Twd;ѢOMxׅbO%Tӿ ؉P4O`Ǐ'7&#M|yN}SAƇO5_|ۀ,UWT> zѤ DR$*uhPxQ~+Pj4?qS#٣nLs^<щP-QVLOO9 iw5f://O˦4 n-u|\|" >[T<|/Osyy؏a;E+N1~syPO'BiP}xSo5zIXٿ*2꼷>wMC4_>_<1)k_.JBAv*i#%iP~Z;QçƻO|VR?GAYpTUDiO 4r9Y_?2I9$O9OGt)Eи˧.ḩ7>S72'PgM|ڝN=t>M':Ͽae{(Dx$çة[C_o)?K&,N@F޷Y]esw>:t&g;q6fODNO\g_.E֡#3O݉ {׸+қʧh{yx)?R_"?cW7)%q~ɴ*~,اb'Bme9=tDOmGv}_2 .{>ל(Z}?`ssRe:<'G=G C#ۉe5ļ)䝐E5}y\$>-H?Ñ}'Uy,Dh0Q溠OçW?i/zRu|u(Q2]?kyU$ښO}~>SS1^>5uU$?o8:fYOyw>UDm%^Em0ufGcįexRܠSMbw"ˇtxq{i7x)_sqEo'ZtA·1p">Ḥ uO_?uT곮.h3?5yl<-wEGz~ ;9Rt tیTzTTNIOm3[C_oe܈P;J6H;y/4x7P_M^gq Fy{>},Xy9~˶s Z~roTc'8ӴwAuGNj]>UTvmEM'gyaNXt) QZRxtPSz )`rOIq]A^K<)SMlT?Ja `,[Dh8=]^fty H-rTSr\F$?yA;\<"SY/&h9j>m;L#w1ԧja* zꁂJ#2-z[<tQ##8ya<>q¢S>b+z#k 4l)EФWhS)cfJ44 3)`SF?;5TS#3wbIs>hf-9?SEG-TQ P֫:,*YDiwJ<ښO?yyƹO"< j⢶<ԼAv3a&;E |$ǩNIOm# 5_F)N,Χ9іK6%ݻ,M:9HNk p:i~u-[h(&{C08zyTGC%ĉhL$NuoÙ0kYe9Xϳ'8A(_,&VЫ\8 gCc9(X29^K/b+H6XznfI6ʕ)yƚ_tf+MѾ!HȺsx=±=-dcT=r<ja`0K~9+@m"T-{]l˜[wl{] +;%Z7R,bu2nz39H3kzt2SvLbWTTD?Oy}?@2N{UPv[)O\nzZ#Tm]Dzc uLbof[I$,?P!2d`=tN5Q{F"Ec3p8SRRj* aa3JW*fj$kbjSlH(t uQ"Z0 tB| JeuGsO08E(=L._;t6B `5uGx/0;Iq+ n4bHo{]s4sɲ $/3~r ԭ<} ˰vf1t.d;&jItIUOi&zj9;v~cr(K~5 o/w|.ѓ;kd6m 'y''~=3y}qx¶<~[G회z5L < umx 5fO=C߾fKSpp@NF^Tl=Ì=3Dy`l{Ǚʈx =E\_g!x!['&;޿I2*FU]ޓQ[,J',0Aτ>b|? onF}ۯxP?4,Ul@d}$A'?EhB"O<s3ԱW'|ۏOO~hFӱG_?>Ujn33xUO.@Z,O jC+zx/(\-/zxUy}Nç_o2G >='B5zʲO8>M+r5z]ktTmQVij#?K4P~OH_NJ_Pd1AUg(JҺ9b,;11`r<@/M*,?U*WSg2iȓ/Ж^`3").[O96cOMȽ7c4^AgbyKI`xNZ|1brݴgWzua?C;o=gfѹK} 45ab}:v!Q"4ᇞtx k$v#O3b(i3iϬ` JxOpb,J4CϮg9rzH#k.n"ޟu;VLf~9^y9* ?m>ZN0MxJFTcxmrqȞ9}QNE)+2g/:EYgQi'1s3t*VSXjM9zٕ`Y~g_dWdjxɻ8t\A2=f|&`V8;ZJ3$@vŎ?u3Su1Sw|lj!zzv:j=o!`1&"z~>Tm[MR *+&sWCX?|i_ۛ0h)f0 @/Cz՟%zѰycw2ZV F"8\eNnkЛ>jr&{Kh\c|ÌF/q,`fs;V+ː~~NxۈXCrí {q¥>F ')z!e6}_w{8^d(njNs&i?=O&3!6FqF{?ٲ%}^cgQ,@t-;WyG##\apr# 7[L).5B'gdӃEKj)_0Ì%ܷLy >}=Tn^NĶw?癘J:מ u*"Wl2۾Ǟ&ݰ꺸gVڂz %4­;~`$C~"CW:c06HQY?>T'B |zս__vjS1" c14Ƒ?d=7XKAvJnM1h/ ,çzAJ$ ~M#S}'?QQ^P~%O:RAȣNH o9_Pu"O(; DոCOX#S#Mš?:zӬw>v:M]A:$Ē_\.L3q^z~}KL˯t65)N س\9r+/u. ;]Ϟ]={趫ͫmWx+rX2!ga{ykIXiMO_r)G_,4KǓ/2X>u9)l)>{W.)~uh4}s'0N~z+cଏ]E2ba3u護R?2G;-Yݸ)4tT zɿ:l&_x嶧M/$˾?rq7{FZ^Pi]gȾne<]l>T F:Mϳ&'?K络^/,mYksE Dc毨Oz,`q 7T_6aYMx/ݧE+9'siyѾ֝S&6s7Ӻ+C͇JIsKpP7QٖLڛIf3AMg=[Lgnʍr/ UW3Mo{鸄%Φvc;HZs-/06@yM`;Iv'oX܉ޱ9/yw^3.~+9?yRdG#?rMŃͻ0S.{ˬ\l2Łw9qk7BX&eYL{= uGy0mˆ'dl~:icT?Џ,ȧBӴ>]ژS4{^$u͗Y!sq7pr:nw=ȊIl&{]t컘Ud*~o+azkN>, ".]j|ć/9y="=a񠧜Q{\Ok?$ 7{ IDAT'B|T_q:ŧvsɟz>4P'f|^^<ǫR\mEDFP/j:C>Ĉ.j,ƍ7ʧZ}yՕFp_:z,ggBhh;AF+hXs^v[XU?K|/U7>.D%[ivsu:H`YM_ կepY1RKS`V'ΣfMM!,aBlo{5kk,LMJBvWPZ5?H-KS0B{_7SU7Vg/H33>DD ҽiWJYxZ,+owG'o( am !Ǟ0 uqr,`%r7sbO9ֲwKN2Z*jAnqX57kq55g9Dfzω}uƷ( "Bʲnv(] 1t5{!*jc zիz=ʨ$팴LEd;(YEйtac AǕ]6kIG0Bv2ץW<0oƷӸLmnn}(`٪&LYdZ0@jiȪ$3n/4@rY*cYҴ +;̘fTl=>NZ`0~h?.q):\OIfƆɔloZ@ |" ;6ee8xٺ,\{ UgL&ɽgmEde=:aldFڄSg.$= ]A(grosWGӦR~FgZ%ghhz@sd.ac)%M _ /M:F6ںIƎ[ D?cGۙ&EGOB=tmvB?uuroK>&擅/QB~A^ it Ӊ*(Z#M^;SPII~uWoQ>v'L|l<`'NDکƑOUNox4/POQBYOp_%I2DH*;PIiyٱa@To/6~}˄J+~-YOw2>DaJV#gSx3$(ot>r'{ %%ق97|9`y )ؗ{nN#3$0;N2#[P۞ 3>UHrgL˿=9U)I`Y4^2P*7\̂.p2z. d]$0IRb}- J8ɴe徣Uc:JS0;6Bƶl+.|T_q^AeΆz"Լć˟}n[L/4:^R_.'K ]~ `* GѣʧzD7nu|/n]sΟZ>xto0z {yQt11ĉPOҠZ>o%EY<&J<*|P<c~hO_\':f|}v9R6XPO;>Mka_MܺgіQj&>Gd@8L(v mgEw秺oUIWܘnݘtH$igth3F|t ê9gx:'9G\~1nyxMvl;C7JwZyv^w35G/y/3~į|~[qSq? Ș{@s}yyx[y}0'lan``Cw[pkc7=װsw`;~>>CX߽kaez,$]0b nn}[ qq{7a'ޏ=\[Ts7{APӷh.MZ :Ӑ/?N,K,$]T}|=oI=ѡH;5t 붖Q瓮Zg^oDϴlW#qgGv,<]/Q:1=Sb|<Go 2sՍЌE}zvg8Kゑt,adFO?GTf:Q&ESY7'i{IO¸D_7LYf+GӨz䠧(_.<> l}.̯¤GgNᴌl17\}}wl{{_~3s~}!znOvU}=n.scf\x~ܳ0}?!>r-ÿ̩ы& JpEl{Ǿ{)c:?Wkx yBW_ߟv H}w~ܶV݁]W/{O%[âc64ԾGweX?G~Dw߂؍ͻW x*/XNO]ͻqr_ p<6\G,ègN,nvvO<{aށ5Xi0`k88#aݹzۯ}X~0)t [/Z{GN]mΆ^G_~)q=m8;_s%'cm,=YXx*mE 7n:z nAF:?<ŅS8vx q:cÉ캗9܍۸;1pڟ慿½p8c85*>߉oswwt+8q8:~#{x ~+'v_؉s{?;o'<3Gc?)NW7&ygwa翂ۿ>z#Nc.z3-sc)>.8 `q{ނxo=O~Kq/ _/߼iPon 'Rɥ:[wg^w/xዿ/~_o?]~;^ǝVoWl0ЭYpˇ~XJ\v~`<]܏GWΗ{qꟃ5kގ}c '?Z{>.}@qc7kp3` x[:u֍'}ߣrwͧpMp^lF\K >#nӥ_s'?_ĕ 0K^Knl=X_[7<6 uK6Ώ✿?UsXNl7q%o}w `.lqo=ZGk=8`aym#.ӸO EREW`nz1&ycw_ͻ$Ϟwҷ<;;$k_ ~#N{xх㍰"<~{\߼w^۟^zl<p_!8m .Gp>lzK鞛z4 qۛuiq^}c[׏2/ [7身ܿ{ǿl}@ƺ;sϯᾏ}¶?Wůo`Ӧxwpq|p݄n箽#׽W?~Z{q~lwz8\pVOR_QO>1 >H@ B#op8,c֫B}(h _ż@d)::n0=Pį+YXe=Qs9H38ծ߲60:z&tvH7j1@h/EOlGz,T>)POnKs7B3mt7ҹ.˲)$]Smg'= ?R5kl&{_XK>~ ;ĉ| u=dN]Īp>/Ñ#s7bua:#Waut;œp܍`gp(Nv̓ߟ:rga􁋧m^#c=3'l޴. ?~mX7@p GoOE޴k&@ѐ)xiڴ &8D;y_9 ؀뱪Oxr^Z;߅m?y ߼$=,9~~+ vEm q>so͟ފ|W`~:v q]u /✭[h]q O_2[83*'?Wl^[uA_4w"X!/tvvޙAd?Y+d):Fff3lz=2֑)zV>U%(WG.eU?6+8!}1wT==:=o^_|Oo)iw;zh7C5kB4Қ~n->H7(^W.H뫟_cr҉g/ fs~yty聛|swdL6'ݺ-X. ~ճ 7`6w; X]U|ȹ'}&1mcDB$dz^7`67o淾 O`~WQIo t6uaq,*)yQ}i=m笌P=wR:=zV<+bsKLtW'-"RGTi},׍ɺEw IDATtf=]]6klEبvqaXUaE\ v'aB\i~1 ׬ :8^nay뺮-AD> ؍^8ϕԺNa'q[9Z8g=i1&_o p/: wcVO]\tA"81 qR}:wcU/ 3kT`2zKRiO>AL~\Lߪ|BGL:IgVHtF/؂ͯ~'V]wV 7/K1::QhLX,pe}<sW/01'ZOy=Qg͐WW2%B'Tmg4z}$g5җXr;XOHX˔Q;ca5X%g窍}st$ u5\<ĠŊe]yZXh9&5tsԓ+M~/: 1~Y5k"lTv QAF#n!}u;/z {CIw|RtcDDB~k4 7 tXrΓ8SHe&s[jjprDz̝w6_ 8AyeA3<::߄3:z} XaUa5}mt(Lq*> XM2n>zzzS}=]+\?uc>d>~o eyf6)OY\F-,O2O3gp7<ׇH#=]}:FXbVUg U|s4 f/y4zj,]џMIc4웾x=y=:i'$ts# tFHxlU<ٺy*8:40Yf+:@4aOLN|>zmO$I6מ%$@b8ɣB؆D_蘍O:xj=;GkyV(W(Z(S<| oÙ=3ێaq~ zΓ6X'I'u/$%)5OxTj=q'DaΛ[OS♞*=sgPQU|A, ,#Gv䘥YHO@J< o5<>}!yBc/!O_|p4&.W/Um|׮aYOQAFO]gG_qdL|cXH/q|fNbvy=DA0O|eKVœ3gP^yY_}3'Gc4BbrzҷEguఠFdYγ[t|dLhe7^.d|oNpzFstX3U`9R⫛zZ%?Gzy*NOZ8M]Fh[{ڬYa=Oe}L~&NI'9Gg #0}|p'DN5|~簗Xq)u,dLxNs,G\?v#<n#aVy;nOP EdDܙ[?rzG7F(H L#a]G/K#SlVi=oz:}|u)k$&D<(N>c.p=gƓb<%.6:Ihu(c֡*U?OHX1 }]qLjeJm꽍OM(i]uP GSY7OGYfdyCTyi:] %r_FmϜVrL/_1O޵pG&ݚfNY^zme*氬C#|؏_٭?GR~#=S9:_ٍM_GFhTL|2_v/9zN@TdyFh IũIv/!O>UUy<ЂN-[7_w|Gp۫]/zTn#=1:z1"+nr=d^Kz'n',wVcovfc%=E t}WKzR}~T3/Ypov!3l}먂h']4y.p=g/N3+F V*U?OH1<ʹ6^&'@Qxj=鈧#z)r-ș,ӊg0xO|#= m֬ 1q$N"<vq9ڍPEc'd7z*n<$[c OΗv;3q!Ӭ(>uyǡsmBSc#x\$[4\}#:A>EqFOb[N#=mszz$V׿`AfduI;o|?GzZd:R$zeyk:y9e:Guc γ[^G)a}˦ׯH.8ƼzFst<ۀ`c|!l~T4:2/WhQ|8sY3'T9f6kl=G$'$0:'V=.s@!18 'rHBTqeN>@@cݚF( <$[}S`q^l!֧IT8@w#5::x뛫C:݆֟:ouT`A}z6eCz@t,n;[oH 77B=CgN 3,Q3~}z.p=g/N3׶H7:I6>gPT7p(Gh~T\$l|4GU2 hg0V^On^OoyZ@ (Fh'u*4st#֎~)I"̉'\*`O{#tU7 o!3F Bau@ou4ۍЎIiQ'LOLg~*9oryeǠ.'@A7&~9oDOZ̪3n+ZπӓԅHGdbu6}#T-uSsDTL(_'Y\Ogif{#tɲ*PHO;OgQng'TWV(.dzsj4G&>o|y9Ս y:];GiZ3t#=gg^<]9OgtA؏>Fhgf͚ IՀѓ;Ѡ5}8΢8pa7B'r $uc 0~Ey|^yl3pd2kN!~z&$鶧7NOt eAOW>d߄;=Qc|+PLc&?C\.uCD<{" {QE ,l'Q|E>kN'XE~2z&='p§Fh  ATXtkScT}驞;:u0*0Y=~z6tnj=;>$3OG6RcSy&T`"\ۀ5+"juFgI~k=ǐIՓ?cFJ{ބD8>/78 tD ?׏ z$`x=}]q 3ʗ5'7N]]\ 93 >O2WҍЮ4Fuuu6a/1s I,Xzy籠,7B;6=BZƒ!ˣ)1s Qoy:)VkJנs49O/?Ƴ4Gi:=͚5[6.ԣ؏~z5~=9A,!0Ivǰb($ڸI9KX iK:fXziN;cf(<_{+o$L}#(Zgapa83yn:F^˗]p6{nu~IT ue `T`zu8P:=.S[p_ knh U`V agڇv<虯_ZǸ}[?T7BI"TI:GtDP_^?1ӑGcR^KtԗPuA|*|_e3tlIM4WPg#=vOR㫛K{\@z`ЬHO+SVHOp'metT`2zCۀy2!|fdyf6)w#9ۍ1_!CϴJz yu9에_%=->L$YbngdMhV<]\Xb=5TנUm8lRX|f> ;^On^O_EEA o*ug~z3xtuׯHOEwzX=53=U~8W3Qh3HCgX%A~d.[p[ zj,yoL IDAT!' Qd} yu>D>fkW?E P'Q_^Oee=5l?_q|dLϰN6^.O[=95$z"?GnX3U`rMfd]zyFOZB.,ۍЎŗ'@{ڬYb=XLjNԟO>|BP+yOzR5;F;'rᳰMFhggz99 Fh O6&Ϝvџ(Ɠ%z}xzFG,@G_X|&_VM:j̷[W#=įPyWgw˗%jem@SՍ@O/{ُ%=u^cj;zj,!h< uzz4[e^OVGgPW *9==fhUo3mT軤O}3jl:/_^On^Oo"U$! iyy7:F;}BL$Ű;VX;n  g v먴x&..S̓i1~)Tۉୖg&ZSK/ž|YӶ"_,TNOT=l!IRG¯֟#F)kh7:n\z<d1;_|!\݃ ('ٸ/y5q8>ɸz/O7B/#4OxI;sGNO99I t}7q1 HeZ}Y?HLg657%#=t>:RicuV YmgGzf<4+$u!ITݷQ=:(c֡*9==fhUo3^GklLje *RGSY7OG 0=hC5kr7dK:YZJҬYf͚5k֬Yf͚d\ZҍP p%6klZՍ ͚5k֬Yf͚5kYb@1wzo򛡳=hghfVj{&l?~Nnis|E VH˙6MU緕4[iڄ,V~@Y!ti*> 큪:;BP %|@0GkC5k⬳Y n ŏ{{C7UnAd`e/_G(`RU  \rfQlzRt~n7]u|X(udFNl j^o35X,E^gWc:.S6^/zK3뙙rI3o͜0QSHʔNax6l\:;S_3'v)z\&>G/z.gTx0Ow#O7Bs9,Kύg͚5[1[-v,#28{!q0O= {'phrq`LG dIG5yj} Z%OO,TK  q|&_Ζ:"zynGGz/,>S_B*c 4.~}F$&d:'X3<]Yh Kg?T(uWdug@MR\v7Lx)+ D<^t?RJD'fםX_\xq};gc%=-ucI <;G@O+3ԱB1?k _FOk^Oo>]^ORw\bl Py:JUP@ViAv94 <|#r&Y33܆zxui'I *0Yf+  vL'O"i 4.D.a!lsIŀ3cLGNώGt,|REï> ^Sh9b*A0{SA`.>'H' (i,4*!,L%( DOW_B~?Z~:hhi=3Y8ՍPUm|׮a#GOGux+nl-I_Tru!̩tؘדh>/|Hxr}t+/4?Q'Y'uK$ 3Y+F]=0h})t+IM8ӓX/_Dqz@`@ ϓX°.>R< 3xZ\n =5x%jSvzu+!f'Dϥz*$:R dMhVD>fiW⋅PHؑ7FRG+nl}˥igB3FtDc^ϸ>x=9:^nOЦipq};=i y꺰l7B;FhZWf͚$t+bpIO~'8'1}|p'DN5|~簗Xq5Og푧ԑ)JxNs#SHτ5<:&yzh9Ob=~a<['7ZGZl3nW|M8euh;s+IgF(ω3 Hobz~HնszZo Fhӗǒ:1OScgAM4ÓpL(ti8 3tVGgPWfѬ2Zt؏~ =ۨwUsjil:l7Bֳnx>[|>OU py*8:F≸m8u7BӺb6klX:&(t#t>O"i 4DОxVu_'tdz'u!S_UcXVS#y!JzzkpSCWggc>Yfdy2Zr[=-fo1Z %4>ZhO/W3''fMPm} ,{ =OrT=$_n:>,n?mvzuxy$y#%cv4B6$g-OFipq}q,_ǩ篩o*WXlAWP͚5[1&O> 10ۍ'7Ba` oT|m൤yuuI;s1J|xkB=PO[ǸHob虿~6z)eבbN)Q,O6xiWIBnozuPG:Zt؏~ = }[پQˤ#4 VOTֳnx>?S篈ԩhU<9ū'#7.N>O?7BxWof͚'](0q'ddvi:Ϛe:A׺&Z)Qo͍P$S,4)oo'uKaoOݏDO'<.Fh3nLb%Z(ΨIp+iM|NA/߀yg\Փig(8?Y"=uw^C"2Ϝvx}u_JUaY$_A?)#yv1731xuY}#ؘ37^hcPc=_Tq=7BQ́.NO<ݩW(쿙+,lz_]0Yf+Ʀ9^Q7B3'9$daw!2'Pq|E O^q6nSF(<:?;7BM|]Gy={xRwE=m1 IU6Sd#9Pdyhp=M매gkg#z&:ͼ!w=B=z}Ht9S!1_DGg[!\ODV7&~9oDOZ ӳ un :=I} :7ڍPSj cii=3",L:FH7:I6>gPT|xuO ё1~T8I¦(i3_U/Dzsj<[z97uY$4P`ғg_.Nߨ87]"_VOE:VO[~]FϰF&gTX| hounfDgvQ~upy&T`=O'M,կQ{'z}׻zCӬBgPiԇR^G'\Bu9'4L3K||Z1O{=1=:=Ksty:]S[iU3qxJF(xtqkYG$ Gpzںǭ= m֬ي0'p *=AJ|Nr'8T'qAՄ9TqeN><>`m@MRdzs#4t7Bx 'QM|FhF LOpIDATWK&/\ϸ h|?k=NOR"Q?/HÊZ3\΋U"*yuӯϰދuOIBdzq#T1*>[_}yyoo]giG}J'ϔ%HY! ++9^@ QrzzzTUUdY >mbEQZZZ@ @5Bf9%%]I:1J @ :v%BB @ hcx$mO@ Y=@ @/)>@ %@ @ FZB @ Ah @ @`%@ @ FZB @ Ah @ @`%@ @ FZB @ HHHX`C<999B @ 87QXe\e&0sɓ'믿劶;a@ /W_ن@ @Z"//o ^?<O[[[EEE}}=(a5kʕ+GmZ7믿~…=܎;"Fxg(/J{G}vpG+@ s>BѳfOjܽuwn{7FRlM+Jvvvvvo jC0œ7K'ZTV:eG3@ sW?k@y-޹igǖ7~KVzm{mh5Nwf+,,_cZIJEgw[]<5IiiJ;kzu-@!B^R8wŢ]>d_Wڔ3eGJ}oX+_dVLj*8G_P+#U$cy2ܼO+0]Wye+(̖# sF5`lrSoo 6VWWO2%--@~=裏d2v{qcOԜ?~lkP}rw4u8$(,C=8t@ "G YƗU߸^FEcno<[*ֵIg{JF_XP!7T8GiO*FDfAڼg̘m{ &*x~Y`UߙUWqV!^@ :C/pnZA3dgn $q_uYqjGOw6z%q?,):gkv͘Q>e8G7jceUoxG_XF_ַGoHSG{ݮݶ*?y1Mz{z5b$@%u\NY}[70e@N,\pUvQx꤄Û?k|MFӭ3;fiӿ_=T˵m@ t(옗vOdE6 c^p/=tӯ>CqqF[G߽Eל_7`B־-֨3!h{M6K<5K VZµkdΘrۃ+9ϸ]R~[YTQmCbRp㱽su GLnY/ou(\0r Ȑ ĤN33VyxlÝ0瘾1Pa#p;=[Z野Z`A v A-wo.sbmA1#fhF @Y~ ê0%YRwAفUUu9<%)3_]{:}v!:^D\{_pƬY x97߱<-j}es?2IGpD-/rWxXbŊ,?iW^9.B_( sgRH3~wԅ1*$h;Ā3ơsBB.$r >-^bMH$^>5Wgk-!8gcQbV>{ Ks&|7'4+|eƭk7&\qLK=ӂ 8t@ht)،B"(!#!7M`K_l%3UoF0j0/`U{|nßn]QFʗom ߿<'OK{֛qKvmO7r#k^unM/>ڨy (E EWQL^(JP5ȩ(Hnb e8%(©(af3Ô5 [eUAIC4-z (& %B"0l,PCRbbzBTC@1yFK^qòz *p4#.EݚWQ<ӆbu@w l^YsڮVH'H{,j!=<3fr_|/B(A 0Z`65,؎^Hg7iIH0(JitO@08A#$|Af^s~v ܁eBOɞwO,vغm͓504Fx,XV>BGWWq).?rۨ0Аі kA(C`F8&{X '1h D`V"}>3&]cOa`(&K|%y3ʾ&,gggKR4llIUUðE12ɲzybv <F=V^%ZS Z 6e׀V8% l^YsڮV/њ yW4Bbk|ܫBio:%%%a $ qVfXc-U5 ohQߧ,؎E_n-NL4%6t4Q \/>z׌FH ꈫS|bZXM!U$3FD@gVoE@g9 '1N3M`Zhry\ِ[֚ :5G!7W d_Y'R'21:M0}^V\='bBV9>A$٘UuD@ozNvMxh=:L'iC&Vm_ŇkOptuXSRF]p̒K!e }neL?sWZgd4lYnbXRuОnzZ3r6ϏdNH?B&uBe|@[iꤥx@v_!>;?1uV&[ѽya+tC_0fFsO!+~COj4^*8Z;_' g~iP:ݧ/#To Qr6*3!7gh<Bb:,nѫ`">#sZ/KGGxHIG '1}ډ[/1K/=Ik5 fsALRw=hv(gST #G)S5k($Lؽh6 cѿU 8W`Y4l~HJ]g!4l~6:`^H\^6-٣& 2}uW+}3X% 22>`/CZB ` SO#FTr`ghؿgpK_k W{e=zg8g;VVl^WjK7,{;6<|FkewG>\Ǐh90 >E >!&~6:}::BNu P%m2|SV,c!$(tj#g)0;Gֽ3-JRy.˖Ν(G۟ΘC,>xuxEv-u;۾ɖ;i^zCygL梹[++޻;50Kzz!6~Z8*cTGiG66fZIjmţ&)vVGȣ)!58FjK3A>Mf]yy\Ve|n[{#\r[rM=%6$J{h5?}RwZ@cV|oa:(q|O=Ae_t}DYz7'?˲zI̚'?s[Di.xb11# km8[wzm\[u9k6^}1C`nA6[.Q .>ji&ᾫ}=/oysV20MiE Gȸwצ}D.\tѸ{ nlbvͳB|? V0)6>(2tq˯觏@gSFf)ݶ4b,͖?kl2mu6̿Io}ƉW}uOK 9C&dfMQi=8:;*]t ]7?a(5 ]K/$B Nxh/k:&щ`A2OiQb+L%<LTjlHHVQ@CB%έw{ kβƧDQS.Ȓpצ~n,-\2!yL WX,(Iih;&בQc-.n:Y}s 7uVM'k:O.p=/?Wt?}|ԂeGH׻ŗt飼(st>g4uG,V7 dL^:B㧜B":%BAjCuFB">;SolLRXZ³}kAE %iMpun_KYLFۭ%'`)7 ?뿾$%PMKwladLjGwߞk ygn)ڋ=Mv/b$ddm=GW!Nw9fU>*}9.0"ՐC3Xsq@1wC0Ju݋!pYYOvMUbhWoi :$ZrAD3wwcr"Ͻhwl鏶o1&PP84=#_=kl_~sZ /s:I)jl IDATћ<֞ol }ګeMJ/Ot6ZydԅKK.l7eց7_.XxMO[LXu֒qAgwGN;q]ޙlqsYNoSG~azqBA .bu֞B"E f_CQp[}Q"(1~qFI ^s*Z1;(O]z/,KJx9<{$ 4rʑNoN`̄- ?K:uOK]'NE塵m?NOx}7E\xC߹}F o_9$a7~4zOnm-wxE6K=Uq]Mloo%,_]8Q.={{#[Sr'N߻w;SNzPJAauUmF/^ql{tSeu1s/CvӀx5nH4QC9Fl} E_!7M J{w_YS|bZp٤%"dZtlyᶄ1njʎJdV__E?@ eKW>bq1{m^JLyB4~3#'F 3tl^?;|4"09KYk|~!ii|zU7L\uC3Mcl֤߮?xw˨K,f.F-X}%!(a,hMr*J0@P"eP@רHH ̌9S&LZ00Nl%Pl|Tl'@[}wnX#H e_2 / uR{ҴoZ2'BLK/ZÙ >VܽuFԩi&`q{D.1HJc9W߼Ѧ1_},J:l)p]E^p756L]ڨY腄Xݤ''!(k#1Xb/ Uy GH̼̃$$4\XL,N& #ϻPs]"_3BB7a~FΆZ7y֯%D9.(nWO KoX/׵`)gWd#3oSY?UJBߔQ}>^./ nnz_K D"#$'p}wluK^sqX_:tC?c3"k>2٠>H4QC`)$[0aAH?q@Sf V}m}@3ق~-]O۽ dqUI'H\]':HRTo|ο,̳;N~ѓ:mY;oY^vS~"*J qѭ5BKxuw}.߀%(!ݍ|F-p*JhY<[YxshMr*J0@n dy7p[f5GCH$gk֯Wg'}愜Ic.lDJI Ͼ^^4EۍpCo)< #޳mdž8~+c A YVJjm;7y݄MH(CBJ- 7=:!at"d65K5$$%} u4@*O yלI"BeZs9󮻈XQUGۍ"Op/}zY#{<# 3 #^9}6pxhi>/Ձh{cg5BDŽ8^6(mEk@Io2H,BLX4Uu?$)ב"ᤄ+p1! ʂqo^/ч߾kWnV%AlkhopJh~Ƨӯ%`j PnbXR%(©(af3ʚvb sq-q,&5cl֐2( 4b<3.^UL~-Vd,m]Wk,c4!%#QQOO8yHlwNmD|F2,1v Mv>[(#WhŚ}F%ehNSgS֚ :5G!7W d_Y'R'21:M0}XWgvs<alE:l~!׽{U-w\p_YA?3(J &1յbu& ɺ(aTRi??3Bg#`tUU[@[U_&3Y fރP~Pec|x(dKKaI݄d}trĈQzL4gt"p6jYu&TBAQwC`Y`}"$D_|~> d)^%YBH!GrSDu98^HJm8dWrDf3q8 6=<(EE@zh rD<6"CۘjwDU,@c5D,H_O^SSGBBEΎ S__+AV8[{aO85]۴6eo|-:;)@m# Pk)@ 酄Em_ܲ=[Anbk)a,gEnTR9Ǣ(1I-In{ P{ 9N%IBbIJEmEW}ht53[1Ih?#wdvoN_0fFsO!+~COj4^$?hGVux$Yph(9hc4 !$$]r(CAu6}{c|z2_$IBy;MjsslsemwNNk&MMS.&τ>Ga_NIjmţ&)vVGȣ)Cjp 5F &<"tjԗ$I˲E&v@ŵh_pzxg)m?޵*s4l! 3g|)@ 9_ޕzVFZ 6@+3׍J }3`X% 2M/₍Ij{HDRuMW{$;R#B>G1{!<<3n-pochEue11'E?!'5p] mmpBσ_Z9Йph(9hРY )kJ/$x6P'=;pd$st\ހ*j彵ҞZiEɡ̘={Y$cu|LF)AZ!p*C Pףw~xyy/bfO8\Z XH2&z^H?匠)90 RZ>zF!;SolLlėf'c%=#H2Ǫc)`NN"`o]/9uݷ~庛lFpъH@!M)͹>FjΙMuBo/J0v@ψEB-E1X׽8qZ^kyL`SFuJgfhzlxF1nvtN-YHU1nWpey?v$ ymoN!>C C)@Xz!%[TrBF@@.Kuar"E f_CQp[}Q"|jL\g`} y*Z1q:PGidd:@RN$%tEmCZy< /جŎp[TDJ-A?S.FܚYMbV)]KaAz=xmn\p{OwT[ΑuR5%WLm3=q!nlވ)AIHK qSCK|7X&yh _23/j-Am:EeZCKׅ{i _HHC-aE Hg.UT_be;>21q˵1 K΀o B̃![!:t_V-D^B[p>S3!/}cև^Y<)X ]y6Z 'S u z-`6JGk=*ygj Af }u!+>pCskҁ}jE@N\_w]΀杧G}>@Z-B?Sa=cޓ՚&!FH6Q{MOoGK"!$™9&c!omAHy!$w6Cv`#$_<6RgVK^XkBxJi[ $"璱x\^H&9ZKDS2?{PKN[v7G <9k|98ka3CzFUHC0I-HK{$F $$=o'04/x6Wׄ0uIV)F=ݣGo&83Tc"$GKyelԠ Ӛr\q[+#Cu'iTD RHh օD W2!aF=!0%EhVi%{?/kwb5Ov6@h,)))V25a[cl}|41鵀APN4W4ip8<ٞ L&$ITQƵDY'rBB`:D]HjtƷ(EG!SAMNg&К= 2̝Ieo4>׈(}}Enw2vf = s4ᔸSA[;0 VV9튢ogX4-E B7]!:tQ)ݻqqu}M!,ْH{Y}|}B;ˀ~vvRd=%`TU %8- ,KiXNPk B"nB'pOBB!͞ސt@){\D<+N?×Jeěqi;Lڟ(-}/K` AK[๋ hV;9# NЭwSdJ?RzN}#ݻ~:mwg,Sj ?܄kFH ,[l7#!1O>)>@ Mh˿Tɔe:>|( $==fv#ޓ5*{tZO&JDzehTyES6nArMdL@f,^TUu4dW#yBwR{1 !Rݏl̊~FcJC?[M,)$8iuOWf4m5a#$2m,Ոi o› =BA_+突 \TN.TɓS]L)U*(ZJ{vvvT0$G   57``FsO+Bc载X > &zDK^E@_r8`?r~.(fa:hc)IGMz{GY JT?tRmSA|߇䞒+̓MvWg|΅kd Ω .ߠOBu d0cl<\g$">#1v=%=6&rZ~~~'-9:^k/ϴ!q8qBϬ¾YޒEC|jXZlYmRj W͋m݄TЭAPukCfYWz>5*hc)ÄwES=<_kuc{O;̼;Ž̦/JSG)S0Cjp ՖviO^V4WaGFZ3M=듛k+v}Vk./osf3 KΔws⪵>)'J{&~;(ؒ,޽mgŚB)2 MCޒEn:`1+S.;Q{-MGcަ,* !UcIW5=zꈽ<L`NF(m7OJwz!Q-=c<hun fN IDATWckzu@򠱿MLii v"$"$iκkzKCk$cdVp_<6g~rBCE%|?%ua̲H]>buᶚ(g'izl~5\\P-bѰeJDoRU. c\P~Y1۫W5 r-cw=kh {ɵϱOH  ,;ZǼbWXrC[5V|Mc/t[-ư:Х\E\ $Ƀ;HO-n-I~JOc @@ \+6p>tL*]|@KJՓW; Y1Zv(hƙ专r\]Ԓ=W=t_=7tq BwO .3d; utf"I̦zCHh׾{^a 2F p)×!fD_tp2z|BHPx3I`zAtOjhC.^Ez½܋:?xᷴ Jo9anSczݥyeRǘԱ&O  ,y:yoJُ]0}T7dv6 sPS6 Ӂ:H.ͻƭ֌eU%U^OL T,!pk3'K9Q !A~I #Dg(݇^pn h(zuhcIIn}5Ln;Uwmw6 ~THHc`Nؚ ;2cj\?M:fx{wO0!1Hޏ/|'o-'T^LH 9ߗЅn۩XdEkVǘr'qX$ QF|6dVS+mF)3K@ !O?v8ݍ\=BȚߘY({Ke8)%Rdjns߷%4k!$=[igߴ wII3ew1?,V7ihˢ¢(a`'izlN8T#N \DFݡkr{{ x{$V5jiٰ!筜IqcUj\?,3{fw秸hJiS<Ԡ'm=0"c?VKb(JueTSO|D7B1I >] W.CH6+n\ jHUpuG;֓&pG+8ܽwRE ض`r X}vNoRN?)v{딉%Y;*1AHyK+:}>]gz]'_Q$U'=OTsiI\E'GAۨ̄0 JA-8>Sx/rؕ^HJmhZHIm=AX>yG" D"M5k2fUjzkqY19{B"釅ďRIHmT{ߎWw._ %I 7ܰ`72tH8JoGu-}$`LZ>Wd&! BF0p#  Hx,P*l{W?zOtא!I 3+0 !1`Acə⻱A!> +wlYZmC:TLx(#AGٚ"m5GiؑFW,DŽ'R}_TiLʡ;;h]i#;xAJ15W}-Qw{t4KL7t(^ZsO:fK?d^,utOLdj#9Q(@>VkhժUcƌ~xV^`Xd -qN£(^M@0 !7p^EA0A@QB"+ vKj*iȜ^!дS[@ Y&&a `@ !Z(@I>krnytmӤ!SsQo f(w"ic5CD|<4T~XGC  4)wwɉĪޞ/J`A/J Qc2-J sEI=G(jT%t^t¡(@9%Hl>qRs8uqp\tfi#ZbQDixj:i{o'mTQ=s-ٛG/ޮw .LII6|o-[hKA_"l}F '?&:!#'8y,Q  Q!j\ZLɿL 7n#qnY  Q{6xD.hI J0!nWھŵg?y9){æ1O%Y[L2!%W('B" dL.8\N 'qQ5ҰOhtJLDu^s`u?Ƥa|pfG>xQm_rh1!m5u!3 թ#py!f%R&l?edH2jzV?vmذ_ <(O?R i+pcMFo! FDK9% вG7~ BpNc! p~;|tg;pwllyW*Y)R>~@t<䄢"z5ŁqvA ɅRDw S]/%͓<'NrW:vbLg1Fs:4`I2ՃCիݪ}DoBDBX6GNSG\ 쵷 }<<_D0,C4j}:䖈Oc>P3!OGE+ # ɠ3ᶺ)`G&!'"OC %   %74,I}C.z#1m%:?؅_ Nh8dqQb+㌒V!O%]Q2{+_^%10RI.ZPPIϱyrӮf,jT euT]YM`$w%q˜B2ׁI@< 8D*D,#ͤR<' {p$6O=yۼ{_aB ȫo"R@P7!DAs |shZOŽ,^3';~Plh/EY_BӉOzcZ7K+>2K2}J7 [3re9rq)5^c/pWWX+͵|?KD`z|Hɯ`¾(oy7/$P)\ ʌDi?N,%%,%G`x )՝TW HޥP]_ioT666Y"*$%0||ƄJ؃* Qd"`YA7Hn nFszk0Ma;UwtM/upLRbg~6dEY!aBq!(zyGZG|_j{y>l|!:{`>BkNBBC݇$BHPxg(f"酄Z~˚Vd%͵ڊ^t$XsԴy = f%`o*ju:y/7 ^!Q{cD!P$h3BI@1BJI%{_5&@o(JL)PBA6+#pd r?p;䄹SJ86*sZ!QKzO^қ24&5OA^4D|0 '1h+2PL24-!t7N2嗿)ש_3lg3[gˬ8Q)3 B<'L_4o<).hQIEB$u-" _|"IT@R'!@7G 7"-.A!ْU}I\h-#7m9 d1c9_J+v5Z3~T){#SE8NHꁇ;ߊ0Lx$ŷ ѽ^k SQ!V7 }~r"}5s̼Xdf3ʚveņ/چgZ-2iҤ_ EEEs¿^V\o=^$w۹W~'EKQ&:/^Q?/i=FH"BEZB!L:]7jxYb&kwI2c$Iy'Hu  ٭Ȩh}8O^x'G1!wBi]ȒQ[ܚ7&BsƒCB|<3r"u%ĐKLow0G\H0(J(OtV_3ꥤ-i-Nٕ2dY``T 0!Ate5'!b`!$(3_TB_䅋p5Q~Y[#侠2D}<d>! Ymj65IZq,tI饮9P=qKӗ7e5g|$섶n t>+~T2LtVuXO6ll0G @01c0Ƈ$[us;{=^9z]Y[>f^U=[Ul[$bM CTPbs J:K 9ygѵjCuϽ)>#(Q u:jn*LMF&_c_8e>Bv鶆XG^c]x`1628&X֛A]ƱDLkR8&v'|*F!ω!ω ~VtbK'L Bҋ]dDݞDh`is#gaZiO#R\Ӌ.L $+<+|5ʊ7ap @QFSh!Fw\B|lzFN\9@&m[s C*Spg7UjTNӚ o~^LXieCPJoB8M_h/OZ `yh pr$9wOs[$,h7] \VɎ`7yzr1MrBZj{cs[&Q9M wV86qo/< ,W.Q7-V/[^&hWǯB-(B=)^4)DzW#!+ w*1"8'nӖܬ,{58Q̘8PvI0mB{^ u%Ne79*YJpx[UòHPrſF91u( (N2Tv:+qҤJ3vuBw>:᜘#Xbxӭ~j=d:'tw;lI f4noY_5iw9M4O+O+W-6mm m#Bixdho<'88=~5wk#ݤֿ[eH0(xF\tܲ@B""+r,g-( fX<Ìk«DX&\-_ HN[e,ԟ1jɘS{+3d:Gl'4}M96g7٦YHQKk-do;A Zln)#?b#~/Th` u}+ٙ6^Mp7פdJꪎ.#iÍ_ɴѭo|-mLP>bi;$YZJc3udE6){U1Bh;Dn;5" c~E 7ca~pgɆkG/ C T*<&G{g^-חdqv4J7wmLg`Nh~QC!OsN,b+MFv(k˙`ؔS!gsցS _+~*Na !+?ϯo3$}~/Y@V5x}d'otm4AO3y{OhyI/L^&_7c'&Qx2{Beg/{&X1FNF@w&CD4yF@& "DyD(:Wb G$Y.[H f0t%K~e($~v|7 r?FU&PLYxjU-HKmS>?ڸ]A'CYVTcgőNX*EW-Q&p?ʋ~_g߆@̖WNGS_6pضL{:4]T/nۖɴ__:2eUiU_ǜOeqshnc3Ӏ$^J5H^9JȝϖKM;".9N:(A*#ovoaj(IȫV.ū:0hz.>̏~0ne1/QK̝[![iԲϽr >4 1ybuumSw@j-ڊá>sV{r;]5v%@P&?Gh6K* E,Ъ6 )^otg3?RUIL@@E)Oy@z= ;_eCd] l`DkԲL.霝ZS{+3d{vSҍԢЄg+ P"J H8I ٺjf!Em+U:0qk b$xfDNaPKyzMБg*7H^w4ITO?͕>BI*}ҼSCҩ (۴5KMKu5y 9d!rP}Iu+ 6$" 2 K4$;'U-T#RrQ2eDzt%zxgvؠr]  H"$mO:(!BƀH(2yeSETQǬa+>So}_p3$VZ)@˙ȁllA׆휳 v$rm\vNaU;<3Z(/Dd||v3 H11115?s:*cC1q@!OFOZnRLOz'Ni!vVװ!_,)Ip}WHFh MQ2 dg*2$30ߨ0r/A~6 oXm02?{Ltxliq}I0NLtvʈɠ7KKok; $,қ0Vv)`ͪj~F.D{88ɼ҇jc4N{ HMDRy2!HMkT(ґ Yۺzv֖?$ Uq^ZV(gY~Qi!ԞIGr$., %h1|fQ\#Aj&PFPSpŞOg$ I}?$v>L"``lu1'3zUw 2j݁mWPvw C&*Y5͐@Ji3U9w z3u&ŏA\ g@bnB*Fm%8|LCo4 a^sczZY4kuAsO}b8|Dz0Īeu)߼o$=ݒN|VVAdLD Oв@@ni P c/ؑohB"HJTHD"w 0e'>Uk뼲^.Kqd2QE sBO&M QN$$IU۾E@l(Y#<6sz·PNFŒ)`'=)i;}AHyB>z o) 掰*X-y[mL/.ɣV2&{ԑ&!O\_ d;.^* ϛEDĥMFwє3t)o>UݬϷ#_$]=pa!  ހ 90RBZ` )Գ[o` ztN2 pOÚkH,d7iHbP6oc|GKvfLik>ˆ -#1sqv*NE6`+DP6(XVW濠iM>FwTS<X$;ʕmu2p+J. \knȵCk;"NO{DIHJ- CR[)0"G@9Z%e`#ӃNo4Y[Za%6}VY c=HBZ߁V)H\.RQvcZ_z6"s9gn=+ԚpKJTRg Xp5Zg ̂gxfN9sZnX 4OJ;OJ;t<0&VP]r?5|Ǚ︫~AĻE[\/mR3Ql/8m"8bN"&Bl v{)5LϫZѩBz%Vet2MS5K)-"LhK$pꧠ7F*fr5j XZg;:RP"u:fg44r5$c;[MF%s%,RPskMOoNW$xu9)(a mkPzh: ũP!jY7u-bK;_'W%e?꟒(FYhn!\VV|, ȕF!ɜV$DZԸ DrBۤ-3j1"("<=Kh 2 rL cm'B6 8 c1x:h% a=(aC@†L5eX¦(O `mZ;$ }X$3e_ۉ" cnۖ j1-PAу(O?8$ICe |d!MxעlysElV:y_VcDp*2Eppц+_O$&7({o3S!_'`L~]35Cw}{HoA0ў'M҂^P/aAL@!=,Ð<@}xeױӋ/d7Y'\&w6PZFߍɺ9Ha,as2%u< Y.=SC_H-P Dt n@>4Jf7!1C32P%%"N0 DK0vJp&;փ{Z6%lfl4m}B0?:9Q*s*9綶HXn]3ZN6  Te%h"Cl6+4`iY8,RXa*23~MfXWyf ͷ즑M}?yڟ]1Q}@ H2U@-.Y[P_,kim%~~s"m'[YXwXwQYh%SU; CB:jl8,,R؂R>| cR;.1]c̵w+ ܐ\%V:ݬi9!o[prǿehfJjSYd@sľ'%mTFeU 83MruFe#!̥?\Dֿփ{Z6%lx7 l7`.Xy pr7XPe9fιmFg6+ =0I,bUerdYe1BM4MftZ4{ Y$IpC$Q:4 l YPٖ&Ť+* OȾR'1cP\*T6[kkdA'CYVTc|i~'{TN-p0z2bkY({@ rfa\. bT*wń$IsWK7@YԤKH!^^䎚 <0w ԰HU<^wRjҹpb\yQ%Q?'ٹq ǏÑoS3D@U%]O;$$nsے$$7dߓZZfdzANw,̝[TjN@pnڦYHQa 0qk Ȳwjzc?aY6:!.QUL&c1G/. Q X8bϓgaLȴeoPƙ?.KCFSqΧB.cFMnV<nE pbNHǢ韞K9@YwH&{vyS6kDȽf IUo%4XΌa][^Jֳfêdʕ9L@s4?NI HPȣ,g;$,h7ۮ*lW$zyvN4(p/]]EinnDd)x7dQ, !_U9a1CP9NI9pX  CGP<^K,Ӟ | E>妎- >($5a7CHr腉#A BD{ARY8{H.@B rI@kpX~L x?h)=i`'4jZ;qȪulV `UA'CY *Zl_Ϲ%90q>zR0xw|8M<1u Asi2 '`$I&5 fzJ.=(A HG?MKA~=[^u+=5\-M/& 즒$'7"'۴)CSBv]T%Lܴ:+'ǹIF0tDDxmnnV:C2888+&K^JŽ67E.) cR<,K,khN$@m+n֢5SNKò<( mAR8o+6_!7m6J .DD ۲gak;ؙdzBS<PC}]0ǔv\*׭`Ci;{ߒ{mB1 2 IDAT>n/ۗ<]xqIs Jw$Ab%Oԓ5=T{@= |l_)Z|ٚw͍S@մL<1U\dkhh_'Ό"0>+1\m2ν3)2pa:K*(S  g٢늶{CWKp([i(XփG\BM{sX> ҆(OUikPb*e691ZUJkAJWP©: -Cnߪt:^tJ/gajmۘ/(FתR?%{!9#KqC&+J@ ҋxl=WZe 4i*wU K]^Oe,+>]DzrvҢx0sj_bs9g*Dt8ۆyJ 37Bv泤s@$)jt70aӛmHMV Q(߃I*_5Өb'Л=,MsvH&4K K䜔p8Dtq p]/x΅bZ۴-uk'|#|x'3@+!֐w+]Zy) X)ȝ画=322 2@d.\[G]YbY"yPPHRDZQi&^MnP-5onko1`V9q/Gn3"p:7 Xژ?dYzzL/gaJ^_m:26[ZTF]|h6E#J4ʤgA{zG| yԼCrP߷ G2ΡΡX^ :M왲j| HTzy`"iʖ PЄu a-(巰2M/7=Y JmʫYl2A8ɉaLDm_+TH|r#S30] JVKKY%KYرϮNK|ۖ֯*=mEme7O1Kɇv!yZv]%` +$8*ek=v6?A$*.q̹҂?"'V\$b!p, M|4&N/QmRmzERh!034TQ&B~I Y^MN+V"+(1O9W|A T*Z`,ၷ#(a%fgU|&Vact a glU2qdҨZ$!dSz$=:ք< %+:)}% լn5[&R4"͇wj#RYe.nH,+:m2U  N c,nE9]Tz:&/~ R4_ ]xN}sc {` @M֩uZt-K/J7b/;p]ixpKZ -G|[X2[ DX {%<;z.)ײի|pcWb).OU[7E7. *\W>7Q5V7F[O \>qQK!1 ޿q":"}'bP)rkrk0kT*$g329 ͶmK݆6)`Y>sϧxo|-odzM"rto1\.=fӜ Or1v46(+|'|߭CaiM6- #ϏKb Wfn%]rK˒POrJsDLmįMlB)أ{dOy0wBi **$-'&:K״ՑZ 't][s>t5HOV7jYwk"Ph 屄CA ;QL5zDAk̡a,6}1&~% ں՝|Oq|kW#W}gW~}=()R'w]UP#[\z_>O1jKlU#OtE,!Hdƍao. !!f&+Jo7+z_;=.D bdVt2B߽%xeK'3 -G{h#V W~trj{5u0)Q[/lmN_-"jH=^_oAUhM۷N-^WR&`??9Tk!vsn\ۉJid|xfN a!VEUYjG}'w~G2? 3ZJ?x oG2ʎ7Oiz]_?|9 dO?3;Xtӟ|?뇆M\d`ݩh (R~{V6]RlHqc;P+.[!+yb%[Q'`;)oh`U H`+'w#L_G#g3OOܼ`axZs: @]Nz幱x~7sU+T95u:tѓãIc%HţF5a_WLFt᱁A2'%}3mߵ'6u,(a'Y_?8]@-.YZKæy.ၷ#(a%fg`qF0MYsԥ۟ݷ?_O93CYԺpcϭOHox6]BZiK/9/7z|6ʐgan²߶lk@}݄Zpߵ'3D !Mdj$R n`mW/}RVO@JMs =,mh*'_Ze@AE)DtP6 stFT9(K y:êB ᶖ 4R\G7/ADxSTM:[Vyu ".$2?>n*(aHi9prXPst- snk;휳 v$j˷6 Q(_dK`+?z 8?[F']J{}MX\ۉs^SjiҴyk \Z@d;?9;3M={W[sMlR'6;#oH&1\Nx} ZHb 3}ƒǒ^%5^Azh,ѯ&BOO ]H( 4s*L: !!bEJ+j aa9ȹQBΌܾػֵi,9n𿪳Ad8{8VMCl a냲1^&U8Y ݡ_5Dl2!3mى7~Sw^4(3WWc&O>_/(yp_~+_t0( QUu7KP"/WC.􁲧G{wMɳ(M ,Z5 $ wFJ c /ݩ򵙍',%6u{t>ݤ|$bk2_g"C- 9rKፋ޽mZ>e"yc%mn DmjR 21Ph!{eκ xȡфj]K7h)p KzڶOO .ia1nMu6)[HXNg2ԩfFf]T6ռWw~?xyWbk{GghӇ /=[>>o yzV Lfet9Mڑ{?w?:쭟ٕ|(./gaaYIKz&=I ;5hN}0*9c)!SO9[L1ChF ~!Ѫh/v}-T~ҵuzF_ @ (R &Ƙa_GkN@E@[KƦJNzDYL4t̀o_u'=;fZvhS#֗3"6-,1smmsց>s6l;&צA-yc{|3.g~kW[{ '@*㕫);vBq9?sDtu[ÞoT7{V57Bj=9\2'V[SE-A♘nsɺQ-l0.td+ ž76sKE2խu Q'[R@`#‰hl,=]y-T DuHg̦ZEьcmX$!5mC)% $@MrKrtj8deknI>V,tuBwZN-p0z2YY Igj&\q(%h6;.^ԟuze K|.?T{O ZdCKt|$K%}Fs&.Svd]|L(U:\ݸ(s}|'vņ̽דaDߨ~8lkgJԄ֯u]O1һ\VCSd v ^+?+(J@euWޡ:tA-w7w Čcw3-}EUDbY -d7nkMYdm_-7-qWjdyQvN@DX<lZX,|YdkXEVn~݊uuɑ)Fñ$| IUCb|:=;~=ΙpSrvSΏ^vIv6XT4}!f4\aPf ;97^܃6q.)W: o8^~(654<ǚt`$1VҝAI;ZBbSJ g'V}KBhJnzѱ*+rN`9*rm²3v 9gjHS;gform>KKRkD(R!A& 'JE,6y[E_!ؾ$&Z#E$~*oH `\H7$*ƷgGFתU΢m} ,ķz"yA[ uaﺰTA̙XL,3֯#ѫB33SIZW\l HۚOO`ws珂5o"\Y ѱ^z@lYB^ NOǷ.U\ )qHB8:|8MClT!c ᐩo1d Oۺ:a;0EW-S)VEY/!,QL1_R| j07w6=a,?*§uoFFy"Ȝ:\ڄ,T$N5QY0jLIM)|h kԱmԒEx!21ZzAU-+B% î+KhH⹁豉Pw3'&k^m"љkBJ4Msu[SΓ!a VUг(T|P3YpC njH [­G΍|uN鑊ʿ.@N@pnڦYHQaCv%Lܴ:+'ǹIFpe7ta ݲLRX, ?R)I ;b}vfʦ` 2DZje(_LdBlo8y$>c^E9 "*@DJ9d%OmK \J5.='FСɘek)FQyƛ)/\=S1pBO2̮l ^|q8q| ~bmKa<<'&<eM/>3Ax @]u F2f@簭%($#q><y౽%N5:wW.o*NP O`!Tlf?H8b}9Q6-,1smmkÂvYZNNjq1f7tiaBj clddv\K2ha@Uث:mQx@LU{Nۉ;,R"B,A@ ^d4$'zH/kiD(e,MrT{iƵYGmLXK,54Yru7#~|,VuwDhSsTJT.?k0wyS3nt˓ <"ln~ Cְ~hb xc/k;1{ MM+wRW$ԅ5muGR].oԹ$QTb9E}ñ& =9P$w/yrxCo3k\v* @aWH/a4Eߚ Q[a J0G&R* !dy_$|e)7yfNgn7\ڸ?ېNg΅!ecA.dK]F@_ -0d@Cذgܽb4mг9j/8-(̈́@*3r8#7e ЭK0P $MY `L s6㒄D!HIφA lG1M'DAY ʘ\-8oC$x͈K|'NhYC=0t dwv;SĉhD4 0Wg խ}LLZQ1g#ћ>]|쨎za\%`%6LOtWtC1d $ `!7T !@JAU rqɍ $UDԭd!KQt] c"^ljFҪou.yCc`@*\)P.􆈹t$CY|tQ(aCStYlX-f}+`V9 x9Xd=C(suas="}ID944Ǜjͱf###t:zsJ,+5zlo m Ĵ.KԥORBnH U!4 .@Vޓۓ@ࡘ_đ!@D 8iDY @O"Q %B 4Lf`ce_5ؑUb͗ṢiMծ綻X[=ZR۲F=:A KN79!'1yɣ\=k(5 &vF?{qfwQwQI겭fٲ,˶\؉c'N\rI~.\%Ͽ$N|9;nqv\%۲-jb;)VcQ[HY ܝyf}ؼ4|܃f Mp?魳-UcU Ò yiCAgwa(obui>z^Lt֗Q? &8HX a/ 3NKazXAE6jRjSRR EQmJ4Mrl6 ( B^wjj*+++%%"̉ 0L4M b.DDژLM A#@ 3c^ ~I4 phc$a'*x9>t8w\^GxV/JՐ$8NlGRlsFG}0"hK?TE@UZʪTO=ǔcq>2ghV3RU9orY]1~4UUXhWoƠ$\ۜdA 1%(A9_F¹#7[Sy% JUDA e9Qr JmF_LA QS6v}A$4j.g3bfd>dݡk(j4=770 0t_`ufW&c"p.B Ǭg@$TlQ1BIΰ0L@m^=,V|DDZ `p"^|s_\_,CozӀO*uj8>&qyDu) ^-m+ҕ R$d,m9) ,?G&ňB.6秡@Rc`77pnSNDBL#/+%ۢ1 g7q$ˈRYvk1Yp"}>ZHAs N+&lb"`ŏ W \_$Dm`wt%@kuC@sӧiK*00uX*mA4~Cy`Enߘc3~\ 2ecr@Mru8ק1<n,'M-d4cL39=XapӸur}E|-sNoh8*echc(bIh)FN]2df1s 7Jw)Z"`mV~.Lp~taEC҅MnCXA\%VKaq`[P XBLpt*&~ HPxrmg'eURTik 0ێaA@ !A+}CTK|ߨ];]?r qvE ! @"+fkN[o`uT)[`Dh Oќe }9ҪCoߜ ϚC࢙حE%? q6 ҡM'阷,`KsR_w&:h"Hi qD0Re&q>`Q* Ў}-&N$.& 1gK ک HXdC;ޕh϶jP 'ø<F<@ Ds_3P鎝ZXO4ٸ҄a#sjwyOZp@I [ET4h?or]^LmN @c 7; "aiSs6iIfA] Ɍys.T\/fVg-$m>4hZg-WeWh`RQ YZlq` _,]Xtae)P$/2!Cq*j"ڇItBL)W=4^18Ep qY|^B(nK1P.AlE|ݟ?6 it=*&Zu7[`mN |,5goZ6WNXƖ3sx=]҅І'"ɸ-euLPJ @n]% /7.//-}ּb2!C`$:Ly5j`e`c5fK# HƘ }nRJ '҅=0C)Ȣ 6FeTFȈ)W?{4hqRʦ0r*pH$ƬGg@*1,:cu W}]q041mJSVΛQk fY\K4XtjRSC ͩ:=%SEC"!0r'1D$Ĵђ}^ ;\d$È$֗4/J^qt2TI:DBvY '$//UT΂VQ[+CŇoZbG]g!;X](ud| :JQ;z/brɮy"xuׅ'O9<?v9.ͼ3iukK$ `єc=g6fwe T%I11` գؽmn1AMۅ-i3c CB"g/PBv{n8l7l"kTCT ch+M``oI8Vج䜵1+eS:-%MIKdÂۦZfFxc3K2 3Oׂ BrוgwyOFYG/ (Ó0) . ]wn#fUS%Z=:D!rHRDPR1 $Wg7:_JLi#( b8.|Ԑ !"&Am ȩr߅Jڞ` (Laly]c |^ƴMP^` 0$V^yd,45KD*ټv]oRDY:OPR)^zvmnv@%萨ek N:Swy7lc4ek\w .z Ɋ;0:wx܈)JO7,*Vm9yMYvZq`;zNDBL-ه)]v|fr q K7(SA$h'αp"!E$dv KȐ!R r.Ivj#(B Pz܂ H R%(V{ N0ߚ7D^F@bFE!{>5E/sQ N^9nxs8w'NSsSs֘, ^5=s~ {P"-(A $$Ր+]HuD}]U ]wV9 Umd%d\ B^}VbP>lfJTcaHHFqJu\zlBP.`!@0=̐yR7iк‡0 @zg$x6dz"%)9""9JwSD{ǯcW_ _7ZE@ܓ+%FoJH9wYbGK I\v,$ jv KȐb)DUc``5Ftz^Q DoqhN|!H%ED "ILTT𸽄<Zpj_AXSpqjXe^c7vE$a$e'ldu~zZ]XZ*-*Eȁ[菗XH=19VN$$Snb!s 2AwT)Å[XRAa1"THdzDϐT I#҇1:ab෡C |fP4Q:HLJ;͟9} 7@KshYRX}b-$rr %+!=a瑛8)M%3W,)"xBNHzU0_+a bPBA>& (1hl#9d=UA[1&Kfa }P^Ȟ!JFQ2ՈPQc9Iɞ[B%-J[KOW"­>$_g7qe9$j"ahr[b%ġ`14aC .9RFاEd(3C / XV@^ ԣ9Tiiצ0 'icSz34V3˞K BPBq݊i%s*GzZFuTVE#E m-7YvY 'R68ٶm{J'FwX}&۴`a$T= 0 =1K`拘*zvb ųbcBU# :*'Kɬ9(Ul0K!0A1[jm]u9PM0P`&NW<~I\Rʄe Jm[*8`$opo9ZxP"&)z!P J}[q̱::*EPB'%'#@2dP[#$9QZ9QZVxXp_ cf "R~<"La /*I[:)'jhS6V .ц$~hqwW&1MD?A*r6aD 1w4?Ӵia`v;D҉t:q9b]JR²A$w9 )kB$ֺaKk2Q0 3 H+e w&cY?5HR%dAD# _Jv4mhڔ;?|LKgk8=M_Ma"Dۊj:5(}>3YEO4 m6AhPvT@y!CJ12mF@VcqL`E,  C#Po]\mSb+` 3WNjN,SPB % JK@(DbJUEdA+mmG0 eBB~qۚmk6%@!,"CѢltbN$DJ$H%"e1m4) \V8(8}^H0bHD[nt%ݔ@%dHҹ+> V^54:j 3.XJ*0`('-YB=UNr/MD$ `@j LjpT[Uc"ʎ~0@ &LzB$B*NN1n,ݻ]G׈+#V <ЈR |gRua!BZ֨J2!#Ipw*Ɠ '<ɡMmݸu M=msS'$F  X댹QD0LEe6wnaDӀ&".@tb)@0x턜$.ҷS){Xla] "1rvﲜg^no+x&H^n J,-| ࢒ A&9ى0p<>T֍TֽVw*1 fX CT-aA8D[A%Ti*|S㣀A#W FMb#d!@+0L"d_&D0>YѰqz1 )D@(t!L8iwm%/*ƒk ""%D08 1m4)*};59aDBKPYqt2TI:DBvڈ$,k/Y`G º s 2R8ds[Ҷvkڭ9ٖSkϝ)A'd'6@xv:BB=]0P> CbTTiK脜$.qE+i'SP]WA>I4RdJl3盂DIDV¢/;]TK d.!C;ƺ<`R^}zjnvzd`DI\#J'YD5meQRcF(` Ί,fmZ]OmukJ[6~RċЉXCA 5 "t6ZEi,]o#Jr֪hDbB1%ўDBvH-$B 9%dXH< ĄdեnuE-[N-A0! JZr<``!`5Fd U0ưdEĢ1F):rYoCVnHzj?deQϑW:i 0Djy.SdIl_ UdzTbK@m.4+W,7" 3RV8. H)Pb6M,d.!CH4I4o-Jf\MM}z6X=Эu9c6)mX}!) LZTBFv g7V[deBr< 0~~JiBi=-CUh˟ ~:E;Ɗ3WKϝKݤ{v#g.wp(:&e9ά%"j 'qڑ.F"S@yBO]T s 2p߉|Fs'| ŹV0-4ml-&1BB*p`'@ (ʡgS2 !JSxyKO]Gb! YDXFh=u1uS;2=I D:%%Y:O:G$L@5OG%zFCbP)BZH, Q#d1HN:˝cUDB*g3^'99 poL,\B ! L^ސ%ڈ0edl:Lň ABa>@Z$1e "`LzuQ6^k`V,u^w^HS\Q#C QEv{JD!w6=za=ѮMЬD>_B|UB`TCȩ \ F<(S%dȐ ;Eɂg|Lh(.y㪃 ]ۏ>Ma O mem@i61ʔٵzݙe 韚/꤬{9bl:Qhm\(Op$q'R|p)e7@ ik$imED$.&e\Y :~b$}q1$!A'T()s 2p߉Pupq3 ]jٵ[ήݒY~av]01MRUgn_khZE˒/[žVeVU)7- A O:G$L@4A,S%P)BZH, ˖m-kCvY 'R68 !_ goM@$vB"L`d(!YA g==kq!uY_.Y@c a] 2!C$#\0V@.>1$5P0PӐf15wnn;V91D bLC#@`W\6PڧP\T (,'Fu}·,@ B'DJp+DBxPg1Dc- R"%IaGH$jPb*zKJC),(\o+~uuT$5.Yd.!C;I+9OaI8iljM;J.>Tl`s'n9٘@!{R5.%B l`VH:Qf4,-2Q?x÷DD/ҷSK  S;&_MHD"1tHp${G$oҙ\Z>4vKȐ! <.A -x<`,,*kMm[ڎL5njk8\Qǖg&ILFR9gmjp`N7x I<r)dOӻhQɰ<$H&Ei*_LS#ZW׷ 1) \%H h bǽ$TB( CɄ\B Qhdrr︊ .| E[QZH\Ma#0lty3=l  'rPSMDbyŶ@xP{e*Qbn \]xWAD H5(D"91DBX::*EPBEB2d Q +>K}3GY'TƝȀ> ݻ]_*8=ba[I ڬc~.Lp ,C#JY.HIHt]` )\B q!#e!/KD8.@ޒDX:Q]²xhFşS˟J55yo[ܕ%D@ hYf*0~n$T(n g$X)iDij6O8eε"N„ƀ%d !QN|[;6A\X,i) }fYYCf2O}9bggىA $Lq D01z(qR0 9CGIB "!@;^o+D[[·d_ K 2yT*]rSEu( jEzfghOv% ݻ]ٛݮNTF\\hٞ%YG(\XљP@0в&_@2d ZN f7®,3IE&g7.Ypf- M\'nG:Z,/"J$%c 2!C0 hSs4_ '}vS WWvCOT y.;!(!cI+ JtkGDѢ-3|+M~Sb:IR$A3VB>JXƷ׊$JKȐ;Eg|A A͋3-YhvSX:i}axV2h/_v%NSݤ*^ &OL\cgi=MΗRHe)q#Y9K$Nn%,"ܽ#E%)0¥%d>kf7 %1KYtjZjl(eKVgKgIA URZމ,E޳dЉUJr֪hDBZFhA$h'αp"!kJ'99 GI2!7Ĝ";*EK"#06{,?H] P};MeQAQVcX%meގ IióTC"SXnnw!Eg5鵙VOMxmynj܀}A.ӌm8%pgZu%raA4Kbq{ؔ 5{V(X\sBs}6KjYy+ǭ7zQ]a:S{l@u^٭%!cSɉtͪ-z9?5ԃI>ev8z+d4w;Uk. =G}ʻn-LBrH!tADBI25\*nMY 1]TZ0V~II < E:ѷ^[žu[v4~{D9s}M?/}PnXӋׅ*#KWVe*ޱjRʅA.aݮ58@.5?HQF\lY?2Zk"}"V`vɣ-8b-x 舶typ' IDAT$kYTȪ[WJtF_x]8L$tB۲[P g>1YGKn`? 󖠔RhwoK$Fo!iD C9 Uiv+Oev yOX2xXpE-J> s n^ݴ߅,בz]Nƅ2U M#h>}enLF֡g#Tla|$_.潛zrsΈ >-sc9 0HMu"!Wz*^Y`>2VFR[t{bGOI܅.2Gc"IIVC3jr\B EFzm[/jJs7!b?_{j6|?*jm67o8scvR2*=lSc_l4۟[}7o m|G~ɑ3tGzqGkn*=3  ʴ+~>|{W~_h 3N]/`^uhJ6nFjvㆱ7MJ+xuE/?ᘟ-i[~fO䜛&UUշ}AoS~Ӵ]]5Tw^=snT3غC)(vgL}]nk-zgO|0y5XM Hkp߷MJG?NlҎ;/8'Uٹ]]:ϯRsSnRݸtן1;s3vB?J[R霻`@$nKw#)}{Ļ/:'UY_Uk? c#>i]IeMA3ʓ ]֟1DKΙ UV^eWjێi Jϡ0+8I:ii n^Q;ytם3bJ {OW>qOJuFm9߬1i8«>W)BD=rc^зڏ`^vN2s)q-ǾGזT:}7 )fg@;6S\ sݼA?ߩe5dW1= )%XZSTᜟ tAf7o.'>; ipvoF^ΉW\;n>jZN`յ̼s}'X9J:T>9ik3k7ڼ!t⵷f~՟?U+ segY ٱ RAU4nضcS=.waukTisXO` {wZږvPJWY w?yf0dVN 33xslhJnuY~e9|mo ='{+"&xra/@Mj0/)eFv[bg)Z sSr.$Ƨ5%dX.7=V|7L}:hVOU;t%^:>YV1;ٵ[FUd~mQfzO>(غ9Sr ٍUɮڢr<ƯcG*||פֿ LV?2V|:64⣚,'wU|CiEh;;L]>e>p3'T\.8etovsC3㪬P=g/{C?\u=ڒ*@kO2.g>;{6mk ]LӅ;i ˽v+O>? fN_PU7;;R.m}?Ux614)8Lrk4堷}99Nnۚ*&G_y\Xl/On^}+sʃwk+xq9Kqȫ^cfrG}.ggŨkl%{:=Җbo>ኚۿL-εʌSo[ÿlOEaJVsvrGiW|{5e^yFxսCg* 6Z7s'߯Kso[~͟h `ђ}_}cz|ϵ)y]絚95Wz*#>Z?K8a[vO?֔]{G S{-UJߡȚ;qduv> ]%#/pwnyY Vk CmhIv۝G>:oںزggvQazQ]H{jڼ*MZ^wd@*7_{J տ[}P:]x}wنݮ׳)ykpF,|jX\B q  H]ݟXF'}uWyko'Q5Zv .[?[Go[**lv:{ dԭQgΝ9^F;q kx,i7tm>FjRF$H"gWmQYKTm %nü\!@ոUF@TMϖoR2tK;OkY m'J\g>xA r?*9͛ / ]g V}*jH-pƞ0c7m|QA*~p*c MlރI@Nm{@[T6wc]}3Tlrۋw]%$zi^SnkeWݰy:yS+?0Oiuƞ۾J9S1vMx*ض{챲7Ҵoosl-@YeW?Ϭ[Ӳ`Υ |N#N4$&tu.p[L!cUsH!/M-:2뭳7/iӞո>/37uzFx<ۼsxɞiڧ8.mt̜8bn[w)tunYF= ։pxV~&v'䴆%$Pv?14m}1~vi|FWVmY4S˫'Uucao% fG'UFzfF]6\V{~EҺvzOs;Whڗ~Vxk3Ԋz j{yzuNP*-gӝB2dH~T/ʹ~h[pS?{;OlەVQ;qZ)(Cӧ~maq5hJVdݣym\N +Xsw*} 5£M_Ɩ}Oڂ}7k Kbv,I,04`pY[c4u3cnCo{-gⲽ7k M{zOl9 nӂmbDMMtISPly1z;%g㨮l}WnIV,Y6c1`)!B 5 mܻqE.Vz/U٢-+KNyk{wsg*SIn/w"q[8<]PΈ.+` !CHit7vaH~Os?zpi$L,ͅ}7ج֢OdFDF\”)ue?}6Y&ګW -0׽zW,L˕5k6R/xʱ>qS徿 xɫ_t~C/)8O8;-Mfr `:+  Rg7=2I>xF"MN-<~Z8k Htl46UVgq<2F5E|&C?3bWܭ+,C=uܧd2oFSseu|fG)#j6O,IĞ>a8dR'㉅ͧцq<=`9?t&._,RN[10';IsM$%3Xڵ%T/56/YŋO${Af<Or/l4{ɋ'~J[z{M %dQt7J)>]0 *%Qt &/@5~#še缞t}E_u}ЙAڛ m1 'QXy/bD.w.Le"9Iei"|vk; $$K{Q}u G\f T&& ԣW$t;.sΆfeBDlnk5x\*\YyR账5Gk,27UTu66+b :9CL N⪮SP9E׫NըSQ&vCeЛ0K* \!TDg+Ҽݵd6ٝ~wD^&Y/85?.C;\lTVs=?~$ 5{6Rq'@Ȕb,޳љ_>aFS} ovq(HjhiWNùGȔbf/ݻ+KiW#c"[h!4TZ+zA̼kwo әֳ .\ S{09[176~'HܩB 2v虋{orfޞq乤ܭnZ]o^ H̜u azG+Hdr< )2򹼼'n%wEok;ԅG6nY神K(tD]Vo3$g6\!A&c]lPblmițɒ{[4%WXP=[Ht 9nך%ɐ8@2~ {{m]vV2O6_8F8+q+_OݪA"g.ni|TUqѳ69.3AbRKN_PsW BȤgSƏ1ŧIJgl02I;ЄXB=cY\n|v:LnoL1` HĔmw Έ4c[c͊s!9uFM(ZT..9unGsZP,Jx%{`LTMݽ!ClEK"'1,q~z(cg/[ՠSSol4XWFQ^M.*'31~Υ|aڣZwWʘ+}tD9?|LasF%Tcaٚ/.\~b܅ H57F$R]*MIؚ\2DCc)?[gݵ/1i*7|;xV6vr֟qLP)g,XUϏ}Tg_g+b"]m}!z2 QO۷?2z+];%tFZ5] VLmβR23NrW ~ Hmk.tX9m~́קDZJ߽)J I`5Lꎊ?3($;/fr7Ng١]đ3 $r ~%)W\YKHTzǹ#62"?.͙8xT;4H>er€ ^~fɨ dȎS2=oޣE8LUoW^ aӍ7~u)8v돎2WC[: /LjHTzm# 'z/.e :t>&#Sw>P(xn|afzFƯ(,vꓯEReA>m!B.k>!]8; q՛0)OFkxgƓDvt<7nP+\ݢYIWdpDɹ9V|\9>F>Z MEHE'I")ycW8ΧMʥШ7=͓r̊u9e<>qgDT*Gl ȫ 6{y'^Y }iQ[4#k7 $1'7AW ND*$>'cҒTjKWIdH!%x!x'Bil;.UD.xPt-݄R AXT*[ZZX~&%ntSݝY4v'@yS=\%aw CϟPټ+аRhO) ְF$?>ficw'ەA15"FpJ lqqSa]C/gh=q>]~?%&ܤLY"c8j*dc'5&Ft6S! dz_$v|I](Xe̸\v'#Mbk#:hC{ I)LP.M@qj?^uSkLHSpeT9BK &1KJ*r05U: /mk[g&Qigi4/)z %g4Z/v@9Nrۢ4Fi9D<-EH] g]E8s;؁ВW NIM^Y4^׻Y$RV+)JuAI_wwUÐ>%/cP̆pI1 %Aab qtJ/f D{ lf]Myᝀ ѯ`NV٤eFrL#z e`gt 'M5.p(^(a#/fw"9D !S̼IH!7ӻ\r9i 7kwSNjj)pD9tn&"vf `i%pAK;sAO(qG\ypDhޠ񃝹дw&8Qj#'|^@WÒMHhW3Jb,VV-4ah Z^n?Z܀JXbQwWn6˦@eDq P˴@]EP(FY$`&$Bjf mV%#*AS@; h9Qj<ξϻx\WC&"Sz1E+!f/e`;"l`j 'Gpbg+ .⑳ QBK p[ `PNcOf,F|,Ba3n<3 '9?>+Ȩ(xmADa)=qs: RH _A(!Q3x RH45)Lk,E ]}x} eiC J3 @;;0_ˌrwz[:smu8$~-۳$%06v]`f #$"$e=@>7W'3a!$Px7ܡ~. pCl5|pj"`[F (5aƞ DN՜f7f'F'y f[K_smCϻx]瘩_6n~IӾipZ $i.mpaw4E`X.C jV|ТVpq]y n1 5:mlmneoIPN@Cd~--M5GmwO!nCjRH _AfW\WRR k_U~$XOBCT8BaxOvww)/G>jS5v`-_4Bg@wc{ܭ%gnnW_:}gUX5.|I}TE飽Z|XԽ> /rvx]MfvMU 6z8jM%aZnW]ٹn}UE,K]-bw ܄ZѼRXWӝD[_0L4ڪ)Ɍ+x߶5(Gb&$ m0/<MŪua1ݡ-eۻ_i:#۴W(,S(vroELdh9b%cA/$N~&ohBJ6vbMH_*x m;rl'P}DGA*;rc?}23 }{#{[>@6pp bC<² }M NK{gCd K5{1 eijRBv8 wEoonv ÅcA:O^9XlD"cRzܓ)ט~؟yqI!rJ0v,=zN#0.vRMd!TnvT| ;=.gX!Z%pbVd7R]9KHOE#/GfB( {ZcGAI;LzIb΋9ֆmG-x=MA0Z[`Bw=\| Hņxq)-}'': .IQŋ!/P^aU}06N.~#0mEove]Nd'*zCc&'R}?߽6x\\ylZ·N!Q8ч؞*9Ʋ{h[S=+"tD ЙJSr9гa1MgJd= VJcgׯ=nDu6W:n'm}$=qn|ASt%H4*Bjw +.dvN[~5o/Y0M U6O׳S `ƎW6J D3M(~0P:"lnA_]x+ @ebˣ/du{ي $2ٓ!4!d^i<8 }o}v閭GܘD0ἷ`G@u62DRŔ3:OGg9ʘ]~G4`+{jvV7:>Ǹq%~][OM۷Ўؿduˣ9[SKK__^ޱv8RO0TƮ?Dpd٫_4G?VM~QyvFX*4'jGK{N>aF%oɒ}JOnHVqG]|PLm,ETܢٍGv51Oi\>zИ>뿶=4ZNTev\9txznW0?@ٶ,}}iT&% 8fǛ5v1Ѣ] F8wr7CoجVVr`or5בYY+@]xNC[#]$0+f܂Cܨs`C_3hߠs>|qbGK'ZN3u1Q´ڲW?xQ;-Ŏ{?d#^ ?}M2ԪkY߿ttL2>D lh9 =/P;7dR]}MtT7S1u_Qݮ,qָt6ۣ*8gTit^bFܒUT*)S% ʍYL;.˧[O7Zk7PlelYʘ{Y:vrBG.TglW,~IՅ8nCG3](!<7~ƎN׫ՅYQ{P97ֆ{^vnERQզ.#Si [mVX YK8]%[O6t4II7P ,eL̂ԅN˯>H_ҳJ.ch $q3"&A~ך k@8?/QG/?]VkNqሥ7b\An| #pЯRDͿꁆk;/+? MHxLܬ`"%e@]Ev2uT.ЖP8W>_1΁^/@A%;:_*ĔE&>nW]:?nt0dJŬ{x`hml9koS501sv b*bMRD⧍QYA"'N˾zC&̎5WOG-zw(E 3w]=m +/@]eCK+ M!GRmJh/@h lumV}] 1Q裗 B/p‘4HUx)z"Sڨj#‹8 Wo_;⮇g7:f3nGRxbo3z?,=z^+NjKt5NNTE3j#fO/\ "Mq A32:i΄ȩ)u*j ~RC$U_5st^9+;ݹvU;gZls`P$'yQpp[DŽ#35}Nd\C\ 쎙Li՛DD:htLx]ظ3ΛN\![x|,.%d IDAT`Gƚ4/2IJW>6uuv^;_^3b~φEGNgQ2ld{ys5 _ 7p|L`+cMgOrW>5g컆0|d:D#d**ImYR6n6鷭ʙId fKUzM[^%f k5B'skBXp4s YMR* h-=:AhNL<1{xDyV\9Sv`+bLZyT;갲٬-G+f,职˟w\ ߣ8mwH :+L#7 (uyX@tTUIG+3^rt|Zja)$!Q(lU-VHLqجc;it2 /CgЅ?ͬUkJ.n1j Ѡң'r<'$A2 6Ğx#1a2Shf4 4J2Wу|~rO#R1at K72ۗ8_nb¡zƽ? $AH,j8Oy}T`}X{JĴ@WY(?_կN^-$\MZ0CVKv/ƿc!;l8H88slU~6j:)lnWYQݫ2k/dVoŨjg#14Դ;p׃Q#40bo!HJ䌏ȝNelGH$ٸ Wc"NmyQݏܸ]% GYkf.Z-KO&֬F:4k\5Fu;+"CQi3PG3 s~RZ\xBٸ?1M+;bnwnNKyCMcvL2Z^.$ a+cDcRE-ʩw@oQOJw2uk: )Fy_Lx6uz_ÒRForYw^(% ^ ӥ,%.oT9:Q膽M'&AWUIb1u^>QگW/;&QWu{Z;4iHfހ2탧2n7t~}/aH F7ht0J U+PqΤkōOL $'rhOV`ֹy"Ht`Y*9}ʍO=~}c~-&!qOBaʣh~(Hztl,o(O D7|ƉKeOff65]۴wjaȔ`5.֚rȘY]?Cr¬ &SG &.Hݨj%mOfN {v'ZN޾&w(bԫ_UGMceDU:_Ȋ ^O5fҪ{kl?!-[ZJqiiPH+”lO2$ !\ gcqTjwK{σG0JrBfIm1+qSmkovC/la7l”R}kE,7 4/DV$my9j--L9c1+"RWSV2؝[Aw%_͔*31#_> `qBTuL 6&= 9˹- $p{7Ol 2RG`zV>cَlJZ?9ӧvZn*FbbuǛnNxYH=ؐO@HJ2Gwl@'I-MHY&L!tdw^zd4& mMֆEF$Si}; M(!3X+GtUYVozŏ8)pluMv)SF[ܸ䎋d62 [_uDo>t:JK4`iˆU]px^z`' )SFͽ'㹿s;.g}u G狇j}OƳ&wbPNlLm566=T{y)UFξ;sbG.CBeiBqcG)r޽$ s7EkSֺ̾`|04TStqSRr沔e$s,CdrJ ;LCω!U(f.K;$͕SΧL-&D CB>ԴYx@/pá4x)9ݕBA8 ×RrBh B0Dņo9h9?SfG$fݠj[-ܭu/}yhKiWV6"wZ4gPU/3QA;ݻ؞ƶKpCs;3Ӹgmi(_XLƚUeM4ȝZ{/.QiNH]tI:fIM)?=RD4Ab]Kmjdlu΂ M-g~T3ڽdUۅcu{74f}WCT=kIX`1nUT- %0ޖM7ffZ.;vx\O1js(TW\]E=5NXd$H\D(p׎+g./ss(v ӗagjmCm?uW-'7 /_86 9䊺R_[s#u?MPy|LnؿF[^ۯy_kKesA"g-im{}͝W6^`qx`sOS鷭91 ֓ڛ5xp¨UwW52e ^)7t\̡fU}98G5jˮTvj26¤Uwה52er(/j9졾fu@j66ҤUk 퍎GC{U=~YE-v;dhVo:1r /ri~]Ui_Kٺ_fх.|d{w}I-771\e @9-GnG2Z;C{ФU;D^bV U~:V9g閣;LZuVSxj쳚M-Gw404=fDM5Ny+65+ Mӑ Ćzǧ0y mcgޛzl@uuf(B&R]Uvjwk ζiҩ{tV k?9_~ꘞr}e!?-an)':,8Og)AR|;65uWwoɨ¼?1f25?fwQ8\ ģf/*;COoWA/gsuɁhCƒjM T6O>qB]6!PLS9NZOb[Ljd1WNA7nc@lƍ'jY%=-#$?%[狄$JgɣlxZ5>"uSXd]Trb~hþM̈{L [+n8YLyTĤٵ3#$r#m&*W&zWn-eFZ氵j~D&Ff3;[Ff:Z>M 4W1m߾O"&ΕO8Dw^m!B.k>!S.}D6ܥ[Gaqw,A85&3)OFI]ئ.$Qi7!U,yD& +7$>{&If&v+f3]u[-}b̢d*sHd +*;..{֊0eQ3v(O+;oL SXz ~BHdnb }^f䒨{:"ɬxNHLתܣ8G兒Ly7La)1Id'wI \ &ht7) v79LJxT*[ZZX鄷Áo0DAR:AӺo ~Ay1/dܻ#`6 0:ѻ8$n.\Jpd_啯VeVoҞ~MMaVP?}䛟Fw İ\"Z*B_\)͋{'YOl^Gt_iZ^n?Tׂ߮ zn@q};" `ԴY3nk7}Eaq=7XPlZI k0'Ig.:>gy  U!FP V#RHzqzO,'eDEѸ !aۛg6,a讫&P Wf|M`Ţl4N׃,6xjG!2Q ljsnjTO9,'/B~Bv %c dad]/rB3!T~-C4n—plTU߯)$0Xuimk۵֬S;>jN8Up 54 ( +D/$[Ffċi~9C;/.@fhD^okPE-W&X+ֽ6I_[q ^*njW;Gv"0| Ǵ#&k7*Z#oDJ '!1¸x};8hJn­| /z*/{%pAK[C?OJ%nӤ%{Qj`C>)NmREQ/'&$#຋0smuRM!GÔo=)a%)>t˓2Õ=Im7'?CH0拱a0. -c)zSuycO HܯenBk+|C=,B;.$p b'$|cV!5Bs# KcA@?[aX F>D4 f0Zߌ(\[$%{ DPl0;Ȉ<8=IλbnՍͷr"$pY}s:^bB 5Bw əq%HK=NFy֮ .ɜ+Y_Bx, pZK\M6 iov\#gvM #`P^ƻ[v3 *'`tYSLO^Fi"Wwfĵ藯c ze d^g!B'\Ї7 D@o@zJVh38Rˌ݈%*!AR—uOe}}} ,h_.B>׳S5(& [c!$Px7ܡٰHXWB$[F (5ݖihV*dG(R#>STNA<8-å .)0: jV|ގ P%a4;{Dtc1n/L&|}VZ};p 藯@RB #hc|簎 #Y}+|P .LBe&8 pCfn;|HH/YFqmZ3 6@B5~;Cpb&$PH&;VAx6pCF5aI%EWgN$h-2 HVȻA#K(2JQ{IM{uB"l±/ n㷠 D1f@I}[\e_0n}ڂ%awvāmlE^h{;_xݷāo^p{p4`k#M]gʘޫ;=t_{ Nd%x@OSm F'.U0}2c?" : }!^v&3VJ&w'*38$&L`-#) ]RŸ핔x$%煞 ")|Pg8 zu-?2DRu/}9KU*Wzjn;T67n.2kεi>C nFϘώ3誷@! IDATR?fZ 4'/~}RIkZ!v0v"bAҾ{\[hG #&倩(Œl&6a3㷌 {ak @;` YuIQJf.R]n|.ai|c_xmO47pdPh 2(4ϙG3!? ``V|Wߣ7q$pH0T@[۩ 7sX:ԇa+ Xpl^+t N o}7!1%@BAwud]Glle40%#W>Q'䌸+PY?-ޖsǺʊL:IM@ #O/Qyݴ m0}2c?"j}R"q׏j,!]@`cAn#) ]RŸ5 $JJP<XB;3vfp$ ݭ6y]yL!$@j+,yT̼elETWei:N?BN4:X^{7&V6 ;"ðu+n~ ϶aSG('ArCa6ؽ=@|Y 8fx]0g@561NXPB46!]-s˓a@DIB'% ljpY6h n!m,$* oRHQ.$_&$b|Dȸj[/$_]\H%@<9p=m>oe0ZG05Aːp 2M7ë x;E%aqJJ`Ļ0@w7Aa ňORWa QzV%чPF?_R"|3s-A@haA(_ՊŤ5|blX=ôD%$0HJ`p=%$\aw(![E*BHnCfa0 ׎6zFM6Ah 0}P?c)j>0WϻɠhK3af20M6Xgg05c|#81igC!  @ t'%PU͈E0lfbwgw! w1|!+63ÕxBAqqh+t!*'\Ї7C;'y ; _ca݈%*!AR"<x4˷1cFzvJydƢ>, ;7  bw3~  BK "1v}'xԄA{V*˂rBۅ89-~i&̌X6;"l,!i5M+>hO+8 )iܜ_ZxW =n}ƢzxE𻛪dV# N w1|!+#bJ fM%AKhi "Cp&J i3M+ &gGP(kcD 1ƻa Guv aDGD4:Q!p/iXȫEC:^q!@ܒ"ľR #la؝#W ܡ.ݘĉ 1'a1_"0#}R`GgPh8yz܉4"gCH97GF;Mf rS#ATh#ي;92 {ڈ^q 1_"pAih"[㮊ȜH&[0gQ=nWzP1om}{`.4< ] N'z`1_"FXag062?" 6D Rv'ȩyz<99u p hwI~DFI q b]-)1O+)ATCHJzFeAhfn(#aM1|b #<u [ 5%_0D8#qwR:86eɑD8a C53qpU _ F#׀;q/|b,$p[bwO _?R4~'O#jB܅&Ǚ#O w;8QO&/C x!0_KC*ՑƤD[3p/gj)~/'11` s$'%R@LפD?S![Rb0i 6F D$%pC 43~7fAKcD 1V?w;}Ŀ-aĿMiǵ ^1FC s%(~Zvt؀ )/XԻ߄0V%.CD1`d&p͈j0>!XU kVaJq,/C A@k`̱M8M!O{x쯄uXqǹ7C7)rwMݳ:"E)m2Kx~R""0%|<0I#Kz2KGK~=DlwS98$% C.iʓܾi6zkV?;AAH^0Gj0>x x8j}ݑ/i J,1'M8O M؁}ĿMi&@7;ْUV2Ƽ#"y'&CA[0 wfD5a+~h 1_"AI ,F݄gwSDr;ǝP NMJ!nf&&)Q4$ AIMݳ:"E)m2Kx걇0>_R"z1sRq!ݑ{%*Htw71O?"XjᐔaˑQ?`Vw<9` +_~[j"*Ā^!/b&g#q [H`nCC">" C=FFM J\\\1_gZ1 fYtrG5iTC&Wœ8[i9S:y&zT~6Ba'$dԑd  P;@e*:Q6n7F֪񡵾BУ @" qMD2JOʒ*T/P[S,ndOME"SzNR["9wRUݗs8wԞj`WԧRC Q s=) N}/øz@0"*_pXKà6Յnj5L\n s}m^WZ߿kԇq$/&GGy⁙FͮnZeoC(;)KqbTV77υݪ%3$H5Oˤ5B=PG"q䀕(ph۫? Z[c[mS, ~hP8y-5f:P+cU;5ma6!\;B3D|'uNy(/C x#1ޔEkf R2&\) 0`6w^;WSL`r$pHJ ˑk%y_պu'"6j3o n@޼P^Tjӯd9_kYqs$ mX+)l.kĐA :?.uҩQVm : veMp0]n:9QN IO9'LZ$ R*2Ôs&hwK%gl)oQ&7Ws]Ne0rd{VlyK/m~9鸩ڛyѮi0q٨`pEW~cW0E9KDvF4ؾ/n+_"XԌ5sU)ʭv7Ox_{g=d]m>׮na$ f/Fuى-GJ? 3^ςͮ߷^8*:O8k-խ $y;h>_[pN3YW?F wy)n G87˿x6鴅W8Ͽrb0 eJ\}ySWnۦva;X^<ſ" xqd}\Θ`Skخn{~k?X qd_k9ˆȦާ؂#˟ *mF4}&_LY+NH+h=uP[tɩUSLAf'^!SKGh%CʯQ:[$ U4&?yCdZ׸kky7迆W2yfZO]v::OtxGp7x9ُRK>`״2$)s.D;j{,©טknhL~҇)w\߻bOCGn୧^zXg>=kzY2S1ה@IIKzu7//ԩY2eq0h?sСieI$g'L_H"~ oPɽgU*x??;7o5Ga" e e7EjfT1w9'1=P+dueqT^U>~h>HV3U<ԴR܄EU-=9aB k}t\T*pܴkLrx?MZ0S$1NjILX kl*WJtd:62 4]G\Aޫna'RFMT.ZOAgNT u~NLXƒ,*,j;Ks*]Xn$5AAw?j,k(t/urzW;>dJ.c&(XrR]2j) f|=}EOVBbhaKwOTM˨Йq&R`mwcszx S \_(gK79a;7UW.<)Uv2h֕GCu@㮏QOB(+k'z C"=VP{K EqfH8~G<H{XƗYdt?2JUszoW[=d`%nI^>f*6h47%'a:6LZ T n3 \6k7md/C XA&#}|%]pϜĹK8T_8iXbh(Tm ԗЕ\9d@>\EfۻjGcy5akY" `)g-*S6S-?V}Lw_d{J3Us:_'˟qd/kT] ԗЕ$8$W&,yLv73 gàeKSe r'"c&*TUp`iO^6̋h P^;BuL_J5U6wٓD|>Ō\Efi8f秣z-j<,Fֆi< M4=)f,(Vsm}6g돎S?4zG&'uCqd+6R2-u j=OsTqbCYAgo}omB:ifo: ZfLUH~~i(Sե; Ϣ{33.`˓=6soˏ4≗Q<FPvnN}IS\b״6u:2?=ȵߺVxO8 A7a|09Is$/yako>m=VXk˚t*~eDWZj(B} cy!Kd%$}ߎ˝D:4- a|XM.6)E'/y}@eq5&ݟ%x<4 IDAT^o3w۸kk}lSk\ۨjo˝DaLU-Gs39ɥSRGtqm1z_]T;#n{RV=AS<]w5&_,R]w@"NqSѸ 2Z:fILc#'P,KMI۱ *ss")zMu7Ϧ<,xzI0rβj;r[n}79<֞c| =;#6PJH:u7u+㭵%^֠K ˦-v4&3VR;ֱT&"zKC,X;Ttmх"0W(Ku KXo1rT:cBujh8=n"~hlT[5ݖHsvɪ%P8|]P|AQ Z[ڸÌ_OM1|bNfd oYj[Nj=ygKn]Oe;uk47/-][dJ9[¬QxJeYpI:i:7K߿-m#s~`0s]/eһI Vkn^H] u]:^,nI; ̑xjR\NF[V<0epU~]Wa2:DѸ%i<-u Sf}W_gYՁt8P$;9g+9pjꝟ̝p\( E/w)K'L8dAg(>_˱ik6 3sƲ"]`_1'ߺtEW㧡׽з)K7gWZ~ܭ"aO,L2pw:k~4W$N^d%x ?M1c:R)Kq:*4ڞpm="@TzT]$$ BΤJ'D}sW<~'ʋU/OA S1gJ`,/uk5:;!TQlN*uѝLvr|Ҁ A+LjުnN걙9㸉i(C9=U^P9`W7|h%OW Uq#ǫthG/\xvs2nc62Fď|dN'?ݜ smy/yHdhTSY|BSEp8qޔ#ߺ:*k)K^` ܤtK]9xndOfO7j|o]ND!ʛ[-GwLz*c-O!qjK;A4n?~Y+з^~NC{?&~u$TK NWp)T&v9|#׆vc1`ʔ`m |'n7؜xC/?_LNpi^֕{&Ox7 *R_nv5rhZyw*caHpTiֆ >]_tZ_V@vQ@K >_|AVL[C')u$ ARx6[s7p!+XEaA_jb˓)}&وJ!ؚ*{^:fd@#۔ &~ƘC}^[}7}zyyy=nk]/`6`)Sm:-YV?AYyS=&C 5Z}K?Z{9F8rBǩnt5T[ 4@8zJqcSLv[|NrWcjLRnIx\c;;}<)nB%b!Z?3|Ijɲ3Z>t%7dSf1ER~r&](d˔ >_;g'UƚO_6H}g6#7@ JcҗސMIy@Ȗ) ݱ:ysmߚWG{fT#ݪ (yg]^{-S[NP**x7L%~{JΞG3S\oߑ'L*O﵃@IU q*|%-U(,gʯC#~ SGodqN#~dI9KRzm8)q]:ut+ 3%\U$~_V z=_{սߜT*tGs^GH4~#NQ*i|K,8Q]/ytѝZαWHֆ 0D3؊oUhMJֺ Gj޿NK .K}%s̔$x&ANQYѝ0jN|U)'{?S*6Va R\xW!Bo;G|U_)K/fJ䶦ꆝΉUO GN4^lH4T%9!P˩SnNrj=KI;u akD= Jnj6ܮ#Qw4>*U%4~1C$Lo8qcM\q7*6'9ـ jk}b޺z.߳#St;WO07^RS"=.)֚R*%>w Ŧk&y@-gS0r[sU˞O!(L$y&;420D#a})z}na$Odkrq 7U_r]tR֔z0c#{-)(ׯP;  x ֕1Vxfx T뚹"vd} } ^v*uC^O>>: *^rt^KTWٶ:M{=}DX]jooN[ ='t/ T6u#lGC!҂E46!u\-S2׵EWftI(Lf6+@W諄1huS=O˦qx$rU'R[) W9p\SF1?Kψ(s]:y~j6ӱPslj)Lo5eT! )&Ʋ*avďd*/04x m*/TcyaT.5F U¬1;TQh*+;%%U}okghXMNm;f A>QTc1nZ+i#ښkyi#eG63]zͨ_5i#{(jri{^s Q95g&xC]%ggSӢZ7%CMcqRíC( 4 jgSӪ\Ies#US27jR#/d.u&25PҏcxnCg3o=$DrR:JNRf@vqS@s[JmN[HP9/Htc\6ͅ#%=9>"RlNbۤ A18#7Nynj(Gf%!"2e8ckpxt~<VЄbkUqWK rZknYn FzՐ)'Z7ى?T:$fPX|,M(1]1 cG1_"{=7ۺ۴[kJO4_2a:*-˟Y`;?%bdCeu9] $Q[j e wM~^:KPنۭM#;ELRﶚVDJ^w--|d3~Oɤ2dcUt4l8TW4Le]Mw(!ɳ47.n]M$HI V7zpWGƅS?/-ڥnmxR_&}iàED"%_t:Z;o^hط%eC/ QvX~?@n;l쏻BW ռ>Ѫ+r*Plڙ#9 Zya ɟyPzS2qFd)qw;Ypq J t%mOZBw`xttTYr0^o/:\MAE 7Z{TYJ3'jmpy@P/l9[[xe6konߤ$ ]zSUIˉ݁,̮n6::wD").o=W}M[tж;zOk{^b:ѓ̵eBј) H$Ŭmwi3~hβ:.h״.ٞ)7nr'YjLm𹜭v[\&簡?G ϑ'o?r=_M)Wu<6s߹%Z]w2i.C~akCP(.\0WDWkиA.'Q?M_IZ||s({m *0ER\Y21s*^h;eҹ&}e3ăL̡i R1,BIJɽFKm!P*:5 >Tv3kAzî>Z{;qɣX ds9 E5%6}AF۬{=hV|貾 (=H*9@ >?D5J2eyh>M{/\ΐMe1^$gc.a'ewx H{v^8z©m7W,I$tsuO:u:NJ:X s'k`+R) s*,5% >쁮ZTԶ1 @LќP74 | A6{AYﵙW}NG*㿻ibö A,rm11Dq#ƎًtU?Ў׊8rK@a0 /l+ǫErm# _8_ܪ}*Gj{[9K*7x/Lz=%[" ocU~! 9&h:3i_v%QL[p;+ze18|ɸ){^N^k^JF@$lg%2?pX?&Q(q#$_^qSU~/*?1E2ռd:C}xoY ʌN֧|a#7V78DŽ kvY24y¬k:(wa`.#ƣ;y)IIC1i;{D9 ɸi {7sjP]N5O4)SCTsWx溝a>kРmagoT <1.> {]z? D{)f/A'ܻn秷ۼS7v ^:en|Č6 TuݿO?flʜmPQϼXP^F5WN5ɒ)Sk)FzReM⼩Jةm'.c/0Lqw{n˨#Dr')죝)IKKy!WyykFOk2|3:/rlyRule 6R2en돻O|¬ɤY{(/) d\S@b֓>&H$H" `T^$L Rnd*乁ߧ$4~'3$\ѓ)4FCK*[M΢0 (8O(,N $Y=_JI~o;^oJ2 '1=cK:XLHt| (TAv^擯$Mٲ@a0œ H$Ѥٺ' mkbɓЗ%Df Hq!$.ї94D )=LQ4kg8=/V^8 >/KJ-2E*M2eNJV‘)4z祣'Hd*KI̤0YþihFRjjꐕb(A*,q/*bPHċ־'Q\ Î(B( tTW+g,<!$) qHey셈nrJŴ7 .Q?iǼ+ 9J^W~/Ɂ!Zb(?ʋ8DR"B"cW#/2YhvYڭ˒_x&O1NoW]9AcQ[e?;K(mu 2Si0h{<@O |nBes :T~px%nƝ9l4~|A^B Ks>wT~GL9vtU!їZ K̗!APb%GRb(|#wQ8CMϑ0WLAqc!V-e2Hƅ1O:w,UZDt*( ^~"?;D72F\M (;LˑdJ[k"d*.WXjBj8qf ɻw0 IDAT:D&T7Z4~z#8j^JVRxD ܑ  P7oAq}?Π D Sidu@~:}[o˛‘eֻێDb?UG""Aq!Ev\>G SXq0gLo#n6ﶚ;.1Lchr {CBs¬уC~ܛk$6:j6tXA2"2ҦwH@b+&2_1#Q]ݒ>7<faPښjH [VM 5eM+{unZ.c̗!L n!*)q,.*EnVv`MJ΂Kk7E҇+XK"1nA@>"ſÄ]N[XR▦)M?iYlƌAI !YIJYW>sf'||гF| ~! ?ʰ#kcw$›VnOĶDklZ!‚M+CE!$졍A;%D 14Seջ|a> u`3"elﵭKΑޚs`]&#8mb2M Մa|B]'Fw5bD 1D &K<n;XXk B'D,)a` tx 㽀#n*z!*q%"/C Qkz 컛0 4v7%I#CR4Ak`G&y#+7d$).1HH`.5^$vG&lwws(:Ĝh#bػ1@C41_""qQI |BQ3v7ӻ(.ҘHDH }Mݳ&B:ZqdTٗcQa}DbXqzcD 1DSF<&OQ%R ~Xk+藑xUkKڑ dE4et$qak< wh(vGFسa᛭kB  (cD 1 v71I\+LN]Lp=Vӄ}GH`fh!"\ \رTB D rN l}Z!X"rvOiZa%V Vo$Bo$c0Ne//lطE>}^w;|u-~xj#D+%MGwo]9L] ﹯|or'`0'3wMڢ_]^{W\\VW{s\N@2܎5(.wqwԣ %p$*,Mn0j @=7!{c`ŃIaz[Fr5[vr%uY;?iMAV.^SMAVN d(VS.~ƨtpe_w8{@}rhv㮏l [ {e!KU/=w ¦ݟt5V3aj/gg+/m G/B}1@0naUɮnu,CJ8 ZKJXMc`T␔\ڡi~ƺҲ/rz4h]VnbZdF LqyGt!thx)c,M+TДNeB28n8u;>NY75 ƽ_!^ψڻhbJk~6t~6ڕ:>I^Q3 ݑ "w'\Z>nh %b`q/ MW~/#zVWr}1Qj7boPؗ4'37.Jo}or$]ʁAbF#a)U]Ecѿn^ej'<;PZWI< =Ô) B%>CW,֦*'Ο(+t(!=hO+ۗ4iSa׍q(9r|bˈdl'syagS&]`񇱡}Un z}POH./ 7ӑG PqHh]C1RW=q+E1RGC!.G2`%q'\bN?)1_"~~ܫyi2q9c2= S\&%"i o:#O[Mv޼h״S۟th;% ?5c%間lyh 1-OL]PȱHճ;lHx]On'Aiu*K@2nJ)tFݾ-Wy©]m>׮na$ fO"7YpNa0Y3whfM΂+y_Y#>ɗPA͵smg;l>W^[ֆ*?N?C5oB]}k>iq>\;vS͖+{At%r}pk`ԳoZtZ5d妭H g,C>#^`Սm;.j'σW[sݸSr!m1^ǿO0i~idLe!3.z>7mI zP^zbJg&/zF]LU%@"S>ޙSh7$rR[F+,mq䥭Dp!]eNM3)mg9?<ܯ|"勵Sܺ]fJN\WNE)f/m=TYw sRW>Nes|v{_w^;Sg MxyA4WNv^=kX2Uu`W7im"9i#ER@Np 4`>FϻMKDϝ.B+:r5,Rp kt AΫAud6y\aH^xӾw@0blƗx%ON=c,n?sn83T4g<ˀ.%U*d"gINZ[qU7FSUAS4^Դx\'GM(;5m8x,=I$R-ګ'G WwޗhSӖ~oL^)nD0t;lljEgI6e&?M6}1*U_t$i#PC*cKd<08:ZڎRlyrz<0W8wةn8+殪!'1c1Kʌ ݍ3nC'S] ݍ}S"w: 9A MQ.|@w1 .xqCe.!S\暒-d;~4앚?ʮ:BT]㮏ik Qh!#nn?u4 nTd2ͳs!'^KceݵnC'C"禍jL*Tf\= ;ߧ EfÑhdǍ'a`-:/J S,hn=٥mO;K6 u6G[(I 1Ā?p݄}ًTwKն<*ZT`[Y#y=)g-*S6S-?tҩek*7@eW= N*c&~jn7li>҉Nj eU/EMLk@d>P_>d}5ζ-R$-^ $ W:EM\U6ӑxm>3q~o?*t~7idZnfICgdmx:Пt\=]R2u  ڐzcGuxU3Ki2%`*ow\=Sy)֖^ZZO\98Ǿe1DK'ƾ6PX,kc|B0)K6ƹEjo)%Yc1}iÁ͙M>4Ѱ_T̼T^ذ썿jol;/ߡ^AhoK\N5uW{Swt^;$M9w\Yk$):5YK:uLv@}5O2bSEq7[lyRpϩ8IPl,QIA0QϿd:#~t~џM}¬1@FÞ>]iEnKY](2UlgȒ'9ռՊY:u/LvXza窅p?iBKϭ/.! c]l9M!~rh=+6Q|5C8r|Jl TviߗkKu5QԤh.KZ&Y`%$j.OZ8M T }K\_R,}I\LzhK"}E{w;Ea֠~V1A2ծnTWyk8?2tvkYDݢ>w /&^!~Szk2-ouZIż]͵'wvł@{Cҍt~qOʒ% /'Ju7uCC$]Vf 4ԇ^ r$FOm۬ DXAgu#Oqw/C w cJ^4#s:*'P$7e+w3/-}GնYq^|<L֗ʊP_Ў+\UK3kawO G{m*Ў="NX^4dc&ɧ\eX^|`R J}w`Ǖ[J *z/TVDɲ"ˑIK'ėK.jIJ:e%S") @ :]Ro~H{of3ޛGZ6"s˳;6[)ki +m d3;-g?+)o5d*,vڼ^37=jXO]] nf^¼a4೴'Ggc${dB%vPƝy'M3)45`/|[q@tnچ46hLP#u֑A0};:Ccq0YeFŨ*KjUfelUV(}O}(H,^孧۞ps\ &+K45_œf9ǙW|aVnA9%ch/=zg$wLb&͊ x)}%j쬒^ɤ1Nz@; yxږqquRe,ZęN=#͡@w^127a*g5ե2X &r/c:?%pbz2oFek)SU<%@L̸9y+u;AmF8K(J[{~y@鸙v,60̷ ,Q(!o-u2/HnwqR6[ K6!6KYiD߈>AoEOp^2g+C33un8%۰Kgj]]-<-[Kr'O7!YWHPk{@⒍.S탦SrUEO>"^[/O@+U%X4*}c8t]*HX9n2~%,Ǡ3'!Y__o(KDO+܄F۟ItNaD]V| g{nHX/OhUW*_denBܾ?2xiQb]uIU,Νv@ MV@םAjPͮ*; ܟSpjj}eMSזNc֪OTAS~,[-dKnP'.}($u# ͠Nc֨DG^7uv=&e/ANb5^ԖAHg]dfƢU{ 2? =Q.{tWbfU?3qnPMMG>k>frds¬UW<۞73OUPd$&wf܌-,RYhrWIց~'*;lmCe%T}iq)d5E7zP[#O\r֒uגu_GҴ%`Pg7nre(QE{fL73/{W}OrN-?o=gDod͉[Oaw?f\ZNi;Ep-L]c0g0k{-a3mMuݯz1 k-:u+(ʙ!?ȬRp$Ab.`&P]Qnjc0;2r\B jW yc Ei M6!:wxB:7̉<0kv`齝9K6 '^:T~for Wob3TMVƬ׸~ [t*AE7[ fu û_6QUzڢZjuD\if?k5aF/L.W` v/?YeYlY~FN[iqV'>enS?b Tah<]MqUvMWW:nr67_%&'%++?|'f+~缄5dM}eGeG6v8V6΀唗~q Z^&9#v%RVo%4 U՟Mef*>,fOP&3@c2 ~5fO峍i~ `Kn,yfnTX]w| Wyq@]P2{1G,di-R!\ˡaj٢Ӷ|,~B9xRf v_s%RMq$ pLFOe5Alyvykrw?0W\{JvX$ֵ|_b L:;^1tqEmʢ) M{E6u38|^rveA&2`E@@Ē>mωs|!wq8ee1lQ,'PVxN\bEbb\jHw7٭#a%t.D]WFsbE ]ykV7&9ީˋ|j\Ֆ٨ ^w lsq ,X,mM~9UuY`2З1qm h#a0vmz&*c'p>ՠo^]ݷ.2?-ge>=p;L-+W/MYW(L{F+(&+K@L.%W9#K&cKK߰%xAJ|YHYq?vF2(jjFUꚪ( J MCU}00[f}5tOwTj[OWt-h\ .#QST{;kf3xOڠ*m9Ck+h|r]QrkxΕ*Ywj0,um~˹p%IVeyQp8k-vfWMG?{XQ"h>u@ڨ~r73$zHS}o_c!a)^頂}pS~@WNSlu%~ޢBeكKkY◝Ntw(sU3=9dR):uV%ۛ5emb&LS?+g}Y=4?xF]mUxBauDANɺuUW@[}6ʱֺAR\kHitFU]׎Z}Sدە%+5J^ztf2tSr<`0:1EP}DH EB*VmF3b~B]~Ϣ蛫5% ~Fw];nG.Q!Tu+Y[Unu_;1UZ;6ы9.o}oᙾL}rmut$"&Ȝ-]⛆&Y)M=^RyʎxŤ%.yotO`eힿ2)/&wHf.j?_ [ 601I(~pVŎ',X I,(/?z/191oMS']xA\;oxq܆N~7#FsV3M=req0?NOc;yc0)Qh YhYa)se6 fʜys[}E;m>vsOO`p~K *:wN\i:[S!OO܁edx?{3R\,HasD +̃?IX E}@~$uoF> rO N%>šKɫ x׵ J[=<suY枅@Gp#)ASMMꑶry`"8jsF'.?oE`e,(Մ%20~u((ފ$x&8X~Pj_[D,?P$n"p74Ay  A nXT:8k\X ݡ 5jUqHЍXbGrԼ6~B=T8tmf&&ܜ1EnA'*TQeu!`;CG_5! @ɍ| b/y@ + yI3hLvfRt]h1 [c'W,jlڰ!bsϽ10Q~k}[ no2Fu$@ 75I ~Y(JJD7 Xp¨\yDZY u$1Aچln.#Ha|'3hySȗ@@ b#qG&7fmcMaE<{JD}@S'%pI:A]sm畓AtVδlf1+ogm{3E I 6XQ ۽$ ]<P<:n1TGG'.[{)wnjcdNLx8w$n",AQ?3y7f(bV%~:|f 9%y 3.< 'W/A|ǻr  FRGfƦSq^?3e(Ea\*| /!@*| Z~~~} pF'KྙpV++HF&6)z^D8/EXJ #AcHጄ#a!őpECj ~Yp$MC#Y%!HG<&HV(f!2I#%HFtM LHFwBcLRh4$E񭓯4E=ߣM Bom4 Gm&j p$XL/#t3X] &1ȗ@@w4z >eHFH|ߑHPfR0.QT1d.Ppͨ(BDžP; @"_ZP '13:D.q LG/@"ngMt#ZudD|ꉇ&>^R"r1kRp汈 _!|Pe |19>BJr$HHJHGcilbQU*Hx8쾨qQܖ1O*Q&Ñ `h6|D;T6pVAGoF]F@^# N7Q1R&"I] ''.eFTKO{ KCw/m Wx0v"MBȐ!U:E#Q\/+X.+@Ʋ(/@™Gq)#DHtӸE61fb0rI3=RRX4=kHtHe_w&>QQ/FtM LMf +%(U#RO759X_i> _~̡7_h={g߫uMӱ=Fpcw+|dKS;?4h&~Čw-B;^@p$Z~H_!rdSrSL>2 ֍vh#5.EZ5{0,s6"Dyh #l%F5::ZI Jok L@|c@ 6M$_yj L Q%h)-; !4Q*v*x-+h)1Ey*|z~@@ wN^x-;"Tsz_Y XWc& zT?Q`&d^i3?CKA|D0Lܳ !M܉ IFN7XՊ" ~f@@ Tmn(0cx)lMS6́V8WՌ ;Sl5G37? ].7Wfl}[c=\{haSU}54:^#4[ d)s4MUQ*@كiItS{uaZNKrW¼Nv\A-4:b'q+%^DTv.;F|tO|܉Gc0LGT>n5*5ե.~hoMppWW=ǗpAc'9y-*mZ_hj8Iڭ^b_70e+$oXQ9K>~3:;7v9K<~paZ:Ew6`P1kUq\5SfKy i+0 Y|tW|fU?^ -[Pjlj/{kZ@Gsiw& gt0L2{] xz~s_OTWY쑑Ovzߠ/ nh*,:Nm 5 eԸ#_H;6H(٧(U;tA&@&@&Ig䀊Mlxkي9/Af+?IMbf48lo(K]KML&i&u8'>>Ux~*Νnx4vm=38ܚ9S K{?gIǥc@g3'ʜB?V _G'~݅,u>c3$?qt\>>U U.6$=`j7[3wGgMd4OV%%<ʋ-s :KLN̬_9f2xvOb SV4SU0옸@̾K S%w, (h'`&( ҙ̜j>}yEdz:x 2AJ ~νVKNJ͕$b򡫙!fbƮ2&-Îs@]pނP$Ցl 0uT"ȡm<^Up$"d.IMhMA ! IDATX"h>_ڨ*m9s0U}w >շ6*ˋ|z qteY@W𢮩%7Zf3O׷9 8jÕ$ [EF¹lݫͧU Vsh0,u͖G:+8MY^xtwE}=ASjO[_9Mmzz^m?1 KYvH獳E_ߓi$`;zo%BUyd_8զ(6 ZmzֳM*Y-i5 p) n9$Y(pOZ"ƉAe__ݦ#VYl d6_R~󜡧CQ\z ;1 cFEctz۹CMڲKGu0يMu8kT{ՅϿMG9FLHp"5e @BdԏEQm+pM 먒qIgqB@ p\;av(o:W]4U}]%';&V|CKWSl55{ \"jxoJ}%?)Ut]jf,H[]w<7'.!~Vi=I)Lˊapy)kՅ3SVnR 4PF}|0=;ize]g1&*"")L̃$}+|I;JER;4" 3wcF-ā2oP q7'7222³4R\.`þ+^%aL8-DH xWHjBr42yǸ(1^%|5Y~YrKRj6jfg8clo-(%vd%(k%#q)a cY!'>F>#Qa": 71 TQP_݀8! %D5R닔kt ]s 9E 3vPLqdf[jGB{/6f{ &siA#A\/ iq$"$D鈇CI"C}DZ6H:`dS| A#0h H %I#akdh:ǬQIJc-wC4~8)Gsx{hdDk{~}>| n"9hH Gu";O7@<bM"?,,l+Eq?]u͵WO:r:9].,fḘGNRGʐY}wvkGZ .QT1d.Ppͨ(B-ٓQ#] c | xCd&%MAN7SLaR"8SO[ԽT[T,)A0I i1OJD4I0r5I0BkR Τz^|<Q+;8UCᯘJG"0,B{6>T{GŸ)_3G"2?cHϑ ,1HwsV+@cf5I% 6#t !Q , U]_QU| 䶣 c>@Bؠ*)AN0bf&0ZȄwReAQ,%%"ngMË/)A 2 >CT[G/)5)835)YI @B*H4ƧX'ɛ#$H aKˑ sFvÑdEdyx:W5F;bg53 ?WVڈ a'qDub(jM'WIENDB`swappy-1.5.1/example/000077500000000000000000000000001433652042100144745ustar00rootroot00000000000000swappy-1.5.1/example/config000066400000000000000000000001171433652042100156630ustar00rootroot00000000000000[Default] save_dir=$HOME/Desktop line_size=5 text_size=20 text_font=sans-serif swappy-1.5.1/include/000077500000000000000000000000001433652042100144645ustar00rootroot00000000000000swappy-1.5.1/include/algebra.h000066400000000000000000000003541433652042100162340ustar00rootroot00000000000000#pragma once #include struct gaussian_kernel { gdouble *kernel; gint size; gdouble sigma; gdouble sum; }; struct gaussian_kernel *gaussian_kernel(gint width, gdouble sigma); void gaussian_kernel_free(gpointer data); swappy-1.5.1/include/application.h000066400000000000000000000060701433652042100171430ustar00rootroot00000000000000#pragma once #include "swappy.h" bool application_init(struct swappy_state *state); int application_run(struct swappy_state *state); void application_finish(struct swappy_state *state); /* Glade signals */ void window_keypress_handler(GtkWidget *widget, GdkEventKey *event, struct swappy_state *state); gboolean window_delete_handler(GtkWidget *widget, GdkEvent *event, struct swappy_state *state); void pane_toggled_handler(GtkWidget *widget, struct swappy_state *state); void undo_clicked_handler(GtkWidget *widget, struct swappy_state *state); void redo_clicked_handler(GtkWidget *widget, struct swappy_state *state); gboolean draw_area_handler(GtkWidget *widget, cairo_t *cr, struct swappy_state *state); gboolean draw_area_configure_handler(GtkWidget *widget, GdkEventConfigure *event, struct swappy_state *state); void draw_area_button_press_handler(GtkWidget *widget, GdkEventButton *event, struct swappy_state *state); void draw_area_button_release_handler(GtkWidget *widget, GdkEventButton *event, struct swappy_state *state); void draw_area_motion_notify_handler(GtkWidget *widget, GdkEventMotion *event, struct swappy_state *state); void brush_clicked_handler(GtkWidget *widget, struct swappy_state *state); void text_clicked_handler(GtkWidget *widget, struct swappy_state *state); void rectangle_clicked_handler(GtkWidget *widget, struct swappy_state *state); void ellipse_clicked_handler(GtkWidget *widget, struct swappy_state *state); void arrow_clicked_handler(GtkWidget *widget, struct swappy_state *state); void blur_clicked_handler(GtkWidget *widget, struct swappy_state *state); void copy_clicked_handler(GtkWidget *widget, struct swappy_state *state); void save_clicked_handler(GtkWidget *widget, struct swappy_state *state); void clear_clicked_handler(GtkWidget *widget, struct swappy_state *state); void color_red_clicked_handler(GtkWidget *widget, struct swappy_state *state); void color_green_clicked_handler(GtkWidget *widget, struct swappy_state *state); void color_blue_clicked_handler(GtkWidget *widget, struct swappy_state *state); void color_custom_clicked_handler(GtkWidget *widget, struct swappy_state *state); void color_custom_color_set_handler(GtkWidget *widget, struct swappy_state *state); void stroke_size_decrease_handler(GtkWidget *widget, struct swappy_state *state); void stroke_size_reset_handler(GtkWidget *widget, struct swappy_state *state); void stroke_size_increase_handler(GtkWidget *widget, struct swappy_state *state); void text_size_decrease_handler(GtkWidget *widget, struct swappy_state *state); void text_size_reset_handler(GtkWidget *widget, struct swappy_state *state); void text_size_increase_handler(GtkWidget *widget, struct swappy_state *state); swappy-1.5.1/include/box.h000066400000000000000000000003071433652042100154250ustar00rootroot00000000000000#pragma once #include "swappy.h" bool box_parse(struct swappy_box *box, const char *str); bool is_empty_box(struct swappy_box *box); bool intersect_box(struct swappy_box *a, struct swappy_box *b); swappy-1.5.1/include/clipboard.h000066400000000000000000000001561433652042100165760ustar00rootroot00000000000000#pragma once #include "swappy.h" bool clipboard_copy_drawing_area_to_selection(struct swappy_state *state); swappy-1.5.1/include/config.h000066400000000000000000000007401433652042100161030ustar00rootroot00000000000000#include "swappy.h" #define CONFIG_LINE_SIZE_DEFAULT 5 #define CONFIG_TEXT_FONT_DEFAULT "sans-serif" #define CONFIG_TEXT_SIZE_DEFAULT 20 #define CONFIG_SHOW_PANEL_DEFAULT false #define CONFIG_SAVE_FILENAME_FORMAT_DEFAULT "swappy-%Y%m%d_%H%M%S.png" #define CONFIG_PAINT_MODE_DEFAULT SWAPPY_PAINT_MODE_BRUSH #define CONFIG_EARLY_EXIT_DEFAULT false #define CONFIG_FILL_SHAPE_DEFAULT false void config_load(struct swappy_state *state); void config_free(struct swappy_state *state); swappy-1.5.1/include/file.h000066400000000000000000000002021433652042100155460ustar00rootroot00000000000000#pragma once bool folder_exists(const char *path); bool file_exists(const char *path); char *file_dump_stdin_into_a_temp_file(); swappy-1.5.1/include/paint.h000066400000000000000000000013541433652042100157530ustar00rootroot00000000000000#pragma once #include #include "swappy.h" void paint_add_temporary(struct swappy_state *state, double x, double y, enum swappy_paint_type type); void paint_update_temporary_shape(struct swappy_state *state, double x, double y, gboolean is_control_pressed); void paint_update_temporary_text(struct swappy_state *state, GdkEventKey *event); void paint_update_temporary_text_clip(struct swappy_state *state, gdouble x, gdouble y); void paint_commit_temporary(struct swappy_state *state); void paint_free(gpointer data); void paint_free_all(struct swappy_state *state); void paint_free_list(GList **list); swappy-1.5.1/include/pixbuf.h000066400000000000000000000010541433652042100161320ustar00rootroot00000000000000#pragma once #include "swappy.h" GdkPixbuf *pixbuf_init_from_file(struct swappy_state *state); GdkPixbuf *pixbuf_get_from_state(struct swappy_state *state); void pixbuf_save_state_to_folder(GdkPixbuf *pixbuf, char *folder, char *filename_format); void pixbuf_save_to_file(GdkPixbuf *pixbuf, char *file); void pixbuf_save_to_stdout(GdkPixbuf *pixbuf); void pixbuf_scale_surface_from_widget(struct swappy_state *state, GtkWidget *widget); void pixbuf_free(struct swappy_state *state); swappy-1.5.1/include/render.h000066400000000000000000000001221433652042100161070ustar00rootroot00000000000000#pragma once #include "swappy.h" void render_state(struct swappy_state *state); swappy-1.5.1/include/swappy.h000066400000000000000000000066751433652042100161760ustar00rootroot00000000000000#pragma once #include #include #include #include #include #define MAX_PATH 4096 #define SWAPPY_LINE_SIZE_MIN 1 #define SWAPPY_LINE_SIZE_MAX 50 #define SWAPPY_TEXT_SIZE_MIN 10 #define SWAPPY_TEXT_SIZE_MAX 50 enum swappy_paint_type { SWAPPY_PAINT_MODE_BRUSH = 0, /* Brush mode to draw arbitrary shapes */ SWAPPY_PAINT_MODE_TEXT, /* Mode to draw texts */ SWAPPY_PAINT_MODE_RECTANGLE, /* Rectangle shapes */ SWAPPY_PAINT_MODE_ELLIPSE, /* Ellipse shapes */ SWAPPY_PAINT_MODE_ARROW, /* Arrow shapes */ SWAPPY_PAINT_MODE_BLUR, /* Blur mode */ }; enum swappy_paint_shape_operation { SWAPPY_PAINT_SHAPE_OPERATION_STROKE = 0, /* Used to stroke the shape */ SWAPPY_PAINT_SHAPE_OPERATION_FILL, /* Used to fill the shape */ }; enum swappy_text_mode { SWAPPY_TEXT_MODE_EDIT = 0, SWAPPY_TEXT_MODE_DONE, }; struct swappy_point { gdouble x; gdouble y; }; struct swappy_paint_text { double r; double g; double b; double a; double s; gchar *font; gchar *text; glong cursor; struct swappy_point from; struct swappy_point to; enum swappy_text_mode mode; }; struct swappy_paint_shape { double r; double g; double b; double a; double w; bool should_center_at_from; struct swappy_point from; struct swappy_point to; enum swappy_paint_type type; enum swappy_paint_shape_operation operation; }; struct swappy_paint_brush { double r; double g; double b; double a; double w; GList *points; }; struct swappy_paint_blur { struct swappy_point from; struct swappy_point to; cairo_surface_t *surface; }; struct swappy_paint { enum swappy_paint_type type; bool can_draw; bool is_committed; union { struct swappy_paint_brush brush; struct swappy_paint_shape shape; struct swappy_paint_text text; struct swappy_paint_blur blur; } content; }; struct swappy_box { int32_t x; int32_t y; int32_t width; int32_t height; }; struct swappy_state_settings { double r; double g; double b; double a; double w; double t; }; struct swappy_state_ui { gboolean panel_toggled; GtkWindow *window; GtkWidget *area; GtkToggleButton *panel_toggle_button; // Undo / Redo GtkButton *undo; GtkButton *redo; // Painting Area GtkBox *painting_box; GtkRadioButton *brush; GtkRadioButton *text; GtkRadioButton *rectangle; GtkRadioButton *ellipse; GtkRadioButton *arrow; GtkRadioButton *blur; GtkRadioButton *red; GtkRadioButton *green; GtkRadioButton *blue; GtkRadioButton *custom; GtkColorButton *color; GtkButton *line_size; GtkButton *text_size; GtkToggleButton *fill_shape; }; struct swappy_config { char *config_file; char *save_dir; char *save_filename_format; gint8 paint_mode; gboolean fill_shape; gboolean show_panel; guint32 line_size; guint32 text_size; char *text_font; gboolean early_exit; }; struct swappy_state { GtkApplication *app; struct swappy_state_ui *ui; struct swappy_config *config; GdkPixbuf *original_image; cairo_surface_t *original_image_surface; cairo_surface_t *rendering_surface; gdouble scaling_factor; enum swappy_paint_type mode; /* Options */ char *file_str; char *output_file; char *temp_file_str; struct swappy_box *window; struct swappy_box *geometry; GList *paints; GList *redo_paints; struct swappy_paint *temp_paint; struct swappy_state_settings settings; int argc; char **argv; }; swappy-1.5.1/include/util.h000066400000000000000000000003651433652042100156160ustar00rootroot00000000000000 #pragma once #include glong string_get_nb_bytes_until(gchar *str, glong until); gchar *string_remove_at(char *str, glong pos); gchar *string_insert_chars_at(gchar *str, gchar *chars, glong pos); void pixel_data_print(guint32 pixel); swappy-1.5.1/meson.build000066400000000000000000000041331433652042100152040ustar00rootroot00000000000000project( 'swappy', 'c', version: '1.5.1', license: 'MIT', meson_version: '>=0.48.0', default_options: [ 'c_std=c11', 'warning_level=2', 'werror=true', ], ) version = '"@0@"'.format(meson.project_version()) git = find_program('git', native: true, required: false) if git.found() git_commit = run_command([git, 'rev-parse', '--short', 'HEAD']) git_branch = run_command([git, 'rev-parse', '--abbrev-ref', 'HEAD']) if git_commit.returncode() == 0 and git_branch.returncode() == 0 version = '"@0@-@1@ (" __DATE__ ", branch \'@2@\')"'.format( meson.project_version(), git_commit.stdout().strip(), git_branch.stdout().strip(), ) endif endif add_project_arguments('-DSWAPPY_VERSION=@0@'.format(version), language: 'c') add_project_arguments('-Wno-unused-parameter', language: 'c') swappy_inc = include_directories('include') cc = meson.get_compiler('c') if cc.get_id() == 'clang' message('clang') add_global_arguments('-Wno-missing-field-initializers', language: 'c') endif cairo = dependency('cairo') pango = dependency('pango') math = cc.find_library('m') gtk = dependency('gtk+-3.0', version: '>=3.20.0') gio = dependency('gio-2.0') subdir('res') subdir('src/po') executable( 'swappy', swappy_resources, files([ 'src/main.c', 'src/algebra.c', 'src/application.c', 'src/box.c', 'src/config.c', 'src/clipboard.c', 'src/file.c', 'src/paint.c', 'src/pixbuf.c', 'src/render.c', 'src/util.c', ]), dependencies: [ cairo, pango, gio, gtk, math, ], link_args: '-rdynamic', include_directories: [swappy_inc], install: true, ) scdoc = find_program('scdoc', required: get_option('man-pages')) if scdoc.found() sh = find_program('sh') man_pages = ['swappy.1.scd'] mandir = get_option('mandir') foreach src : man_pages topic = src.split('.')[0] section = src.split('.')[1] output = '@0@.@1@'.format(topic, section) custom_target( output, input: src, output: output, command: [ sh, '-c', '@0@ < @INPUT@ > @1@'.format(scdoc.path(), output) ], install: true, install_dir: '@0@/man@1@'.format(mandir, section) ) endforeach endif swappy-1.5.1/meson_options.txt000066400000000000000000000001431433652042100164740ustar00rootroot00000000000000option('man-pages', type: 'feature', value: 'auto', description: 'Generate and install man pages') swappy-1.5.1/package.json000066400000000000000000000002471433652042100153320ustar00rootroot00000000000000{ "name": "swappy", "version": "1.5.1", "repository": { "type": "git", "url": "https://github.com/jtheoof/swappy.git" }, "author": "Jeremy Attali" } swappy-1.5.1/res/000077500000000000000000000000001433652042100136325ustar00rootroot00000000000000swappy-1.5.1/res/icons/000077500000000000000000000000001433652042100147455ustar00rootroot00000000000000swappy-1.5.1/res/icons/hicolor/000077500000000000000000000000001433652042100164045ustar00rootroot00000000000000swappy-1.5.1/res/icons/hicolor/scalable/000077500000000000000000000000001433652042100201525ustar00rootroot00000000000000swappy-1.5.1/res/icons/hicolor/scalable/apps/000077500000000000000000000000001433652042100211155ustar00rootroot00000000000000swappy-1.5.1/res/icons/hicolor/scalable/apps/swappy.svg000066400000000000000000000115151433652042100231640ustar00rootroot00000000000000 image/svg+xml swappy-1.5.1/res/meson.build000066400000000000000000000004521433652042100157750ustar00rootroot00000000000000# Import the gnome module and use a GNOME function to ensure that application # resources will be compiled. gnome = import('gnome') # Icons install_subdir('icons', install_dir: join_paths(get_option('datadir')), ) swappy_resources = gnome.compile_resources('swappy', 'swappy.gresource.xml' ) swappy-1.5.1/res/style/000077500000000000000000000000001433652042100147725ustar00rootroot00000000000000swappy-1.5.1/res/style/swappy.css000066400000000000000000000007161433652042100170330ustar00rootroot00000000000000.drawing .text-button { font-family: "FontAwesome 5 Free Solid"; padding: 4px; } .drawing .text-button radio, .color-box .text-button radio { padding: 0; } .color-box button { padding: 6px 10px; } .color-box image { border-radius: 50px; } .color-box .color-red image { background-color: rgb(255, 0, 0); } .color-box .color-green image { background-color: rgb(0, 255, 0); } .color-box .color-blue image { background-color: rgb(0, 0, 255); } swappy-1.5.1/res/swappy.glade000066400000000000000000001232751433652042100161650ustar00rootroot00000000000000 True False edit-redo-symbolic True False edit-undo-symbolic True False edit-delete-symbolic True False edit-copy-symbolic True False document-save-symbolic True False document-properties-symbolic True False zoom-in-symbolic True False zoom-in-symbolic True False zoom-in-symbolic True False zoom-out-symbolic True False zoom-out-symbolic True False False center False True False 100 80 True True False 10 10 10 10 vertical True False True True False B False True 0 True False T False True 1 True False R False True 2 True False O False True 3 True False A False True 4 True False D False True 5 False True 0 True False 15 6 True True False False True False False True 0 True False False False brush False True 1 True False False False brush False True 2 True False False False brush False True 3 True False False False brush False True 4 True False False False brush False True 5 False True 1 True False center 15 True False start baseline 10 True False False True center False True False False True 0 True False False True center False color-red-button True False False True 1 True False False True center False color-red-button True False False True 2 False True 0 True False 5 True False False True center False color-red-button True False gtk-color-picker False True 0 True False False True center rgb(193,125,17) False True 1 False True 25 1 False False 2 True False 10 2 True True False Line Width False True 0 True False True zoom-out True False False 1 True False True True False True 2 True False True zoom-in True False False 3 False True 3 True False 10 2 True True False Text Size False True 0 True True True zoom-out1 True False False 1 True True True True False True 2 True True True zoom-in1 True False False 3 False True 4 True False True Fill shape True False False True Toggle shape filling True False True 1 False True 5 False False True False center center True False GDK_POINTER_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 10 10 10 10 True True -1 True False 10 True False vertical True False False True Toggle Paint Panel img-toggle-panel True False True 0 True False 5 start True False False False True Undo Last Paint edit-undo True True True 0 True True False False False True Redo Previous Paint edit-redo True True True 1 True True False True Clear Paints img-clear-paints True True True 2 True True 1 True False 5 True False True Copy Surface img-copy-surface True False True 1 True False True Save Surface img-save-surface True False True 2 end 2 True False 5 True False False True 0 3 swappy-1.5.1/res/swappy.gresource.xml000066400000000000000000000003071433652042100176740ustar00rootroot00000000000000 style/swappy.css swappy.glade swappy-1.5.1/script/000077500000000000000000000000001433652042100143455ustar00rootroot00000000000000swappy-1.5.1/script/bump-meson-build.js000077500000000000000000000005571433652042100200740ustar00rootroot00000000000000const projectVersionRegExp = /version: '(?\d+\.\d+\.\d+)',/; module.exports.readVersion = function (contents) { const matches = contents.match(projectVersionRegExp); return matches ? matches[1] : "unknown"; }; module.exports.writeVersion = function (_contents, version) { return _contents.replace(projectVersionRegExp, `version: '${version}',`); }; swappy-1.5.1/script/github-release000077500000000000000000000054161433652042100172010ustar00rootroot00000000000000#!/bin/bash set -e declare -r git_root=$(git rev-parse --show-toplevel) declare -r app_name="swappy" declare -r release_folder="$git_root/release" declare version="" die() { echo "$*" 1>&2 exit 1 } init() { command -v git >/dev/null 2>&1 || { echo >&2 "git required: pacman -S git"; exit 1; } command -v gh >/dev/null 2>&1 || { echo >&2 "github cli tool required to publish the release: pacman -S github-cli"; exit 1; } command -v npx >/dev/null 2>&1 || { echo >&2 "npx required for standard versionning the release: pacman -S npm"; exit 1; } command -v gpg >/dev/null 2>&1 || { echo >&2 "gpg required to sign the archive: pacman -S gnupg"; exit 1; } mkdir -p $release_folder } git_get_release_version() { version=$(git describe --tags --abbrev=0 | sed 's/^v//') if [ -z "$version" ] then die "version not found, is the git tag valid?" fi echo "found latest version: $version" } npx_standard_version() { echo "setting up new standard version with npx..." npx standard-version --sign } git_push_tags() { echo "pushing git tags..." git push --follow-tags } git_build_archive() { echo "building source archives..." cd $git_root git archive -o "$release_folder/$app_name-$version.tar.gz" --format tar.gz --prefix "$app_name-$version/" "v$version" } download_source_for_release() { echo "downloading source assets..." cd $release_folder curl --location --output github-$app_name-$version.tar.gz https://github.com/jtheoof/$app_name/archive/v$version.tar.gz } verify_sha256_checksums() { echo "verifying signatures..." cd $release_folder sha256sum $app_name-$version.tar.gz | awk '{ print $1 }' > $app_name-$version.tar.gz.sha256 # sha256sum --check will exit if the checksums do not match echo "$(cat $app_name-$version.tar.gz.sha256) github-$app_name-$version.tar.gz" | sha256sum --check } gpg_sign_archive() { echo "signing source assets..." cd $release_folder gpg --output $app_name-$version.tar.gz.sig --detach-sign $app_name-$version.tar.gz } git_generate_changelog() { echo "generating changelog..." git diff "v$version"^ -- CHANGELOG.md | tail -n +9 | head -n -4 | sed 's/^+//g' > $release_folder/CHANGELOG.md } github_create_release() { echo "creating github release..." gh release create --draft "v$version" \ -F "$release_folder/CHANGELOG.md" \ "$release_folder/$app_name-$version.tar.gz" \ "$release_folder/$app_name-$version.tar.gz.sig" \ "$release_folder/CHANGELOG.md" } main() { init npx_standard_version git_push_tags git_get_release_version git_build_archive # Turning off manual downloading from github # doing all the steps, including archive, ourselves. #download_source_for_release #verify_sha256_checksums git_generate_changelog gpg_sign_archive github_create_release } main "$@" swappy-1.5.1/src/000077500000000000000000000000001433652042100136305ustar00rootroot00000000000000swappy-1.5.1/src/algebra.c000066400000000000000000000017001433652042100153670ustar00rootroot00000000000000#include "algebra.h" #include #include struct gaussian_kernel *gaussian_kernel(int width, double sigma) { double sum = 0; gint size = width * width + 1; double *kernel = g_new0(double, size); struct gaussian_kernel *gaussian = g_new(struct gaussian_kernel, 1); for (gint y = 0; y < width; y++) { for (gint x = 0; x < width; x++) { double j = y - width; double i = x - width; double cell = ((1.0 / (2.0 * G_PI * sigma)) * exp((-(i * i + j * j)) / (2.0 * sigma * sigma))) * 0xff; kernel[y * width + x] = cell; sum += cell; } } gaussian->kernel = kernel; gaussian->size = size; gaussian->sigma = sigma; gaussian->sum = sum; return gaussian; } void gaussian_kernel_free(gpointer data) { struct gaussian_kernel *gaussian = (struct gaussian_kernel *)data; if (gaussian != NULL) { g_free(gaussian->kernel); g_free(gaussian); } } swappy-1.5.1/src/application.c000066400000000000000000000741501433652042100163060ustar00rootroot00000000000000#include #include #include #include #include #include #include "clipboard.h" #include "config.h" #include "file.h" #include "paint.h" #include "pixbuf.h" #include "render.h" #include "swappy.h" static void update_ui_undo_redo(struct swappy_state *state) { GtkWidget *undo = GTK_WIDGET(state->ui->undo); GtkWidget *redo = GTK_WIDGET(state->ui->redo); gboolean undo_sensitive = g_list_length(state->paints) > 0; gboolean redo_sensitive = g_list_length(state->redo_paints) > 0; gtk_widget_set_sensitive(undo, undo_sensitive); gtk_widget_set_sensitive(redo, redo_sensitive); } static void update_ui_stroke_size_widget(struct swappy_state *state) { GtkButton *button = GTK_BUTTON(state->ui->line_size); char label[255]; g_snprintf(label, 255, "%.0lf", state->settings.w); gtk_button_set_label(button, label); } static void update_ui_text_size_widget(struct swappy_state *state) { GtkButton *button = GTK_BUTTON(state->ui->text_size); char label[255]; g_snprintf(label, 255, "%.0lf", state->settings.t); gtk_button_set_label(button, label); } static void update_ui_panel_toggle_button(struct swappy_state *state) { GtkWidget *painting_box = GTK_WIDGET(state->ui->painting_box); GtkToggleButton *button = GTK_TOGGLE_BUTTON(state->ui->panel_toggle_button); gboolean toggled = state->ui->panel_toggled; gtk_toggle_button_set_active(button, toggled); gtk_widget_set_visible(painting_box, toggled); } static void update_ui_fill_shape_toggle_button(struct swappy_state *state) { GtkToggleButton *button = GTK_TOGGLE_BUTTON(state->ui->fill_shape); gboolean toggled = state->config->fill_shape; gtk_toggle_button_set_active(button, toggled); } void application_finish(struct swappy_state *state) { g_debug("application finishing, cleaning up"); paint_free_all(state); pixbuf_free(state); cairo_surface_destroy(state->rendering_surface); cairo_surface_destroy(state->original_image_surface); if (state->temp_file_str) { g_info("deleting temporary file: %s", state->temp_file_str); if (g_unlink(state->temp_file_str) != 0) { g_warning("unable to delete temporary file: %s", state->temp_file_str); } g_free(state->temp_file_str); } g_free(state->file_str); g_free(state->geometry); g_free(state->window); g_free(state->ui); g_object_unref(state->app); config_free(state); } static void action_undo(struct swappy_state *state) { GList *first = state->paints; if (first) { state->paints = g_list_remove_link(state->paints, first); state->redo_paints = g_list_prepend(state->redo_paints, first->data); render_state(state); update_ui_undo_redo(state); } } static void action_redo(struct swappy_state *state) { GList *first = state->redo_paints; if (first) { state->redo_paints = g_list_remove_link(state->redo_paints, first); state->paints = g_list_prepend(state->paints, first->data); render_state(state); update_ui_undo_redo(state); } } static void action_clear(struct swappy_state *state) { paint_free_all(state); render_state(state); update_ui_undo_redo(state); } static void action_toggle_painting_panel(struct swappy_state *state, gboolean *toggled) { state->ui->panel_toggled = (toggled == NULL) ? !state->ui->panel_toggled : *toggled; update_ui_panel_toggle_button(state); } static void action_update_color_state(struct swappy_state *state, double r, double g, double b, double a, gboolean custom) { state->settings.r = r; state->settings.g = g; state->settings.b = b; state->settings.a = a; gtk_widget_set_sensitive(GTK_WIDGET(state->ui->color), custom); } static void action_set_color_from_custom(struct swappy_state *state) { GdkRGBA color; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(state->ui->color), &color); action_update_color_state(state, color.red, color.green, color.blue, color.alpha, true); } static void switch_mode_to_brush(struct swappy_state *state) { state->mode = SWAPPY_PAINT_MODE_BRUSH; gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); } static void switch_mode_to_text(struct swappy_state *state) { state->mode = SWAPPY_PAINT_MODE_TEXT; gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); } static void switch_mode_to_rectangle(struct swappy_state *state) { state->mode = SWAPPY_PAINT_MODE_RECTANGLE; gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), true); } static void switch_mode_to_ellipse(struct swappy_state *state) { state->mode = SWAPPY_PAINT_MODE_ELLIPSE; gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), true); } static void switch_mode_to_arrow(struct swappy_state *state) { state->mode = SWAPPY_PAINT_MODE_ARROW; gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); } static void switch_mode_to_blur(struct swappy_state *state) { state->mode = SWAPPY_PAINT_MODE_BLUR; gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); } static void action_stroke_size_decrease(struct swappy_state *state) { guint step = state->settings.w <= 10 ? 1 : 5; state->settings.w -= step; if (state->settings.w < SWAPPY_LINE_SIZE_MIN) { state->settings.w = SWAPPY_LINE_SIZE_MIN; } update_ui_stroke_size_widget(state); } static void action_stroke_size_reset(struct swappy_state *state) { state->settings.w = state->config->line_size; update_ui_stroke_size_widget(state); } static void action_stroke_size_increase(struct swappy_state *state) { guint step = state->settings.w >= 10 ? 5 : 1; state->settings.w += step; if (state->settings.w > SWAPPY_LINE_SIZE_MAX) { state->settings.w = SWAPPY_LINE_SIZE_MAX; } update_ui_stroke_size_widget(state); } static void action_text_size_decrease(struct swappy_state *state) { guint step = state->settings.t <= 20 ? 1 : 5; state->settings.t -= step; if (state->settings.t < SWAPPY_TEXT_SIZE_MIN) { state->settings.t = SWAPPY_TEXT_SIZE_MIN; } update_ui_text_size_widget(state); } static void action_text_size_reset(struct swappy_state *state) { state->settings.t = state->config->text_size; update_ui_text_size_widget(state); } static void action_text_size_increase(struct swappy_state *state) { guint step = state->settings.t >= 20 ? 5 : 1; state->settings.t += step; if (state->settings.t > SWAPPY_TEXT_SIZE_MAX) { state->settings.t = SWAPPY_TEXT_SIZE_MAX; } update_ui_text_size_widget(state); } static void action_fill_shape_toggle(struct swappy_state *state, gboolean *toggled) { // Don't allow changing the state via a shortcut if the button can't be // clicked. if (!gtk_widget_get_sensitive(GTK_WIDGET(state->ui->fill_shape))) return; gboolean toggle = (toggled == NULL) ? !state->config->fill_shape : *toggled; state->config->fill_shape = toggle; update_ui_fill_shape_toggle_button(state); } static void save_state_to_file_or_folder(struct swappy_state *state, char *file) { GdkPixbuf *pixbuf = pixbuf_get_from_state(state); if (file == NULL) { pixbuf_save_state_to_folder(pixbuf, state->config->save_dir, state->config->save_filename_format); } else { pixbuf_save_to_file(pixbuf, file); } g_object_unref(pixbuf); if (state->config->early_exit) { gtk_main_quit(); } } static void maybe_save_output_file(struct swappy_state *state) { if (state->output_file != NULL) { save_state_to_file_or_folder(state, state->output_file); } } static void screen_coordinates_to_image_coordinates(struct swappy_state *state, gdouble screen_x, gdouble screen_y, gdouble *image_x, gdouble *image_y) { gdouble x, y; gint w = gdk_pixbuf_get_width(state->original_image); gint h = gdk_pixbuf_get_height(state->original_image); // Clamp coordinates to original image properties to avoid side effects in // rendering pipeline x = CLAMP(screen_x / state->scaling_factor, 0, w); y = CLAMP(screen_y / state->scaling_factor, 0, h); *image_x = x; *image_y = y; } static void commit_state(struct swappy_state *state) { paint_commit_temporary(state); paint_free_list(&state->redo_paints); render_state(state); update_ui_undo_redo(state); } void on_destroy(GtkApplication *application, gpointer data) { struct swappy_state *state = (struct swappy_state *)data; maybe_save_output_file(state); } void brush_clicked_handler(GtkWidget *widget, struct swappy_state *state) { switch_mode_to_brush(state); } void text_clicked_handler(GtkWidget *widget, struct swappy_state *state) { switch_mode_to_text(state); } void rectangle_clicked_handler(GtkWidget *widget, struct swappy_state *state) { switch_mode_to_rectangle(state); } void ellipse_clicked_handler(GtkWidget *widget, struct swappy_state *state) { switch_mode_to_ellipse(state); } void arrow_clicked_handler(GtkWidget *widget, struct swappy_state *state) { switch_mode_to_arrow(state); } void blur_clicked_handler(GtkWidget *widget, struct swappy_state *state) { switch_mode_to_blur(state); } void save_clicked_handler(GtkWidget *widget, struct swappy_state *state) { // Commit a potential paint (e.g. text being written) commit_state(state); save_state_to_file_or_folder(state, NULL); } void clear_clicked_handler(GtkWidget *widget, struct swappy_state *state) { action_clear(state); } void copy_clicked_handler(GtkWidget *widget, struct swappy_state *state) { // Commit a potential paint (e.g. text being written) commit_state(state); clipboard_copy_drawing_area_to_selection(state); } void control_modifier_changed(bool pressed, struct swappy_state *state) { if (state->temp_paint != NULL) { switch (state->temp_paint->type) { case SWAPPY_PAINT_MODE_ELLIPSE: case SWAPPY_PAINT_MODE_RECTANGLE: paint_update_temporary_shape( state, state->temp_paint->content.shape.to.x, state->temp_paint->content.shape.to.y, pressed); render_state(state); break; default: break; } } } void window_keypress_handler(GtkWidget *widget, GdkEventKey *event, struct swappy_state *state) { if (state->temp_paint && state->mode == SWAPPY_PAINT_MODE_TEXT) { paint_update_temporary_text(state, event); render_state(state); return; } if (event->state & GDK_CONTROL_MASK) { switch (event->keyval) { case GDK_KEY_c: clipboard_copy_drawing_area_to_selection(state); break; case GDK_KEY_s: save_state_to_file_or_folder(state, NULL); break; case GDK_KEY_b: action_toggle_painting_panel(state, NULL); break; case GDK_KEY_w: gtk_main_quit(); break; case GDK_KEY_z: action_undo(state); break; case GDK_KEY_Z: case GDK_KEY_y: action_redo(state); break; default: break; } } else { switch (event->keyval) { case GDK_KEY_Escape: case GDK_KEY_q: maybe_save_output_file(state); gtk_main_quit(); break; case GDK_KEY_b: switch_mode_to_brush(state); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->brush), true); break; case GDK_KEY_t: switch_mode_to_text(state); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->text), true); break; case GDK_KEY_r: switch_mode_to_rectangle(state); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->rectangle), true); break; case GDK_KEY_o: switch_mode_to_ellipse(state); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->ellipse), true); break; case GDK_KEY_a: switch_mode_to_arrow(state); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->arrow), true); break; case GDK_KEY_d: switch_mode_to_blur(state); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->blur), true); break; case GDK_KEY_k: action_clear(state); break; case GDK_KEY_R: action_update_color_state(state, 1, 0, 0, 1, false); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->red), true); break; case GDK_KEY_G: action_update_color_state(state, 0, 1, 0, 1, false); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->green), true); break; case GDK_KEY_B: action_update_color_state(state, 0, 0, 1, 1, false); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->blue), true); break; case GDK_KEY_C: action_set_color_from_custom(state); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->custom), true); break; case GDK_KEY_minus: action_stroke_size_decrease(state); break; case GDK_KEY_equal: action_stroke_size_reset(state); break; case GDK_KEY_plus: action_stroke_size_increase(state); break; case GDK_KEY_Control_L: control_modifier_changed(true, state); break; case GDK_KEY_f: action_fill_shape_toggle(state, NULL); break; default: break; } } } void window_keyrelease_handler(GtkWidget *widget, GdkEventKey *event, struct swappy_state *state) { if (event->state & GDK_CONTROL_MASK) { switch (event->keyval) { case GDK_KEY_Control_L: control_modifier_changed(false, state); break; default: break; } } else { switch (event->keyval) { default: break; } } } gboolean window_delete_handler(GtkWidget *widget, GdkEvent *event, struct swappy_state *state) { gtk_main_quit(); return FALSE; } void pane_toggled_handler(GtkWidget *widget, struct swappy_state *state) { GtkToggleButton *button = GTK_TOGGLE_BUTTON(widget); gboolean toggled = gtk_toggle_button_get_active(button); action_toggle_painting_panel(state, &toggled); } void undo_clicked_handler(GtkWidget *widget, struct swappy_state *state) { action_undo(state); } void redo_clicked_handler(GtkWidget *widget, struct swappy_state *state) { action_redo(state); } gboolean draw_area_handler(GtkWidget *widget, cairo_t *cr, struct swappy_state *state) { GtkAllocation *alloc = g_new(GtkAllocation, 1); gtk_widget_get_allocation(widget, alloc); GdkPixbuf *image = state->original_image; gint image_width = gdk_pixbuf_get_width(image); gint image_height = gdk_pixbuf_get_height(image); double scale_x = (double)alloc->width / image_width; double scale_y = (double)alloc->height / image_height; cairo_scale(cr, scale_x, scale_y); cairo_set_source_surface(cr, state->rendering_surface, 0, 0); cairo_paint(cr); return FALSE; } gboolean draw_area_configure_handler(GtkWidget *widget, GdkEventConfigure *event, struct swappy_state *state) { g_debug("received configure_event callback"); pixbuf_scale_surface_from_widget(state, widget); render_state(state); return TRUE; } void draw_area_button_press_handler(GtkWidget *widget, GdkEventButton *event, struct swappy_state *state) { gdouble x, y; screen_coordinates_to_image_coordinates(state, event->x, event->y, &x, &y); if (event->button == 1) { switch (state->mode) { case SWAPPY_PAINT_MODE_BLUR: case SWAPPY_PAINT_MODE_BRUSH: case SWAPPY_PAINT_MODE_RECTANGLE: case SWAPPY_PAINT_MODE_ELLIPSE: case SWAPPY_PAINT_MODE_ARROW: case SWAPPY_PAINT_MODE_TEXT: paint_add_temporary(state, x, y, state->mode); render_state(state); update_ui_undo_redo(state); break; default: return; } } } void draw_area_motion_notify_handler(GtkWidget *widget, GdkEventMotion *event, struct swappy_state *state) { gdouble x, y; screen_coordinates_to_image_coordinates(state, event->x, event->y, &x, &y); GdkDisplay *display = gdk_display_get_default(); GdkWindow *window = event->window; GdkCursor *crosshair = gdk_cursor_new_for_display(display, GDK_CROSSHAIR); gdk_window_set_cursor(window, crosshair); gboolean is_button1_pressed = event->state & GDK_BUTTON1_MASK; gboolean is_control_pressed = event->state & GDK_CONTROL_MASK; switch (state->mode) { case SWAPPY_PAINT_MODE_BLUR: case SWAPPY_PAINT_MODE_BRUSH: case SWAPPY_PAINT_MODE_RECTANGLE: case SWAPPY_PAINT_MODE_ELLIPSE: case SWAPPY_PAINT_MODE_ARROW: if (is_button1_pressed) { paint_update_temporary_shape(state, x, y, is_control_pressed); render_state(state); } break; case SWAPPY_PAINT_MODE_TEXT: if (is_button1_pressed) { paint_update_temporary_text_clip(state, x, y); render_state(state); } break; default: return; } g_object_unref(crosshair); } void draw_area_button_release_handler(GtkWidget *widget, GdkEventButton *event, struct swappy_state *state) { if (!(event->state & GDK_BUTTON1_MASK)) { return; } switch (state->mode) { case SWAPPY_PAINT_MODE_BLUR: case SWAPPY_PAINT_MODE_BRUSH: case SWAPPY_PAINT_MODE_RECTANGLE: case SWAPPY_PAINT_MODE_ELLIPSE: case SWAPPY_PAINT_MODE_ARROW: commit_state(state); break; case SWAPPY_PAINT_MODE_TEXT: if (state->temp_paint && !state->temp_paint->can_draw) { paint_free(state->temp_paint); state->temp_paint = NULL; } break; default: return; } } void color_red_clicked_handler(GtkWidget *widget, struct swappy_state *state) { action_update_color_state(state, 1, 0, 0, 1, false); } void color_green_clicked_handler(GtkWidget *widget, struct swappy_state *state) { action_update_color_state(state, 0, 1, 0, 1, false); } void color_blue_clicked_handler(GtkWidget *widget, struct swappy_state *state) { action_update_color_state(state, 0, 0, 1, 1, false); } void color_custom_clicked_handler(GtkWidget *widget, struct swappy_state *state) { action_set_color_from_custom(state); } void color_custom_color_set_handler(GtkWidget *widget, struct swappy_state *state) { action_set_color_from_custom(state); } void stroke_size_decrease_handler(GtkWidget *widget, struct swappy_state *state) { action_stroke_size_decrease(state); } void stroke_size_reset_handler(GtkWidget *widget, struct swappy_state *state) { action_stroke_size_reset(state); } void stroke_size_increase_handler(GtkWidget *widget, struct swappy_state *state) { action_stroke_size_increase(state); } void text_size_decrease_handler(GtkWidget *widget, struct swappy_state *state) { action_text_size_decrease(state); } void text_size_reset_handler(GtkWidget *widget, struct swappy_state *state) { action_text_size_reset(state); } void text_size_increase_handler(GtkWidget *widget, struct swappy_state *state) { action_text_size_increase(state); } void fill_shape_toggled_handler(GtkWidget *widget, struct swappy_state *state) { GtkToggleButton *button = GTK_TOGGLE_BUTTON(widget); gboolean toggled = gtk_toggle_button_get_active(button); action_fill_shape_toggle(state, &toggled); } static void compute_window_size_and_scaling_factor(struct swappy_state *state) { GdkRectangle workarea = {0}; GdkDisplay *display = gdk_display_get_default(); GdkWindow *window = gtk_widget_get_window(GTK_WIDGET(state->ui->window)); GdkMonitor *monitor = gdk_display_get_monitor_at_window(display, window); gdk_monitor_get_workarea(monitor, &workarea); g_assert(workarea.width > 0); g_assert(workarea.height > 0); if (state->window) { g_free(state->window); state->window = NULL; } state->window = g_new(struct swappy_box, 1); state->window->x = workarea.x; state->window->y = workarea.y; double threshold = 0.75; double scaling_factor = 1.0; int image_width = gdk_pixbuf_get_width(state->original_image); int image_height = gdk_pixbuf_get_height(state->original_image); int max_width = workarea.width * threshold; int max_height = workarea.height * threshold; g_info("size of image: %ux%u", image_width, image_height); g_info("size of monitor at window: %ux%u", workarea.width, workarea.height); g_info("maxium size allowed for window: %ux%u", max_width, max_height); int scaled_width = image_width; int scaled_height = image_height; double scaling_factor_width = (double)max_width / image_width; double scaling_factor_height = (double)max_height / image_height; if (scaling_factor_height < 1.0 || scaling_factor_width < 1.0) { scaling_factor = MIN(scaling_factor_width, scaling_factor_height); scaled_width = image_width * scaling_factor; scaled_height = image_height * scaling_factor; g_info("rendering area will be scaled by a factor of: %.2lf", scaling_factor); } state->scaling_factor = scaling_factor; state->window->width = scaled_width; state->window->height = scaled_height; g_info("size of window to render: %ux%u", state->window->width, state->window->height); } static void apply_css(GtkWidget *widget, GtkStyleProvider *provider) { gtk_style_context_add_provider(gtk_widget_get_style_context(widget), provider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); if (GTK_IS_CONTAINER(widget)) { gtk_container_forall(GTK_CONTAINER(widget), (GtkCallback)apply_css, provider); } } static bool load_css(struct swappy_state *state) { GtkCssProvider *provider = gtk_css_provider_new(); gtk_css_provider_load_from_resource(provider, "/me/jtheoof/swappy/style/swappy.css"); apply_css(GTK_WIDGET(state->ui->window), GTK_STYLE_PROVIDER(provider)); g_object_unref(provider); return true; } static bool load_layout(struct swappy_state *state) { GError *error = NULL; /* Construct a GtkBuilder instance and load our UI description */ GtkBuilder *builder = gtk_builder_new(); // Set translation domain for the application based on `src/po/meson.build` gtk_builder_set_translation_domain(builder, GETTEXT_PACKAGE); if (gtk_builder_add_from_resource(builder, "/me/jtheoof/swappy/swappy.glade", &error) == 0) { g_printerr("Error loading file: %s", error->message); g_clear_error(&error); return false; } gtk_builder_connect_signals(builder, state); GtkWindow *window = GTK_WINDOW(gtk_builder_get_object(builder, "paint-window")); g_signal_connect(window, "destroy", G_CALLBACK(on_destroy), state); state->ui->panel_toggle_button = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "btn-toggle-panel")); state->ui->undo = GTK_BUTTON(gtk_builder_get_object(builder, "undo-button")); state->ui->redo = GTK_BUTTON(gtk_builder_get_object(builder, "redo-button")); GtkWidget *area = GTK_WIDGET(gtk_builder_get_object(builder, "painting-area")); state->ui->painting_box = GTK_BOX(gtk_builder_get_object(builder, "painting-box")); GtkRadioButton *brush = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "brush")); GtkRadioButton *text = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "text")); GtkRadioButton *rectangle = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "rectangle")); GtkRadioButton *ellipse = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "ellipse")); GtkRadioButton *arrow = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "arrow")); GtkRadioButton *blur = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "blur")); state->ui->red = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "color-red-button")); state->ui->green = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "color-green-button")); state->ui->blue = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "color-blue-button")); state->ui->custom = GTK_RADIO_BUTTON(gtk_builder_get_object(builder, "color-custom-button")); state->ui->color = GTK_COLOR_BUTTON(gtk_builder_get_object(builder, "custom-color-button")); state->ui->line_size = GTK_BUTTON(gtk_builder_get_object(builder, "stroke-size-button")); state->ui->text_size = GTK_BUTTON(gtk_builder_get_object(builder, "text-size-button")); state->ui->fill_shape = GTK_TOGGLE_BUTTON( gtk_builder_get_object(builder, "fill-shape-toggle-button")); state->ui->brush = brush; state->ui->text = text; state->ui->rectangle = rectangle; state->ui->ellipse = ellipse; state->ui->arrow = arrow; state->ui->blur = blur; state->ui->area = area; state->ui->window = window; compute_window_size_and_scaling_factor(state); gtk_widget_set_size_request(area, state->window->width, state->window->height); action_toggle_painting_panel(state, &state->config->show_panel); g_object_unref(G_OBJECT(builder)); return true; } static void set_paint_mode(struct swappy_state *state) { switch (state->mode) { case SWAPPY_PAINT_MODE_BRUSH: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->brush), true); gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); break; case SWAPPY_PAINT_MODE_TEXT: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->text), true); gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); break; case SWAPPY_PAINT_MODE_RECTANGLE: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->rectangle), true); gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), true); break; case SWAPPY_PAINT_MODE_ELLIPSE: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->ellipse), true); gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), true); break; case SWAPPY_PAINT_MODE_ARROW: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->arrow), true); gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); break; case SWAPPY_PAINT_MODE_BLUR: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(state->ui->blur), true); gtk_widget_set_sensitive(GTK_WIDGET(state->ui->fill_shape), false); break; default: break; } } static bool init_gtk_window(struct swappy_state *state) { if (!state->original_image) { g_critical("original image not loaded"); return false; } if (!load_layout(state)) { return false; } if (!load_css(state)) { return false; } set_paint_mode(state); update_ui_stroke_size_widget(state); update_ui_text_size_widget(state); update_ui_undo_redo(state); update_ui_panel_toggle_button(state); update_ui_fill_shape_toggle_button(state); return true; } static gboolean has_option_file(struct swappy_state *state) { return (state->file_str != NULL); } static gboolean is_file_from_stdin(const char *file) { return (strcmp(file, "-") == 0); } static void init_settings(struct swappy_state *state) { state->settings.r = 1; state->settings.g = 0; state->settings.b = 0; state->settings.a = 1; state->settings.w = state->config->line_size; state->settings.t = state->config->text_size; state->mode = state->config->paint_mode; } static gint command_line_handler(GtkApplication *app, GApplicationCommandLine *cmdline, struct swappy_state *state) { config_load(state); init_settings(state); if (has_option_file(state)) { if (is_file_from_stdin(state->file_str)) { char *temp_file_str = file_dump_stdin_into_a_temp_file(); state->temp_file_str = temp_file_str; } if (!pixbuf_init_from_file(state)) { return EXIT_FAILURE; } } if (!init_gtk_window(state)) { return EXIT_FAILURE; } return EXIT_SUCCESS; } // Print version and quit gboolean callback_on_flag(const gchar *option_name, const gchar *value, gpointer data, GError **error) { if (!strcmp(option_name, "-v") || !strcmp(option_name, "--version")) { printf("swappy version %s\n", SWAPPY_VERSION); exit(0); } return TRUE; } bool application_init(struct swappy_state *state) { // Callback function for flags gboolean (*GOptionArgFunc)(const gchar *option_name, const gchar *value, gpointer data, GError **error); GOptionArgFunc = &callback_on_flag; const GOptionEntry cli_options[] = { { .long_name = "file", .short_name = 'f', .arg = G_OPTION_ARG_STRING, .arg_data = &state->file_str, .description = "Load a file at a specific path", }, { .long_name = "output-file", .short_name = 'o', .arg = G_OPTION_ARG_STRING, .arg_data = &state->output_file, .description = "Print the final surface to the given file when " "exiting, use - to print to stdout", }, { .long_name = "version", .short_name = 'v', .flags = G_OPTION_FLAG_NO_ARG, .arg = G_OPTION_ARG_CALLBACK, .arg_data = GOptionArgFunc, .description = "Print version and quit", }, {NULL}}; state->app = gtk_application_new("me.jtheoof.swappy", G_APPLICATION_HANDLES_COMMAND_LINE); if (state->app == NULL) { g_critical("cannot create gtk application"); return false; } g_application_add_main_option_entries(G_APPLICATION(state->app), cli_options); state->ui = g_new(struct swappy_state_ui, 1); state->ui->panel_toggled = false; g_signal_connect(state->app, "command-line", G_CALLBACK(command_line_handler), state); return true; } int application_run(struct swappy_state *state) { return g_application_run(G_APPLICATION(state->app), state->argc, state->argv); } swappy-1.5.1/src/box.c000066400000000000000000000023151433652042100145650ustar00rootroot00000000000000#include "box.h" static int32_t lmax(int32_t a, int32_t b) { return a > b ? a : b; } static int32_t lmin(int32_t a, int32_t b) { return a < b ? a : b; } bool box_parse(struct swappy_box *box, const char *str) { char *end = NULL; box->x = (int32_t)strtol(str, &end, 10); if (end[0] != ',') { return false; } char *next = end + 1; box->y = (int32_t)strtol(next, &end, 10); if (end[0] != ' ') { return false; } next = end + 1; box->width = (int32_t)strtol(next, &end, 10); if (end[0] != 'x') { return false; } next = end + 1; box->height = (int32_t)strtol(next, &end, 10); if (end[0] != '\0') { return false; } return true; } bool is_empty_box(struct swappy_box *box) { return box->width <= 0 || box->height <= 0; } bool intersect_box(struct swappy_box *a, struct swappy_box *b) { if (is_empty_box(a) || is_empty_box(b)) { return false; } int32_t x1 = lmax(a->x, b->x); int32_t y1 = lmax(a->y, b->y); int32_t x2 = lmin(a->x + a->width, b->x + b->width); int32_t y2 = lmin(a->y + a->height, b->y + b->height); struct swappy_box box = { .x = x1, .y = y1, .width = x2 - x1, .height = y2 - y1, }; return !is_empty_box(&box); } swappy-1.5.1/src/clipboard.c000066400000000000000000000043261433652042100157400ustar00rootroot00000000000000#include "clipboard.h" #include #include #include #include "pixbuf.h" #include "util.h" #define gtk_clipboard_t GtkClipboard #define gdk_pixbuf_t GdkPixbuf static gboolean send_pixbuf_to_wl_copy(gdk_pixbuf_t *pixbuf) { pid_t clipboard_process = 0; int pipefd[2]; int status; ssize_t written; gsize size; gchar *buffer = NULL; GError *error = NULL; if (pipe(pipefd) < 0) { g_warning("unable to pipe for copy process to work"); return false; } clipboard_process = fork(); if (clipboard_process == -1) { g_warning("unable to fork process for copy"); return false; } if (clipboard_process == 0) { close(pipefd[1]); dup2(pipefd[0], STDIN_FILENO); close(pipefd[0]); execlp("wl-copy", "wl-copy", "-t", "image/png", NULL); g_warning( "Unable to copy contents to clipboard. Please make sure you have " "`wl-clipboard`, `xclip`, or `xsel` installed."); exit(1); } close(pipefd[0]); gdk_pixbuf_save_to_buffer(pixbuf, &buffer, &size, "png", &error, NULL); if (error != NULL) { g_critical("unable to save pixbuf to buffer for copy: %s", error->message); g_error_free(error); return false; } written = write(pipefd[1], buffer, size); if (written == -1) { g_warning("unable to write to pipe fd for copy"); g_free(buffer); return false; } close(pipefd[1]); g_free(buffer); waitpid(clipboard_process, &status, 0); if (WIFEXITED(status)) { return WEXITSTATUS(status) == 0; // Make sure the child exited properly } return false; } static void send_pixbuf_to_gdk_clipboard(gdk_pixbuf_t *pixbuf) { gtk_clipboard_t *clipboard = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD); gtk_clipboard_set_image(clipboard, pixbuf); gtk_clipboard_store(clipboard); // Does not work for Wayland gdk backend } bool clipboard_copy_drawing_area_to_selection(struct swappy_state *state) { gdk_pixbuf_t *pixbuf = pixbuf_get_from_state(state); // Try `wl-copy` first and fall back to gtk function. See README.md. if (!send_pixbuf_to_wl_copy(pixbuf)) { send_pixbuf_to_gdk_clipboard(pixbuf); } g_object_unref(pixbuf); if (state->config->early_exit) { gtk_main_quit(); } return true; } swappy-1.5.1/src/config.c000066400000000000000000000174541433652042100152540ustar00rootroot00000000000000#include "config.h" #include #include #include #include #include #include #include "file.h" #include "swappy.h" static void print_config(struct swappy_config *config) { g_info("printing config:"); g_info("config_dir: %s", config->config_file); g_info("save_dir: %s", config->save_dir); g_info("save_filename_format: %s", config->save_filename_format); g_info("show_panel: %d", config->show_panel); g_info("line_size: %d", config->line_size); g_info("text_font: %s", config->text_font); g_info("text_size: %d", config->text_size); g_info("paint_mode: %d", config->paint_mode); g_info("early_exit: %d", config->early_exit); g_info("fill_shape: %d", config->fill_shape); } static char *get_default_save_dir() { static const char *storage_paths[] = { "$XDG_DESKTOP_DIR", "$XDG_CONFIG_HOME/Desktop", "$HOME/Desktop", "$HOME", }; for (size_t i = 0; i < sizeof(storage_paths) / sizeof(char *); ++i) { wordexp_t p; if (wordexp(storage_paths[i], &p, 0) == 0) { char *path = g_strdup(p.we_wordv[0]); wordfree(&p); if (path && folder_exists(path)) { return path; } g_free(path); } } return NULL; } static char *get_config_file() { static const char *storage_paths[] = { "$XDG_CONFIG_HOME/swappy/config", "$HOME/.config/swappy/config", }; for (size_t i = 0; i < sizeof(storage_paths) / sizeof(char *); ++i) { wordexp_t p; if (wordexp(storage_paths[i], &p, 0) == 0) { char *path = g_strdup(p.we_wordv[0]); wordfree(&p); if (path && file_exists(path)) { return path; } g_free(path); } } return NULL; } static void load_config_from_file(struct swappy_config *config, const char *file) { GKeyFile *gkf; const gchar *group = "Default"; gchar *save_dir = NULL; gchar *save_filename_format = NULL; gboolean show_panel; gchar *save_dir_expanded = NULL; guint64 line_size, text_size; gchar *text_font = NULL; gchar *paint_mode = NULL; gboolean early_exit; gboolean fill_shape; GError *error = NULL; if (file == NULL) { return; } gkf = g_key_file_new(); if (!g_key_file_load_from_file(gkf, file, G_KEY_FILE_NONE, NULL)) { g_warning("could not read config file %s", file); g_key_file_free(gkf); return; } save_dir = g_key_file_get_string(gkf, group, "save_dir", &error); if (error == NULL) { wordexp_t p; if (wordexp(save_dir, &p, 0) == 0) { save_dir_expanded = g_strdup(p.we_wordv[0]); wordfree(&p); if (!save_dir_expanded || !folder_exists(save_dir_expanded)) { g_info("save_dir: attempting to create non-existent directory '%s'", save_dir_expanded); if (g_mkdir_with_parents(save_dir_expanded, 0755)) { g_warning("save_dir: failed to create '%s'", save_dir_expanded); } } g_free(save_dir); g_free(config->save_dir); config->save_dir = save_dir_expanded; } } else { g_info("save_dir is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } save_filename_format = g_key_file_get_string(gkf, group, "save_filename_format", &error); if (error == NULL) { config->save_filename_format = save_filename_format; } else { g_info("save_filename_format is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } line_size = g_key_file_get_uint64(gkf, group, "line_size", &error); if (error == NULL) { if (line_size >= SWAPPY_LINE_SIZE_MIN && line_size <= SWAPPY_LINE_SIZE_MAX) { config->line_size = line_size; } else { g_warning("line_size is not a valid value: %" PRIu64 " - see man page for details", line_size); } } else { g_info("line_size is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } text_size = g_key_file_get_uint64(gkf, group, "text_size", &error); if (error == NULL) { if (text_size >= SWAPPY_TEXT_SIZE_MIN && text_size <= SWAPPY_TEXT_SIZE_MAX) { config->text_size = text_size; } else { g_warning("text_size is not a valid value: %" PRIu64 " - see man page for details", text_size); } } else { g_info("text_size is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } text_font = g_key_file_get_string(gkf, group, "text_font", &error); if (error == NULL) { g_free(config->text_font); config->text_font = text_font; } else { g_info("text_font is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } show_panel = g_key_file_get_boolean(gkf, group, "show_panel", &error); if (error == NULL) { config->show_panel = show_panel; } else { g_info("show_panel is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } early_exit = g_key_file_get_boolean(gkf, group, "early_exit", &error); if (error == NULL) { config->early_exit = early_exit; } else { g_info("early_exit is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } paint_mode = g_key_file_get_string(gkf, group, "paint_mode", &error); if (error == NULL) { if (g_ascii_strcasecmp(paint_mode, "brush") == 0) { config->paint_mode = SWAPPY_PAINT_MODE_BRUSH; } else if (g_ascii_strcasecmp(paint_mode, "text") == 0) { config->paint_mode = SWAPPY_PAINT_MODE_TEXT; } else if (g_ascii_strcasecmp(paint_mode, "rectangle") == 0) { config->paint_mode = SWAPPY_PAINT_MODE_RECTANGLE; } else if (g_ascii_strcasecmp(paint_mode, "ellipse") == 0) { config->paint_mode = SWAPPY_PAINT_MODE_ELLIPSE; } else if (g_ascii_strcasecmp(paint_mode, "arrow") == 0) { config->paint_mode = SWAPPY_PAINT_MODE_ARROW; } else if (g_ascii_strcasecmp(paint_mode, "blur") == 0) { config->paint_mode = SWAPPY_PAINT_MODE_BLUR; } else { g_warning( "paint_mode is not a valid value: %s - see man page for details", paint_mode); } } else { g_info("paint_mode is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } fill_shape = g_key_file_get_boolean(gkf, group, "fill_shape", &error); if (error == NULL) { config->fill_shape = fill_shape; } else { g_info("fill_shape is missing in %s (%s)", file, error->message); g_error_free(error); error = NULL; } g_key_file_free(gkf); } static void load_default_config(struct swappy_config *config) { if (config == NULL) { return; } config->save_dir = get_default_save_dir(); config->save_filename_format = g_strdup(CONFIG_SAVE_FILENAME_FORMAT_DEFAULT); config->line_size = CONFIG_LINE_SIZE_DEFAULT; config->text_font = g_strdup(CONFIG_TEXT_FONT_DEFAULT); config->text_size = CONFIG_TEXT_SIZE_DEFAULT; config->show_panel = CONFIG_SHOW_PANEL_DEFAULT; config->paint_mode = CONFIG_PAINT_MODE_DEFAULT; config->early_exit = CONFIG_EARLY_EXIT_DEFAULT; config->fill_shape = CONFIG_FILL_SHAPE_DEFAULT; } void config_load(struct swappy_state *state) { struct swappy_config *config = g_new(struct swappy_config, 1); load_default_config(config); char *file = get_config_file(); if (file) { load_config_from_file(config, file); } else { g_info("could not find swappy config file, using defaults"); } config->config_file = file; state->config = config; print_config(state->config); } void config_free(struct swappy_state *state) { if (state->config) { g_free(state->config->config_file); g_free(state->config->save_dir); g_free(state->config->save_filename_format); g_free(state->config->text_font); g_free(state->config); state->config = NULL; } } swappy-1.5.1/src/file.c000066400000000000000000000030131433652042100147100ustar00rootroot00000000000000#define _POSIX_C_SOURCE 200112L #include #include #include #include #include #include #include #include #define BLOCK_SIZE 1024 bool folder_exists(const char *path) { return g_file_test(path, G_FILE_TEST_IS_DIR); } bool file_exists(const char *path) { return g_file_test(path, G_FILE_TEST_EXISTS); } char *file_dump_stdin_into_a_temp_file() { char buf[BLOCK_SIZE]; GError *error = NULL; if (isatty(STDIN_FILENO)) { g_warning("stdin is a tty"); return NULL; } // Reopen stdin as binary mode FILE *input_file = g_freopen(NULL, "rb", stdin); if (!input_file) { g_warning("unable to reopen stdin in binary mode: %s", g_strerror(errno)); return NULL; } const gchar *tempdir = g_get_tmp_dir(); gchar filename[] = "swappy-stdin-XXXXXX.png"; gchar *ret = g_build_filename(tempdir, filename, NULL); gint fd = g_mkstemp(ret); if (fd == -1) { g_warning("unable to dump stdin into temporary file"); return NULL; } g_info("writing stdin content into filepath: %s", ret); size_t count = 1; while (count > 0) { count = fread(buf, 1, sizeof(buf), stdin); if (write(fd, &buf, count) == -1) { g_warning("error while writing stdin to temporary file: %s - %s", ret, g_strerror(errno)); } } g_close(fd, &error); if (error) { g_warning("unable to close temporary file: %s", error->message); g_error_free(error); return NULL; } return ret; } swappy-1.5.1/src/main.c000066400000000000000000000007451433652042100147260ustar00rootroot00000000000000#define _POSIX_C_SOURCE 200809L #include "application.h" #include "config.h" int main(int argc, char *argv[]) { struct swappy_state state = {0}; int status; state.argc = argc; state.argv = argv; state.mode = SWAPPY_PAINT_MODE_BRUSH; if (!application_init(&state)) { g_critical("failed to initialize gtk application"); exit(1); } status = application_run(&state); if (status == 0) { gtk_main(); } application_finish(&state); return status; } swappy-1.5.1/src/paint.c000066400000000000000000000171061433652042100151140ustar00rootroot00000000000000#include "paint.h" #include #include "util.h" static void cursor_move_backward(struct swappy_paint_text *text) { if (text->cursor > 0) { text->cursor--; } } static void cursor_move_forward(struct swappy_paint_text *text) { if (text->cursor < g_utf8_strlen(text->text, -1)) { text->cursor++; } } void paint_free(gpointer data) { struct swappy_paint *paint = (struct swappy_paint *)data; if (paint == NULL) { return; } switch (paint->type) { case SWAPPY_PAINT_MODE_BLUR: if (paint->content.blur.surface) { cairo_surface_destroy(paint->content.blur.surface); } break; case SWAPPY_PAINT_MODE_BRUSH: g_list_free_full(paint->content.brush.points, g_free); break; case SWAPPY_PAINT_MODE_TEXT: g_free(paint->content.text.text); g_free(paint->content.text.font); break; default: break; } g_free(paint); } void paint_free_list(GList **list) { if (*list) { g_list_free_full(*list, paint_free); *list = NULL; } } void paint_free_all(struct swappy_state *state) { paint_free_list(&state->paints); paint_free_list(&state->redo_paints); paint_free(state->temp_paint); state->temp_paint = NULL; } void paint_add_temporary(struct swappy_state *state, double x, double y, enum swappy_paint_type type) { struct swappy_paint *paint = g_new(struct swappy_paint, 1); struct swappy_point *point; double r = state->settings.r; double g = state->settings.g; double b = state->settings.b; double a = state->settings.a; double w = state->settings.w; double t = state->settings.t; paint->type = type; paint->is_committed = false; g_debug("adding temporary paint at: %.2lfx%.2lf", x, y); if (state->temp_paint) { if (type == SWAPPY_PAINT_MODE_TEXT) { paint_commit_temporary(state); } else { paint_free(state->temp_paint); state->temp_paint = NULL; } } switch (type) { case SWAPPY_PAINT_MODE_BLUR: paint->can_draw = false; paint->content.blur.from.x = x; paint->content.blur.from.y = y; paint->content.blur.surface = NULL; break; case SWAPPY_PAINT_MODE_BRUSH: paint->can_draw = true; paint->content.brush.r = r; paint->content.brush.g = g; paint->content.brush.b = b; paint->content.brush.a = a; paint->content.brush.w = w; point = g_new(struct swappy_point, 1); point->x = x; point->y = y; paint->content.brush.points = g_list_prepend(NULL, point); break; case SWAPPY_PAINT_MODE_RECTANGLE: case SWAPPY_PAINT_MODE_ELLIPSE: case SWAPPY_PAINT_MODE_ARROW: paint->can_draw = false; // need `to` vector paint->content.shape.from.x = x; paint->content.shape.from.y = y; paint->content.shape.r = r; paint->content.shape.g = g; paint->content.shape.b = b; paint->content.shape.a = a; paint->content.shape.w = w; paint->content.shape.type = type; if (state->config->fill_shape) paint->content.shape.operation = SWAPPY_PAINT_SHAPE_OPERATION_FILL; else paint->content.shape.operation = SWAPPY_PAINT_SHAPE_OPERATION_STROKE; break; case SWAPPY_PAINT_MODE_TEXT: paint->can_draw = false; paint->content.text.from.x = x; paint->content.text.from.y = y; paint->content.text.r = r; paint->content.text.g = g; paint->content.text.b = b; paint->content.text.a = a; paint->content.text.s = t; paint->content.text.font = g_strdup(state->config->text_font); paint->content.text.cursor = 0; paint->content.text.mode = SWAPPY_TEXT_MODE_EDIT; paint->content.text.text = g_new(gchar, 1); paint->content.text.text[0] = '\0'; break; default: g_info("unable to add temporary paint: %d", type); break; } state->temp_paint = paint; } void paint_update_temporary_shape(struct swappy_state *state, double x, double y, gboolean is_control_pressed) { struct swappy_paint *paint = state->temp_paint; struct swappy_point *point; GList *points; if (!paint) { return; } switch (paint->type) { case SWAPPY_PAINT_MODE_BLUR: paint->can_draw = true; paint->content.blur.to.x = x; paint->content.blur.to.y = y; break; case SWAPPY_PAINT_MODE_BRUSH: points = paint->content.brush.points; point = g_new(struct swappy_point, 1); point->x = x; point->y = y; paint->content.brush.points = g_list_prepend(points, point); break; case SWAPPY_PAINT_MODE_RECTANGLE: case SWAPPY_PAINT_MODE_ELLIPSE: paint->can_draw = true; // all set paint->content.shape.should_center_at_from = is_control_pressed; paint->content.shape.to.x = x; paint->content.shape.to.y = y; break; case SWAPPY_PAINT_MODE_ARROW: paint->can_draw = true; // all set paint->content.shape.to.x = x; paint->content.shape.to.y = y; break; default: g_info("unable to update temporary paint when type is: %d", paint->type); break; } } void paint_update_temporary_text(struct swappy_state *state, GdkEventKey *event) { struct swappy_paint *paint = state->temp_paint; struct swappy_paint_text *text; char *new_text; char buffer[32]; guint32 unicode; if (!paint || paint->type != SWAPPY_PAINT_MODE_TEXT) { g_warning("trying to update text but not in text mode"); return; } text = &paint->content.text; switch (event->keyval) { case GDK_KEY_Escape: paint_commit_temporary(state); break; case GDK_KEY_BackSpace: if (g_utf8_strlen(text->text, -1) > 0) { new_text = string_remove_at(text->text, text->cursor - 1); g_free(text->text); text->text = new_text; cursor_move_backward(text); } break; case GDK_KEY_Delete: if (g_utf8_strlen(text->text, -1) > 0) { new_text = string_remove_at(text->text, text->cursor); g_free(text->text); text->text = new_text; } break; case GDK_KEY_Left: cursor_move_backward(text); break; case GDK_KEY_Right: cursor_move_forward(text); break; default: unicode = gdk_keyval_to_unicode(event->keyval); if (unicode != 0) { int ll = g_unichar_to_utf8(unicode, buffer); buffer[ll] = '\0'; char *new_text = string_insert_chars_at(text->text, buffer, text->cursor); g_free(text->text); text->text = new_text; text->cursor++; } break; } } void paint_update_temporary_text_clip(struct swappy_state *state, gdouble x, gdouble y) { struct swappy_paint *paint = state->temp_paint; if (!paint) { return; } g_assert(paint->type == SWAPPY_PAINT_MODE_TEXT); paint->can_draw = true; paint->content.text.to.x = x; paint->content.text.to.y = y; } void paint_commit_temporary(struct swappy_state *state) { struct swappy_paint *paint = state->temp_paint; if (!paint) { return; } switch (paint->type) { case SWAPPY_PAINT_MODE_TEXT: if (g_utf8_strlen(paint->content.text.text, -1) == 0) { paint->can_draw = false; } paint->content.text.mode = SWAPPY_TEXT_MODE_DONE; break; default: break; } if (!paint->can_draw) { paint_free(paint); } else { paint->is_committed = true; state->paints = g_list_prepend(state->paints, paint); } // Set the temporary paint to NULL but keep the content in memory // because it's now part of the GList. state->temp_paint = NULL; } swappy-1.5.1/src/pixbuf.c000066400000000000000000000102261433652042100152720ustar00rootroot00000000000000#include "pixbuf.h" #include #include GdkPixbuf *pixbuf_get_from_state(struct swappy_state *state) { guint width = cairo_image_surface_get_width(state->rendering_surface); guint height = cairo_image_surface_get_height(state->rendering_surface); GdkPixbuf *pixbuf = gdk_pixbuf_get_from_surface(state->rendering_surface, 0, 0, width, height); return pixbuf; } static void write_file(GdkPixbuf *pixbuf, char *path) { GError *error = NULL; gdk_pixbuf_savev(pixbuf, path, "png", NULL, NULL, &error); if (error != NULL) { g_critical("unable to save drawing area to pixbuf: %s", error->message); g_error_free(error); } } void pixbuf_save_state_to_folder(GdkPixbuf *pixbuf, char *folder, char *filename_format) { time_t current_time = time(NULL); char *c_time_string; char filename[255]; char path[MAX_PATH]; size_t bytes_formated; c_time_string = ctime(¤t_time); c_time_string[strlen(c_time_string) - 1] = '\0'; bytes_formated = strftime(filename, sizeof(filename), filename_format, localtime(¤t_time)); if (!bytes_formated) { g_warning( "filename_format: %s overflows filename limit - file cannot be saved", filename_format); return; } g_snprintf(path, MAX_PATH, "%s/%s", folder, filename); g_info("saving surface to path: %s", path); write_file(pixbuf, path); } void pixbuf_save_to_stdout(GdkPixbuf *pixbuf) { GOutputStream *out; GError *error = NULL; out = g_unix_output_stream_new(STDOUT_FILENO, TRUE); gdk_pixbuf_save_to_stream(pixbuf, out, "png", NULL, &error, NULL); if (error != NULL) { g_warning("unable to save surface to stdout: %s", error->message); g_error_free(error); return; } g_object_unref(out); } GdkPixbuf *pixbuf_init_from_file(struct swappy_state *state) { GError *error = NULL; char *file = state->temp_file_str != NULL ? state->temp_file_str : state->file_str; GdkPixbuf *image = gdk_pixbuf_new_from_file(file, &error); if (error != NULL) { g_printerr("unable to load file: %s - reason: %s\n", file, error->message); g_error_free(error); return NULL; } state->original_image = image; return image; } void pixbuf_save_to_file(GdkPixbuf *pixbuf, char *file) { if (g_strcmp0(file, "-") == 0) { pixbuf_save_to_stdout(pixbuf); } else { write_file(pixbuf, file); } } void pixbuf_scale_surface_from_widget(struct swappy_state *state, GtkWidget *widget) { GtkAllocation *alloc = g_new(GtkAllocation, 1); GdkPixbuf *image = state->original_image; gtk_widget_get_allocation(widget, alloc); gboolean has_alpha = gdk_pixbuf_get_has_alpha(image); cairo_format_t format = has_alpha ? CAIRO_FORMAT_ARGB32 : CAIRO_FORMAT_RGB24; gint image_width = gdk_pixbuf_get_width(image); gint image_height = gdk_pixbuf_get_height(image); cairo_surface_t *original_image_surface = cairo_image_surface_create(format, image_width, image_height); if (!original_image_surface) { g_error("unable to create cairo original surface from pixbuf"); goto finish; } else { cairo_t *cr; cr = cairo_create(original_image_surface); gdk_cairo_set_source_pixbuf(cr, image, 0, 0); cairo_paint(cr); cairo_destroy(cr); } cairo_surface_t *rendering_surface = cairo_image_surface_create(format, image_width, image_height); if (!rendering_surface) { g_error("unable to create rendering surface"); goto finish; } g_info("size of area to render: %ux%u", alloc->width, alloc->height); finish: if (state->original_image_surface) { cairo_surface_destroy(state->original_image_surface); state->original_image_surface = NULL; } state->original_image_surface = original_image_surface; if (state->rendering_surface) { cairo_surface_destroy(state->rendering_surface); state->rendering_surface = NULL; } state->rendering_surface = rendering_surface; g_free(alloc); } void pixbuf_free(struct swappy_state *state) { if (G_IS_OBJECT(state->original_image)) { g_object_unref(state->original_image); } } swappy-1.5.1/src/po/000077500000000000000000000000001433652042100142465ustar00rootroot00000000000000swappy-1.5.1/src/po/LINGUAS000066400000000000000000000000601433652042100152670ustar00rootroot00000000000000# Set of available languages. de fr en pt_BR tr swappy-1.5.1/src/po/POTFILES000066400000000000000000000000211433652042100154070ustar00rootroot00000000000000res/swappy.glade swappy-1.5.1/src/po/de.po000066400000000000000000000024671433652042100152070ustar00rootroot00000000000000# German translations for swappy package. # Copyright (C) 2020 THE swappy'S COPYRIGHT HOLDER # This file is distributed under the same license as the swappy package. # Brodi , 2020. # msgid "" msgstr "" "Project-Id-Version: swappy\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-11-18 16:07-0500\n" "PO-Revision-Date: 2020-11-19 18:03+0300\n" "Last-Translator: Brodi \n" "Language-Team: none\n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: res/swappy.glade:456 msgid "Line Width" msgstr "Linienstärke" #: res/swappy.glade:526 msgid "Text Size" msgstr "Textgröße" #: res/swappy.glade:592 msgid "Fill shape" msgstr "" #: res/swappy.glade:597 msgid "Toggle shape filling" msgstr "" #: res/swappy.glade:671 msgid "Toggle Paint Panel" msgstr "Farbtafel umschalten" #: res/swappy.glade:697 msgid "Undo Last Paint" msgstr "Letzte Bemalung rückgängig machen" #: res/swappy.glade:716 msgid "Redo Previous Paint" msgstr "Vorherige Bemalung wiederherstellen" #: res/swappy.glade:735 msgid "Clear Paints" msgstr "Bemalung löschen" #: res/swappy.glade:763 msgid "Copy Surface" msgstr "Fläche kopieren" #: res/swappy.glade:779 msgid "Save Surface" msgstr "Fläche speichern" swappy-1.5.1/src/po/en.po000066400000000000000000000024451433652042100152150ustar00rootroot00000000000000# English translations for swappy package. # Copyright (C) 2020 THE swappy'S COPYRIGHT HOLDER # This file is distributed under the same license as the swappy package. # Automatically generated, 2020. # msgid "" msgstr "" "Project-Id-Version: swappy\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-11-18 16:07-0500\n" "PO-Revision-Date: 2020-06-21 21:57-0400\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ASCII\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: res/swappy.glade:456 msgid "Line Width" msgstr "Line Width" #: res/swappy.glade:526 msgid "Text Size" msgstr "Text Size" #: res/swappy.glade:592 msgid "Fill shape" msgstr "Fill shape" #: res/swappy.glade:597 msgid "Toggle shape filling" msgstr "Toggle shape filling" #: res/swappy.glade:671 msgid "Toggle Paint Panel" msgstr "Toggle Paint Panel" #: res/swappy.glade:697 msgid "Undo Last Paint" msgstr "Undo Last Paint" #: res/swappy.glade:716 msgid "Redo Previous Paint" msgstr "Redo Previous Paint" #: res/swappy.glade:735 msgid "Clear Paints" msgstr "Clear Paints" #: res/swappy.glade:763 msgid "Copy Surface" msgstr "Copy Surface" #: res/swappy.glade:779 msgid "Save Surface" msgstr "Save Surface" swappy-1.5.1/src/po/fr.po000066400000000000000000000026541433652042100152240ustar00rootroot00000000000000# French translations for swappy package. # Copyright (C) 2021 THE swappy'S COPYRIGHT HOLDER # This file is distributed under the same license as the swappy package. # Jeremy Attali , 2021. # msgid "" msgstr "" "Project-Id-Version: swappy\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-11-18 16:07-0500\n" "PO-Revision-Date: 2021-02-20 21:00-0500\n" "Last-Translator: Jeremy Attali \n" "Language-Team: none\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: res/swappy.glade:456 msgid "Line Width" msgstr "Epaisseur de ligne" #: res/swappy.glade:526 msgid "Text Size" msgstr "Taille du texte" #: res/swappy.glade:592 msgid "Fill shape" msgstr "Remplir la forme" #: res/swappy.glade:597 msgid "Toggle shape filling" msgstr "Activer/Désactiver le remplissage de forme" #: res/swappy.glade:671 msgid "Toggle Paint Panel" msgstr "Afficher/Cacher le panneau de peinture" #: res/swappy.glade:697 msgid "Undo Last Paint" msgstr "Annuler la dernière peinture" #: res/swappy.glade:716 msgid "Redo Previous Paint" msgstr "Rétablir la dernière peinture" #: res/swappy.glade:735 msgid "Clear Paints" msgstr "Supprimer les peintures" #: res/swappy.glade:763 msgid "Copy Surface" msgstr "Copier la surface" #: res/swappy.glade:779 msgid "Save Surface" msgstr "Sauvegarder la surface" swappy-1.5.1/src/po/meson.build000066400000000000000000000007701433652042100164140ustar00rootroot00000000000000i18n = import('i18n') # define GETTEXT_PACKAGE add_project_arguments('-DGETTEXT_PACKAGE="swappy"', language:'c') i18n.gettext(meson.project_name(), args: '--directory=' + meson.source_root() ) # Translate and install our .desktop file i18n.merge_file( input: meson.project_name() + '.desktop.in', output: meson.project_name() + '.desktop', po_dir: meson.current_source_dir(), type: 'desktop', install: true, install_dir: join_paths(get_option('datadir'), 'applications') ) swappy-1.5.1/src/po/pt_BR.po000066400000000000000000000025061433652042100156170ustar00rootroot00000000000000# Brazilian Portuguese translation for swappy # Copyright (C) 2020 Jeremy Attali # This file is distributed under the MIT License # Gustavo Costa , 2021. # msgid "" msgstr "" "Project-Id-Version: swappy\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-11-18 16:07-0500\n" "PO-Revision-Date: 2021-02-14 20:38-0300\n" "Last-Translator: Gustavo Costa \n" "Language-Team: \n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.4.2\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: res/swappy.glade:456 msgid "Line Width" msgstr "Espessura da linha" #: res/swappy.glade:526 msgid "Text Size" msgstr "Tamanho do texto" #: res/swappy.glade:592 msgid "Fill shape" msgstr "" #: res/swappy.glade:597 msgid "Toggle shape filling" msgstr "" #: res/swappy.glade:671 msgid "Toggle Paint Panel" msgstr "Alternar painel de pintura" #: res/swappy.glade:697 msgid "Undo Last Paint" msgstr "Desfazer última pintura" #: res/swappy.glade:716 msgid "Redo Previous Paint" msgstr "Refazer pintura anterior" #: res/swappy.glade:735 msgid "Clear Paints" msgstr "Limpar pinturas" #: res/swappy.glade:763 msgid "Copy Surface" msgstr "Copiar superfície" #: res/swappy.glade:779 msgid "Save Surface" msgstr "Salvar superfície" swappy-1.5.1/src/po/swappy.desktop.in000066400000000000000000000013621433652042100175730ustar00rootroot00000000000000[Desktop Entry] Name=Swappy GenericName=Annotation Tool GenericName[de]=Anmerkungswerkzeug GenericName[fr]=Outil d'annotation GenericName[pt_BR]=Ferramenta de Anotação GenericName[tr]=Açıklama Aracı Comment=A Wayland native snapshot editing tool Comment[de]=Ein natives Wayland Bildschirmfoto-Bearbeitungswerkzeug Comment[fr]=Un outil d'édition de capture d'écran avec support natif pour Wayland Comment[pt_BR]=Uma ferramenta de edição de snapshot nativa do Wayland Comment[tr]=Wayland için anlık görüntü düzenleme aracı TryExec=swappy Exec=swappy -f %f Terminal=false NoDisplay=true Type=Application Keywords=wayland;snapshot;annotation;editing; Icon=swappy Categories=Utility;Graphics; StartupNotify=true MimeType=image/png;image/jpeg; swappy-1.5.1/src/po/swappy.pot000066400000000000000000000021751433652042100163220ustar00rootroot00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the swappy package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: swappy\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-11-18 16:07-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #: res/swappy.glade:456 msgid "Line Width" msgstr "" #: res/swappy.glade:526 msgid "Text Size" msgstr "" #: res/swappy.glade:592 msgid "Fill shape" msgstr "" #: res/swappy.glade:597 msgid "Toggle shape filling" msgstr "" #: res/swappy.glade:671 msgid "Toggle Paint Panel" msgstr "" #: res/swappy.glade:697 msgid "Undo Last Paint" msgstr "" #: res/swappy.glade:716 msgid "Redo Previous Paint" msgstr "" #: res/swappy.glade:735 msgid "Clear Paints" msgstr "" #: res/swappy.glade:763 msgid "Copy Surface" msgstr "" #: res/swappy.glade:779 msgid "Save Surface" msgstr "" swappy-1.5.1/src/po/tr.po000066400000000000000000000025201433652042100152320ustar00rootroot00000000000000# Turkish translations for swappy package. # Copyright (C) 2020 THE swappy'S COPYRIGHT HOLDER # This file is distributed under the same license as the swappy package. # Oğuz Ersen , 2020. # msgid "" msgstr "" "Project-Id-Version: swappy\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-11-18 16:07-0500\n" "PO-Revision-Date: 2020-10-16 22:00+0300\n" "Last-Translator: Oğuz Ersen \n" "Language-Team: none\n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: res/swappy.glade:456 msgid "Line Width" msgstr "Çizgi Genişliği" #: res/swappy.glade:526 msgid "Text Size" msgstr "Metin Boyutu" #: res/swappy.glade:592 msgid "Fill shape" msgstr "" #: res/swappy.glade:597 msgid "Toggle shape filling" msgstr "" #: res/swappy.glade:671 msgid "Toggle Paint Panel" msgstr "Boyama Panelini Aç/Kapat" #: res/swappy.glade:697 msgid "Undo Last Paint" msgstr "Son Boyamayı Geri Al" #: res/swappy.glade:716 msgid "Redo Previous Paint" msgstr "Önceki Boyamayı Tekrarla" #: res/swappy.glade:735 msgid "Clear Paints" msgstr "Boyamaları Temizle" #: res/swappy.glade:763 msgid "Copy Surface" msgstr "Yüzeyi Kopyala" #: res/swappy.glade:779 msgid "Save Surface" msgstr "Yüzeyi Kaydet" swappy-1.5.1/src/render.c000066400000000000000000000352721433652042100152640ustar00rootroot00000000000000#include #include #include #include #include "algebra.h" #include "swappy.h" #include "util.h" #define pango_layout_t PangoLayout #define pango_font_description_t PangoFontDescription #define pango_rectangle_t PangoRectangle /* * This code was largely taken from Kristian Høgsberg and Chris Wilson from: * https://www.cairographics.org/cookbook/blur.c/ */ static cairo_surface_t *blur_surface(cairo_surface_t *surface, double x, double y, double width, double height) { cairo_surface_t *dest_surface, *tmp_surface, *final = NULL; cairo_t *cr; int src_width, src_height; int src_stride, dst_stride; guint u, v, w, z; uint8_t *dst, *tmp; uint32_t *s, *d, p; int i, j, k; const int radius = 4; const double sigma = 3.1; struct gaussian_kernel *gaussian = gaussian_kernel(radius, sigma); const int size = gaussian->size; const int half = (int)radius * 2; gdouble scale_x, scale_y; guint sum, pass, nb_passes; sum = (guint)gaussian->sum; if (cairo_surface_status(surface)) { return NULL; } cairo_surface_get_device_scale(surface, &scale_x, &scale_y); cairo_format_t src_format = cairo_image_surface_get_format(surface); switch (src_format) { case CAIRO_FORMAT_A1: case CAIRO_FORMAT_A8: default: g_warning("source surface format: %d is not supported", src_format); return NULL; case CAIRO_FORMAT_RGB24: case CAIRO_FORMAT_ARGB32: break; } src_stride = cairo_image_surface_get_stride(surface); src_width = cairo_image_surface_get_width(surface); src_height = cairo_image_surface_get_height(surface); g_assert(src_height >= height); g_assert(src_width >= width); dest_surface = cairo_image_surface_create(src_format, src_width, src_height); tmp_surface = cairo_image_surface_create(src_format, src_width, src_height); cairo_surface_set_device_scale(dest_surface, scale_x, scale_y); cairo_surface_set_device_scale(tmp_surface, scale_x, scale_y); if (cairo_surface_status(dest_surface) || cairo_surface_status(tmp_surface)) { goto cleanup; } cr = cairo_create(tmp_surface); cairo_set_source_surface(cr, surface, 0, 0); cairo_paint(cr); cairo_destroy(cr); cr = cairo_create(dest_surface); cairo_set_source_surface(cr, surface, 0, 0); cairo_paint(cr); cairo_destroy(cr); dst = cairo_image_surface_get_data(dest_surface); tmp = cairo_image_surface_get_data(tmp_surface); dst_stride = cairo_image_surface_get_stride(dest_surface); nb_passes = (guint)sqrt(scale_x * scale_y) + 1; int start_x = CLAMP(x * scale_x, 0, src_width); int start_y = CLAMP(y * scale_y, 0, src_height); int end_x = CLAMP((x + width) * scale_x, 0, src_width); int end_y = CLAMP((y + height) * scale_y, 0, src_height); for (pass = 0; pass < nb_passes; pass++) { /* Horizontally blur from dst -> tmp */ for (i = start_y; i < end_y; i++) { s = (uint32_t *)(dst + i * src_stride); d = (uint32_t *)(tmp + i * dst_stride); for (j = start_x; j < end_x; j++) { u = v = w = z = 0; for (k = 0; k < size; k++) { gdouble multiplier = gaussian->kernel[k]; if (j - half + k < 0 || j - half + k >= src_width) { continue; } p = s[j - half + k]; u += ((p >> 24) & 0xff) * multiplier; v += ((p >> 16) & 0xff) * multiplier; w += ((p >> 8) & 0xff) * multiplier; z += ((p >> 0) & 0xff) * multiplier; } d[j] = (u / sum << 24) | (v / sum << 16) | (w / sum << 8) | z / sum; } } /* Then vertically blur from tmp -> dst */ for (i = start_y; i < end_y; i++) { d = (uint32_t *)(dst + i * dst_stride); for (j = start_x; j < end_x; j++) { u = v = w = z = 0; for (k = 0; k < size; k++) { gdouble multiplier = gaussian->kernel[k]; if (i - half + k < 0 || i - half + k >= src_height) { continue; } s = (uint32_t *)(tmp + (i - half + k) * dst_stride); p = s[j]; u += ((p >> 24) & 0xff) * multiplier; v += ((p >> 16) & 0xff) * multiplier; w += ((p >> 8) & 0xff) * multiplier; z += ((p >> 0) & 0xff) * multiplier; } d[j] = (u / sum << 24) | (v / sum << 16) | (w / sum << 8) | z / sum; } } } // Mark destination surface as dirty since it was altered with custom data. cairo_surface_mark_dirty(dest_surface); final = cairo_image_surface_create(src_format, (int)(width * scale_x), (int)(height * scale_y)); if (cairo_surface_status(final)) { goto cleanup; } cairo_surface_set_device_scale(final, scale_x, scale_y); cr = cairo_create(final); cairo_set_source_surface(cr, dest_surface, -x, -y); cairo_paint(cr); cairo_destroy(cr); cleanup: cairo_surface_destroy(dest_surface); cairo_surface_destroy(tmp_surface); gaussian_kernel_free(gaussian); return final; } static void convert_pango_rectangle_to_swappy_box(pango_rectangle_t rectangle, struct swappy_box *box) { if (!box) { return; } box->x = pango_units_to_double(rectangle.x); box->y = pango_units_to_double(rectangle.y); box->width = pango_units_to_double(rectangle.width); box->height = pango_units_to_double(rectangle.height); } static void render_text(cairo_t *cr, struct swappy_paint_text text) { char pango_font[255]; double x = fmin(text.from.x, text.to.x); double y = fmin(text.from.y, text.to.y); double w = fabs(text.from.x - text.to.x); double h = fabs(text.from.y - text.to.y); cairo_surface_t *surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, w, h); cairo_t *crt = cairo_create(surface); pango_layout_t *layout = pango_cairo_create_layout(crt); pango_layout_set_text(layout, text.text, -1); g_snprintf(pango_font, 255, "%s %d", text.font, (int)text.s); pango_font_description_t *desc = pango_font_description_from_string(pango_font); pango_layout_set_width(layout, pango_units_from_double(w)); pango_layout_set_font_description(layout, desc); pango_layout_set_wrap(layout, PANGO_WRAP_WORD_CHAR); pango_font_description_free(desc); if (text.mode == SWAPPY_TEXT_MODE_EDIT) { pango_rectangle_t strong_pos; struct swappy_box cursor_box; cairo_set_source_rgba(cr, 0.5, 0.5, 0.5, 0.3); cairo_set_line_width(cr, 5); cairo_rectangle(cr, x, y, w, h); cairo_stroke(cr); glong bytes_til_cursor = string_get_nb_bytes_until(text.text, text.cursor); pango_layout_get_cursor_pos(layout, bytes_til_cursor, &strong_pos, NULL); convert_pango_rectangle_to_swappy_box(strong_pos, &cursor_box); cairo_move_to(crt, cursor_box.x, cursor_box.y); cairo_set_source_rgba(crt, 0.3, 0.3, 0.3, 1); cairo_line_to(crt, cursor_box.x, cursor_box.y + cursor_box.height); cairo_stroke(crt); } cairo_rectangle(crt, 0, 0, w, h); cairo_set_source_rgba(crt, text.r, text.g, text.b, text.a); cairo_move_to(crt, 0, 0); pango_cairo_show_layout(crt, layout); cairo_set_source_surface(cr, surface, x, y); cairo_paint(cr); cairo_destroy(crt); cairo_surface_destroy(surface); g_object_unref(layout); } static void render_shape_arrow(cairo_t *cr, struct swappy_paint_shape shape) { cairo_set_source_rgba(cr, shape.r, shape.g, shape.b, shape.a); cairo_set_line_width(cr, shape.w); double ftx = shape.to.x - shape.from.x; double fty = shape.to.y - shape.from.y; double ftn = sqrt(ftx * ftx + fty * fty); double r = 20; double scaling_factor = shape.w / 4; double alpha = G_PI / 6; double ta = 5 * alpha; double tb = 7 * alpha; double xa = r * cos(ta); double ya = r * sin(ta); double xb = r * cos(tb); double yb = r * sin(tb); double xc = ftn - fabs(xa) * scaling_factor; if (xc < DBL_EPSILON) { xc = 0; } if (ftn < DBL_EPSILON) { return; } double theta = copysign(1.0, fty) * acos(ftx / ftn); // Draw line cairo_save(cr); cairo_translate(cr, shape.from.x, shape.from.y); cairo_rotate(cr, theta); cairo_move_to(cr, 0, 0); cairo_line_to(cr, xc, 0); cairo_stroke(cr); cairo_restore(cr); // Draw arrow cairo_save(cr); cairo_translate(cr, shape.to.x, shape.to.y); cairo_rotate(cr, theta); cairo_scale(cr, scaling_factor, scaling_factor); cairo_move_to(cr, 0, 0); cairo_line_to(cr, xa, ya); cairo_line_to(cr, xb, yb); cairo_line_to(cr, 0, 0); cairo_fill(cr); cairo_restore(cr); } static void render_shape_ellipse(cairo_t *cr, struct swappy_paint_shape shape) { double x = fabs(shape.from.x - shape.to.x); double y = fabs(shape.from.y - shape.to.y); double n = sqrt(x * x + y * y); double xc, yc, r; if (shape.should_center_at_from) { xc = shape.from.x; yc = shape.from.y; r = n; } else { xc = shape.from.x + ((shape.to.x - shape.from.x) / 2); yc = shape.from.y + ((shape.to.y - shape.from.y) / 2); r = n / 2; } cairo_set_source_rgba(cr, shape.r, shape.g, shape.b, shape.a); cairo_set_line_width(cr, shape.w); cairo_matrix_t save_matrix; cairo_get_matrix(cr, &save_matrix); cairo_translate(cr, xc, yc); cairo_scale(cr, x / n, y / n); cairo_arc(cr, 0, 0, r, 0, 2 * G_PI); cairo_set_matrix(cr, &save_matrix); switch (shape.operation) { case SWAPPY_PAINT_SHAPE_OPERATION_STROKE: cairo_stroke(cr); break; case SWAPPY_PAINT_SHAPE_OPERATION_FILL: cairo_fill(cr); break; default: cairo_stroke(cr); break; } cairo_close_path(cr); } static void render_shape_rectangle(cairo_t *cr, struct swappy_paint_shape shape) { double x, y, w, h; if (shape.should_center_at_from) { x = shape.from.x - fabs(shape.from.x - shape.to.x); y = shape.from.y - fabs(shape.from.y - shape.to.y); w = fabs(shape.from.x - shape.to.x) * 2; h = fabs(shape.from.y - shape.to.y) * 2; } else { x = fmin(shape.from.x, shape.to.x); y = fmin(shape.from.y, shape.to.y); w = fabs(shape.from.x - shape.to.x); h = fabs(shape.from.y - shape.to.y); } cairo_set_source_rgba(cr, shape.r, shape.g, shape.b, shape.a); cairo_set_line_width(cr, shape.w); cairo_rectangle(cr, x, y, w, h); cairo_close_path(cr); switch (shape.operation) { case SWAPPY_PAINT_SHAPE_OPERATION_STROKE: cairo_stroke(cr); break; case SWAPPY_PAINT_SHAPE_OPERATION_FILL: cairo_fill(cr); break; default: cairo_stroke(cr); break; } } static void render_shape(cairo_t *cr, struct swappy_paint_shape shape) { cairo_save(cr); switch (shape.type) { case SWAPPY_PAINT_MODE_RECTANGLE: render_shape_rectangle(cr, shape); break; case SWAPPY_PAINT_MODE_ELLIPSE: render_shape_ellipse(cr, shape); break; case SWAPPY_PAINT_MODE_ARROW: render_shape_arrow(cr, shape); break; default: break; } cairo_restore(cr); } static void render_background(cairo_t *cr, struct swappy_state *state) { cairo_set_source_rgb(cr, 0, 0, 0); cairo_paint(cr); } static void render_blur(cairo_t *cr, struct swappy_paint *paint) { struct swappy_paint_blur blur = paint->content.blur; cairo_surface_t *target = cairo_get_target(cr); double x = MIN(blur.from.x, blur.to.x); double y = MIN(blur.from.y, blur.to.y); double w = ABS(blur.from.x - blur.to.x); double h = ABS(blur.from.y - blur.to.y); cairo_save(cr); if (paint->is_committed) { // Surface has already been blurred, reuse it in future passes if (blur.surface) { cairo_surface_t *surface = blur.surface; if (surface && cairo_surface_status(surface) == CAIRO_STATUS_SUCCESS) { cairo_set_source_surface(cr, surface, x, y); cairo_paint(cr); } } else { // Blur surface and reuse it in future passes g_info( "blurring surface on following image coordinates: %.2lf,%.2lf size: " "%.2lfx%.2lf", x, y, w, h); cairo_surface_t *blurred = blur_surface(target, x, y, w, h); if (blurred && cairo_surface_status(blurred) == CAIRO_STATUS_SUCCESS) { cairo_set_source_surface(cr, blurred, x, y); cairo_paint(cr); paint->content.blur.surface = blurred; } } } else { // Blur not committed yet, draw bounding rectangle struct swappy_paint_shape rect = { .r = 0, .g = 0.5, .b = 1, .a = 0.5, .w = 5, .from = blur.from, .to = blur.to, .type = SWAPPY_PAINT_MODE_RECTANGLE, .operation = SWAPPY_PAINT_SHAPE_OPERATION_FILL, }; render_shape_rectangle(cr, rect); } cairo_restore(cr); } static void render_brush(cairo_t *cr, struct swappy_paint_brush brush) { cairo_set_source_rgba(cr, brush.r, brush.g, brush.b, brush.a); cairo_set_line_width(cr, brush.w); cairo_set_line_join(cr, CAIRO_LINE_JOIN_BEVEL); guint l = g_list_length(brush.points); if (l == 1) { struct swappy_point *point = g_list_nth_data(brush.points, 0); cairo_rectangle(cr, point->x, point->y, brush.w, brush.w); cairo_fill(cr); } else { for (GList *elem = brush.points; elem; elem = elem->next) { struct swappy_point *point = elem->data; cairo_line_to(cr, point->x, point->y); } cairo_stroke(cr); } } static void render_image(cairo_t *cr, struct swappy_state *state) { cairo_surface_t *surface = state->original_image_surface; cairo_save(cr); if (surface && !cairo_surface_status(surface)) { cairo_set_source_surface(cr, surface, 0, 0); cairo_paint(cr); } cairo_restore(cr); } static void render_paint(cairo_t *cr, struct swappy_paint *paint) { if (!paint->can_draw) { return; } switch (paint->type) { case SWAPPY_PAINT_MODE_BLUR: render_blur(cr, paint); break; case SWAPPY_PAINT_MODE_BRUSH: render_brush(cr, paint->content.brush); break; case SWAPPY_PAINT_MODE_RECTANGLE: case SWAPPY_PAINT_MODE_ELLIPSE: case SWAPPY_PAINT_MODE_ARROW: render_shape(cr, paint->content.shape); break; case SWAPPY_PAINT_MODE_TEXT: render_text(cr, paint->content.text); break; default: g_info("unable to render paint with type: %d", paint->type); break; } } static void render_paints(cairo_t *cr, struct swappy_state *state) { for (GList *elem = g_list_last(state->paints); elem; elem = elem->prev) { struct swappy_paint *paint = elem->data; render_paint(cr, paint); } if (state->temp_paint) { render_paint(cr, state->temp_paint); } } void render_state(struct swappy_state *state) { cairo_surface_t *surface = state->rendering_surface; cairo_t *cr = cairo_create(surface); render_background(cr, state); render_image(cr, state); render_paints(cr, state); cairo_destroy(cr); // Drawing is finished, notify the GtkDrawingArea it needs to be redrawn. gtk_widget_queue_draw(state->ui->area); } swappy-1.5.1/src/util.c000066400000000000000000000030221433652042100147460ustar00rootroot00000000000000#include "util.h" #include #include gchar *string_remove_at(gchar *str, glong pos) { glong str_len = strlen(str); gchar *new_str = g_new0(gchar, MAX(str_len, 1)); gchar *buffer_source = str; gchar *buffer_copy = new_str; glong i = 0; gint bytes; gunichar c; if (pos <= str_len && g_utf8_validate(str, -1, NULL)) { while (*buffer_source != '\0') { c = g_utf8_get_char(buffer_source); buffer_source = g_utf8_next_char(buffer_source); if (i != pos) { bytes = g_unichar_to_utf8(c, buffer_copy); buffer_copy += bytes; } i++; } } return new_str; } gchar *string_insert_chars_at(gchar *str, gchar *chars, glong pos) { gchar *new_str = NULL; if (g_utf8_validate(str, -1, NULL) && g_utf8_validate(chars, -1, NULL) && pos >= 0 && pos <= g_utf8_strlen(str, -1)) { gchar *from = g_utf8_substring(str, 0, pos); gchar *end = g_utf8_offset_to_pointer(str, pos); new_str = g_strconcat(from, chars, end, NULL); g_free(from); } else { new_str = g_new0(gchar, 1); } return new_str; } glong string_get_nb_bytes_until(gchar *str, glong until) { glong ret = 0; if (str) { gchar *sub = g_utf8_substring(str, 0, until); ret = strlen(sub); g_free(sub); } return ret; } void pixel_data_print(guint32 pixel) { const guint32 r = pixel >> 24 & 0xff; const guint32 g = pixel >> 16 & 0xff; const guint32 b = pixel >> 8 & 0xff; const guint32 a = pixel >> 0 & 0xff; g_debug("rgba(%u, %d, %u, %u)", r, g, b, a); } swappy-1.5.1/swappy.1.scd000066400000000000000000000067511433652042100152270ustar00rootroot00000000000000swappy(1) # NAME swappy - grab and edit on the fly snapshots of a Wayland compositor # SYNOPSIS *swappy* [options...] # DESCRIPTION swappy is a command-line utility to take and edit screenshots of Wayland desktops. Works great with grim, slurp and sway. But can easily work with other screen copy tools that can output a final image to *stdout*. swappy will save the annotated images to the config *save_dir*, see below. If absent, then if it will try to default to a *Desktop* folder following this pattern: *$XDG\_DESKTOP\_DIR*. If this variable is not set, it will revert to: *$XDG\_CONFIG\_HOME/Desktop*. If *$XDG\_CONFIG\_HOME* is not set, it will revert to: *$HOME/Desktop*. # OPTIONS *-h, --help* Show help message and quit. *-v, --version* Show version and quit. *-f, --file* An image file to load for editing. If set to *-*, read the file from standard input instead. This is grim friendly. *-o, --output-file * Print the final surface to ** when exiting the application. If set to *-*, prints the final surface to *stdout*. Note that the *Save* button will save the image to the config *save_dir* parameter, as described in the DESCRIPTION section. # CONFIG FILE The config file is located at *$XDG\_CONFIG\_HOME/swappy/config* or at *$HOME/.config/swappy/config*. The file follows the GLib *conf* format. ``` [Section] key=value ``` The following lines can be used as swappy's default: ``` [Default] save_dir=$HOME/Desktop save_filename_format=swappy-%Y%m%d-%H%M%S.png show_panel=false line_size=5 text_size=20 text_font=sans-serif paint_mode=brush early_exit=false fill_shape=false ``` - *save_dir* is where swappshots will be saved, can contain env variables, when it does not exist, swappy attempts to create it first, but does not abort if directory creation fails - *save_filename_format* is the filename template, if it contains a date format, this will be parsed into a timestamp. Format is detailed in strftime(3). If this date format is missing, filename will have no timestamp - *show_panel* is used to toggle the paint panel on or off upon startup - *line_size* is the default line size (must be between 1 and 50) - *text_size* is the default text size (must be between 10 and 50) - *text_font* is the font used to render text, its format is pango friendly - *paint_mode* is the mode activated at application start (must be one of: brush|text|rectangle|ellipse|arrow|blur, matching is case-insensitive) - *early_exit* is used to make the application exit after saving the picture or copying it to the clipboard - *fill_shape* is used to toggle shape filling (for the rectangle and ellipsis tools) on or off upon startup # KEY BINDINGS ## LAYOUT - *Ctrl+b*: Toggle Paint Panel ## PAINT MODE - *b*: Switch to Brush - *t*: Switch to Text - *r*: Switch to Rectangle - *o*: Switch to Ellipse - *a*: Switch to Arrow - *d*: Switch to Blur (d stands for droplet) - *R*: Use Red Color - *G*: Use Green Color - *B*: Use Blue Color - *C*: Use Custom Color - *Minus*: Reduce Stroke Size - *Plus*: Increase Stroke Size - *Equal*: Reset Stroke Size - *f*: Toggle Shape Filling - *k*: Clear Paints (cannot be undone) ## MODIFIERS - *Ctrl*: Center Shape (Rectangle & Ellipse) based on draw start ## HEADER BAR - *Ctrl+z*: Undo - *Ctrl+Shift+z* or *Ctrl+y*: Redo - *Ctrl+s*: Save to file (see man page) - *Ctrl+c*: Copy to clipboard - *Escape* or *q* or *Ctrl+w*: Quit swappy # AUTHORS Written and maintained by jtheoof . See https://github.com/jtheoof/swappy. swappy-1.5.1/test/000077500000000000000000000000001433652042100140205ustar00rootroot00000000000000swappy-1.5.1/test/images/000077500000000000000000000000001433652042100152655ustar00rootroot00000000000000swappy-1.5.1/test/images/large.png000066400000000000000000004352051433652042100170760ustar00rootroot00000000000000PNG  IHDR n[bKGD IDATxuTsvΥSBZE R*(((tHwwwlμ{~ى7Alpw'yq}{. C@n>󐖼j_iɌGT 4n\'>6au B{i="5̹_13!"!" *2TVĕ!c A [ $#"eA[XnFPBSN!RBved,c $  )D(Uˡ`1fGvk%'B)U"BH E!"B!* nc-G R"8ubdHJi3K%HՌHR~~qqq^F/(J5lEߥm]XdShwXqۅF;F5m;J;&.e졳dkrs5]}kN9Z1*D?v츪;9FވKٿFa1"I"IDzJnV9Jg=jGi׊@I  @fD(Òc%aY"((Ql svg^Ӣika?Zi6b j}Wb'B sUYYv $r :tjE:JdXc8$8D "$BrHe,oGsRvraGB% úElicwqR3"[dD @"גc|^?5q:>cNlzpkS9eehkcy vW$") /SThH>!Dٲe=.IZߌ;|r~ *+"Y&i +`Z%o F@i 7@BU5i]D(P)~6j90ϰB+o;[O3DFd2 E݈!F,RUvڔ(^o(U@ 8#]'D88#۰Ed"me\,;_NY!v>I"I`0ilq#bMo٢hBHwBT3~n 9Ϯ.c Msbn\c̅PhPŒIϝ8=PK( "*UJ1䔔k׮* K>B ^?2sYπt=n$/7`y5,(攰 JA {|^c7']ڭ,w<Ǖ݄B,hU ifTR ȗ/JR-V"R7vk;sZ P+]u֝ TUu{-,#cnNZMd8J.spEXGQ@RZÞrgY;v3q /g0+˓li,= l6QXXݻ[l{7NUU0<7c[cӞːqr.P) @^/vةu`$3P%2$p 8VniYwb%R JPI LBKRSM&zEɤ5xn‹eFtxA/7- z'M)dU;unբBЦ]H}jl{M+<}"F&|D}=W!mWz\_3XhK@hS{.11 Z爫YأAN!PYU[ڤǪDJƛh7(%W=cy GUU"" j0  W._6JHflMY8#-c, $D"BB$eE$ K2"!I[L܉@*P(TUE"rֻͫ*sَ )kP8>e&Zjڷ;v?+_w2Өݳa,Kߕ_c_WkIs nߪv+7͉UW=:Uί=BjeK6\_f(Gg[ {cpݞ;u,'8F" wRB̶0sKmq٢)9ϙ]è9k9k?4nw&yxha,WNӦ+1>Тx~7|=|ϔV_[! +Ky.a[k,?֝8ÞџMa*`5rWq6{!Z祳M穁c,7CpLFmtIʔTu=c b%@fDDdwH+'EhgO"eC']>UO.^*};rm)i]îVs?Ʋu'T DTRjUA! Y1U”*ͪbVB!IlNUn[8Ę>*1ǵ U9y1&:U,Tp^/,c/8B/MMݞٮ  קwRA"Nr w ֌/W!;FDS.2Og'|Lt!o :fV!9eX\1߿z/M\˕J\pQ~*U`c[#GtaCrUx[?+}©I~,8w4X3{Wm\|u[<}Guoujb̚jcel WMޞ;V()=LI(p l>fj:A:G֔O'S=@on/6/;خSN+\~{G\_>sNxa>b~wQ^4k_SScֆGr1UⶐGQ Ңs,csjGRJ|E@T@(Z DDR,Gl#`|_Ǫ#޹aKd`Nm_.9k=kߟY'IZ}V wTH(HBKqhl4v#hbiKgzڣNm67|(e|T\rsoAǷN#O1ФiqЦжmf͚H"IZ.lm|HKB(RKȠJ@ZRCfՌuLeml[LyLd"+W.Ϛ5sU>(`B"*$t*:\r*XRǫTh4оFz{?" Y.٦ e{}[~\#k(}[yXg}֭p$wRo9}l;P E{ QXMxS_oK3ZB+ڠ-3$\eb+CwGiussf13N-_7kڵ^nVr=^٧ߒrzߧӟ[}ؾc~ܳ^@JEW5O+uV%m9kJz\ L!4o_ЖmP|˖~k^[yڤr\HLjam{.QΎݗ1oZt4Sšv{|dNӖvZc(פ^X?鲡R{k*Λ6:Ǐ-v [B;_J }퓥WTտ8GAw*Jr8kE~݊0@Q8c D󶍽⥿0nӆun/\e|Pl_w[uV8oܪrc:}ܾ/hUS,h>s ?vvǜ 6އtdwtgpO+9 O:-*%b.e/ /Oޏ"%1TU#$Xg⻯,sڅ,,='피}7 bJ3uQ$:XY{^2kO^w_wm&- eBHIzfݲxS>[? GEOjgo~"8VSiĀ'y_QĈ !{eː5\MUM^R_^]0q.ĠR5BHӅm5b{_>tj2_G~\Nz``bІP)e~-f}@)X(?$YլҔl Pe̛>>zjٌw]|!$hQQZ_]|YlkUKowztOg}ZQO-ucsw n;c%>jݶצ]>]Wؑ u_t{:h&rK29 }|}@6g~ |9k& .pQVI@B/RmwiR 5yޯ ֓9cs1Xpef= C[5,㝜eznƫJ~~ ʄMn_IkqT!͍rWY% nךwo7)ON깥5PTVV'h|lzt6DQW6!vV3GwJ.+Vp 7cM~Ǻ3-[TomC.yV-ڹhzD_ӎF57ңʹ "W},g*({S! t__U-k od"^fG'0jʵkcF n8B<ࠠMg_9兵3y͍ūwf6QQz ^&էNΘ{QmܾaկPC;h(R(vɐ3vŧS6g 7PBtt zU,"yr}stK~Xm",Bh i&&~ѻ8o/}*@JFKh(ڷйBn*tzia@nOE(Y)^ Ӹtțkv~U6ݐ`(QW^?u._j֬9}>ɊON4-.5J;rՙ/ߐ^voQ (ebn\MpzH t{ΰ!ݙ:y-C}aO6 SdMJ'F~3m>0oǜrZ'oJ3tzkbHm1vOD󧫦rk~_R|uRb~#p256%K7G IP ^?AK.klɳ]{q{ IDAT!knj1c.)J&Prսwhc̝ݟyuV~2^^0Oˠ2e½5kf;cL6}e* ys3eiտl(._=5e'Dj)۹́8^aXZf|CJB75={{c="yq햟~x"E (J8O9[1W;eԎ|s%V]Q ؊w/%%@9e7kiAB F8]ZQrJJ"EhL}^0_? Q>({=۹klq:kvTg;gvxcа{Тi_fϟ:UZ:We2%ŋQ+@땗TJ:0ǵ{3Ŝ:r}"0%4c`nt󂄕6o9p马']tIv?U*4k(bOԻu1_|I嬅)!@VRS2Y_te O+OBkk3UNv%S7\|1`@^^RZ޶C<ޯZw_9NٯxoOtEw(yq!oo|4/,ŗjjJ_lb km[fOׯ'?8ڲ:R| }i=PȔFuDAg\3W.eD n@xňPK7\rcI۲pщ$.;OZulou?c,(c9݌NyGqcYbn.PKC>|cOI-)W$ Tw+6ӇO+k Ջ~.OQ}%qzCblxhx:&TB xq5Gؘ]*[Mb5?YtуgIGվz~MRb2fӞbugsl\ YR2P$٫%넟vVWIA-®oqH%N5ʗ/tTD@VAұ?>OVsI* _O2{?5ySo)r4&}֎(گ3C]+PQwPؾOp7@-lCF*anvOp @.ټ#].h,ԠcwL&]K(YӣzU7kz {(ԦW/οV϶hdH{1FW4P-;/6>yMZ[=CUi]tvЕ'u#ח_,%I~s]sφO(j]-Jw<ݩ.%?vG3c1w ,x2XFBݦ.M=zlZqz pC>aϔj}x_xwߴ;-oD_sm,8^t,Wz^Kw«ԏ%Dnba/ H o %ܼ}j./ (SS]"8VSRk&xAQ~4٬EkI)QoewʖzHh<Ź:6l6 ZM2uG[=]xx3ȹochɿ/QDFE/]2 ˬRhg-vyW@@?|u3dFlS1sa{?sR۾jgB bp y!+FoSZ=6WF-?SoOY#j?6˥5>s38׬:wSgavJR|8!]{HtsLbFWvU%*ߍn{.bsW`SW!R[VBvĒ9}dϧ2=ŷlEN oۗ@+>5l\+{zUkΤUe×X)6%؝S^ܩom7];0)Oq>sYvN\fӽ@?DAWOL]4%^4oKךu^2%]]>oQ9R/Q/UgR͞{5vh٠a9ڨ  䵅vq62G?L\N7< XI"Uʸwtv7/ZNRfO̓nڗ*Ś }EЩSeѴ;d>bLwSZc÷w>>eZ|{sY_VR΅o9zDT~rNa}U7V,@"t lvו/Zύʐ3FjrRPBէzA 5sJ>1J2ŽLvXbPFi ߬7nK?@?slKq{уz7)/HM_zmjGJ<0mKN<~7;wiբ|7"L<6xuYK?_¼k1|s+~1cy7CߎŒǜ8k= jz |I]^[hvvا=F{뙛*wp~]~T$W(^(\0+}xE%08EBWm;G>]U{ҠOƽcP=ӥe^#Jvb|m (׼vhۙxQY`>io$ {,mH'i QDLHmly Bf3ҡ7.hw9aܵuZs>[1\lt'2zCZ(#1MR+WJ)CCCn2dg70po}'.c>2]䙯g}7&r}7UKK?vvZQXY7xwSVˌ-z}Z.j}ЈwJ8!N)BUU6HJy3 oxe}yx۬hM=b_/he_\<vוvnط߶8qPbU ½X,j&1?j@JyA^6WwF>e+G NT]AJBr7LNK^.]Jc9}+Qc9CNFXݤUqet`p/7|]euN:ⴞ"GN;@0n+nGB7+4^UR^8EiF"©RRSٱ@ ,c,/ ܡ}kXr]]3gӚ]jwnRHƟ،=>J wD:+pgwbq>Ee R曯DٓiO[W Q\JΙ0۳}>PQŨ9ߜ[?_ΐ [1onR)_B :k}>B C ^0ܩDxa%X@Z!(BHRmֻvd c,K eѻ>4:Ѧ5Kq,2ThZٶC#W+#R)زV_L/#ncP)G$.٢gJv sxtfeWQ ۰a\pX{e+9ft(c" {\50AáC c&mr;t1o|)9e%fwc9蕳^ _ 3Hr`aHfщCX!X>mkJYmKU5RJYcjݲE1L(x&|11Y42gAv๓_=^DDD#=~B =z(aNOB ]Z^ac+ۙYl=vͳ)ӣ*f=Bgn.xy&,=vF:X k,w1ca5uVYm?e`cfwd|vyr gR D)h( )g1_PB5:5@$ ")% |\(~>*oGi]D`?ad˛dsirjiJc91Sֱ2L^x^ЊynXq/ch |1 @DdJ rz%cyF@Bc ! "ש:lw; cy\HvsDk+5vi1˻vWIhr:3΂Dm((Y6?!!\d=Cg 'A9琉1uɢ-.wȵ mi:,PKKd5wx-*Fz{y+WNQDRRsԞ@kp{ 8w'ғѬcuTIRJUd… ȟHJ @|.cYq#8hD"(0D4t17FLU.AZ6@)UK3HX3RE|9oiܹ̘Gn4Mn{9qfgn˸hg&&&Zrgf!hf !$ooooo/ |]8k@DD2 5"h{-/saLI ]<AE9dfڴY >S ,; 滰tBC@m쑐^6ƾ"vMM 9ځ!$BKO&cYb\%B " "˱Mo<:段]mmCc=Fl5< 9Uyݼ$@@@ҲP2#1x({seu9s8cx )LF3Ki-O- VŊwc2*ޛin^RRR;/bRiQ"nS1 e`1c1c1c1c1XyS81c1c1c1c1c,PBc1c1c1c1cơ1c1c1c1c1cC c1c1c1c1cǚQvveB޽(VB!)ͳWP9%G">ݰʕ;ܸ-?1c1c1c1cz9-+!|5BsZ2(CkwQu.D/8yX~|༯x^)(T^jTp֢SK<|yP:#ܲc1c1c1c1XvZQi0s^LgÌsgi[1D]t`ڗZ3o֚GuYNTd(a{oZǷӟ7{Y1n}Ц*pX3'K]s"}#.{bǖ1CUM •Ϋdl?1_ys¶_xƟ:sՍU=ݗ?y13rz1c1c1c1c=tDh9j!/eGbmAk?fmj]y?S| kt-E$g' *RJEܪx*ecW!7{}ʍH2ODp.JLsNzaُ`н{Cyf_T=}3TjX]És|Z>ՂjR=mv;k7x7%E ڳ siΚCq; dA>}Ȓh6;k׹VMKϿx{y\u^sIdRb-Xyye˖ڂz|JmބI[wjkI̳\qK*EM\r/MjǾԢ=?ϘMyGq?ݮA;0}Onc: W0u`/u|B|Іg>Gf?_T8wW!WȏcxzT}%"uJW/wQ='zzKw?޳P﹖C_tWen '߼Rb(|m߯3欼jJ}c1c1c1c1<dž2?ߴ<͚[CDgZ1G=WcjUL@#k6n]w"Zڑm6n]0xeY+F5E$ U)+,}5CQvso]3D} #. Xnj/ߠkyYބ^!饲ҧO9x!gjؿA)ڨk{w{ O7.|j*Ɯ ضSOW<(>Lg2K wIi6I/\4 w:anI /Q4.iq}fz^z'6\ 1haLQ[>]#1_W!+mBv↓-~QL~j0VY1|a0UŞٱxŚ?Wx!2w `hnNwoTlTz{'ܰ?zd}UA(xb=7w`h 훹zqwg+rzv(JqG7.p yX?1c1c1c1c,2PPDni'R0jѴ1jw~>^[^uX牵_W,{|),cH+PC"wnr%,+fC-L<՚6\K vpzz B7@0&1xׇ{>qeP-9f 0rӞc?Ln]:9`Λ* 'o-zg:T~ջ*&w߬Lӧ[Plemcytl TV}Ŗ(-kZʱn5j¸*jmonp2:dJxZ.OޤȫkoQz8~ݺȔj"4z¢JjÎ ??kCC1l7ְFt-K@7-ժW6O%V Tϯv}dG@ڻv/M|ֿLDYw˳Ԡ<.Ǘ=ݔ_|wb~h!@!Pߏ7\={'U*7l7=p|ΨV7+jM+y%ڽ+>m}ubI~ծ8E2YxmuO=k^9/O@52Y(O`]8ԣGM a?e" d>d1c1c1c1ce4F5ݎ2AYk0GFK Eyc{ zWڞgN(G+>^ G>huKo]e_wPiի['p"uzm#F/:qI.d2 P(y߷pbM.*+O{,9`W ݔP'DBt.mZD2kxOO-cG,_7HkFH*u'a[\o,2rQHt 'A~NFEEC >**W ?T1鐁'ٰ]Uղa,Fcv֬vW=W߾֏'^˙e;~L`c1c1c1c12N?+4[#:'PJJ2`XX``PK<@S((^2BDDu?$3Hb E3OH~8 e9ۓ/|u ,A4ƀ}/,VSGڵk|GQ*#)TyD/~5^V@MJ3c,קvJIL"#%%{d,@LRs>at6.!Kߘn=n=ΩOjX=|~H۲=Ezj4O, LK|υfKM@AAP b?{yw=ήA@BH(M۟y=,ٸ!h?dd333y/ĭigpֆ. 7~?q:7xKĮz+]bv,3[k)Nk+L`%~SW>>E67k@#٧#8c @?3P5 '.jF"Ni;_Vp#cF""x⧒yL+4ax3 ;t&z}O4j6}yBl[,1~8'& S4|{" ;6tq"Cmm06eѪ"$4d|%W<=Sc}{mݲE;IͮF%m;ciϟ^>yg۝3ST;bAĿ/YxDp,lꬉ7;t wU>?X:r$z,RX5k)iQC9Lb Jm).:dK#<9N[€(cQO=x +znuo>|Ef$;NT ҷo{9R,RR;oV '-^=5.46Ԛ7t@=b,]w;ωxGok{ 㴺r.{Ѩ|WrHOf'^^_+ibR'^߭9VED/|`/%4f6H9gWKFU7&ܖXHDDB7ocۢ ",>xzۛ7#@B|Z1̼KɘߺsA ? ̻^Xum oH)tTm}&cb|Gۑp{ю뻚zj_vuo'1YO.%H;Z.OYX*YᄑnLqВuţ{b҇k>L/R9XKd SnβM}vYiO֘C=F""f1foV6[o;%y_N7"">x7: YodBMGK#ZVktZyKD}ʼnF=oc&wF-P2d¼g5@? 8y?Y_,"-uf06_>zpOF/z͏֬]nWo!=IछoF91""Yܪ֮_~>yx\tzstIPHڎnwyT/^pUWbw.NtؑdٟNy7mZo$+-_Jmd}Fp/4\7c+$Kjr~uV"s$/}`Y2 +턞nݹe f*rZ91gWgf,'&"\ s$D^".cd?kfR+^;&Йg-y휈9^x]왮ضO>Ry5 .ieM镓4ӏ*>p9,򦇖*c"9ONN{?y~pF`!|%7<4oJ[cIH_s|=n;wϞ={ё,׮yܪ֭?cޒ{떭W.[8D$ ㋓g5,>H%c+\'kwW;.xi]R Z%t|/:,TƦ;ꎮ~\wFD Fyw~y~8KO5jtes9LHv~ȨPc>_杔aײ?#UoqzXo}?>=>&: D}bǶnW܌݇+tt\}5GIjbXzIJ U}6TH?OصÅN۴@e,-%$?X8&|X?cݵyf*p"B:4V#񎦖˭S:*y}ށYFzO}٦g35aP-JBb(J;[ DDΔ* ~Hjb_}kv A`Ҁ%|G GsR=յuUݹ2'0d[udxG:9&$y֯q-xvNnla3[C$gcwG.|)gϡruěL]jژLӟ4R.]J3QliihtsW0?M~胷w:\=Tcni:ݵygԅ?TMHr2tD}:Aےyޔ͉+hzz8pSΌ7wI$r9$J'$hzz8g%{H[ehdËl8$ _KFxK 3! 1|?g{S]kmzr2Nt%'bNi|b}Q/ OM{9EV"f(9+E)'$:g6],zcB״HPϗ/mϩ2)d\3 ZxR-=nl|>|u1WI.-ؘyG~''2T֚R<|WdƬ; 3J:罎'xծYgIY3v䐎c/=zbi*c'pU՞n"ZQI 1#{??UW|{G%&whw-d-1c'LL;*zTr IDAT n"j(*V:>QQT;KۘӤPnl0hοX׭~P-L`sL0j :+PGC@2PRBa K 5ix\u7 u$~¥-5:>9Eɺ[ C SL=mQsUԫ(s/m]mykw`|[s Iw\ nJA"\Lд_ a0\u`VB2~Z|~kdCdIEC/& XҔ1_p܏^sWS̸u('qu;^%um';xXҘwٰi3 %!i׍t()-++iĸwFUۛ'RVO=H'|\GjuŭZn"woeA*%lm˳eo"u7MLw}9m3馕Krʓ>tvOEώ;~Q9N7U_Fz:یUevy`Uqns1=1~!meIO}#:Piʷ^}z|vDeԼۗJ qv]Ɇ#IÖB ޽_3]}wbBo>~Z+i7Oteչk?:$ޮڙvk9DISDn\r_&.iTDDQ<tj@Dۿ&ȉ87h4E'N毼"9Sk}dB]۴JYI6MWjWg7ye:uZ?]m`|[\5G.#s<[ =fI^ک_Axlqpwql N moq͉vJd]///~ɔt d'Y?>9$['S"%WY"1k|ryPytq_bG4K{p߁3*'9))*Χ/n *HϦԅ=y5b%Z ۜn9ulJZ_"Nwav|ɖvND1jsܥ]59k?:-yԊuמ|?so |L w5OnM?2ʐ G('7i11Yp1D=. k]Ԕ3 .\4To v7-\Sd1VpN)Ӟ9o[BpWK1;:3SMY:Φ.SqCpVVsjowf"s$/}`NT:r[/zwod +ۻ5ve]X{E/?ݒ&el<'x3Ugx|1+Ş*m-OxvKkܿ)3p՛_צ"|?^s<&83֮~w^4΋\Ofv"5i~-HyTO/7#aʥ׎ t;~]/,/VϙK>Pupa]S޹DDdpJwO qV]gUqr""̚Ddyjf.1kOm?.߷`QtK{5E.vd,C"#3Ois1n Op15Zi}Xrw~HOv豤|phb8T/K"6̞׫9E碭Rl?'Ī ׋VSo?0v.HM$ VoyJ$߳/佹Άr{C#ksrՂ"1y-ލ[ƥZQqƓ K_z76^hRgl̍ԲCY- 3Sw:ks2 FS.!"Uw*u'קH۪i99KnߜUs# V5nj}h!owP7uwsL72at[J+;9)=WV7Onh;.dQ/ r15?uGZt,[ҼQR}J,=l Q;RN~eo;6sqmƟ}w7z+CCD߿xjǏmG[V,U9L55nT;|&K m)1('^yzEji~cdGX HU5G;œΥd>}sǎl8a!%/[#аo O0-|RVb3SL$czM]~_ư1UϏs+ M ro8XE=o*=s>cOſL캔ݱUIgQB']NuR飝M1^?ӯ?;f"y4*T{͜J7.rqM9[yW瘸y3|XW[Dhu34w.g ?Ϳݯ`~N:țyx^"cOO7՝1?rr&ZEǟ^.W״g 7ufci룻Nң%9 򨙓!#9f,7msNN*-:Ґy m]= FtLk8][#x',)5MD~ww#e:UcN}$E-RIF.[ʛ3Ad#7 ה*ܗ^xwlH|?!Yhqs:7]$㽴+5:ntofysBuSGZF$/ !bn&ϝUW]8Ic4siaISDE(;NfG)ˣm8#ݚԼ]g<\\C]: r"?7"bʙ^RM 2yQ22Z2 Ʈím["tet\]|pua"rvr1vew n6WiLȣ~EZߔԀkk!EDX_FmƓWkPMwL] Kq񊞢"K|gʙuO1ȅyO^fmht ;-R: sd5INnȈwDxvDDԙ g-<7m>>۲Ucc쉈Qә-|kebe]{μD.swKuFIw5S]K\UKk*|'E) *z<(uThԪ"GKH⎑SF:if:dm?8&a #yf>CwubCe`DDeKD>ż .D$ vST#Fja#OLۛ^->1U0?>J޺wCAr=;J;o .-hS͝|s8Ҽzk\[dTĄɈ##妊vn|)+Tc w7ţ&"\p߇k} W[G+:/7Dw.Kw M?2S?.b;trO޽O1BRRw"~Xkw DN|WSJTFOF[8DF)kv[yyxJZ"xl-sĪ1p79f"s$&nn7bџDx{HԃqTP'Oɮjџ$7ޒA ?𧤀7zdq#tU yWޮcy$98\|9؊?T:Jv}Ye`㯹=OxkjH:bz|kqc{ՒR= !AN;!aOz7\(5՘Bc=d?Re Y^m+"GN2?HgbNjӢrq C]AzA(䄓}$>Fyw~y~3?GYsd&^[o牢=Igzz}_ rEW[t'mrn cGI⋘*?ylި؆w7B)wk7qC/c+yUa!"q6;IHkTο=î/HkHu˳w7#" cŶv$MJ U}6TH?Oص^zI<%c 7[ҀQ1.B^Zs\{bjmwPG򷾟TS]e p O>* @ֶ;k9Ig?5kzE%{0仃Bl?{i{o/{Gnd/X}#""cế>~>jHmtE;a'>H%k)RC\GK4yGz.{UK}6r cqO+Hxkܼܓi~^{$S5%=DDDS_\ΥE7M_<#Ѓ ޑ=wu|fMY17̥"w4e, RR`t_y#P#3U_t2A&GM;HrW.$ Qgd2jCtE»8iw-0Q,kܶ&̐U]qܨ $e ֖c/Oo5tSNڰFC]47BDDB{|QCVfs7o8pGޘp{yn;p\mMǖ5Bra T}-Q$:vSzo[YX\ӊnR67m:} ZM>kKl{s3[y3*_OV_/v!I2?"2@%1AKfS#E+GǏg q.Bɖ&.v*$_63؍6;sf&|H]f`xGsxGSKfqޥJ%-""CssgJRBdHbǛϗ닲sR=յuUݹ2\98'ι|t--][9㛉"p3R|E:RL T3큇{/9A`Ҁ%|1 GIŮoyi\sזom0nxY:ZZM$mMI\{zug?j핌D#"Ag|`M-Mm -;Y<*o}"4Pb|ag_v3c '>t?LGo:[?O:vST*!"hMNrcsKhtq":tIHfϘ)Okof$F%2w"ޒyc"dy1c<Y]5ӷgVmJȇH__3o%:Zvi}bWw]ohޓuW䱑N6wkӴtrI E7*s[JF.'{fvR۴":u@֞EƲ=vuc[eA#]?-hD,ا6^fHkD2'ޏ1 >p'5܏}]IiPM./4J-u"'`]oɭH??Pڠ*̽&Vr2F>T!"\8CUS3^x~2iˊqxYt>RB+hޫ|m}睮eCyN Qa5%0z"2UԚl\s'n4HbdD)Mah9._BWɞcˀ\Ok#"=]|bF'@ >d~Y~._"3uic“3uO^WP~r`opo 8RDƪs :6)gϡru*v^_qʳ0à7p$S8_"ڳ_M"[% ?o6c~/]?'sEJm l1/Ioy 'HǛmFoB]u^u䑾[d= EwW={:$]5/$5|ژN̯EtFh"/R䮷zz[ڻ9rr[)m&6[o^ͅ;>[>Yp|N,;5SO ڿ|:WHюQgrʺa tcvdUޔYbEBbx_^6ˊ=\|>;Ə5+DU51q7ŕFJgy#X[d7UA{dQ/%Ն~Jg\oOPac|v]S?d֓W ơ9j]J^ˆT V莹.[[ZqRk8o*}%ޓGk;w{RBWq.9_Tkl?T?r[2ߛ9I#Lkzwg+gn3CfG#0QLiCȐ=W~%7~m6N4hOp 0KSnIKWnI+;v:-LșEJFtU˔N_P$@ /I6ᢥgvS>gR@mUcR:}r+ԥcv^ް#ȓW>yLK$uYS#%b{Cl~sh<)K]yosE 99;0&'ZmNsbXYb>Ơ*e!vm:N%oK 9g+7ޚ[]=/!<6HKuj+NDsJin$?:<%sn:Slq}8Tl\qh`xYt>beq^nb]fey.J^2.::B~T~4YDŽ:riQ3k17=P`xvv''DWҸ;{"'!-] [?>nrf,/5̔tUQEޤT>$;M/?'1[(fܭ8ۇ.x褕:3d[=N.WVNJZEN Ĺ*ִrr\`'ys u`cw00Rϑ})3DDBWMi76.yZ-egވ3*.Ԏ1{&:O&, UuS_at ps^ۜr}uwKjkT| I5ߣH&pbIf6V,h'`f,kսW A]="J3~~ ʼo.Q"T0iE6(IHsSŷM9Uf9KqMƚZSj’lГИyGb9==cM#~7e59o'ETs_\Ob/:K6\c]h"y:rR݅-3FDdؿn:;dɭs|h+n|W??ML985_O|׮w<+]>}]C] OJۍmv晷WU]0krZ >1x{WF 7]\[R5]yæWZo-ZG<|.H~68 iMHtT=,xGlxfŒ[=Wr NN7}57oIC\H\\UxDxgNuQ.'.|/7Ƚݩ[jZ8 EQS''/uo+\֬>-8)K(]cAu)B(͖KQ^2br1Wg`L1-(`еˣ]t۹h[M&Sv^YW {`g!5]ISsJ@.ULqrP!$%uҢai^JwONbc9;"|cy;utuKD4,vIZp]7aW䨫_+MKҧ'lNbn0ƍ\~o/r%dpztnm֕{*urmQNU$zvݵֽϯxQR:lܵ ezwMqGVpDkë3ZySDjW83}p@'^Q7.Kv0ç.Nw~8.L nܰ[KLf.ٴ[yPF}yu 硪(,RG5_VGz]wqN׻JTU/{lWR c c%g^d+:f$ٷ̗M/Hx SfچG .JÎXIs+~w_)%+N}twMv\'ћ zƛF<|b?n9?}$"qv{Ukn3:÷$!iTvA3kKMtUWxԩå]#^52tSШ9Abmޕ_<Xߖ7)Զ];çLXw4kF>3N#bEj7^oۿg_鱩4KmUΛٙizSbFH=rfGW)Fq]m]wfƍ>$>?ܫoY2%gض9""bu͢"OLj-q󦣊x{w&MYoʆ* /1oOlly7*W-ewͿt/j<{Τ)9W圧6|T8\ko,:EQQ3ˬiһֵ; =w˸z{~yM]D咓Qghs=Y_g[gԛo؊7ݐ65ڔ?m<-Y[b&J6ؠ%볚'9tE|\N8ޡ\ՏS$"(ٱ} Uo>MDZ2_zM힅IS񞕯y6{qmzCוۻUՍʡ=ɍ_ C'_;L!*;/dSO{{sMG⨨)lIҫ +.ev4~<4cCu1gN}Ή 漞m^<2=uhRw"5.ˣBhXtS[V0$̷r.`ŋ®:]ȠH TBAI):tfTY]mU8[iu:(`&6}Sw*} H1Vm7E'|{3iֆ.>w #G>@UU>]3Fq$K*>\+OʜE)j-kMvvsݳl9}+)!dE#OǺí8ʲo5[ӳeߚ9i8>СOR\7 Gk٦SǏǷ-t'{"ODDs_8vz?E̫wJO!t*&>z^Yzְc1˒ +,[t7T':}}qGYtՇ%b0:XI9+s)TשƇ*]wiuEJ~$%uz6\wA1cl@ZI/8X3WNT՟e2uqU>wkDr6yR9ȡƅM'yڭ8B ~¡+]V\4L֋󻞝↤Q(Kuޙ+ֻT PSK]+!:I&)4i!ڱ77~E>˵/aֈد; = 8cܬ$ i&'=oo?ZWybtv˯^tz~4&g?v/8 ``s Cf΍GWSuVg дw Gdp3Dg,\4[EVxe;ߓ}]=+~qcI{ցtJ:uXFv>muy f OGWgc֔xz }9Oop1x*!›+ h0. p4 i){0WϾVxzVg/@cƏ4X_f O_+OOhZ<{|Q8v;G Y\Gq)'&h?S 5z$Gޢ>yYn-hs~[/hWq[rO q3o;O EƳC~x__?ת7~5_l}_GzͿܕd<C  .as^/R=vy~O/sopFKqΛ]mpկX3M߭{㇯3w>Oe>޿&_ǧo=/rv+<5~/}r!3{szb~Wz'4|jYY7Wdeۏ\hv]:[o~2mvQ{~Ƙ ext}EgׯCG< e|HٞM[kmzǙ {}g;.;|F9r?>˦ηYo58l)6?{Q/u"FOsk Wu'֓Ͼ'S5ֹ7Ԗ|x6I!}PYi̓ܶ|Ɍ!ZsMoH./f--ߝ]] ^7fHfi,ٷ=⹙|SFD׉vvƑ< ѻ'# IDATv=XEDy>𝫏F͞9<^}p?EwBF/kM{?^Í=##u/>ҏ3wfLx?+n5y^E=-kVH."Cl-5n!&~Evq~nYzʲ?"/Z=ոyN㩹lWg-xh =}Үu >~OtWu?(4<{pqǂIv=bQ17;LZןh.K*=iϗ3ߑj\_R{Ľ]]5/=}OVߧTjOò3{:DwOM#xv(ZQǥ{o?Uث?{l}voe FB@g鮕{q[UgEfUA}9ZnwPL’Ks>/<:4eEi->zj߁7=YeUD.IK}5͟L~[Lł11W?\?飧6684Sn982ФuuT[6w1~ۻ~wԫUVtVqqj~ b/W5>Pֻzqxs5~ւSGt}RJ4l[Zu]{Ϗ=x/'fc=苿qͯ@کw+Tv5=<(nߏmq- nRuHS{jz:g鈈=`̲ǖ9޽[U{;10ǫwjOr]^\_us1}Toǔ0澻S>yw̢YM^}0swaAZd.:%bqa3 /|vPIC}"$w5Mk=1!v2P9e 7,N o9ZWo8qɴM #龚iͿ]z:3+#w ߱K~-Uۖ-;rk-[lٶ"bNW-N5ٲu_}ؔxpN&~Ǐo?DVvqǟyqĒ:!dW_YiYД>s7%KKzʹ|n5^8}qniVA C/Nh:}w>r{'ǽN[_.yms^]pvxӮ6=u'oݝ[q~\tsާW+ڏFQ=@ >g EPos^kCš~hFlBqG[ݱIc[wTvyc,ϟ膨#Uk^<2-uDG/>sf\PRXݡ_c5Ŧ;N۴k}{""b ,V]>ݺ1lSM~s¡.-|os'^fLo-Mg<>9e$Y 'SZ{Oz *WؾZqܓ^ X{k{Iyd)19T{.?ilSh"Ώ[\ U\/*ʩk?x#[DO[_[>.w(&oU}6{ۊn+g~,^6kdr|O]q=jlWnum"['67HDcY>,9mcMk>b~!=U<. -*)"PoږuE-(<'#;"D\*Knw:=_-)s_ҳFU􆽙y;ayA}1{kuUQD J;T1e=6)ƥ>zÁuo{&Ozc|KDt*zoRJq-Sjhayqyt]uvǾq'! ĸ0gm6C{+Ee v=5nzloy.|?^_eM&,ؚϛ"`v<.]Nd["fU9/Gl?nѽ>sҢ y"ڭ}gweUמԛYqVWԨvW{6(-6鋟~\!l/;.&6]=zW5Z;鿗,}8LWOZrG9ov\ j5 '9PuXy^.~Z{P\>j>|.sUvsZB}SoZ'ݨA]%z5."bkoj5/?ut]*ּ}FdEњrs6DQ{SE]&A}3?&Ц}ǚQooEQmu ce2ˬ Mvۚ~ەPI?|**Kox{禱75DDo%ZMkVX:Ec7uYu _Ώ_J|t.;tiE7__{oz#{qATkկb{wU7귛1>tC\ZyM1(ڏfT՗1f {XE޻:T{I7 qSԖ={>_ۮnm""V]Dt`6QLc19Ԟw_众|eFqt"wj<TxN~I<6&vě7gڐ>☧rK.82{=SDp㊈G⣬=eWQjk̹q1Wq+6Wz`h#n{;K[NU]O-uާFE]~S[PD%m՞qY6] ^~zx0m@/7/~Ǎʸ9Y'-7>ӶzѪo w' FqBh/o)z?%ryZ*,zljzB]p|"7qoʬ=}'W<2f\t\T`عKk֘x9v/]<ѩ|/^.oh]Rq&s\۪+zUo2hFFi-pt]/0 nJ^eT׽R凌ߚ*^zkwn}%>bzvzt]]Z{ޏ|Q/DqLM뺈*ŪyPYe;j F/ՙmnjX]g >t^Nc\7')2Pɒ(In"Y.q\׻7>Q_{F68D3E:ZuuW8SxO |D?f]v|Ѡ[.>>.jixO EzoO잖)֝ܨw]npZίwWjݚzv)|}S+?_|%%0iĈX/ -c5L\E}%Q^WӡYpQzguYM%% 2&uzl/VޠK%tu5ˇZEMt_Cw(q4b=⪔sDD9К1[qSGUƙUKUeq?d8~Ŏ*1?q\#*&2ʿrcNKMLoxgS;lشV;-RT5xl)Q}H77uZY~1[צ ɾ1~һSl59k6UHݾw[gI¤a]'6}3>eܭ}7K59k6s\I})㠨qVe{z BKĘi"*MYPq'ŭh^pYAO;S_zx[;XU_n֯습x?vwֺKiίU3EW\n+۳!Py?d|e9&g;|pQG;wf&2ax[[6q:^d'#}O{=ӪtE0(={CWMlp$Oalٵiqqy.u\tCNU<[$>URwOڭ*-Cq*Sue\ZpTW6;ң]>1.-yyG@9yuO/ n>?o7]7T6E%]FcY"]BKfu;([bhSW)zR;C]}Ǔuey_#mؿG=덥 5aQcSj6l']N^LJ2uSK>x Iݸ|ݤ+KrQ}moq~=3/eZpl)/1}gnY.³u'GCϭGtN,_L}q~Z,q3sZ^u|ſ7-NN:\ZofGϿYo*|Eo1zpCG_&"ӻlEL$Go˗]?iDD4aY".bzȰ4jNjwNKTg#}?z.ʯ~ɡ̗zSgaƼyTg/eSfMDQUtds3",voqeQԻ>oj".o]+u*Se]\8=s}kF'6iZH5/Ṿ]8ۿqY z*Ѭ1,zl>n8MEӓikgMUt\U׋z֪/7We6VuQqys3 ]:2E"N} \x*! z h0JF*! h0JF*! h0JGM IDATF*! h0JF*! h0JhH:)#[˝TBCLy)cH9btI9٧>hմ=}[sػ3 |!dĀU>@ }~)^r{5IKrn*f4V."b2bu\?P3q@[uڗ n_bʬ|(g;ku/"^}d."Ofo8ᖳ4B4kن?)8Z *crHyZ@Y$Ƣ=wE4&GYc}^E C7֛C?:ܷ&xM] >AfXWXTh1E$jo)+(k{E%LNuy_p CW{oPҪZc}MMC`xhӮ%F;**jLƖd֭v"qZ[CSC`!0bPxK 7w߽fI\mE,|[Rק N?P4.%Q*?hMv}4kiiA#} \?N N$zҮ_PdA# 6uھ.H58hw~}W!qu>|NSĤ:~VP i)C"Y+?ˬ2WgUي{Kn/{tKUQyk>^e2j"]' k:[-C1ud"fhl,hT{]؛k|"t85p`Y.Z@1aq^^7HG qㆇl;xcCД~{ʙOUޚUv ւ{g675Wv,<]]4lhɠui"hk <~P{gW[kKթ7M&͊={NQ;Ob6Vt9l-1nz^Wl*fOZs[hFaHwgMeǙ<@Sh_{}NT^-uM:|TTTD`ؐ">[{&'EjkU~AGXPox̐0CN5J-M 5gmͶGSl.)i! 7ߖ^ci뫯miqS R[[vzW}CxG&x9O6~=U;1c?^cEDl]v| Rc_b u]}uM3NVrh&p?o[g.搰0ڛg1N܌AA =v4_@\Rz&b;Jh ֆZ4.?[k~2."_9]nH[CaI.b6]3hu~e/dܢE-Xq[V{TB:*T|=><>K."zsQM-u+~8DDUWMl3<~jש;7u)n8U|ͪi!&GhgҌF ((oGCu#m npFcvF[hdR_㖭2$-mĉ*~y,]:үS1O2tբC½a=sE :"ԦJ--{:!>Uר(ܲbM>kNGc2D^5lnІOV[C)xxJ@ױݏ[b#{wTV=doo()wF' 1~wΆO%9txǻ#[vTy=!rؼ C yƅG1->!"Qd OʺJ O5w޷:.Z=0fD\JZt\WGQ 0i~qaƪFk`xT8j;^AA~Fk}U- V[njn`ˋ:; >!!>ʖN!>~!!f#;+[+."hnmO(HU ~qtR|پ^/p&yˏTGtw$\詄F*! h=J%L_IUOT?C9mE*xʘpƂ}m'l46z;#Nc6kwL{~?yS^65n0޵<*"ҏ3wfLx?+n5y=zv|ޖ@I/[z< ""Y{u|n-_%SRbbːG7.vgd8z}O\竹5aof-pfqc{kuGuX=^ij~n+ux\.ޔ?=czfC3LƸpɬoEݡ%`;ZOi~c#/KXu6n|bرzQVN zS b_=yj.׿d#&NOSd{؂ )AuG.b&'[̵K7Ttgjumj,;Vf[ϔ|C7{x̖ &:;Υҭ姟Ihu͢"O?0f1bkܼ_zTsvcs6/+`];{f$TB֋%TB4R H%`@#TB4R H%`@#TB4R H%`@#TB4R H%`@#TB4R J%4$HTqN*!&qԔPU\$1:y¤7bM QKKvnbw}#ӓ^\Yb3+u J>]d"&-?nXIs졪cR=Tњ"ȹXJ?yvQSD~5ǏoIq#~}WbZB!#|,:Q68H2m_(S\|*),9O9veiS''mG}wk{wf^o6pJh!//Wnv]+oO|E7%@c@ aۙDhɎr& v sS 5tǬwu>;,HVVy𴌫gF+վ&Sf#mE?YӮ^p/xk't|5{á-ǠYX6qOMZPCK%Fκ&qh59cgM.yΘ592$κ*Uge:}*U5kb 6kƺ¢F9("%!e_ٻn7mqfM?wQV;K&$$a K; (**VmݕZ.^{nj ( !d'd2l$`(koyy9')n9Rl7J ޙNN97;|twHHL6.Ļ]xZr`{>M -4)]5+Ǡ!D'o*DQUP,д~Q>%&cAvsɮZ6=/'J˧$hJl)j rp5A!67,!!lsFD'A)N٩ 24ނNŘث+ۜBoisܚ0]GkKSl 25z&aҫ;Z::"("QZMm!Q>}ۊn|X.2GX/^yQUʷyکbҟ:c`ZWRtstSÄ kzُv s.Y+S?hp|X~q]JI}((R9C/=UQP]K{}B<+9JxfXulB1rLJl/q|{]B =%eնpMఈ8VpasBhAÂC4N+jKKEMGFAZVI 3Zj+-CMJ{uު)QKM:[I 1:k7NR^-,r{Zѹ}෩m_cotD_iP1P#D{OtA<'So{,ÄI &eqMBh aJGa5mR|$[z3.%4饥h{Yp5SUkIBdꖞO7BikSn! P/fU٥@Yi&[ɺmg|@Є>|CnwZo0(VU[HLʻ'XvOs쮔B);WzuF4Jg!V)Ϙ.CZN(Ƥzvzckqvfճec&W?yӦ3ORHUB )O7B93&n(Xmﺤs`]ۮu-R!-\ [z{iY×j󥫔Pmܺm!U{A]KNZ OWl2R+wV]]d[C Zqq1Q}rMIf*sdH  2t^p8"AA>qQ}Z{;99ZQa y[̙k[̾lpBRѵ24'X lX7F&Ň>tFNȓ>UJ(fsUG4מx!6#3@>rr_W$C{\Bqy^h vpK.!luͤRh~)P :B( ;oV 6 (Q)629aw;)AAi<\B`.%[sYB MNnPZ;w&Bo=z=B{siC 0S&eoۻF+ʺAp${$%/V[=BQݗbfeM#UjY)Mzmihb9K%jN.$ KKI) 4yZhY'BH)Cnd8"Bu[]z[:dfB-UW*͔cbSღ MK7T !65+~̍UK7O>gROdlzelpig}b͈öox !>};vu Lm9> VyN J; #vg/ﰀ60vDtwW4z=g\c&dU BnJʨxk㪍ͥۮǾICEG6;K21TYUiw(6FLt6~AiT5E䴥J@JvT|qJ4f'1oա |RBڐ]%~ݷ~v)9Zf7JMvďbvYy{X t~ *MRٴeצؑSXxyԑV>VU硽iǏNK U^IGӑ>&mK]m.1,H!AVURwdf>RgT[4VKguq65.>22Dz[ ̧ll?R׹[8zJ+vBLz`u_s^>e[47g<@:KvÍCh2ׯq|7^pCʵ޼lov8sBs1N3ش\4lVD;رg_Hp] _ IDAT4J QJ7g. S]Gg@҇Ek/lu7N ׋sy.%Tf]?}.aT D1$.xJ1<_SSc.3hb>ScHiӦ1qy qչɁd̳\lPq||_8y.$OeΜ9We^7/\!!YGFv2WygW0x!'jH Ӝn}o-Ytٲ˖.xtؿPnoI4ӥ͍5[˽']я񂥋h<+Qïmm7%Q >%3JȔZ䝇sm7>w-Yt=[J\coƽ'ǜyxgا`SSdW=;hZJyפ_-5Gi1gzC!25zQ{Za&"'*ū?>7=pݮZVz>c\ng~ OܻVziQ})WU[W5{`zsBs܋}rbܿx)a{~I2I~ӖT)7>t(wekԛT/~6`ܤ iކ+GmR;W:F#-[Bø'y$t[~dHφ'ϚPQQGoO<~@\.]nprI!')J6X67Ӿ[ٝzExɓE?;P <'ܠ8[*v\j0.fI%DvyOxN~rOނ&>\6vJz~׿Eݵ>cĭ&esMDnbDJZ.ߢޠ:ݪBv/}&YL θˉqAjMguÒdkU/\~UDN{{xy+[B1?~ܲ/W5IkSnnNshcϯlt7E}z[!ܡ#SC:*~=䧇)aa j>yVNɏuNz+o?-C#q۰?/mr+]/X~U 㻽=dQO^ %b3=UGOΣ<(!WuգGim.YaAHO'z3k{@Gm~Y"d@;>5Yut{S8{*WH=3ю#wMjķ4&M9wjsC7 !-^|rI]-w>+bt͌? x|֖6X[mjBhhhďnJ_iߗ|!B I!GjO#C*V/Y`Uas5;wu#oBMT{B?rML}«5Mxjؘ=n{ӏL4lM_[¿pPE/1xFE՝e0oDo }/ϋ3PtOܔZcڂƈ1sztz"[vn+gdB}FoZ6Xb򕛎0Wukl(4]gݚ5k֬]ݵ"2[l:{.Q??~u|ZF?侷.;:f4Eb⣜m)Jhv3nyYt[׬eʝ䃓sjl+XM>.7^#>blcߦ~wGwMLrnX&h')M){o^GO=8{w=NlݳyoC@syl҄peEՇjдIYպjQGtBG=5"ȌmB7c՗b킷JgeSOSzKQ')oXS~7x|.}bR!<4} 5g~R3}@".yE-h뵟Gy=}y+Bϡg0):V$.TU_~.|S`Yu ^cG|VS{QhS&_;Jl_1Et,=!aиQj[05qYY1e;K1]+CsU~_+~rL_}޴s[]߹W ,iۿyϊ{ځw^b~EѨHkߦ&TF^C/xžg5ҏ˺o6d]_CA֦fBZ͖Rm/~psw`0[vn/a9Æԣ Wq6YlRa4{FGݮnYƏI᢯ZNRUsdNLm/-SL0EUG{x2;1TQ¥>nc3fwlmg~OpV[,R֯};zw68zT'NKoJEkNIUѽq 8\忖rK%$,T#꽊1<~zEbB-j[<ߍWl lIAñ|6'l+?UY301~jXU%z^e?iUգIy3 [akN 6癮;o~zzowcmz/<[{KCB]۸j8oU!Sg댩Y礆;[h'u07B-y& VB[Jcb35Bvۋ5(VsJBH)h'GT#(#=PQpEHyP}~j:vLQzQ(S"~*5tn/9|Š!rB=mk8tv8UN%;a\P nU !dcߞ5j=YT|\p|7HJ)hގQ *˛Ö&jjUS#dSE=蕿|,O(M~ut)ւ{=<ȃhw12*H6CS[~mU嘆6w~7Þ~~<=/zB%xM?(}A>?ϷJ C+GfyW8sNǞ_0ޫ5/[{_uA!MLFM<ƂOp![;B0L,,q{ؙ}M+k;UtiW?؎=ey;wo'%ƂOW,ٵ:%>_,2 жm]aB!J)6ߏO?!C{;qٰ3M?sD1Q#ppo)n>j r֔ * W<]n-E̎Rg̐15KEW-ܛ'Oh+?+Q{#謯Ȝ9?28 3r?yu%]fWPbqw}l0ۥP[jؼ 5.16E_'OBHKsF5|c=̣<}[rF:>6;uws~{>? :<=UOK/IR7`aBd̔O w;׼n\90pIÍ]뷵hLZ>B%tCI&j\8D)jYߊ׋}3r#RkmK6oWu==OxASJw_03n \xok`jg}ӯkOQU]3sM[_ζ6)D;w}B(nAO>x^S?{qYZ}՜ɖdJqÍ[v4㿼1#[=L˹ZO˻Qmر춹ʵ;՞?>~):XQ+mۼE{gVo)x姷yu-Ӄ,tuac e;̪PkV^7zw? w@X?~ڻF0m*tgO;z1;=yf^~bn#?}??~ァu=qvNNٞݍF]˾*7qsB Jl䬐7W.Ec䉷LNi 1YycR5YrE[ox<{?|Zv*ѣ~W?9^1N|o  ~ǹiӻ/%t^<~}{_7iجѩ]o=uk /sBm-lC?aܳ㼟qp;+amV=ΎXIșyxvXʶނ,mo9;쭧kޱ_7f@G}\^VvϜ2"ohpKA9ɖSkfbwY1]qI~c]8Ǹg}4.ί^H RB.ipIK\(%F)!4J QJ%RB.ipIK\(%F)!4J QJ%RB.ipIU)&AsL\ίޔjM6(3Ruswc3F aWE-~&nppѶE'xz\z߯pp0hӒ+KƘѳG SԦ_W9&,:6!S!r2ED26x ^ }RB]TFQ6:Rߔac2-%[7ڏm',;MĀ~!+q_>%> %ȉVU):}^cjɦuUM=Ir.]Q/pS2'N(-e]f9sjSSfO{twڥB 1(}v,艏N!m-J+ڌ~*!'^ޯoA[ʶ߰!P Ir& wGSQE5Jc;.MkL` r4nz&0,%%&6ԠW2s[!a1 V6o@\~]2 'PmŻj]B {sSiyg?AZ+A\[STmwkvvTC IA!iCrvHӓuͥe톑)v[6M4aBmr7p-35;pH[V)mXJBG͡* m.cX^#麫07{PN;5kP]Pzi£l6jLңڊ7oTb2{ph9zE^uڭ;);VU5$شNR1'Gk\:ctf!![S˘mX[PSd\ëSⴎFK`Ҷշ95:t{uMGkKfw;!yPPܡDEŅxЄDB5KK 2FDk,|:wFZ]?оP?xMk.ꓝ] D݃fn[3u%%M=o{F GG*il'^(\~mW諧>:~ͻAs$7YQP5b=rtW.,_z-8 J&yVrZiO nmRh">tY%PQ>sK҃^Ǿږ<@4 *B6:lNUU;h`Xp)zEmiiQh1hU^*t1)1aFk]MQsW:PS^]C %$9mDbxRBڎs аCv{s~<."^KRBC^Zy _3Z۸N/D6nntc!tZ!6U!B:mVU!]*+dM4ɳLu{: }`PґvwO67Y OJ!wuݫz}#uEQj{Sg̈V_V'cRĤcuJGBƥ=Uϖ k//+_Oܽ X)ڸurCť&CGcP_eW6ɶ&7mibB$\͒UޞlH  2t^p8"AA>qQ}Z{*Ŕ;99ZQa y[̙k[Ř}EP8檮ei=ClFfZU}R5C+H~) %0$L#ᖊ]hCrum'B(H)hNBiعs*]ht8GDEEN!yMIӘ-v۔PVTK0vjBCܬ &O 7(;J!ķWz!! ZiAM/3V߶wWu>_wpiI)Aj큚+ 5 RdDJ7e^!5ZEfI)}*f IDATz~Ь&ĴPoݖ:kW֦w˨vU~dncbSღ MK7T !65+~̍UK7O>gROdlzelpig}b͈öox !>};vu Lm9> VyN J; #vg/ﰀ60vDtwW4z=g\G!Lhӆ!M?7(ټs=ס[ɶWHbx!,*Vs_Z KMɈJ7\kWB!mmؾi1a{w)2;+'6+#)*D#Cd)igyC!nSLJf|rJW{mV%Ŧd"UVd3e%?+1wKb OҴԷCM&VcŇ  7jݖZOHL\cmva 5{MYmͱË]M`dDHDhPpR!mh ҸM%fW w4Զbk !j\'_;QϽWQ_t ~2:j׻J`>pqӜzPFR[}:BNsݱg_Hp] 4J iӆ!M B?j̼DOEy}BI~L\LjӦ1qy qչɁd̳\lPqW1uKi@/Yn}o-Ytٲ˖.xtK/j{OK=5xW_sۜnKk <2s)!Skw9;:g΢%K.ϷkO??s=W<9s\1 qا`SSdWt_0jG^q"gˍU̯<7r~_޵N[ĝ})WU[W5{`zsBs\E߹D\<9;1Ny~GkK ;LʔIw\2n{[a\^@)ztBE۝JFdŚJ0%8.'u䋿oTǣ5 }׭Ke;WpV9Wylu!'r'\$}M9k?ϡ=ADL7ҹ;gMB͟n!pO kovG !4ٳ)Jk/_|CB S<%_.XUpJ~~+ 7(Ζ]+}Au3_yoѿ}ۆ=6ai'>;g'\ZxR'>\6vJz~׿Ev黽=dQO^ %b3=UGOΣ<(!WuգGim.YaAI篎!k˟~V0w ݖ3ҳɳf&T}T!>#wfvr5ML*}i7kߑxiϾqiMmػ|T&{~փ>gǎO qVm]+]=p #C8qm ­C%bʓotㅌFE՝euعyq{jy≛rBw][1fSNSdmE쑃 B1-޾"/TkцW,_rcw[fCY=֬YfjgE%rĄ=4NcsOӺgݭ1co{}>-Br[K|k~!,\몰ܹޚa6[E)Rth#LQFKq3+ߺf.KT'u&*wp= cndv_l+XM>.7^#>blcߦ~wGwMLrnX&h')Myi9+V;OZ~!G˝}n)]3c^O9n8}GyԫFto{=͗&M9wjsC7 :Ξ]S3[l2\C~|N,-%{}'\YQa,M|(}Bǔ{ulàq"/vVXiⲲb7w>bWt駫GWh57嘾i綢9@sL>$\-Y!d!׷pB%xy}[ JB,ՋޝOESxM:a}/Ա#c>U|lسj=(fȴd뾯˝[.8hF_<2ckո؀(ؤ 7o!E[gB9׿QS4E~ګ8qFسyg[Q[ء!ǍmRwħkJ|>6xz1 Zފ *5O_>M}~-AFfiM֭|W=JϾ~a[ow<BHwҚVZFddFݽӏy/nBHS쟑O~|Mnߞ}a9}u1e݁_-=w j\uol72B=rk]Q@"M!-]XJ`PMn[fw5,']wc0ztUA ?3&M !fh4F"M΃R15]-ݲ-XE_|]E;ƌ~7,޽ Stbbl{ig2͍-ҭ:Bgىz".]k1H!d!0@>nc3fwlmg KBk|~mgG>WRH)U)]+BH{t,/hjK!hkeq/A8-*^/{pe_ۀ6i'Oj)+kOfy|xѕa4ռo͖oEVUi.~;}h,[Rp3M8OӺ;,-)1)muO!1#ٙqQeYU>YCVX=đW>`6vNNL`{q-&{*{W8yd?6:Цfe 46ɰTS{]M☒!-FEfDNO~Bi2+,pEZNSZq]Mwh-ؼS=Σ<Ȏv#a>4EV5|>*6w~UNG3f=ϻy9SGq !PQXPC/RBʑa;4,OuE7w͏ޓQjc z]e:nD( 4YS~.2hP^^!lعۯ~1;J1C,l]so<գFN謯Ȝ9?28 O< ;􃩏<L:YAw{oҮ~{>[,MCbgA}F+(1ظ^k6 vTRmWnxl^rrbts~o+yTnlXؠ?B!-wϝռzΣ<}[rF:>6;uyί3B4 E2y2=ckF{ՐeϽctOg^);qv$0i~!2fJ'Mk{7.  4)߿~w+T+?x9bk5 i7>eGӉcz?c ڻz{ Zbr.}_m1'Mlꄁ&?9_Zbqe#LK_|{/#}Ý3nW{,㽭v)TPh0e̪PkV^~a?;-'u [VL]+*̪jٶX?Gyzoj'O׵_/no\M˯5뚫Ǧm⨫z^#?c??6^:O<_.ή)۳4]=/ދq|(+/:xټY!MoQw)UB'<e#ijտ&nk YyS5z|^X:?ƉO!WKBm-lC?a\m[&41]o,g~pA?հ6gy#B 74]_1eOfI:[*.ycѥM$Wl.>]݅|IșyxvXʶނgP'}4.:ph.tBK6mHdБď53/SQ=[u`'v%ϥMvǜy:E06f،M<Sͺ~`=O.Ժꭋh.<✻(g/|b!de˖.[ ٦O~fw\Bh3x~7 ]xQ5+)x;眇8qJknsۍyuo]t}cXu?Y/*MzIb-:)MuM]HPũ?~Se&= @ϡ}Pj8OSDs7ոKg{Ou~N+ΰFo_/ƩCۛ:qwjH>`p}Oi__Y+i.F\yۍh| w`ВROtSՠ ]2aha˲7^|{3$"AiŃ5O͆%p[n-׾)isѸD/-ڮf[F8Mhmц'BF͎W$% ^:ЎQ>#٘W{uԳv+nzV/ ymSekKWS3wNf;UFeԯ9~ܾ;^CZA`~]>q ׎nX55ag[9PmƖ!O8xf`<`6q#]˔3?mq45n{悟_d7:G~z$ّlIIH3'9RLV2iXU5߽̉"uչ~NKIL"Z%-+up c[nj| =WK]&aua"/s9û6 WqY|{>9/Wm̜8) 5}h}g?<@1b~0XӾQy6܇\~+N>Ov$jM.%,09& }7-I\"b9ytoS;)cmw;piϞmZzG*,_'"[_cIZC~hQCuG(=f5y|⅕<_μoJ𪿿~m ; ~w-u>_jCboͯ/RLJFʳ!/8}_Qmn,o{A>P7dg{h51v)ZAmmY7L2<ux޲W׉e-&f7SFII^>ů9UQVuÈ[+6= +ZQQϫŅGWjxn ?MZZ6-YIuϖOA%e#Œ>ҬgG%~DD$_=ةloyY%%6 rN=uJv\ճiUEaQK.y;-2Z%ʼnEO]A-8<4g 4b""ʷC+}jalTLuꐰ ?} |hҼa9^2?e}j6 8 =p]:i 7LOHy??}KA=a1ڇ "W.+%WUlxzƦ]ioϹ{Gf[Mrvw)pw(d bvMy\J.GiXI$$Q#us~Lfξׯ>r&.$.|灱L], IDATvM\qҕ(tDWZG'L*BG<廯nO3U[55K \~]6mTYYI[?#eh-IP͊{/tҌa֮6y#yv"_~| ofOL=}f`qxe}LD̅dH/+orʄOFTUv1/NѯDܯ8}QrRb2×liEjҿ|ޣ\~98ݴz(8Xv=9%F.eʘuZWORFv3)-yv+-{pX'G\ncɤӈscwtw+Y=AləG鈜灈54>띲~/"p5~,"zvHį|>%Xާ%8-A9חwK&LH6DCFkw Nӥ2s C#fNq$jҪDM{|*u}+~깉ў6D38ɃzoN:aP}eIJq6y}kq;}o*Tze4o C"2p\*-19Q$&'jzow28RXΏQ$wWNsWF_ФWuSQ_t?)OݴxɆV=%]on+0 P,_#+{M]g;ydJ^ۯzSn.Yq2RfUߛu烱ՒwŇ,knrksBGgWVU-/Ub힫{ɽH[ϗ6jش7w-\?\GOZS=~YD9v>/= L͜;s_R٩ůl֢cO)jλz欠nC $?Fyh0#xj WI^;[1Yvfs}TFlOmWEw峖x΄Iɪ] (O7Λ?)U|0¯k-x_-mB džݴo'|ɓkxΎ4Fa"n# cq82|Ɯ1q*apݵ=z`F6C +}pٰsoǃvIwll Nvi51Zo7'|FyG'\#^-~Icg_zܹS`W޲vEwޅ߹y-|R6o mWV<+5Ǝy!=_vDo\+k-C'Mk~qް߾Yv;qw=PWڕ6vƬfsmox]oX߽=' o~~MH9Ŏ:عzx:bWvjzwWHl5oQ1?.wa`שA` <[~?n]v@hLyxz<8zF׺acumחDZ~:2Y__Lw㒜k|Bn͞w4W#ɠşs]ɉjxr5e}gŚm%S3mxGWWTDf~ߟU, u1]&N#_A̳li%S&6gd&"[h1F,i Ν;v}E3ZRJʹcwWVM3(]g{R^P!?mTu6S*ӀyT޾x-%NK 5լJDb*O ʵLB:hJydݛ?iagˈo{uV9Uz-Źs#WDB{7^-:Φڶ|ik8R5cl&"_=Ak-{\L)Wx^vU%ٲgNk@j׊EUFOer Z`nu[t8+w:=!1E'榥۬ZW& s$X̢;;CQyʜ1|D]6V7E1(1*Aok_́v, :`G)Oߞ`njlhjw9{/{FgY4SlԒIJm-of*~7*1%k mKM S:w<|QKv#}ﶖvsRAinFwΆiȈ+̵]-*{\~akkנNR'ƚݽ{j٥L].ߞWp{:|xGrFLy%F$&g:̝͝>Ū!Kvy{ۻ}b)ύ׼mmZ\JJF\S|Z#.&k1XS۟]X7Tݴ#mΣߺzLʥPߩZa 'ٜYSΊ|읖 =X7%\yW T=!6̺kZA kv5РE.5z- i XyزOL9ss R}<-qt|geJLI8tĠ==vٸb_d5Q!(b[\Е;\Zv6FIʰ5}NoO1yg%ƙ|bjz{{mc{P鶙uuG,ii vƪtjXfs}-.`\VbkzL,Ou=V'zCSeϪI/`)-ƪΪKϽL 9W48YsuC{X̢|](ow|]]D$UZtT&Mm\͔37ѵg]'|h&^ћm6Mz ƍx\]5[6zSJD:pW߽z(d/:$)b\4ѻ]AGR{ޮ=7-ٳ gj~ |A`W{]_[Mm#sR7hQCgVhoĂaqU{:ZqYil=- )][:Bm zBvznQjkʊN%iLR6(+)iE}ZԶ|=)}s8RLْs=""=MGZA9}כ\&IN-r$[{l3OIjUYsddETt^4iĜS{s{ .KƠ8 E%$&wsS0.-6=^'$;֠ˋ=䤸萻W:;z$ڞc{\zB"bOKM4u\=]]?h,"U n\s78L|Sc 5lkE~>ٴM_I$kߩ_(%js=A #W۝)k4~un/ZmT2ꖧ~6;$"#.%'1{=)+ |0SՃ{"u?Y/*M:pZ8\J j#2X8G~뎛L ԭzk~M3=}c$^79V=c9I͋^xNe>'$$"ʿ<6 "5ɥ+)ϙ;'杪ޓq7iyqu 1;^y÷:+,xii__Y+i*%OO?ZhMs C{_RC?)z,e&$wcոԞjf]<3 ڼjCd^}UgYE{',`њQMY Ϟ;}^|#'Ғǝ3cM-Qy3o4MĔ}=\U߼nٲΤ~z -r;I* fNW}o8նQbU %x_"g.)N/z jI?ԭŇ?UM/?ۥ_yS K5mojY2i3h+Tg-}M"bt.9w53 [?}볺u]DD>nG/pc|]-u>_jCboͯ/RLJ xW,v*[x`VIIAp?#SU1gel6n 5ʪOHD<^˫D[ }ս_t%J)])QW_2wc oe۟Յ (]JD<Vh119^_jbMUڮD$vyfCNGWy*ӋŚy JK7IsH'&ׯ\WNb"Տ_G[,]]{𷶪 K2gl3R]]rYs~y%ydExzOwRڞ/͖p{DTJ)1G"jG&HMԔ(%,e%$w\z7-I7_:ﺳ#ޯM8)(F3ΜaA81b힫{ɽH[ϗ6jش7w""lm M{]75EwI({ts&LJV-WPp/K `U{ʳG~?o=nJq5, Veſk/(=oQ寿kƯ-~!sK&-XjKeSokm^~Mph,"U&| L_wD)!g4J 8}RB͞7uG8NQInt_Ǘ,M3s͵^{qIvrjڷ7z|::~7_tɌIDykoa._9z?|?|0WԾ޺z&}-CZoq)Uo-կiƾo}쳞 x&Ǫg8 )Բy ϼS٩gCDDW?'D6?_&t|p;9sdֿ߼S+"%OZV ߾w?wunI<-/W.|y'?GDb&L=e4믜V<8QlXڋ uMkZMM}t)a~EآKn4ZEDLI#&j5-4 IDATxiv]V,Z0P{?{QN#y3E$G D89|>R~e\;q=$̺x5gϘ3k YzWeQm|Ekj|G5i)̏[<{=n{{cH^Ŕ>iְM6DNMk*;r|MD:l{hWy[YŖKmpLw3S"unЯM VllrP?oy:6}Ǝ߹9Y}6L=ַuUyM0swR"˗.]Q٪@ӦK.]|c8}螶]uy:4pNS %ʼnEO]A-MʷC+}jaM-}uXF2mbMj쾹%<~C[D"7-I L7l_T`k|6I{-ʳ|VQVuÈ[+6= +ZXZ?{VkQ9X4ͽ|~_s|'GE^K/\^[&O[)"YTѷ< +ؙM)^](>6?y͹31*X[Յ G?uWFjkQVMuxB"oR.W6{#"t%J)])Q;Nvw)pw(dD|7)-l3ơ]ީD97vȬxI[QE4qEDyZbvMy\J.GiXI:EDܭJDnGihؾW$l~ _2wʷBd8U%ě9,a֛jW廯nO3U-umw]VݱrOД5'+xnP}eIJ} Ƨ&JGk wOr/L͑wEĜS44*'MiɳfP)d6(bzH_jyݭ4#*>84vȪfNq$jҪDM{|p8b2`nZǷnxI5o}uugG;-mǙLiE19w :׿<on(/#ֽQ(9+h[Q[us7.xJUcRfUߛu烱ՒwJED7;ß3aRj/(_s[^{:=^Ò#8tl}-"DBgJq5, V3l}G*%e]ywY떭k8P7.yᕼۿ5~Ҵm8ჿum?RI VdgR~Tz_Y:qZ\2.bz'~u ǝ7T:j|ō--k5OyNyϾ`Ub˽y9fQk^[QaIe@C͞w4WskfYL)Lɣa`ӝe' 9NI]z+/~J!p*!8׉RBhpF3(%F)!g4J 8QJRBhpF3(%F)!g4J 8QJRBhpFP)).Z٥v_ϹxXP,YF?;-SR,)cD\Wٮo7iQ. noUȞvh4۔0켑;wvg}xMDWѲcz9Xr'؝;wlڋ2g/%ؕs毬MK4fbQrNCM,Tݵvlq_Ut-}O[(J/jfYmU9Cky+򙄚uДɌ7P.pæ-겭rvϙ5[sGnx^%"ZtM mpCqNk$MD$P{"zמ[()RB-Iz=JDe(>1=%"^Wծ28qVtzBbNMKYݵ= "bMHHEwwW7w2&9c ѻvmn7$/cPbU6׾X2FuySc0Ym׫DLV (( `Txݒ;.̱vUIMe=}isƍnpq9gW'Vu;챞Ɗ-zje5$zksQ0&7qG}jRN=!sVf_~,βh%f=R[lUnoTbJL׮6#tZy6GdIm-椂܌ ӐW\k߻nm}}[Th*AfOI5{-xK%ƙ\.=$7;&tL䌘@7J3=.oILt;;}&UCXwĖSy:z'(TG\LbIIN?{ϻPo =˻iGڜGuK]S ԱN]91Z .K߳;-1/5Az*YloHK,d|e{Bbmu״jXA*=8ǵ}]j{7Z \{[erxZfOʚ&q^Aq{zv-XqGfȾkBPĶ++vla1k"..bJ3mHm3~%!O.XrUm}ԢZwC^%Z\N'""zb Xg5{޿ӭuOZ*U^% RB[UU!{rhpe)o7DE:uQ-DE[E[լ ""F 6.yzIt_]vPU+0 J uڲVoҽ׼/au6ď WWlgTһ*Z}NWQtHOYzYnago,imEi!=Gԁͻ$$FcbY3Rl[T|mw'xt6UsgS\߾f̾??}z]cRB/cK/7m?T͖_rEj>uH-:.$ΐfǚf?p]qSJ)1iڗ~D4b]4Kn (&dHsEeOĜheU6[%ׄ):{ؐPgCsOYQ>S)9C'U[_lJ4dLTgnMrG6o4>$Q߷jbk|r˛SG8Q"u nТ3 mPVRBwӦEg Um9zbS  qęD%82[]5{DDz:;gY$.h hfdب-Vjf15i5E\Rs P+Q4A]8\?j1 /8>}z?ۧC׶|^XV~Po!S_?}e&),eeͿ[@ڜ=۲Kʤ84.6y{K:߶֊bcmm(/*4K 5zcpvwom6қ r ~8VɥNZ*kE+g7Xv:hBh|Z{ ~\CBX.[~%nD!DQ =ӧC~ǫ^Ǧ}榹NA-OGf|dv%hТJ@;*΁ݛFn sK&1cǎ4i\u.{:Bߤa𗫳ΘVm7j8wf>Vc1[n7,s~l%6+}Ky&/?T 21>ԫ!o$ .zr׵^X4{'}R|t6fVI}eF!S? Aoֲn{FDnL Hg2 n^?е./eKw4h~M{2DSVqa(w{ݫW-ml^kN!/,|2o)3Re^8-2MMBmCAm1o!miٳ<BȆ_Bx{uQU Шi%~_AIm#}ӫ NXw+hBJԕUK!Du֞M L9ut% !RH)R )Römֆ+TV~I !5jAo5״ rs wќ0ZUP Ww7((ǹWhtOp/>(c[}qV}YG(%?ϼqs`H`c*:{ ꍅe4\ EG9_4zOwj4>ANCGKm'~jCڶ^tJ o ࿌VsErW!#\Ͽ0aκswoIVJܸB3n~;x/- / 8 Ԥ/~㮄O[-_QXsR֬\>Bn9?Jܙfi@sM BϞÇ!13qӡ)5;ZkW5z@k!s`̐^.DzhܻA+)i[X0E!Dyci<>O+^i]ߡnͥ &vcp狫.S']Ҝ5%McƎ;,N|vݳ;﮻Kqzݲ_|ty03y3dٍ uwZnOy?_I׮_~O_g=鴐] -߭Z|vٲh;pR4aŸ/k[뜵C#<-]5[ #'?64Q1]zf>SC̬e3#STfVq*ᮘ/_u6ו0+Sc?_6yi)#]\b]Q? >h ԤrqRhsQkϤu<,8G̚5*­`r㞛{_Gkwwokrwtt_y1zʨBl޲ugt]:~kjz19x?9WnجETfs'93Ut|_ZٯCSGD#fZeCaGΛjo5keƾ<>aHE~l u6|]qlzꣵּtF6i?plϷZ< )c\bWNfYm׋_M8wV [2-4nwe`w_[uڬx yaBQ[Eh;b"w|Y*mMMKU4e|&U um9YX|UǤ}'\gB)~)cuB4U>MDt_Yr$S'-x~pt϶*!0ZJcI ^denYΉ Ň~NS-j!l8y;+O+<)(PeF~dTVnrYV7g!lYUlg;fm?<ҜgyĭN>awEڟkW8}4y]>K}x{CO}m4k#FBP Ww7((ƷKJɩ_Ed]u*T}s'vOpʍ)?WZd}]U8 qI8yx8*VS]>]|噤OBy%ќ `9WH3.0r+%?ϼqs`Hf)kmMJv'kBqkPnq7[k,j񛋵F*^zoz/owEU\JzyQ*ޭ ,5]R o:oB(.G=Ho⽍?;yɺ:< (ObZlz4)]կ#}"~azP9&ܡ6#TP;9#.c[bzF1*VYXd?cZ9׫muk1qXXt;{Bé٣>>Ϛ|bz{ϪBhƿ`qrܿ}y@;U rRb=\rhVόzdԗ]rD`^g*B;>w,&LE2"b̩+͵'ܛ/mxJ%tuou*}u"3dzMf3mO~ݴU)GlnB;ے3 ,QFOTT/c#VBYx90}jYrmpx8{:zc͋VVKkMҕO92ۉ/?:[+71cB(n2^X !緽wEZogS.Y_UQ *꯹OJ|5CF oaœuq+/Xo[O~g'QnmWtũE&wdg6Y6-^(ޛ/m癘i;چzR~]֜q_~$JfM@nUDq]27u͊e. uBخqm%TYWUBk޶%o{ȸzr>h^JܸB3MR0`LlN7Pٷv7Q7:F?{uјP{jX'=p3o5wĽ n]Z3Wf]#Ξ֯&%Eď(,u9)kV.}~7:5F7t4HIr%6}i<>O+^g-njtn֡i@sVBZ4Z hh%EVBZ4Z hh%EVBZ4Z hh%EVBZ4Z hh%EVBZ4Z hh%Z,9_Ÿ{Z&n!R\=z#Mx7b'/7Zqog|]ؤkׯ[~u˧aQ\}[ns<&1cǎ;weS#_@KAq 4=3NRFΜQ;MWuGwlsG:X[5ѵܙhN7-|奬y 7bLq k ÞFt{;)[ m_0 JekVl>~)vO*K'6SKw%Ok?Uf|w3]VN\bJkaW ~>q?k%t0Ow:u{.KQ~%ZCѱ߬eS4ݘ77fW w9a ?|J~.m<:p;bMO\JC蟧Lj۷>:juڸlW\~yut@WS~څKv  r}>gڭ:=Q};\mqKǮ;O1͌84>!OĂ!M aUBcK`8Bxѵ2یb ( "M/.#Z)>kN<[״6q>{~pxM]iQxz{|zj >Zo/MeIi}cی~ĬY"܊&'*;q׸^r~}:2V]%^.wqwwn#t=skwG@1s'rS˽~*KUϱF=v0}g ;_Bi5keƾ<>aHE]E[>R|ې_5Z)ei^l޲u'֟?;)iofU6fNJJJ}I5 ?ޕP!v~4YuU!dÉկY!Ǻt} VMg{4xڷ7uJmԿ;"Cyۯ,9j=gڎo_6g>7H08$Wu^}d˹&LS>`S+=894*VyzSƞ$Ů/=Fzϵ_/~5Z){nɴаκݕC [}mi1䅅O !긪z\OWySP6!!>Jyɱz k?Mվ_}`q iZ|UǤ}~(k2,T\bwjC<@pWo6\i%KRa,^#>l緿5tAcpDtȇ/\"U"e BPVf(-:yoSs6PZr=~_ihۏYr]]4ԢFZK/J!DCyQ*PZRZR^ـQmܲ.E>{"*[n'wk!iz"+*!4EͷA%z_geyT.ӱ"ef!4PRYEB^*-@bu֧8rZuv7)coۻ̾Ғ %v;EhhW_/XiSz,)%Yʲ FE޿}=9+O;R}lY94BiDEq61 J|5V@n%Ds=}b?o| YVBkmMT"$^,Z%e7лBAR;,+)Z[S#ɚlP=ڸ4I)h?k4U^EJwk"kMvϩ%WIZ)ZBHpͩo `9WH3.0r%?ϼqs`H㫑:T̨GO}%-GUfۡ)%N%Ga.JŇSG?4|_}5)XKU !0?W`5zza-9)1G!MfVY;SYlw ڸ5gΈؖ^*{ĴQL*UYϘpƵJ*uk1qXXt;{ϵKbןANCGKmJ̬B eDؙS{WkOn]7*n{vt>~~3B4͝Ě7n9Vݶϐc'.ʌZ-纴r; .O[7or]\/uq,+緽C}"u[M_m[:ԣW܈ |s]qjroDd}OhNSWV k~ b>yj qNQ޼T7f<#O ^X kFUO}9ݙv"-9ؗ'GF߮H0]M/p5Bh0bxtGE{O%kϏ_5pKœqT~$G}nAJܸB3͝ Zs=5,mhh\A0`LlN7PٷvԧzN.y*oD$8h/"~DGa+IYrƮhN4'Z hh%E&9_Ÿ{[βUk׭[;u^_ع-o'g׊՟|xޜ"[_8W]tDsu1fرBܔ6A6i֯_~}~ͼuSsV]yoSkooouk4{7h= OML.5K ksgtд;]JM>,:9sFܗ7*$qnV|tb4w&MZzt:gN;3soF-=G䭄{ਘ.Kߺ'~UljҪm;G 5Ir,wŜ}?Dз 17=q'*Bqz䥽tXX=^\4)YsW !- M25+6hMI߁wtݺ􃍙UcgD^ܾ-X&hQ\B;}ƒ&g]Nj5rCzʜÉkVl>Q)jlB OZ7!lXl_=?3{~)!fֲ?ΩA*;޺=zP(?ܒU-cB}eF!S? Aoֲn{FDnL H֧b^ y'YGMxvѓ󾮱nϗokaW ~>qhe>9gӜg 9y6ޭwn+Ik{.oݎ a{8*3NphFNznw7Pky3ZM5Rz=uk^Cx̝MMJN/7X/Es9ܛ|YsFu֋Gv'%,ʆŒIIII7 i7ls}*39RWm?0ۥ SFݮ ̘;:צ#M/.#Z)>kh#fVt09PGqMU렢;Vf|Q;aEۙ+*\_߇ RBl޲uϯu}]\Brww׫V=N޺L\κ=_*_55vs=Ej`|Z;߫WO;44{WBm1oҜgyA1eٸKRJl4Q<5f/sᤥ>QR/8#qkO]QcĕDK^jJŹŵR8}ܒiauB{.|o)vidgnYΉ Ň 6"Cyۯ,9j2MMS[C [}mi1䅅O !J݄lsk/K}AȊJE!+v[7||T؛6:XsoB~<>e)X^00*g;ؘvYy^%_P۶nw= zT61hGl}3Ej\G?|`/SnʱfnVݿͫcgcJnBk鱤WUdNm*f&>EΞ<_ٛOc>6s]m 7|W[up+$}M{-!$TJ75?<?)Fvcgns*Bq>Gz˴m̬;iB%Uk_:Q?yy4q+<|躌mһGLtVi*:ղ;> ۣVZ\Xd?cZ9׫]05R3.EygU W4ˈ34מܺro~gF=2x.i9"O_3穽-ۙszz#{u=cn+(ݙcé٣>>Ϛ|bz{Ϫ6h/?r,nl\ۮN?fs3ڞAiRd_B;>w,&*,vQOwj4>ANC՝7 IDATGKmڭz_Tg]ƚ7xLs=uS}TֿժBs^O*֒COٗf{NB U Efzc^>0v#mD[TJž:ηuhUsw=&{!.+ox Y/8_Ȱ.[k2yzG9|@1})/Դ.O{t|Kݹczvޫm ǫ]Оa!A}m;Td:s$ҦKXxxMoɮBiio*iו).;lYJN-ԷҫWHs]/$"dUe.anoת%|~l6h+uw$vKZUhGӮ(uSJqmV/<&(,""O)8⏒ϛv浅vr(I߰xA#"umS4nAݺuvK[㾾N\W}1hhhߞȶ>TW_ll΃%ۻo؟ooT/_y !4G [g ؕzN/19t9Լ?'DڵK9/u>L5Ɵ#{:emzޫv8MMC7QQu3<`ο ͝5h i}Bbj?rci"Gw5+M] h4͝hNТJ@F+!-P]nHFǿy.l׭_nqβUk׭[;u^_߽Z,k[뜵C#<~{8m{\jƓ@Kč((:ܙ.!S&Ƈz5[d5aEOp &x;:{Xn]*)޽F`HwYs8q͊'*B6j̣#3(7q/.?5[2R%}dž38*ҷ.hK8jx&phxR{x_ }} YfF;71Ow:u{.KQ~%ZG5OB(]ޝK^|áJw7k3=R9齴P_ yk?[m\[yZB8Ԫi[מI;>xXOԶ}_)n Mfp+:|ģ*B̝MMJN/7X/Eԟ?;)iofU6fNJJJ}Iv9et빝kW,_+=jBѴ6q>{~pxEh|WT\/}ifMyW(?}mN=FΚ3^uP ]>ZnKwyha[cqUT -oI!녭ᄊY'V2>?*[ƒ]Q[Eh;b"w|YYWS*Ν-L ۝eI;'&[WK[O%NA1eٸKRJl4Z8j6]ʓ~eQpLё> m^.k; !ԺV"{LZ_MVqlW _}*=1yʠ]j/خs8_:Z'쮨]sM*:SVV akiNr2p ֤w+hBJ_ʺj)ڳis)NrrRGdՋ,.Qju8yv^!DN>,K}^|鳼"6Y}۸Ow\FD9w֕{U:9#.c[bzF1*qTdgF=2x.i9"O_3H!ӏ쌶EPnڪ#<B;>w,&*,vQSQoͱԌK}j}{Ezjm ,QFOTT/%6%]W/XJwQn{vt>~nnbH9,BQ]Vܙ>obgw,i7ޭ|KNGx~POdUe.anoת%|~ZK95mv1ƞ1*r ,-u 9зжCEqDCAV ?:21s$\5Gm?;YuHM`?ͅÛ/ޒ]+/<&(,""O)8⏒ϛ';ymaJ7,^8jyηܱj=;v6ǿ\Uk٘S+4n]򒒿+׭ER(TH{3"/nߖ|tAYTP?,!OĂԆ#\렿|8/jO]pɮz,2׮xxN^K%]PEo5ёcnzOTJ<`οtx~A] ?pKVA-KQ33wR/bf-qh 38nsQkϤu<,WJkΙyr.]5K]㣪;B BO( &IHԀ"X,auU\"HG%Ԅ")@R If_܁AT~ߏ/<Ϋsnf/]'==65V}v8 n<\%emW/}{;]za78K;E4eX胯2dSfW\J?^lw+u1'T'oپ#1Vcf?M>U6#{NT̓(.#?}DCqG Nx~>BX{O^0;*7)6xkyOE^542@w"XKCN𶲸-8zFLRspwU ~h_^V:[jn?ͧU8{8yda5pư.W#+LuB|eyHoo/MC=M/,RY%}x};k]*= :P.Bzӛo,g,~yVGkZg{V®AQaW;HyFkkEVTUZ}Ls6I%NvIW4::h4{{EV7 !DsYYT[F)F)lQj03YXVV'urhc y4Ϧ.HZ|wQl1n02cߩ[,/سpޙQ#C |80Wƕj]ҕJ!DuyAh5mO}SuB+oUyT4֖ͩ_^N+Xkq-nh?ətmoQP^Z)eRmgc-sn%lJXpOjءF{׊o(H.;w?SBsq 9WU]mέX8dѯC~gJ`"ڔi>.j_W]nBfaik'ƜOY1Oyk!~κ~|~~>TX[~#gξǯAc:ᮝg6n2ggvZI^?:*:*7dÅ*q R*b7?KNh[_/77Wk֮nYVW:Z!RJ)Fsg/} k#CG9NhBPOX֎"]~;Vc'Kv ?T!Xv~ZCe`~0D,/"jcSONX޽m ~ DzEG+uusRDvzecCT\Q"\cc}zKq?iΪ_[֘-Ojy߉3RWke/BFGG =\G&PԼWݓ 7筹ũg'N_!!MgwHGeH8-' .)s 7ڱP~*Yx0mP׊}'u-״=۟Ik*ꓚ)J1H2\ T4Gm_)uhܽgi>mO{ '|>3)6pc}߮d4/ϙѣk'F:Gj"*6pxf_O[vN}ߙUr|:~ok[ޞE!4]JgɉQq;v;omϷ;ѩc[T۴nBUL5Bq#{heL\w(d݅ !Gd5]Ԝǚk᭡;%>QSxj/67!,\VŸޯJh>P4It໻ }vYx)(>f!=FLغxi/{aV|%xZc]}3n~h#Ep@6?PMq CcyN5߫pV}F .ǟ͞h%F+!W+ą77K׺s_Thv7fh)^CzbnD `ݦY߀Vk<7ixOVŲw?ZZ+^Zq37m,\qӦTkz 9˱1/aG+4 u8NJUncNTuآ&aʹ){(놛γqgK::8wPZM(wB6%,z|qRƋI_IC#gI]J?Yּ") >z/o'hپj }k6 Ã;Ybr_IΡ0̷R{|U1'J}'Λѡd*/߱_1jTlw>Ts?pTv 6PVQ6_L?{ @w9FNw y ޗ5BGTgxx;:)B4eK01)[c[ds7ETcu1cbv[Lt%ť8L}qv뒺za78K;E4eX胯2Z|Kb~ep#6^OB+&hZψ#{^}\sn>W}y1?ܷ_R'7Y"mXh??͙*!l>wUwe|v|3zѷ5+L_B.ĭZv>oۼ^8JȊ҅ۦƸg!. B۫ tۻu5eZc[<ǎٕV,4gY]ZG!l>R ~h_^V:[j8S`X_^[I34:,}gae]la; Q?1W'.W'o],|!ZQCûnZ;8צ!=>F ;UWjj~J/{=)~xq}.*zٺ9)_|_+\z(Ua+V®AQaW듺#[ZJK+Z*l._+/B*h5BXX+ uUC_Q )QJ!h2_vvw7Lr!Ac{;2jdxȐA}¸v*K[UTWZ# +eeRw {̈́fg,Lؼ&ja!]/%mYuÁ @iM]c[ڨj7姺'gеFB&+mLESvjfmȐg,7bޙ{X>fvխM Nh˙\f8vhEީCK3cr"([.cĘ1k"q=}p,?C~gJ`"ڔZ_8z{N}Z46c,^p14lP] ^tS~pK-RJ)Fsg)ZW7'EJkN,oЩf:]}q9풽4Kŷ`V1hR9a9Pl]trh.֥1fCe% s*{a0_ay],`f\77Wk֮nYVWoQ*N.N(N.Ni|*1Ui3RJ)4Z0/} k#CG9Nh0^}u,묺䶝:;+buѨ޽m ~ DzE^n%4WyS͏{_oy6y7|;iNyqLQ݇UkrJb 2*}ékRg輞UM=C]dYFNmq~nPNL}x5c*uV,F374&PԼWݓ 7uX\Ps״\}Rs=E9S/.&/P[tqMޟxvXtvgJQ0=&!ܕ͚J8ߧ7QqSSKRΪB .B&~»IKR>݊ăiSgV?YBX9nP/G>۬ƮWi6uhܜ\*bY}ZqѵzmnĪ8).#0Ӻ(y'ߜ5T#Oly{MわjQl0s{-J;L7|-)ڳ)-`t'׿d{f]!w ҟڱkXpqM߿ n6xgQYst %΃ssIE+\R<*4=>*Vv ;:}//.ouI_ުȺ JGý+!礧4J\UBE-8j8\:ul_ɘku'Caʮ]'95.b!0V>ږyRh{3 H5 8?o`Zϻ89?iw\^V?37}煹=;*<M8_>6 Mq͑]Ŷi[{;:vo|תbϠ/4mmJخטOM nS/*x3_ugJ΃n?{*qC~>78%4 W LYfa9t#vsRs^*dbWkPm6ע5BٔIB(Α,o-"b!DsYo%yk^xuG=|`NP垝qE^wƒd95c|_k7;Nj&LA=:ȪWǜ*zsoI}B~o>9˱1/aG+4 !Lk.#ƋI[$ !Ax5 MBاGχ ^!invIMC<ڿN4 mSqk\47?gժ~0LW-'Ϟ靺#CبN|:iy>Kh<,|uÏza?ވi[E;M׀PK+g׌SX,}k6 Ã;Yb򽻼VSd3]/uQ}OV'|t7'[EWyU9v|8R< zc{:)U{֯9Q4űo=^X?_Imז֭^ztx׺ 5_SN}u=!=j~uPZ{'Ŗ:] 6_wvz @lm}2*3 CAN֤H2lhh]N3$WI`p6ȉ9I{bbv'X%u®opP w,]M??ѳtR\18tN [cz]U F x$;<0'Ο{~^{|];ETTPph'oԧ^#3m!僳*B{PhCl/*ѕvvciQ'o%EeF:}"R?R _]J8vpԈ.&U6He6 gjMxzR΍%{]ή=܊& hSu?=&z {pOQ(.~>?xm/Ks|#VBg=>.973ES%7(g^~f(ξwM<~>?5vŪ݇O4 [G^zBŅ RYX(oVXum8cX(Y}y1?ܷ_R>_2"rhx[k4ǧH!|CGuWԬ8Gp!+3wnOS3Qggh:q~PyV?vB?ͷwHہ3K߻\KgO|ӿ3Y+DKku1gQ[u߲o~}sW-t kSk3t6iF,TigoyoYXs`?7!@h}+aנ0+#[Ia-hBktY2#' mzbi㞜9o@E!L/soxx~6uGj[$w}gɏ?pN5ߪ{;2jdxȐA}¸vvvw7Lr!A#JD]YyBTWZ#6W5(z]E^hlE2V>Z)0֟.B\=L{d^VB;Mk,Lؼ&ja!]/%mY=W}i(/BjضQaYb0ӿ3U?cϥj);56d3Kޛ_x1Lځ=,^e--eeRwRť= 3xU|խM NUC 3 #g;`{Teq՝>\^5hlPV1;C~gJ`"ڔ8t}\܄_Bk'ƜOY1Oyk!0f&4^"Vg{Ӭ9%[At?lM+^Q\ywr[b=?qY:&BB\L-IqV&VB|t^Ϫ.b4ZO0˝4%ſynS|W-|辶ƣt:ឺc9c:Q1ߪqz9JQ>fV^Stԡ!ssreRͿJT뢒>Qs5}T R*^cqjىF?Wc9kHkٝ)lJj߻)DO<6Ԗ(++oxܙZ~~>=߽2uw~~=Nbc!ke(;p[v'v.WR] [y v;Ev7[QҶy$GW}6Gc>|;+SlkB5«C?^ųO.gb6^ۦekKT~#d* -1WGm9Ihׯ]M1_lYc?bg[Gl X1(J?C_,w[mo =q*!4Z J-VBniVB!bM+ uĹ'mbٻ꨽㨗m\LHͭU_<mf~OM{Sij\lJI sDu)79I!DQٶq===Wǜ4^\utNېWc6?(I؄?rn`ʢ?=ꕥ3봴ܫ>gzH67~=NZʜ=;2t6:?-{;O/I ^ڷ:u 0; rRw_sJ8Gb5Gӧ2vؘ 5_W}MA(nev Oڸd&!uɏLI={ݪUv+m4%0Hc=u;_g7Zﭐ_] -Ȍ۸jKJAm~|;ͧ6T'|ynߜ98cNJΪ>N_^~`Z{؃)d) IDATzAN}F<0w/=AW/-Tv 6PVQ6_L?{ @wyNr]BzvqdmW/}{;]c7UV A])){E|Q'矟ؾ(9..9dꋳ#=1>UGҋm"xwEV_s4BGTgxx;:)BX{O^0;*7)6xkyOEתo/su"T+?Q2Gto:wnOcmv٪ mf/]'==6uu Zψ#{^}\sn>gצ<זgmҌ/ rYXr{GScW}dIJg8&˳wX|/B?ͷwHہ3קծ*㖪OnZ}eDz^{^V^OpA ^\>kBÅUGRxk'[t~^_:꒗5Rqrӣ:9w[|*jy6=eҿ?cDyKf hUi>h}+aנ谫DRw${c9sin53OK+Z*lZu l,Jy͞#&?Ff;uzZn}΄2dPÁa~0> hutЈRV !+ BcmNW޲ު*h5Bڏ{r][k!hrT4J!4J)lҖGjT/V֗K!(ZbnmOXVV'ur/?XխM NU?k(H.;w?Son8CEM,Oƚ1cֺE"zZ! 9WȮ62IJ3gWwszMנAЯ(?~BKE[ M36KZ넵[Eի >z)~訨gވ}x'_T#⤈/f(Bh4{uusRDv8#l>C)>q`[;2t7񛬚cf?9TƯX;`1BqpƊz)s֟ ֥K'ꖙǦvmc8TH%+|+Qlo0*.vO==:aG;|l-΃sӂ~U'_Nij~rאצ;SJ2+ص2c^c#v.T#Ϭ~ s:Cik]9PWt\NlpԎ5[[>:gUSPY}VQ,l̇N:_s?j,.rkK>9Nអtԥ&PԼWݓ 7uB2{O/PSZx.bQ{Y=.=vr4-ۚ>3)6pc}߮d4T>c6ϖqz9JQ>fN h !&9vЩ]4R-[\u0&*ߗVl4i*:?0ЯRuٿ tW"Z0ϻGMΔ".gb6^ۦekK-/I۷7D^eӯ4Cɩ֝:9pmUعoN_9ĺvkxt[ޑ.{ؽ݊%͍k**yPlk= r)i[…ܜ>PA+M-V"}g]Qιܚߟ:@[79I!DQٛ=~Ϟ?6칠Q߶E>[fOLS YJ-VBnipKh5kh}xۤ7}Ɇ͛7]oGi-b?cƖVbmjG[:SLۯ CĂuV>+^Zq37U57cu'V1ܿgHo͙jN-RwGk@1;k>Qcn J}+s􇣂{jk 26ڒRrn]$ydMωfX9 ?}:[wÆy96.Y?IbWkPi%[$lŸ_970ec?μ7н}K0aw AV^:d0Dm\ӝ//}-S#q6gXY5RGwsUtXS5RTY:DQ(QmEk)a㋓d#_Y:ÿTk#͙gY!~'y96%hŁf.W͏&|Zjr(򶷂^D5NJˈOѽ!PB? Ei:J(wtRڮ.VϚp!5˭[~b`丸琩/Ύ0VG}~ DIOOZhMxzR}Wڸ?C B_^~`Z{؃몱<*Y~r;su'SWTv 6PVQ6_L?{ @w%GTI/x;.7qTzMlXէj=#&yq9p~@@G]Fjy-M kJ*kkPڨ.m;[EVUrNvIWn5::hDo[N !n)4ʦڐ!,Yzo~ż3i,2 "[>\VV-{{qZoe8qYK5#TU4*iTɃ|T֫Q#LR[ =f>rBK3cr"FEi,:ڣ-`񂋡atڽO5g(Œ<2:Gm/qAZJhlo0*.vO==:aGMe.RJ)4Z44JI%I167J!u:8wt:clR9a9Pl]trh.V;TE㪲u!~}>Fo' Rqss:aAeuP%_`J)uZguU?߲q*l>?TWySO|nZ<ïq+LJ __# lk.Gwq(ljN&T~u\(4LwQ0l}Q0=&!AO,ѣ]JoBYtnCQ^uO>sp/ʟY:qU`'jJ]JQ g'N_!!MgwvŹF5wo;E1u$e۞ O+X.}6JpjǚC*wZguYr]- QiӼt~Z9nP/G>۬zE[ eše:>C"f-gxk;Gu!c,VmSo%4[cz>uPxkϮܷ;EST&_hBf=2}({ӧx{ocU~W}-WP}>5Uk5;Ň[l T}d5IuRi1o-rmZjgq'k]>r_Z V|一=Z&Sm%4RɿɈ㚾Fu>㚬JZZ 9i%Ci9f S">)(>{gn͞h%F+!4Z J-VBnipKޝG]?YdL& I a KeSQQQiqCեV˽^뵛֭j*&;$!:I2#a2PPzy=a899; 8%F3QBhD 8%F3QBhD 8%F3QBhD 8%6(ƜsVQ9Uo`+,HP )z[q63*/}jRFݛ+:oyNͫu \|^f'7ׄ~d8oa(:*}nGkK9L-n!ɳ=8VBm<:fӈΖ59d߻gowyP_d=[b+3)?YQKJshcͳWpoPm4j昿NJU ~xWJ#VU!):}^Cj33YcEc3 }ꔒsN 9T)ieD OgƝ_Ȩ⬹%2Emi`!O]Z)FoA?B isG!J'4;WzEm5nh^~g:};z“R!eúؼaCtEQj+dM2i\R/qwtz_ Ŕ7-h>VCBrw7TOi5Kl~u9d3#8ع@ =>zֿUo5ރ9@]FqZtYVq]dwK/olOv;RȮObMVriVK~`cB~-.챷vh5^&ZbL!);ZbJW7d:z6UW1:IIfYi_kB骱DAѼ醽.C֐!: !tml9{Ӎ;EZznle]p' Ҧ\9aG _|=%>m$["b3u6iaO!֭NU5UMM3^==vOg(!9/ԹlW4ysܿ>$'^]i4F}]h2 &[~D _/c3OɰNI:V(_떝ȇ$6/z}[G 9B*Bx_P fQ@!]\n9rnWz-`NϱumwSpOG]jHO׸ה/[w*nMZ\[jzyP7<Df}]k77?{5Ѭ1!Ӛ6D(m !+heff7;u’oMo+_.cӇge5U+?jE&l ZɭKI5m.'lXbLڠ9dńڛ\=#LK5yj8j1QagsO" ]a!&֖5wS\ !rG_Qf/YZ?LdbVÖ߬>CMspfr_;F J IDATuu/nV*߁JO#JM;Dq8J sLI:j.Wu2?p"NS ]wJ ؿ6/.͌:%cLz~N~ULS^>{L0H'ҍ充,zE,zR.orihڰ6|NAJKOIj[^sR3뭅Qrrn5%v+o.\蝿<#T`d}W_}QQrJ<GyJ#,ݡO1ւQ֨@gՖ6NKS۷gҦ$$UϟZj X_jr}r #N9rڬ 8\|ÆCҵC=⩞廪q{߼p#딧9A;%量^ 3䧟l826oqm "Pި BG j(/:*L)1ze%OZ9\:v W;&"jʗ]]"ἇyzzW=WZ~ڬ+~Y}vϣKD~QxBA!ƎW7mկ{ٗW4##7\s8_[S]X-JW_8f~,#vgݖ%unuC/ު|o׍/w_cy_n}ru(U8$NqnY֫wuIa_Vde̼pG{k\?V)Y=~|YgyA1\xuOu7Xw-#Ώv O?zM#u6Ʃrg %C۔9wNZÇ{>w~WoS_2uMӫz"9%ɺSn۾?W-[g0oI66,|/Bm-1)1J+6%5NC_p,=y.{Iqﳯ_jdϼO^7p0bʄDY~CcoILNוomzgj2.%//OZݳSY2S<(q#M}ʝ2RBuUhG/YsP)иuŲe*Ul޶bٲeVlm^TƝ]еmͶ6Cn:צDG͐{`d[׶+v&_s5ucׅy[^X/8>~y_1\^]etW|.`MR޸6ޚ鲷W>tB]e˷8K}/$߹vSm(mҵwEje+6w򦖦jPM.vq#cQ 2ol=#ݯ8?B:w}⏖uy9!wV9M?R/"OԘ?.ɻZˬ|7sut ^B1}p[EZtKgtm[͐571l:5&Ěw ;tV|U=ºw'eڬN|;{t=iRX8uBZބ&Ȧ8?/( yzT_{ɤ]B__6'7=~|;*NZ\!dǶ&ЎaҔ}=TxpJO_~,{A1 !dp[|a37>u$_ϧy?v0n5yf%mۖ.DFWZ _`SVx[/rd\SL&SMmjJ!1)Q8Uzuum^)>]ţru+B!B{8UT޸}ZS{BwA<4'67?WwKMʮnj~Ej,to9kRbn/T-K>~t&OWFQaڲ_/ğs[g$ !o{O.?w׸$}pup2wuiLF v59Ri COvmڴcJnoroc2dˮ՟-/ Y鱇5|hx -_k2* !ٗRmO튃=k1,ߴƔvƌ'܎NBa5hL&E#;.bL]^to9kRzˆwkQcTpOxs_\oVPI=5jfZj ;ePιcE!/vwJ!DpIeP"XxeS ]^Zdl^y#&yPB1ZtH!ںϏ.=RJUJ!e_AW7 !u}8IuF|G !<+?\E].E("=l>}ԜɆ '-K|o m2YS;ODO)pJIRw,[W;J*l/۴Ǝ3:M,,k;Y?L2o~+zt܌ :cʐ|c_Ceߺ Q\\8wJҬȳg*WH>I'XLvժ^]R:@.[3`')[~";H'JlՈְb'o^jQd'Io S*BHjd挩|-h<~PC9}Ӵg=U{=jjIlh{ΤJ|R^45N#RooWbLHK :]R!e\{mфLQ~%4oTj鑊՚ ~OZWі"/jkܢd^!-)֞f;37=^:NU;,!ͧYTfg>"hqhzkR"^]mYbSgEnTSgY= ׷'Pu9?YSvQ:GZ<9TO$S!3rO~0Anz*<I  J[ZP1p|%] jk [B}{a"̡ڶ{W;G 镐Bȶ UW\{?mFMkkZ?{# 1+I~q%%W{焮w7V5FԶ?|$fSȞ8)12Ώ˽{&}tKZ; )&VmiTJ#նVU[{ʬSSғG__rCJd6U" !t_u]_?u %O zSN.NlU1WMBFcˏVY3 d/pE98?mo?n\jZ;\7qu.B}>zgu$>}Θ,bKhiܝmvmRb9V㶻 p:9jcMڝ+7~@ZKomh;Kν\ PbNk ]q䘡}-Ig&c?-봕snk}6o'F7mnTQ֤Eq+?|;ݶg3VM8p=jO=h:sY=MjAΏl|w{Ͽ\ڵ76xPNCn^L[Kn3:U6-} ag[9k۰!d|uKO]]:78ױy^x⍯bg7yh`?z7Ҹđ^2w%O2*  ?#Ϗt|{П6Mz>:{G?9x3:fV{߾ekMȾ"{SWW]aw'+7 !Z+Gs׌"cr3Ng]cto&!5)/?oD֘\4ebf nEY֩ӴrM7IBm<{k{BN| j3]9#[1ڊLly᧿[P.uS1 zEht1(>8~qmUC~߷#B12::X"XϻdU ;6,|c N!Z?ZquUƸ9eafor:O!b9BS Jw@]KD 8%F3QBhD 8%F3QBhD 8%F3QBhD 8%F3QBhD 8%6(ƜsVQ9Uo`+,HP )z[q63*/}jRFݛ+:oyNͫu \|^f'7ׄ~d8oa(:*}nGkK9L-n!ɳ=8VBm<:fӈΖ59d߻gowyP_d=[b+3)?YQKJshcͳWpoPm4j昿NJU ~xWJ#VU!):}^Cj33YcEc3 }ꔒsN 9T)ieD OgƝ_Ȩ⬹%2Emi`!O]Z)FoA?B isG!J'4;WzEm5nh^~g:};z“R!eúؼaCtEQj+dM2i\R/qwtz_ Ŕ7-h>VCBrw7TOi5Kl~u9d3#8ع@ =>zֿUo5ރ9@]FqZtYVq]dwK/olOv;RȮObMVriVK~`cB~-.챷vh5^&ZbL!);ZbJW7d:z6UW1:IIfYi_kB骱DAѼ醽.C֐!: !tml9{Ӎ;EZznle]p' Ҧ\9aG _|=%>m$["b3u6iaO!֭NU5UMM3^==vOg(!9/ԹlW4ysܿ>$'^]i4F}]h2 &[~D _/c3OɰNI:V(_떝ȇ$6/z}[G 9B*Bx_P fQ@!]\n9rnWz-`NϱumwSpOG]jHO׸ה/[w*nMZ\[jzyP7<Df}]k77?{5Ѭ1!Ӛ6D(m !+heff7;u’oMo+_.cӇge5U+?jE&l ZɭKI5m.'lXbLڠ9dńڛ\=#LK5yj8j1QagsO" ]a!&֖5wS\ !rG_Qf/YZ?LdbVÖ߬>CMspfr_;uu/nV*߁JO#J(afپ{f~ixisϻom_\uJ4l[^s|)JܘkgyǮudy?vн! IDATC:֯8ҍ充,zE,zBUj}gw5N.orihڰ6|NAJKOI?ts)W(9GD*#_ysE}4sz98qO߁C[x~Ӌ')nl6smN٩\o{BM8t|IvʅKr׸y:o˽ !6?O-k Ћھ%>6}%PٷOu6˶;էhJSKmO}r xJϑf]6,]O,U{Y{;c槿N[oQN˷>q=/ݡ˭O^y )-Kzu.)Lֽ=s׸7~%R(zGE/q#̓b..0,Qnܱ|Ñ8?;?>:#>"B=J߽A 3ۆldG䳲 {  w2n۫4b9E㒼7m̺hލ͘>g{-" !hGKJc>P2{nqgTx#Ftuv=pV.BHo[[&f5 !;>5^)9}HTo>P:y_1\^]etW]~_g̛BX:{MI9/pSt+ C}EIqﳯ_jdϼO^7S&${oZLNוomzgj2.%//OZݳSY2S<(q#M}ʝ2RBuUhG/YsDXlUE*V,[lي};IIwvA׶5 3n\!4C.m]Ve|̓IDl׍_.zgknya;GvH&l~o\MoMt+{nvò[ ьľǶuySKS5B(q&};l81( niފU76Ew߃sǬ "O=ҺZ9!tVA׶ Y~xӹ8:Z̷\jͲڌ8eӿ|s_H?n-<|U'u؊k\~Afws,to9kR -Ew)Ӈُ2ڤ"ҹڬWNzlYWbz^t߂EB!^}amyO_`dMo0("9/k߶ūR|kwyBОEzc4婇gh*%d0p(}}E͚q׼3Nד&+ NHP?Ԥz#Ok/w{]Xhs~˦X?Q򆑣חocGũU#/[ۄ7L2⣗*N)^/m,]o/:ܘWԑ=J&~K¸ᖧk񶏛ۗm[mu^ikǗkk/8>ksD]rUMI6$&% ݡW/<+E^xTnSDXHaiNI}Ʌﶵ݃^G%yhrOmo~߯]>35/US6?v}A;?]{uF=ΐ= l({Bo}!p_ Xd:>=eiW8 !";\a!t}=='}G !<+?\ x2TRR ):^mN>5~UX`[W/?./(wOqK?ek;ܓ&545ۺⳕNj#Ead)A%c8Ǘ l-V,dy[_spESǫlh9_cQ.GGH!]ξyVmO튃=k1,ߴƔvƌ'܎NBa5hL&E#;.bL]^to9kRzˆwkPI=5jfZj ;ePιcE!gFZ~ۃ{Wn<)Sh/-2x6<ϑQ<(hq:{Bm]Gv4;t??qTO ~s#%^93p,QWX.W`M0ag9Z7͍'\!pݺcZ߬oFzV(o e.NBa!k9>XCͥfgNS<{G_L(ax|o m2YS8x"dTKhz;_GKBmuc|&k꬟O?7?}emDz|/DqqAJѮ*In"Ϟ5K\!M '`1U\zuIl6πu~9ƀ__߈3ߺ:zz~yd98#1\hx[?(nt֜,~k)(dU&} W|WBsЌa1BHOWwPɷZq7-/?E_^)<˹Eɚ= BJ)F="|(}^Taq qF!m5NRoMS?JwyN(&=M{vZȋѣĆPK%>)Q/ŚзToOJղ]1!-9&tI!m a?uҒmiijV3sT{|OuH%av#i=BڲzEΌrױyᖚY?}~.mF]~h3H{}8scHD2:B(1#מy=7kQBE{i%N8|Ѩɥ|subpfƖhf,AA^Nd/Mq ru sfY"RE{Lmxvi=%Yv])\:oo ^U[vfNOI'vZ5KMB%7?+94A8|6u9 =Ovd=u9T~S᭠&μ)Ez%$|C^|mQSښ,+f i?.kR꿿?%%W{焮w7V5FԶ?|$fSȞ8)12O @tzɾUnkHU~2Ԕd]!sʭ *Mb.uσܱadi^oʼnmբ*@GZ֫?$Is䘥mf[uܸ@$GF E@s˚Ӥk经B(D4#ϽdM'\.B_p+ Dų>HK.Yol;Lv'e1ٻא=ϻW]n. 522;0-Ԗ 3Z eL;@(K! YsT#ey`3HMVd;F)D6{֐9& uuϧ??fſ[%ocuFnwŗ];rܓlyhҫ|`ܓظ ͟{V_ ɇc'?Gt{ 12ui3_>?Zzą<=Une[0O9cƶ?_ӛzq6^?p͡M[]+ni F=L|Κ>E_t]큽8ѩo-u^ړO_tҋ~Ӹ^1eWws_%_LzGc=x/zգ{/3\K~3q?鈙so8ԙ'ݵK2'ľ^a>y }9͋3aø{}s}߇Tg޸ྍc;wn{ɤ#O{;o^{kc;8[<ϗ!;\0tBA C!+ 0tBA5t{NtBA C!+ Ct܂p'{bAMӣ|lq 3xu`Ѿv|G|' yдwu+ÃLU +Kv =K&lx+Φ/i9}{F>YA1s'qomzIYhOH 짥 3o5-kAS'Wa8p>0-y w.[wR^8v/S41lګ{^Y7m?B?7WZ/13Bo7®_r1g~RiC9̘> =iK~#r#F9}&9Wa8Iғ[ e.4qub&XuҾftvFU-{4k8/K w:4>ޒۙv$.Yi~1Phm>-/{iu-oe>Ert׎CM4mڷٺ~Mq2XvpFϜ r,~Ï'=bfHn%jvp_MҞ3- 0`*/?uL* ?l~ic:`5a7,tA#2vςHKgouK[_BilL-5緺o2@~geH?pW?zm^ p :{]{]76LnbW'"困TCԣ_@9L9mV:yiΑ)'oۙW+n{y:N[.`=,ldׂ Y=Y{uM9Qf؟/Evl}"]sCoSx.\8O"c}NN2}ٔ>l{JڽI8^ei-[l;zSߡ<<mOA杻+ ?7EH筞.-MK<5bK;@8D͞۵.c[%;H\6ыj=a,m-Qo ;m~5 3}&k[]{6-&D"Ӡl0R[P XV(4y? ϭzywvg+ļbjddq/[uҎ=GnC箞"eW Eqrv$nvs.ʚZM5crgR,p ؟CԼn?} tH'g:YyrǮu $}X 3ߴMeOf/"\ɰALqFZ/j*8_`87~G{bZZm1eYic$bR?4N-dJw턐6gIƻh`23J߹(CQS;,%-4A{-뚚<8$En}E zF(RD+di^beiZIᢼWjUZ?n*M ?|gLxMfJ7qam=.Uʶ ! *eۋX~e'A2}2]~Q:$׿@sEf&`?J̶ d,ӵȧ+Z{rxDC3YA>8_^Q2{)JH`aHSoEB"cZtޞm 81h5AQTPJ,Mz l\{ԥ±j#D2 M^32 j mwHI;771T{dlq`4j e2 A/f}^iz'yebnݻ E'k c^by^,\'ss*\}\ZymдR ` JeA32if zixo͌tQ]Hk`q(tb_f=&R?ڷ>;U;@ =nK*`ɒb]Ao=/t;+ȁ]\5j`v 7sU7=]}|5.X7,zߛӮ68Pg?94(kD:č,89lDYƞϾxVޭ 6444إ:=f"蘨`oQum{uh ?Tk)S r9B DBBC]\FG9=^]{l[D^޶אAoy'0wJBD cSw_N4W;xꗠ8-mrmiP; UZojKYNɴe׊D )f-- BGy}!5oe`Gb?>t4vxOƟaZy3B#(z䈰>Κ?~DðΫv󪖥S@܈iü7Tܪ<,"wG"|GU,ϋM7ɯf%XTZ K\}`3#%CC5gpUpnrk`{ݻo"~;:r9n]w@+a?Ī_}pI?{#?J$όw;O#xli8gc{O2ͷϦd_!vxv_!A C!+ 0tBA C!+ 0tBA C!+ 0tBⶴ@lg#|d]`FnP۱ihBp A˓go1[؎O~;ȋR{{n3̣RkK; W!0{ ϒ50`?4N-dJw턐6g3vR2pTI=aCUmW;cl23d?:רjM+42ƨR62t!"!nesF; FEQЕnOxÏ"W+w|ƥw1@,<ƽ}4"!@R[NFE X3MFe#CJl3O]~Q:$AB6l1]ˎ|yz_1~xgE~~==<{̍?tl a;p9Z/lM/Kc/il5@Ó^32 j =4iu<Jf/%@)sLVGu&28x&:?ƵǣW*cƇ%L5V]F/iC?%`մEQA(L&26(}4h4TfGH;{;Rkyg 1\nt}jolEa-c}ªQ;nI'K5v۫ڦ)?Y'p F@xn'=,J]5$+@Ke~"b˭ L~u>nd"-o; u ;pQs6wC!+BW:!^a xBW:B2k6>q늉"^žc#!P zzq ¾o>㘸b}BA@/¢{;ʛ{(h*<\!1g7P& AWŁtU~"5X dv~8]^jKun!7]!PppS.4o_˯;YV%4?S !sd50 ب+kA;U"y`'٪A4*OAOKVXŁJ2N^I{zِ s$ I!{/,?9X**xc\BtT 8yafjtVp8•`5d~u2 ,YU/P{ZA`sA xBW:!^a xL㶴B´B]miΑ/OSp֦kX\tVV7~+%cWpXt"Ŕ ks m|r1X1 qm9[O}UK;8mu賕] 6d:HԦoG# ɴZo@2htxn)WGO]t5^^5űI2 sW[7>jخ3t_)9Xng{JYdws е%jsv$nvs.ʻkP4 n‹kU)qǟ]r7XTw>&.A03NjW2lrSv{-$ppQޫqppuEv-gzV0?:sU }Nt=B%A+J^nRnb'\LXG`5:ߤVL>W!UB`B\}<]puw&ks4x|!D^#j]÷2KVk`GkerC*ϩrsuku[w?sE{`;0wr0}d54*dPs2+(R) r`WmAZe?C]k\=q%tv2AQ>#fwe=E: Vh|`)Y3ĐP"F~A=/36Vu-(>_K6]= ,A Wa5NA j4B At6:!^=0tBA C!+ 0tBAT<1-QolI$\$~=/.}~"|yM#!682.̼h^v!)0'H@+qjt xnNLnihF[Lc^yڷNk]_r>|XL[APb[؋ܜk40 Sܿ'0\`: ?l~ic:`5a7,tA#0s.ֺ۹ǾL9Vgr)t(I]}[⨣fjߊxtUswl9CRqq=i-Q_uQ`4N}My5\8r^=|vU7EJ%|~f-,;xƒAV{ZʉYI;V**hUV-s>싾$;>vXHKZ;hZ55#d'ؖzpBvBHX%#.CWz- W*$N]Y $cF,/-,{IͬQŗ.{:k\bkc=|A#bU`a3 *B|YAC+;G/ v\M-xބnl%t|KŅcyFՉd4=6WPuI:0ʁ1h5AQTPJ,M*g.tS"+ܙWIūA" @yPMH/C0ʑ 8NsÍy 1 VVS݆T&x :LO&0.nfΥ~^# ~%/yP0'//lax7<~r߯v4zn椘Yԕ]M} Lp@d!X ߽BiU"A y֪A`s+jX%\0tB{:!^a xBW:!^a x,䩩xm=ge/w5V}ܔxǼX븷6X{8{]9~3 M\Tq:5鋴[Y8^!8l7wwqL6BilL-5緺o2@~Ov`jƀmڷl?W?]F@/¢{;ʛ{kIDAT(p:sᴞNٍk[ _ YDA`$zM؈EMf,zvYȮ!ۣכkK !b H^^doąḮ=ZOI?q͵'X/:sp%&1iiX 4]!PppS.4o_˯;YȾ5jZӊę%AUwؠaZu`emJggƱ/JDon9BGOўd:3lu@<*Vw ޽ !AHC2_(,ɹ>f zixoXq4*dPs2+(RTwPt8t \Bto tP}Wcmu3'JM`o3q`jvr=cN +2Y;Pt,A W=- Y`5d!Z5`.xy:R > BWxO!+ 0tBA C!+ 0tBA C!+ 0tBA C!+ 0tBA INpNIENDB`swappy-1.5.1/test/images/small-blue.png000066400000000000000000000001311433652042100200230ustar00rootroot00000000000000PNG  IHDRa IDAT8Oct?q0` `v.Q,IENDB`