diff --git a/.gitignore b/.gitignore index 2495677..7d1d9df 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,5 @@ __pycache__/ # LibreOffice lock files .~lock.*# + +/.quarto/ diff --git a/_quarto.yml b/_quarto.yml new file mode 100644 index 0000000..82dd617 --- /dev/null +++ b/_quarto.yml @@ -0,0 +1,20 @@ +project: + type: default + output-dir: "./docs/pdf-output" + +format: + typst-pdf: + default: true + toc: false + number-sections: true + mainfont: "Inter" + monofont: "JetBrains Mono" + fontsize: 9pt + papersize: a4 + margin: + top: 1.2cm + bottom: 1.2cm + left: 1.5cm + right: 1.5cm + +lang: de diff --git a/ansible/roles/common/tasks/main.yml b/ansible/roles/common/tasks/main.yml index 2824daa..1012634 100644 --- a/ansible/roles/common/tasks/main.yml +++ b/ansible/roles/common/tasks/main.yml @@ -225,4 +225,14 @@ shell: echo 30 > /sys/module/zswap/parameters/max_pool_percent become: yes changed_when: false - tags: [optimization, zswap] \ No newline at end of file + tags: [optimization, zswap] + +- name: Ensure secrets management tools are installed + community.general.pacman: + name: + # Secrets bridge (KWallet migration) + - gnome-keyring + # Bitwarden CLI client + - rbw + state: present + tags: [secrets, bitwarden] \ No newline at end of file diff --git a/ansible/roles/dev-tools/tasks/main.yml b/ansible/roles/dev-tools/tasks/main.yml index 48f06b8..4c54227 100644 --- a/ansible/roles/dev-tools/tasks/main.yml +++ b/ansible/roles/dev-tools/tasks/main.yml @@ -51,6 +51,10 @@ - wp-cli # C/C++ toolchain (cpp skill) - clang + # Windows installer inspection (amicron-version-inspection skill) + - perl-image-exiftool + - icoutils + - innoextract-git # CalDAV tools (caldav-webcal skill) - khal - vdirsyncer @@ -93,7 +97,6 @@ - bleachbit - reiserfsprogs - dmraid - - onlyoffice-desktopeditors - virt-manager - guvcview - helvum diff --git a/ansible/roles/fonts/tasks/main.yml b/ansible/roles/fonts/tasks/main.yml new file mode 100644 index 0000000..6fff8a7 --- /dev/null +++ b/ansible/roles/fonts/tasks/main.yml @@ -0,0 +1,17 @@ +--- +- name: Ensure workstation fonts are installed + community.general.pacman: + name: + # Primary UI font (Inter brand font) + - inter-font + # Code editor fonts + - otf-cascadia-code + - ttf-fira-code + - otf-fira-mono + # Sans-serif families + - otf-fira-sans + - adobe-source-sans-fonts + # Serif fallback + - tex-gyre-fonts + state: present + tags: [fonts, typography] diff --git a/ansible/roles/pdf/tasks/main.yml b/ansible/roles/pdf/tasks/main.yml new file mode 100644 index 0000000..8264949 --- /dev/null +++ b/ansible/roles/pdf/tasks/main.yml @@ -0,0 +1,11 @@ +--- +- name: Ensure PDF viewer and generation tools are installed + community.general.pacman: + name: + # Minimal PDF viewer (Wayland-compatible) + - zathura + - zathura-pdf-mupdf + # PDF generation from HTML/CSS + - python-weasyprint + state: present + tags: [pdf, viewer, generation] diff --git a/ansible/workstation.yml b/ansible/workstation.yml index 0c1ac85..cdbaf93 100644 --- a/ansible/workstation.yml +++ b/ansible/workstation.yml @@ -14,6 +14,8 @@ - common - dev-tools - maintenance + - fonts + - pdf - role: hyprland tags: [hyprland] - role: greetd diff --git a/docs/pdf-comparison/.gitignore b/docs/pdf-comparison/.gitignore new file mode 100644 index 0000000..075b254 --- /dev/null +++ b/docs/pdf-comparison/.gitignore @@ -0,0 +1 @@ +/.quarto/ diff --git a/docs/pdf-comparison/_quarto.yml b/docs/pdf-comparison/_quarto.yml new file mode 100644 index 0000000..3344dc7 --- /dev/null +++ b/docs/pdf-comparison/_quarto.yml @@ -0,0 +1,14 @@ +format: + typst-pdf: + default: true + toc: false + number-sections: true + mainfont: "Inter" + monofont: "JetBrains Mono" + fontsize: 9pt + papersize: a4 + margin: + top: 1.2cm + bottom: 1.2cm + left: 1.5cm + right: 1.5cm diff --git a/docs/pdf-comparison/cheatsheet.css b/docs/pdf-comparison/cheatsheet.css new file mode 100644 index 0000000..61bf543 --- /dev/null +++ b/docs/pdf-comparison/cheatsheet.css @@ -0,0 +1,128 @@ +/* Cheatsheet CSS for Markdown → HTML → PDF via WeasyPrint */ +/* Clean, professional tables with Inter + JetBrains Mono */ + +@page { + size: a4 portrait; + margin: 10mm 14mm 10mm 14mm; + @bottom-center { + content: "Seite " counter(page); + font-size: 7pt; + color: #999; + } +} + +* { margin-top: 0; } + +body { + font-family: "Inter", "DejaVu Sans", sans-serif; + font-size: 9pt; + line-height: 1.3; + color: #111; +} + +h1 { + font-size: 14pt; + font-weight: 700; + margin-bottom: 4pt; + padding-bottom: 4pt; + border-bottom: 1.5pt solid #111; +} + +h2 { + font-size: 10.5pt; + font-weight: 700; + margin: 10pt 0 4pt 0; + color: #003366; + border-bottom: 0.5pt solid #ccc; +} + +h3 { + font-size: 9pt; + font-weight: 600; + margin: 6pt 0 2pt 0; + color: #003366; +} + +p { margin: 2pt 0; } + +/* ---- Tables: clean reference style ---- */ +table { + width: 100%; + border-collapse: collapse; + margin: 2pt 0 6pt 0; + font-size: 8pt; + page-break-inside: avoid; +} + +th { + background: #f0f4f8; + font-weight: 700; + font-size: 7.5pt; + text-transform: uppercase; + letter-spacing: 0.04em; + color: #003366; + padding: 3pt 5pt; + border: none; + border-bottom: 1pt solid #0066cc; + text-align: left; +} + +td { + padding: 2pt 5pt; + border: none; + border-bottom: 0.5pt solid #e4e4e4; + vertical-align: top; +} + +tbody tr:nth-child(even) td { + background: #f7f9fb; +} + +tbody tr:last-child td { + border-bottom: none; +} + +/* ---- Code / key rendering ---- */ +code, kbd { + font-family: "JetBrains Mono", monospace; + font-size: 8pt; + background: #f5f5f5; + padding: 1pt 3pt; + border-radius: 2pt; + border: 0.5pt solid #ddd; +} + +pre { + font-family: "JetBrains Mono", monospace; + font-size: 7.5pt; + background: #f5f5f5; + padding: 4pt 6pt; + border-radius: 3pt; + border: 0.5pt solid #ddd; + page-break-inside: avoid; + white-space: pre-wrap; +} + +/* ---- Two-column cheatsheet layout ---- */ +.twocol { + column-count: 2; + column-gap: 14pt; +} + +.twocol h2 { + break-before: column; + column-break-before: always; +} + +.twocol h2:first-child { + break-before: avoid; + column-break-before: avoid; +} + +hr { + border: none; + border-top: 0.5pt solid #ddd; + margin: 6pt 0; +} + +a { color: #0066cc; text-decoration: none; } diff --git a/docs/pdf-comparison/hyprland-keybindings-no-meta.md b/docs/pdf-comparison/hyprland-keybindings-no-meta.md new file mode 100644 index 0000000..e47c68a --- /dev/null +++ b/docs/pdf-comparison/hyprland-keybindings-no-meta.md @@ -0,0 +1,126 @@ +--- +title: "Hyprland Keybindings Cheatsheet" +author: "mw-pfeddersheim-workstation" +date: "May 2026" +--- + +# Hyprland Keybindings — Full Cheatsheet + +**Layout:** German (de) | **Mod key:** SUPER (Windows key) | **Source:** `hyprctl binds` live + +--- + +## General + +| Shortcut | Action | Details | +|----------|--------|---------| +| `SUPER+Q` | Open terminal | kitty | +| `SUPER+C` | Kill active window | killactive | +| `SUPER+M` | Exit Hyprland | exit | +| `SUPER+E` | File manager | dolphin | +| `SUPER+V` | Toggle floating | togglefloating | +| `SUPER+D` | App launcher | hyprlauncher | +| `SUPER+P` | Toggle pseudo-split | pseudo | +| `SUPER+J` | Toggle split direction | layoutmsg togglesplit | +| `SUPER+F` | Toggle fullscreen | fullscreen 0 | +| `SUPER+R` | Reload config | hyprctl reload | +| `SUPER+SPACE` | Toggle float (popup) | togglefloating | +| `SUPER+TAB` | Cycle next window | cyclenext | +| `SUPER+SHIFT+TAB` | Cycle previous window | cyclenext prev | +| `SUPER+` `` ` `` (Grave) | Toggle scratchpad | togglespecialworkspace | +| `SUPER+SHIFT+` `` ` `` | Send window to scratchpad | movetoworkspace special | +| `SUPER+CTRL+K` | Keybind cheat menu | *(broken — pipelines to grep+fuzzel)* | +| `SUPER+CTRL+L` | Lock screen | hyprlock | +| `SUPER+B` | Web browser | google-chrome-stable | + +## Navigation / Focus + +| Shortcut | Action | +|----------|--------| +| `SUPER+TAB` | Cycle next window | +| `SUPER+SHIFT+TAB` | Cycle previous window | +| `SUPER+H` | Move focus left | +| `SUPER+L` | Move focus right | +| `SUPER+left arrow` | Move focus left | +| `SUPER+right arrow` | Move focus right | +| `SUPER+up arrow` | Move focus up | +| `SUPER+down arrow` | Move focus down | + +## Window Movement + +| Shortcut | Action | +|----------|--------| +| `SUPER+SHIFT+H` | Move window left | +| `SUPER+SHIFT+L` | Move window right | +| `SUPER+SHIFT+K` | Move window up | +| `SUPER+SHIFT+J` | Move window down | +| `SUPER+SHIFT+left` | Move window left | +| `SUPER+SHIFT+right` | Move window right | +| `SUPER+SHIFT+up` | Move window up | +| `SUPER+SHIFT+down` | Move window down | + +## Window Resize + +| Shortcut | Action | +|----------|--------| +| `SUPER+ALT+H` | Resize active: width -40 | +| `SUPER+ALT+L` | Resize active: width +40 | +| `SUPER+ALT+K` | Resize active: height -40 | +| `SUPER+ALT+J` | Resize active: height +40 | + +## Screenshots + +| Shortcut | Action | Tool | +|----------|--------|------| +| `Print` | Area select → save + copy | grimblast copysave area | +| `SUPER+Print` | Active window → save + copy | grimblast copysave active | +| `SUPER+SHIFT+Print` | Full monitor → save + copy | grimblast copysave output | +| `SUPER+ALT+Print` | Area select → annotate | grim | slurp | satty | + +## Workspaces + +| Shortcut | Action | +|----------|--------| +| `SUPER+1..9` | Switch to workspace 1-9 | +| `SUPER+SHIFT+1..9` | Move active window to workspace 1-9 | +| `SUPER+` `` ` `` | Toggle scratchpad (togglespecialworkspace) | +| `SUPER+SHIFT+` `` ` `` | Move to scratchpad (movetoworkspace special) | + +### Workspace Layout + +| Workspace | Monitor | Position | +|-----------|---------|----------| +| 1 | DP-1 (TERRA 3280W) | Left, 2560x1440@144 | +| 2 | DVI-D-1 (BenQ BL2405) | Center, 1920x1080@60 rotated 90deg | +| 3 | HDMI-A-1 (TERRA 3280W) | Right, 2560x1440@144 | + +## Notes + +- `SUPER+CTRL+K` (keybind menu) does **not work** — the `sed` pipeline breaks. Needs fix. +- The `sed` pipeline `sed 's/^bind\s*=\s*\$mainMod/SUPER/;s/\s*#/#/'` fails silently because the unescaped `$` in the `sed` command gets interpreted as a variable. + +## Troubleshooting + +| Issue | Check | +|-------|-------| +| Print key not working | `hyprctl binds | grep Print` | +| `SUPER+R` not working | `hyprctl binds | grep 'reload'` | +| Screenshots fail | `which grimblast satty slurp grim` | +| Clipboard empty | `echo test | wl-copy && wl-paste` | + +## Satty Editor Shortcuts + +| Action | Shortcut | +|--------|----------| +| Freehand | F | +| Rectangle | R | +| Ellipse | E | +| Line/Arrow | L | +| Text | T | +| Blur | B | +| Crop | C | +| Undo | Ctrl+Z | +| Redo | Ctrl+Shift+Z | +| Copy | Ctrl+C | +| Save | Ctrl+S | +| Quit | Esc or Ctrl+Q | diff --git a/docs/pdf-comparison/hyprland-keybindings-pandoc-full.typ b/docs/pdf-comparison/hyprland-keybindings-pandoc-full.typ new file mode 100644 index 0000000..d535a68 --- /dev/null +++ b/docs/pdf-comparison/hyprland-keybindings-pandoc-full.typ @@ -0,0 +1,200 @@ +#set document(title: "Hyprland Keybindings - Pandoc") +#set text(font: ("Inter", "DejaVu Sans"), size: 9pt, lang: "de") +#set page(paper: "a4", margin: 1.2cm) +#set heading(numbering: "1.") +#set par(leading: 0.45em) +#show link: set text(navy) +#let horizontalrule = h(25%) + line(stroke: 0.5pt, length: 50%) += Hyprland Keybindings --- Full Cheatsheet + +#strong[Layout:] German (de) | #strong[Mod key:] SUPER (Windows key) | +#strong[Source:] `hyprctl binds` live + +#horizontalrule + +== General + +#figure( + align(center)[#table( + columns: (37.04%, 29.63%, 33.33%), + align: (auto,auto,auto,), + table.header([Shortcut], [Action], [Details],), + table.hline(), + [`SUPER+Q`], [Open terminal], [kitty], + [`SUPER+C`], [Kill active window], [killactive], + [`SUPER+M`], [Exit Hyprland], [exit], + [`SUPER+E`], [File manager], [dolphin], + [`SUPER+V`], [Toggle floating], [togglefloating], + [`SUPER+D`], [App launcher], [hyprlauncher], + [`SUPER+P`], [Toggle pseudo-split], [pseudo], + [`SUPER+J`], [Toggle split direction], [layoutmsg togglesplit], + [`SUPER+F`], [Toggle fullscreen], [fullscreen 0], + [`SUPER+R`], [Reload config], [hyprctl reload], + [`SUPER+SPACE`], [Toggle float (popup)], [togglefloating], + [`SUPER+TAB`], [Cycle next window], [cyclenext], + [`SUPER+SHIFT+TAB`], [Cycle previous window], [cyclenext prev], + [`SUPER+` #raw("`") (Grave)], [Toggle + scratchpad], [togglespecialworkspace], + [`SUPER+SHIFT+` #raw("`");], [Send window to + scratchpad], [movetoworkspace special], + [`SUPER+CTRL+K`], [Keybind cheat menu], [#emph[(broken --- pipelines + to grep+fuzzel)];], + [`SUPER+CTRL+L`], [Lock screen], [hyprlock], + [`SUPER+B`], [Web browser], [google-chrome-stable], + )] + , kind: table + ) + +== Navigation / Focus + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+TAB`], [Cycle next window], + [`SUPER+SHIFT+TAB`], [Cycle previous window], + [`SUPER+H`], [Move focus left], + [`SUPER+L`], [Move focus right], + [`SUPER+left arrow`], [Move focus left], + [`SUPER+right arrow`], [Move focus right], + [`SUPER+up arrow`], [Move focus up], + [`SUPER+down arrow`], [Move focus down], + )] + , kind: table + ) + +== Window Movement + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+SHIFT+H`], [Move window left], + [`SUPER+SHIFT+L`], [Move window right], + [`SUPER+SHIFT+K`], [Move window up], + [`SUPER+SHIFT+J`], [Move window down], + [`SUPER+SHIFT+left`], [Move window left], + [`SUPER+SHIFT+right`], [Move window right], + [`SUPER+SHIFT+up`], [Move window up], + [`SUPER+SHIFT+down`], [Move window down], + )] + , kind: table + ) + +== Window Resize + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+ALT+H`], [Resize active: width -40], + [`SUPER+ALT+L`], [Resize active: width +40], + [`SUPER+ALT+K`], [Resize active: height -40], + [`SUPER+ALT+J`], [Resize active: height +40], + )] + , kind: table + ) + +== Screenshots + +#figure( + align(center)[#table( + columns: (41.67%, 33.33%, 25%), + align: (auto,auto,auto,), + table.header([Shortcut], [Action], [Tool],), + table.hline(), + [`Print`], [Area select → save + copy], [grimblast copysave area], + [`SUPER+Print`], [Active window → save + copy], [grimblast copysave + active], + [`SUPER+SHIFT+Print`], [Full monitor → save + copy], [grimblast + copysave output], + [`SUPER+ALT+Print`], [Area select → annotate], [grim], + )] + , kind: table + ) + +== Workspaces + +#figure( + align(center)[#table( + columns: (55.56%, 44.44%), + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+1..9`], [Switch to workspace 1-9], + [`SUPER+SHIFT+1..9`], [Move active window to workspace 1-9], + [`SUPER+` #raw("`");], [Toggle scratchpad (togglespecialworkspace)], + [`SUPER+SHIFT+` #raw("`");], [Move to scratchpad (movetoworkspace + special)], + )] + , kind: table + ) + +=== Workspace Layout + +#figure( + align(center)[#table( + columns: 3, + align: (auto,auto,auto,), + table.header([Workspace], [Monitor], [Position],), + table.hline(), + [1], [DP-1 (TERRA 3280W)], [Left, 2560x1440\@144], + [2], [DVI-D-1 (BenQ BL2405)], [Center, 1920x1080\@60 rotated 90deg], + [3], [HDMI-A-1 (TERRA 3280W)], [Right, 2560x1440\@144], + )] + , kind: table + ) + +== Notes + +- `SUPER+CTRL+K` (keybind menu) does #strong[not work] --- the `sed` + pipeline breaks. Needs fix. +- The `sed` pipeline `sed 's/^bind\s*=\s*\$mainMod/SUPER/;s/\s*#/#/'` + fails silently because the unescaped `$` in the `sed` command gets + interpreted as a variable. + +== Troubleshooting + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Issue], [Check],), + table.hline(), + [Print key not working], [`hyprctl binds | grep Print`], + [`SUPER+R` not working], [`hyprctl binds | grep 'reload'`], + [Screenshots fail], [`which grimblast satty slurp grim`], + [Clipboard empty], [`echo test | wl-copy && wl-paste`], + )] + , kind: table + ) + +== Satty Editor Shortcuts + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Action], [Shortcut],), + table.hline(), + [Freehand], [F], + [Rectangle], [R], + [Ellipse], [E], + [Line/Arrow], [L], + [Text], [T], + [Blur], [B], + [Crop], [C], + [Undo], [Ctrl+Z], + [Redo], [Ctrl+Shift+Z], + [Copy], [Ctrl+C], + [Save], [Ctrl+S], + [Quit], [Esc or Ctrl+Q], + )] + , kind: table + ) diff --git a/docs/pdf-comparison/hyprland-keybindings-pandoc.pdf b/docs/pdf-comparison/hyprland-keybindings-pandoc.pdf new file mode 100644 index 0000000..34c4fe3 --- /dev/null +++ b/docs/pdf-comparison/hyprland-keybindings-pandoc.pdf @@ -0,0 +1,6475 @@ +%PDF-1.7 +% + +1 0 obj +<< + /Type /Pages + /Count 3 + /Kids [419 0 R 421 0 R 423 0 R] +>> +endobj + +2 0 obj +<< + /Type /Outlines + /First 3 0 R + /Last 3 0 R + /Count 1 +>> +endobj + +3 0 obj +<< + /Parent 2 0 R + /First 4 0 R + /Last 13 0 R + /Count -9 + /Title + /Dest 418 0 R +>> +endobj + +4 0 obj +<< + /Parent 3 0 R + /Next 5 0 R + /Title (1.1. General) + /Dest 408 0 R +>> +endobj + +5 0 obj +<< + /Parent 3 0 R + /Next 6 0 R + /Prev 4 0 R + /Title (1.2. Navigation / Focus) + /Dest 409 0 R +>> +endobj + +6 0 obj +<< + /Parent 3 0 R + /Next 7 0 R + /Prev 5 0 R + /Title (1.3. Window Movement) + /Dest 410 0 R +>> +endobj + +7 0 obj +<< + /Parent 3 0 R + /Next 8 0 R + /Prev 6 0 R + /Title (1.4. Window Resize) + /Dest 411 0 R +>> +endobj + +8 0 obj +<< + /Parent 3 0 R + /Next 9 0 R + /Prev 7 0 R + /Title (1.5. Screenshots) + /Dest 412 0 R +>> +endobj + +9 0 obj +<< + /Parent 3 0 R + /Next 11 0 R + /Prev 8 0 R + /First 10 0 R + /Last 10 0 R + /Count -1 + /Title (1.6. Workspaces) + /Dest 414 0 R +>> +endobj + +10 0 obj +<< + /Parent 9 0 R + /Title (1.6.1. Workspace Layout) + /Dest 413 0 R +>> +endobj + +11 0 obj +<< + /Parent 3 0 R + /Next 12 0 R + /Prev 9 0 R + /Title (1.7. Notes) + /Dest 415 0 R +>> +endobj + +12 0 obj +<< + /Parent 3 0 R + /Next 13 0 R + /Prev 11 0 R + /Title (1.8. Troubleshooting) + /Dest 416 0 R +>> +endobj + +13 0 obj +<< + /Parent 3 0 R + /Prev 12 0 R + /Title (1.9. Satty Editor Shortcuts) + /Dest 417 0 R +>> +endobj + +14 0 obj +<< + /Type /StructTreeRoot + /RoleMap << + /Datetime /Span + /Terms /Part + /Title /P + /Strong /Span + /Em /Span + >> + /K [18 0 R] + /ParentTree << + /Nums [0 15 0 R 1 16 0 R 2 17 0 R] + >> + /IDTree << + /Names [(U1x0y0) 374 0 R (U1x1y0) 373 0 R (U1x2y0) 372 0 R (U2x0y0) 273 0 R (U2x1y0) 272 0 R (U3x0y0) 234 0 R (U3x1y0) 233 0 R (U4x0y0) 195 0 R (U4x1y0) 194 0 R (U5x0y0) 172 0 R (U5x1y0) 171 0 R (U5x2y0) 170 0 R (U6x0y0) 144 0 R (U6x1y0) 143 0 R (U7x0y0) 119 0 R (U7x1y0) 118 0 R (U7x2y0) 117 0 R (U8x0y0) 84 0 R (U8x1y0) 83 0 R (U9x0y0) 60 0 R (U9x1y0) 59 0 R] + >> + /ParentTreeNextKey 3 +>> +endobj + +15 0 obj +[381 0 R 381 0 R 380 0 R 376 0 R 379 0 R 376 0 R 378 0 R 376 0 R 377 0 R 376 0 R 375 0 R 375 0 R 374 0 R 373 0 R 372 0 R 369 0 R 367 0 R 366 0 R 364 0 R 362 0 R 361 0 R 359 0 R 357 0 R 356 0 R 354 0 R 352 0 R 351 0 R 349 0 R 347 0 R 346 0 R 344 0 R 342 0 R 341 0 R 339 0 R 337 0 R 336 0 R 334 0 R 332 0 R 331 0 R 329 0 R 327 0 R 326 0 R 324 0 R 322 0 R 321 0 R 319 0 R 317 0 R 316 0 R 314 0 R 312 0 R 311 0 R 309 0 R 307 0 R 306 0 R 304 0 R 302 0 R 303 0 R 302 0 R 301 0 R 300 0 R 298 0 R 296 0 R 297 0 R 295 0 R 294 0 R 292 0 R 290 0 R 289 0 R 286 0 R 284 0 R 283 0 R 281 0 R 279 0 R 278 0 R 274 0 R 274 0 R 273 0 R 272 0 R 269 0 R 267 0 R 265 0 R 263 0 R 261 0 R 259 0 R 257 0 R 255 0 R 253 0 R 251 0 R 249 0 R 247 0 R 245 0 R 243 0 R 241 0 R 239 0 R 235 0 R 235 0 R 234 0 R 233 0 R 230 0 R 228 0 R 226 0 R 224 0 R 222 0 R 220 0 R 218 0 R 216 0 R 214 0 R 212 0 R 210 0 R 208 0 R 206 0 R 204 0 R 202 0 R 200 0 R] +endobj + +16 0 obj +[196 0 R 196 0 R 195 0 R 194 0 R 191 0 R 189 0 R 187 0 R 185 0 R 183 0 R 181 0 R 179 0 R 177 0 R 173 0 R 173 0 R 172 0 R 171 0 R 170 0 R 167 0 R 165 0 R 164 0 R 162 0 R 160 0 R 159 0 R 157 0 R 155 0 R 154 0 R 152 0 R 150 0 R 149 0 R 145 0 R 145 0 R 144 0 R 143 0 R 140 0 R 138 0 R 136 0 R 134 0 R 132 0 R 130 0 R 131 0 R 129 0 R 127 0 R 125 0 R 126 0 R 124 0 R 120 0 R 120 0 R 119 0 R 118 0 R 117 0 R 114 0 R 113 0 R 112 0 R 110 0 R 109 0 R 108 0 R 106 0 R 105 0 R 104 0 R 100 0 R 100 0 R 99 0 R 98 0 R 95 0 R 97 0 R 95 0 R 96 0 R 95 0 R 93 0 R 88 0 R 92 0 R 88 0 R 91 0 R 88 0 R 90 0 R 88 0 R 89 0 R 88 0 R 88 0 R 85 0 R 85 0 R 84 0 R 83 0 R 80 0 R 79 0 R 76 0 R 75 0 R 74 0 R 71 0 R 70 0 R 67 0 R 66 0 R] +endobj + +17 0 obj +[61 0 R 61 0 R 60 0 R 59 0 R 56 0 R 55 0 R 53 0 R 52 0 R 50 0 R 49 0 R 47 0 R 46 0 R 44 0 R 43 0 R 41 0 R 40 0 R 38 0 R 37 0 R 35 0 R 34 0 R 32 0 R 31 0 R 29 0 R 28 0 R 26 0 R 25 0 R 23 0 R 22 0 R] +endobj + +18 0 obj +<< + /Type /StructElem + /S /Document + /P 14 0 R + /K [381 0 R 376 0 R 375 0 R 275 0 R 274 0 R 236 0 R 235 0 R 197 0 R 196 0 R 174 0 R 173 0 R 146 0 R 145 0 R 121 0 R 120 0 R 101 0 R 100 0 R 86 0 R 85 0 R 62 0 R 61 0 R 19 0 R] +>> +endobj + +19 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [57 0 R 20 0 R] +>> +endobj + +20 0 obj +<< + /Type /StructElem + /S /TBody + /P 19 0 R + /K [54 0 R 51 0 R 48 0 R 45 0 R 42 0 R 39 0 R 36 0 R 33 0 R 30 0 R 27 0 R 24 0 R 21 0 R] +>> +endobj + +21 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [23 0 R 22 0 R] +>> +endobj + +22 0 obj +<< + /Type /StructElem + /S /TD + /P 21 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [27] + /Pg 423 0 R +>> +endobj + +23 0 obj +<< + /Type /StructElem + /S /TD + /P 21 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [26] + /Pg 423 0 R +>> +endobj + +24 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [26 0 R 25 0 R] +>> +endobj + +25 0 obj +<< + /Type /StructElem + /S /TD + /P 24 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [25] + /Pg 423 0 R +>> +endobj + +26 0 obj +<< + /Type /StructElem + /S /TD + /P 24 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [24] + /Pg 423 0 R +>> +endobj + +27 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [29 0 R 28 0 R] +>> +endobj + +28 0 obj +<< + /Type /StructElem + /S /TD + /P 27 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [23] + /Pg 423 0 R +>> +endobj + +29 0 obj +<< + /Type /StructElem + /S /TD + /P 27 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [22] + /Pg 423 0 R +>> +endobj + +30 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [32 0 R 31 0 R] +>> +endobj + +31 0 obj +<< + /Type /StructElem + /S /TD + /P 30 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [21] + /Pg 423 0 R +>> +endobj + +32 0 obj +<< + /Type /StructElem + /S /TD + /P 30 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [20] + /Pg 423 0 R +>> +endobj + +33 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [35 0 R 34 0 R] +>> +endobj + +34 0 obj +<< + /Type /StructElem + /S /TD + /P 33 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [19] + /Pg 423 0 R +>> +endobj + +35 0 obj +<< + /Type /StructElem + /S /TD + /P 33 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [18] + /Pg 423 0 R +>> +endobj + +36 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [38 0 R 37 0 R] +>> +endobj + +37 0 obj +<< + /Type /StructElem + /S /TD + /P 36 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [17] + /Pg 423 0 R +>> +endobj + +38 0 obj +<< + /Type /StructElem + /S /TD + /P 36 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [16] + /Pg 423 0 R +>> +endobj + +39 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [41 0 R 40 0 R] +>> +endobj + +40 0 obj +<< + /Type /StructElem + /S /TD + /P 39 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [15] + /Pg 423 0 R +>> +endobj + +41 0 obj +<< + /Type /StructElem + /S /TD + /P 39 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [14] + /Pg 423 0 R +>> +endobj + +42 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [44 0 R 43 0 R] +>> +endobj + +43 0 obj +<< + /Type /StructElem + /S /TD + /P 42 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [13] + /Pg 423 0 R +>> +endobj + +44 0 obj +<< + /Type /StructElem + /S /TD + /P 42 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [12] + /Pg 423 0 R +>> +endobj + +45 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [47 0 R 46 0 R] +>> +endobj + +46 0 obj +<< + /Type /StructElem + /S /TD + /P 45 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [11] + /Pg 423 0 R +>> +endobj + +47 0 obj +<< + /Type /StructElem + /S /TD + /P 45 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [10] + /Pg 423 0 R +>> +endobj + +48 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [50 0 R 49 0 R] +>> +endobj + +49 0 obj +<< + /Type /StructElem + /S /TD + /P 48 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [9] + /Pg 423 0 R +>> +endobj + +50 0 obj +<< + /Type /StructElem + /S /TD + /P 48 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [8] + /Pg 423 0 R +>> +endobj + +51 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [53 0 R 52 0 R] +>> +endobj + +52 0 obj +<< + /Type /StructElem + /S /TD + /P 51 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [7] + /Pg 423 0 R +>> +endobj + +53 0 obj +<< + /Type /StructElem + /S /TD + /P 51 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [6] + /Pg 423 0 R +>> +endobj + +54 0 obj +<< + /Type /StructElem + /S /TR + /P 20 0 R + /K [56 0 R 55 0 R] +>> +endobj + +55 0 obj +<< + /Type /StructElem + /S /TD + /P 54 0 R + /A [<< + /O /Table + /Headers [(U9x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [5] + /Pg 423 0 R +>> +endobj + +56 0 obj +<< + /Type /StructElem + /S /TD + /P 54 0 R + /A [<< + /O /Table + /Headers [(U9x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [4] + /Pg 423 0 R +>> +endobj + +57 0 obj +<< + /Type /StructElem + /S /THead + /P 19 0 R + /K [58 0 R] +>> +endobj + +58 0 obj +<< + /Type /StructElem + /S /TR + /P 57 0 R + /K [60 0 R 59 0 R] +>> +endobj + +59 0 obj +<< + /Type /StructElem + /S /TH + /P 58 0 R + /ID (U9x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [3] + /Pg 423 0 R +>> +endobj + +60 0 obj +<< + /Type /StructElem + /S /TH + /P 58 0 R + /ID (U9x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [2] + /Pg 423 0 R +>> +endobj + +61 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Satty Editor Shortcuts) + /K [0 1] + /Pg 423 0 R +>> +endobj + +62 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [81 0 R 63 0 R] +>> +endobj + +63 0 obj +<< + /Type /StructElem + /S /TBody + /P 62 0 R + /K [77 0 R 72 0 R 68 0 R 64 0 R] +>> +endobj + +64 0 obj +<< + /Type /StructElem + /S /TR + /P 63 0 R + /K [67 0 R 65 0 R] +>> +endobj + +65 0 obj +<< + /Type /StructElem + /S /TD + /P 64 0 R + /Lang (en) + /A [<< + /O /Table + /Headers [(U8x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [66 0 R] +>> +endobj + +66 0 obj +<< + /Type /StructElem + /S /Code + /P 65 0 R + /K [91] + /Pg 421 0 R +>> +endobj + +67 0 obj +<< + /Type /StructElem + /S /TD + /P 64 0 R + /A [<< + /O /Table + /Headers [(U8x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [90] + /Pg 421 0 R +>> +endobj + +68 0 obj +<< + /Type /StructElem + /S /TR + /P 63 0 R + /K [71 0 R 69 0 R] +>> +endobj + +69 0 obj +<< + /Type /StructElem + /S /TD + /P 68 0 R + /Lang (en) + /A [<< + /O /Table + /Headers [(U8x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [70 0 R] +>> +endobj + +70 0 obj +<< + /Type /StructElem + /S /Code + /P 69 0 R + /K [89] + /Pg 421 0 R +>> +endobj + +71 0 obj +<< + /Type /StructElem + /S /TD + /P 68 0 R + /A [<< + /O /Table + /Headers [(U8x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [88] + /Pg 421 0 R +>> +endobj + +72 0 obj +<< + /Type /StructElem + /S /TR + /P 63 0 R + /K [75 0 R 73 0 R] +>> +endobj + +73 0 obj +<< + /Type /StructElem + /S /TD + /P 72 0 R + /Lang (en) + /A [<< + /O /Table + /Headers [(U8x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [74 0 R] +>> +endobj + +74 0 obj +<< + /Type /StructElem + /S /Code + /P 73 0 R + /K [87] + /Pg 421 0 R +>> +endobj + +75 0 obj +<< + /Type /StructElem + /S /TD + /P 72 0 R + /A [<< + /O /Table + /Headers [(U8x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [76 0 R 86] + /Pg 421 0 R +>> +endobj + +76 0 obj +<< + /Type /StructElem + /S /Code + /P 75 0 R + /Lang (en) + /K [85] + /Pg 421 0 R +>> +endobj + +77 0 obj +<< + /Type /StructElem + /S /TR + /P 63 0 R + /K [80 0 R 78 0 R] +>> +endobj + +78 0 obj +<< + /Type /StructElem + /S /TD + /P 77 0 R + /Lang (en) + /A [<< + /O /Table + /Headers [(U8x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [79 0 R] +>> +endobj + +79 0 obj +<< + /Type /StructElem + /S /Code + /P 78 0 R + /K [84] + /Pg 421 0 R +>> +endobj + +80 0 obj +<< + /Type /StructElem + /S /TD + /P 77 0 R + /A [<< + /O /Table + /Headers [(U8x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [83] + /Pg 421 0 R +>> +endobj + +81 0 obj +<< + /Type /StructElem + /S /THead + /P 62 0 R + /K [82 0 R] +>> +endobj + +82 0 obj +<< + /Type /StructElem + /S /TR + /P 81 0 R + /K [84 0 R 83 0 R] +>> +endobj + +83 0 obj +<< + /Type /StructElem + /S /TH + /P 82 0 R + /ID (U8x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [82] + /Pg 421 0 R +>> +endobj + +84 0 obj +<< + /Type /StructElem + /S /TH + /P 82 0 R + /ID (U8x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [81] + /Pg 421 0 R +>> +endobj + +85 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Troubleshooting) + /K [79 80] + /Pg 421 0 R +>> +endobj + +86 0 obj +<< + /Type /StructElem + /S /L + /P 18 0 R + /A [<< + /O /List + /ListNumbering /Circle + >>] + /K [94 0 R 87 0 R] +>> +endobj + +87 0 obj +<< + /Type /StructElem + /S /LI + /P 86 0 R + /K [93 0 R 88 0 R] +>> +endobj + +88 0 obj +<< + /Type /StructElem + /S /LBody + /P 87 0 R + /K [69 92 0 R 71 91 0 R 73 90 0 R 75 89 0 R 77 78] + /Pg 421 0 R +>> +endobj + +89 0 obj +<< + /Type /StructElem + /S /Code + /P 88 0 R + /Lang (en) + /K [76] + /Pg 421 0 R +>> +endobj + +90 0 obj +<< + /Type /StructElem + /S /Code + /P 88 0 R + /Lang (en) + /K [74] + /Pg 421 0 R +>> +endobj + +91 0 obj +<< + /Type /StructElem + /S /Code + /P 88 0 R + /Lang (en) + /K [72] + /Pg 421 0 R +>> +endobj + +92 0 obj +<< + /Type /StructElem + /S /Code + /P 88 0 R + /Lang (en) + /K [70] + /Pg 421 0 R +>> +endobj + +93 0 obj +<< + /Type /StructElem + /S /Lbl + /P 87 0 R + /K [68] + /Pg 421 0 R +>> +endobj + +94 0 obj +<< + /Type /StructElem + /S /LI + /P 86 0 R + /K [99 0 R 95 0 R] +>> +endobj + +95 0 obj +<< + /Type /StructElem + /S /LBody + /P 94 0 R + /K [98 0 R 63 97 0 R 65 96 0 R 67] + /Pg 421 0 R +>> +endobj + +96 0 obj +<< + /Type /StructElem + /S /Code + /P 95 0 R + /Lang (en) + /K [66] + /Pg 421 0 R +>> +endobj + +97 0 obj +<< + /Type /StructElem + /S /Strong + /P 95 0 R + /K [64] + /Pg 421 0 R +>> +endobj + +98 0 obj +<< + /Type /StructElem + /S /Code + /P 95 0 R + /Lang (en) + /K [62] + /Pg 421 0 R +>> +endobj + +99 0 obj +<< + /Type /StructElem + /S /Lbl + /P 94 0 R + /K [61] + /Pg 421 0 R +>> +endobj + +100 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Notes) + /K [59 60] + /Pg 421 0 R +>> +endobj + +101 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [115 0 R 102 0 R] +>> +endobj + +102 0 obj +<< + /Type /StructElem + /S /TBody + /P 101 0 R + /K [111 0 R 107 0 R 103 0 R] +>> +endobj + +103 0 obj +<< + /Type /StructElem + /S /TR + /P 102 0 R + /K [106 0 R 105 0 R 104 0 R] +>> +endobj + +104 0 obj +<< + /Type /StructElem + /S /TD + /P 103 0 R + /A [<< + /O /Table + /Headers [(U7x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [58] + /Pg 421 0 R +>> +endobj + +105 0 obj +<< + /Type /StructElem + /S /TD + /P 103 0 R + /A [<< + /O /Table + /Headers [(U7x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [57] + /Pg 421 0 R +>> +endobj + +106 0 obj +<< + /Type /StructElem + /S /TD + /P 103 0 R + /A [<< + /O /Table + /Headers [(U7x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [56] + /Pg 421 0 R +>> +endobj + +107 0 obj +<< + /Type /StructElem + /S /TR + /P 102 0 R + /K [110 0 R 109 0 R 108 0 R] +>> +endobj + +108 0 obj +<< + /Type /StructElem + /S /TD + /P 107 0 R + /A [<< + /O /Table + /Headers [(U7x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [55] + /Pg 421 0 R +>> +endobj + +109 0 obj +<< + /Type /StructElem + /S /TD + /P 107 0 R + /A [<< + /O /Table + /Headers [(U7x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [54] + /Pg 421 0 R +>> +endobj + +110 0 obj +<< + /Type /StructElem + /S /TD + /P 107 0 R + /A [<< + /O /Table + /Headers [(U7x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [53] + /Pg 421 0 R +>> +endobj + +111 0 obj +<< + /Type /StructElem + /S /TR + /P 102 0 R + /K [114 0 R 113 0 R 112 0 R] +>> +endobj + +112 0 obj +<< + /Type /StructElem + /S /TD + /P 111 0 R + /A [<< + /O /Table + /Headers [(U7x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [52] + /Pg 421 0 R +>> +endobj + +113 0 obj +<< + /Type /StructElem + /S /TD + /P 111 0 R + /A [<< + /O /Table + /Headers [(U7x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [51] + /Pg 421 0 R +>> +endobj + +114 0 obj +<< + /Type /StructElem + /S /TD + /P 111 0 R + /A [<< + /O /Table + /Headers [(U7x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [50] + /Pg 421 0 R +>> +endobj + +115 0 obj +<< + /Type /StructElem + /S /THead + /P 101 0 R + /K [116 0 R] +>> +endobj + +116 0 obj +<< + /Type /StructElem + /S /TR + /P 115 0 R + /K [119 0 R 118 0 R 117 0 R] +>> +endobj + +117 0 obj +<< + /Type /StructElem + /S /TH + /P 116 0 R + /ID (U7x2y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [49] + /Pg 421 0 R +>> +endobj + +118 0 obj +<< + /Type /StructElem + /S /TH + /P 116 0 R + /ID (U7x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [48] + /Pg 421 0 R +>> +endobj + +119 0 obj +<< + /Type /StructElem + /S /TH + /P 116 0 R + /ID (U7x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [47] + /Pg 421 0 R +>> +endobj + +120 0 obj +<< + /Type /StructElem + /S /H3 + /P 18 0 R + /T (Workspace Layout) + /K [45 46] + /Pg 421 0 R +>> +endobj + +121 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [141 0 R 122 0 R] +>> +endobj + +122 0 obj +<< + /Type /StructElem + /S /TBody + /P 121 0 R + /Lang (en) + /K [137 0 R 133 0 R 128 0 R 123 0 R] +>> +endobj + +123 0 obj +<< + /Type /StructElem + /S /TR + /P 122 0 R + /Lang (de) + /K [125 0 R 124 0 R] +>> +endobj + +124 0 obj +<< + /Type /StructElem + /S /TD + /P 123 0 R + /A [<< + /O /Table + /Headers [(U6x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [44] + /Pg 421 0 R +>> +endobj + +125 0 obj +<< + /Type /StructElem + /S /TD + /P 123 0 R + /A [<< + /O /Table + /Headers [(U6x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [127 0 R 42 126 0 R] + /Pg 421 0 R +>> +endobj + +126 0 obj +<< + /Type /StructElem + /S /Code + /P 125 0 R + /Lang (en) + /K [43] + /Pg 421 0 R +>> +endobj + +127 0 obj +<< + /Type /StructElem + /S /Code + /P 125 0 R + /Lang (en) + /K [41] + /Pg 421 0 R +>> +endobj + +128 0 obj +<< + /Type /StructElem + /S /TR + /P 122 0 R + /Lang (de) + /K [130 0 R 129 0 R] +>> +endobj + +129 0 obj +<< + /Type /StructElem + /S /TD + /P 128 0 R + /A [<< + /O /Table + /Headers [(U6x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [40] + /Pg 421 0 R +>> +endobj + +130 0 obj +<< + /Type /StructElem + /S /TD + /P 128 0 R + /A [<< + /O /Table + /Headers [(U6x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [132 0 R 38 131 0 R] + /Pg 421 0 R +>> +endobj + +131 0 obj +<< + /Type /StructElem + /S /Code + /P 130 0 R + /Lang (en) + /K [39] + /Pg 421 0 R +>> +endobj + +132 0 obj +<< + /Type /StructElem + /S /Code + /P 130 0 R + /Lang (en) + /K [37] + /Pg 421 0 R +>> +endobj + +133 0 obj +<< + /Type /StructElem + /S /TR + /P 122 0 R + /K [135 0 R 134 0 R] +>> +endobj + +134 0 obj +<< + /Type /StructElem + /S /TD + /P 133 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U6x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [36] + /Pg 421 0 R +>> +endobj + +135 0 obj +<< + /Type /StructElem + /S /TD + /P 133 0 R + /A [<< + /O /Table + /Headers [(U6x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [136 0 R] +>> +endobj + +136 0 obj +<< + /Type /StructElem + /S /Code + /P 135 0 R + /K [35] + /Pg 421 0 R +>> +endobj + +137 0 obj +<< + /Type /StructElem + /S /TR + /P 122 0 R + /K [139 0 R 138 0 R] +>> +endobj + +138 0 obj +<< + /Type /StructElem + /S /TD + /P 137 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U6x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [34] + /Pg 421 0 R +>> +endobj + +139 0 obj +<< + /Type /StructElem + /S /TD + /P 137 0 R + /A [<< + /O /Table + /Headers [(U6x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [140 0 R] +>> +endobj + +140 0 obj +<< + /Type /StructElem + /S /Code + /P 139 0 R + /K [33] + /Pg 421 0 R +>> +endobj + +141 0 obj +<< + /Type /StructElem + /S /THead + /P 121 0 R + /K [142 0 R] +>> +endobj + +142 0 obj +<< + /Type /StructElem + /S /TR + /P 141 0 R + /K [144 0 R 143 0 R] +>> +endobj + +143 0 obj +<< + /Type /StructElem + /S /TH + /P 142 0 R + /ID (U6x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [32] + /Pg 421 0 R +>> +endobj + +144 0 obj +<< + /Type /StructElem + /S /TH + /P 142 0 R + /ID (U6x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [31] + /Pg 421 0 R +>> +endobj + +145 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Workspaces) + /K [29 30] + /Pg 421 0 R +>> +endobj + +146 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [168 0 R 147 0 R] +>> +endobj + +147 0 obj +<< + /Type /StructElem + /S /TBody + /P 146 0 R + /Lang (en) + /K [163 0 R 158 0 R 153 0 R 148 0 R] +>> +endobj + +148 0 obj +<< + /Type /StructElem + /S /TR + /P 147 0 R + /K [151 0 R 150 0 R 149 0 R] +>> +endobj + +149 0 obj +<< + /Type /StructElem + /S /TD + /P 148 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [28] + /Pg 421 0 R +>> +endobj + +150 0 obj +<< + /Type /StructElem + /S /TD + /P 148 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [27] + /Pg 421 0 R +>> +endobj + +151 0 obj +<< + /Type /StructElem + /S /TD + /P 148 0 R + /A [<< + /O /Table + /Headers [(U5x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [152 0 R] +>> +endobj + +152 0 obj +<< + /Type /StructElem + /S /Code + /P 151 0 R + /K [26] + /Pg 421 0 R +>> +endobj + +153 0 obj +<< + /Type /StructElem + /S /TR + /P 147 0 R + /K [156 0 R 155 0 R 154 0 R] +>> +endobj + +154 0 obj +<< + /Type /StructElem + /S /TD + /P 153 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [25] + /Pg 421 0 R +>> +endobj + +155 0 obj +<< + /Type /StructElem + /S /TD + /P 153 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [24] + /Pg 421 0 R +>> +endobj + +156 0 obj +<< + /Type /StructElem + /S /TD + /P 153 0 R + /A [<< + /O /Table + /Headers [(U5x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [157 0 R] +>> +endobj + +157 0 obj +<< + /Type /StructElem + /S /Code + /P 156 0 R + /K [23] + /Pg 421 0 R +>> +endobj + +158 0 obj +<< + /Type /StructElem + /S /TR + /P 147 0 R + /K [161 0 R 160 0 R 159 0 R] +>> +endobj + +159 0 obj +<< + /Type /StructElem + /S /TD + /P 158 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [22] + /Pg 421 0 R +>> +endobj + +160 0 obj +<< + /Type /StructElem + /S /TD + /P 158 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [21] + /Pg 421 0 R +>> +endobj + +161 0 obj +<< + /Type /StructElem + /S /TD + /P 158 0 R + /A [<< + /O /Table + /Headers [(U5x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [162 0 R] +>> +endobj + +162 0 obj +<< + /Type /StructElem + /S /Code + /P 161 0 R + /K [20] + /Pg 421 0 R +>> +endobj + +163 0 obj +<< + /Type /StructElem + /S /TR + /P 147 0 R + /K [166 0 R 165 0 R 164 0 R] +>> +endobj + +164 0 obj +<< + /Type /StructElem + /S /TD + /P 163 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [19] + /Pg 421 0 R +>> +endobj + +165 0 obj +<< + /Type /StructElem + /S /TD + /P 163 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U5x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [18] + /Pg 421 0 R +>> +endobj + +166 0 obj +<< + /Type /StructElem + /S /TD + /P 163 0 R + /A [<< + /O /Table + /Headers [(U5x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [167 0 R] +>> +endobj + +167 0 obj +<< + /Type /StructElem + /S /Code + /P 166 0 R + /K [17] + /Pg 421 0 R +>> +endobj + +168 0 obj +<< + /Type /StructElem + /S /THead + /P 146 0 R + /K [169 0 R] +>> +endobj + +169 0 obj +<< + /Type /StructElem + /S /TR + /P 168 0 R + /K [172 0 R 171 0 R 170 0 R] +>> +endobj + +170 0 obj +<< + /Type /StructElem + /S /TH + /P 169 0 R + /ID (U5x2y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [16] + /Pg 421 0 R +>> +endobj + +171 0 obj +<< + /Type /StructElem + /S /TH + /P 169 0 R + /ID (U5x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [15] + /Pg 421 0 R +>> +endobj + +172 0 obj +<< + /Type /StructElem + /S /TH + /P 169 0 R + /ID (U5x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [14] + /Pg 421 0 R +>> +endobj + +173 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Screenshots) + /K [12 13] + /Pg 421 0 R +>> +endobj + +174 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [192 0 R 175 0 R] +>> +endobj + +175 0 obj +<< + /Type /StructElem + /S /TBody + /P 174 0 R + /Lang (en) + /K [188 0 R 184 0 R 180 0 R 176 0 R] +>> +endobj + +176 0 obj +<< + /Type /StructElem + /S /TR + /P 175 0 R + /K [178 0 R 177 0 R] +>> +endobj + +177 0 obj +<< + /Type /StructElem + /S /TD + /P 176 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U4x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [11] + /Pg 421 0 R +>> +endobj + +178 0 obj +<< + /Type /StructElem + /S /TD + /P 176 0 R + /A [<< + /O /Table + /Headers [(U4x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [179 0 R] +>> +endobj + +179 0 obj +<< + /Type /StructElem + /S /Code + /P 178 0 R + /K [10] + /Pg 421 0 R +>> +endobj + +180 0 obj +<< + /Type /StructElem + /S /TR + /P 175 0 R + /K [182 0 R 181 0 R] +>> +endobj + +181 0 obj +<< + /Type /StructElem + /S /TD + /P 180 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U4x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [9] + /Pg 421 0 R +>> +endobj + +182 0 obj +<< + /Type /StructElem + /S /TD + /P 180 0 R + /A [<< + /O /Table + /Headers [(U4x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [183 0 R] +>> +endobj + +183 0 obj +<< + /Type /StructElem + /S /Code + /P 182 0 R + /K [8] + /Pg 421 0 R +>> +endobj + +184 0 obj +<< + /Type /StructElem + /S /TR + /P 175 0 R + /K [186 0 R 185 0 R] +>> +endobj + +185 0 obj +<< + /Type /StructElem + /S /TD + /P 184 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U4x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [7] + /Pg 421 0 R +>> +endobj + +186 0 obj +<< + /Type /StructElem + /S /TD + /P 184 0 R + /A [<< + /O /Table + /Headers [(U4x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [187 0 R] +>> +endobj + +187 0 obj +<< + /Type /StructElem + /S /Code + /P 186 0 R + /K [6] + /Pg 421 0 R +>> +endobj + +188 0 obj +<< + /Type /StructElem + /S /TR + /P 175 0 R + /K [190 0 R 189 0 R] +>> +endobj + +189 0 obj +<< + /Type /StructElem + /S /TD + /P 188 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U4x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [5] + /Pg 421 0 R +>> +endobj + +190 0 obj +<< + /Type /StructElem + /S /TD + /P 188 0 R + /A [<< + /O /Table + /Headers [(U4x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [191 0 R] +>> +endobj + +191 0 obj +<< + /Type /StructElem + /S /Code + /P 190 0 R + /K [4] + /Pg 421 0 R +>> +endobj + +192 0 obj +<< + /Type /StructElem + /S /THead + /P 174 0 R + /K [193 0 R] +>> +endobj + +193 0 obj +<< + /Type /StructElem + /S /TR + /P 192 0 R + /K [195 0 R 194 0 R] +>> +endobj + +194 0 obj +<< + /Type /StructElem + /S /TH + /P 193 0 R + /ID (U4x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [3] + /Pg 421 0 R +>> +endobj + +195 0 obj +<< + /Type /StructElem + /S /TH + /P 193 0 R + /ID (U4x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [2] + /Pg 421 0 R +>> +endobj + +196 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Window Resize) + /K [0 1] + /Pg 421 0 R +>> +endobj + +197 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [231 0 R 198 0 R] +>> +endobj + +198 0 obj +<< + /Type /StructElem + /S /TBody + /P 197 0 R + /Lang (en) + /K [227 0 R 223 0 R 219 0 R 215 0 R 211 0 R 207 0 R 203 0 R 199 0 R] +>> +endobj + +199 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [201 0 R 200 0 R] +>> +endobj + +200 0 obj +<< + /Type /StructElem + /S /TD + /P 199 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [113] + /Pg 419 0 R +>> +endobj + +201 0 obj +<< + /Type /StructElem + /S /TD + /P 199 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [202 0 R] +>> +endobj + +202 0 obj +<< + /Type /StructElem + /S /Code + /P 201 0 R + /K [112] + /Pg 419 0 R +>> +endobj + +203 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [205 0 R 204 0 R] +>> +endobj + +204 0 obj +<< + /Type /StructElem + /S /TD + /P 203 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [111] + /Pg 419 0 R +>> +endobj + +205 0 obj +<< + /Type /StructElem + /S /TD + /P 203 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [206 0 R] +>> +endobj + +206 0 obj +<< + /Type /StructElem + /S /Code + /P 205 0 R + /K [110] + /Pg 419 0 R +>> +endobj + +207 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [209 0 R 208 0 R] +>> +endobj + +208 0 obj +<< + /Type /StructElem + /S /TD + /P 207 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [109] + /Pg 419 0 R +>> +endobj + +209 0 obj +<< + /Type /StructElem + /S /TD + /P 207 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [210 0 R] +>> +endobj + +210 0 obj +<< + /Type /StructElem + /S /Code + /P 209 0 R + /K [108] + /Pg 419 0 R +>> +endobj + +211 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [213 0 R 212 0 R] +>> +endobj + +212 0 obj +<< + /Type /StructElem + /S /TD + /P 211 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [107] + /Pg 419 0 R +>> +endobj + +213 0 obj +<< + /Type /StructElem + /S /TD + /P 211 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [214 0 R] +>> +endobj + +214 0 obj +<< + /Type /StructElem + /S /Code + /P 213 0 R + /K [106] + /Pg 419 0 R +>> +endobj + +215 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [217 0 R 216 0 R] +>> +endobj + +216 0 obj +<< + /Type /StructElem + /S /TD + /P 215 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [105] + /Pg 419 0 R +>> +endobj + +217 0 obj +<< + /Type /StructElem + /S /TD + /P 215 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [218 0 R] +>> +endobj + +218 0 obj +<< + /Type /StructElem + /S /Code + /P 217 0 R + /K [104] + /Pg 419 0 R +>> +endobj + +219 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [221 0 R 220 0 R] +>> +endobj + +220 0 obj +<< + /Type /StructElem + /S /TD + /P 219 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [103] + /Pg 419 0 R +>> +endobj + +221 0 obj +<< + /Type /StructElem + /S /TD + /P 219 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [222 0 R] +>> +endobj + +222 0 obj +<< + /Type /StructElem + /S /Code + /P 221 0 R + /K [102] + /Pg 419 0 R +>> +endobj + +223 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [225 0 R 224 0 R] +>> +endobj + +224 0 obj +<< + /Type /StructElem + /S /TD + /P 223 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [101] + /Pg 419 0 R +>> +endobj + +225 0 obj +<< + /Type /StructElem + /S /TD + /P 223 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [226 0 R] +>> +endobj + +226 0 obj +<< + /Type /StructElem + /S /Code + /P 225 0 R + /K [100] + /Pg 419 0 R +>> +endobj + +227 0 obj +<< + /Type /StructElem + /S /TR + /P 198 0 R + /K [229 0 R 228 0 R] +>> +endobj + +228 0 obj +<< + /Type /StructElem + /S /TD + /P 227 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U3x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [99] + /Pg 419 0 R +>> +endobj + +229 0 obj +<< + /Type /StructElem + /S /TD + /P 227 0 R + /A [<< + /O /Table + /Headers [(U3x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [230 0 R] +>> +endobj + +230 0 obj +<< + /Type /StructElem + /S /Code + /P 229 0 R + /K [98] + /Pg 419 0 R +>> +endobj + +231 0 obj +<< + /Type /StructElem + /S /THead + /P 197 0 R + /K [232 0 R] +>> +endobj + +232 0 obj +<< + /Type /StructElem + /S /TR + /P 231 0 R + /K [234 0 R 233 0 R] +>> +endobj + +233 0 obj +<< + /Type /StructElem + /S /TH + /P 232 0 R + /ID (U3x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [97] + /Pg 419 0 R +>> +endobj + +234 0 obj +<< + /Type /StructElem + /S /TH + /P 232 0 R + /ID (U3x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [96] + /Pg 419 0 R +>> +endobj + +235 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Window Movement) + /K [94 95] + /Pg 419 0 R +>> +endobj + +236 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [270 0 R 237 0 R] +>> +endobj + +237 0 obj +<< + /Type /StructElem + /S /TBody + /P 236 0 R + /Lang (en) + /K [266 0 R 262 0 R 258 0 R 254 0 R 250 0 R 246 0 R 242 0 R 238 0 R] +>> +endobj + +238 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [240 0 R 239 0 R] +>> +endobj + +239 0 obj +<< + /Type /StructElem + /S /TD + /P 238 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [93] + /Pg 419 0 R +>> +endobj + +240 0 obj +<< + /Type /StructElem + /S /TD + /P 238 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [241 0 R] +>> +endobj + +241 0 obj +<< + /Type /StructElem + /S /Code + /P 240 0 R + /K [92] + /Pg 419 0 R +>> +endobj + +242 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [244 0 R 243 0 R] +>> +endobj + +243 0 obj +<< + /Type /StructElem + /S /TD + /P 242 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [91] + /Pg 419 0 R +>> +endobj + +244 0 obj +<< + /Type /StructElem + /S /TD + /P 242 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [245 0 R] +>> +endobj + +245 0 obj +<< + /Type /StructElem + /S /Code + /P 244 0 R + /K [90] + /Pg 419 0 R +>> +endobj + +246 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [248 0 R 247 0 R] +>> +endobj + +247 0 obj +<< + /Type /StructElem + /S /TD + /P 246 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [89] + /Pg 419 0 R +>> +endobj + +248 0 obj +<< + /Type /StructElem + /S /TD + /P 246 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [249 0 R] +>> +endobj + +249 0 obj +<< + /Type /StructElem + /S /Code + /P 248 0 R + /K [88] + /Pg 419 0 R +>> +endobj + +250 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [252 0 R 251 0 R] +>> +endobj + +251 0 obj +<< + /Type /StructElem + /S /TD + /P 250 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [87] + /Pg 419 0 R +>> +endobj + +252 0 obj +<< + /Type /StructElem + /S /TD + /P 250 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [253 0 R] +>> +endobj + +253 0 obj +<< + /Type /StructElem + /S /Code + /P 252 0 R + /K [86] + /Pg 419 0 R +>> +endobj + +254 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [256 0 R 255 0 R] +>> +endobj + +255 0 obj +<< + /Type /StructElem + /S /TD + /P 254 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [85] + /Pg 419 0 R +>> +endobj + +256 0 obj +<< + /Type /StructElem + /S /TD + /P 254 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [257 0 R] +>> +endobj + +257 0 obj +<< + /Type /StructElem + /S /Code + /P 256 0 R + /K [84] + /Pg 419 0 R +>> +endobj + +258 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [260 0 R 259 0 R] +>> +endobj + +259 0 obj +<< + /Type /StructElem + /S /TD + /P 258 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [83] + /Pg 419 0 R +>> +endobj + +260 0 obj +<< + /Type /StructElem + /S /TD + /P 258 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [261 0 R] +>> +endobj + +261 0 obj +<< + /Type /StructElem + /S /Code + /P 260 0 R + /K [82] + /Pg 419 0 R +>> +endobj + +262 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [264 0 R 263 0 R] +>> +endobj + +263 0 obj +<< + /Type /StructElem + /S /TD + /P 262 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [81] + /Pg 419 0 R +>> +endobj + +264 0 obj +<< + /Type /StructElem + /S /TD + /P 262 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [265 0 R] +>> +endobj + +265 0 obj +<< + /Type /StructElem + /S /Code + /P 264 0 R + /K [80] + /Pg 419 0 R +>> +endobj + +266 0 obj +<< + /Type /StructElem + /S /TR + /P 237 0 R + /K [268 0 R 267 0 R] +>> +endobj + +267 0 obj +<< + /Type /StructElem + /S /TD + /P 266 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U2x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [79] + /Pg 419 0 R +>> +endobj + +268 0 obj +<< + /Type /StructElem + /S /TD + /P 266 0 R + /A [<< + /O /Table + /Headers [(U2x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [269 0 R] +>> +endobj + +269 0 obj +<< + /Type /StructElem + /S /Code + /P 268 0 R + /K [78] + /Pg 419 0 R +>> +endobj + +270 0 obj +<< + /Type /StructElem + /S /THead + /P 236 0 R + /K [271 0 R] +>> +endobj + +271 0 obj +<< + /Type /StructElem + /S /TR + /P 270 0 R + /K [273 0 R 272 0 R] +>> +endobj + +272 0 obj +<< + /Type /StructElem + /S /TH + /P 271 0 R + /ID (U2x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [77] + /Pg 419 0 R +>> +endobj + +273 0 obj +<< + /Type /StructElem + /S /TH + /P 271 0 R + /ID (U2x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [76] + /Pg 419 0 R +>> +endobj + +274 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (Navigation / Focus) + /K [74 75] + /Pg 419 0 R +>> +endobj + +275 0 obj +<< + /Type /StructElem + /S /Table + /P 18 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderThickness 1 + >>] + /K [370 0 R 276 0 R] +>> +endobj + +276 0 obj +<< + /Type /StructElem + /S /TBody + /P 275 0 R + /Lang (en) + /K [365 0 R 360 0 R 355 0 R 350 0 R 345 0 R 340 0 R 335 0 R 330 0 R 325 0 R 320 0 R 315 0 R 310 0 R 305 0 R 299 0 R 293 0 R 287 0 R 282 0 R 277 0 R] +>> +endobj + +277 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [280 0 R 279 0 R 278 0 R] +>> +endobj + +278 0 obj +<< + /Type /StructElem + /S /TD + /P 277 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [73] + /Pg 419 0 R +>> +endobj + +279 0 obj +<< + /Type /StructElem + /S /TD + /P 277 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [72] + /Pg 419 0 R +>> +endobj + +280 0 obj +<< + /Type /StructElem + /S /TD + /P 277 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [281 0 R] +>> +endobj + +281 0 obj +<< + /Type /StructElem + /S /Code + /P 280 0 R + /K [71] + /Pg 419 0 R +>> +endobj + +282 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [285 0 R 284 0 R 283 0 R] +>> +endobj + +283 0 obj +<< + /Type /StructElem + /S /TD + /P 282 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [70] + /Pg 419 0 R +>> +endobj + +284 0 obj +<< + /Type /StructElem + /S /TD + /P 282 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [69] + /Pg 419 0 R +>> +endobj + +285 0 obj +<< + /Type /StructElem + /S /TD + /P 282 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [286 0 R] +>> +endobj + +286 0 obj +<< + /Type /StructElem + /S /Code + /P 285 0 R + /K [68] + /Pg 419 0 R +>> +endobj + +287 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [291 0 R 290 0 R 288 0 R] +>> +endobj + +288 0 obj +<< + /Type /StructElem + /S /TD + /P 287 0 R + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [289 0 R] +>> +endobj + +289 0 obj +<< + /Type /StructElem + /S /Em + /P 288 0 R + /K [67] + /Pg 419 0 R +>> +endobj + +290 0 obj +<< + /Type /StructElem + /S /TD + /P 287 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [66] + /Pg 419 0 R +>> +endobj + +291 0 obj +<< + /Type /StructElem + /S /TD + /P 287 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [292 0 R] +>> +endobj + +292 0 obj +<< + /Type /StructElem + /S /Code + /P 291 0 R + /K [65] + /Pg 419 0 R +>> +endobj + +293 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /Lang (de) + /K [296 0 R 295 0 R 294 0 R] +>> +endobj + +294 0 obj +<< + /Type /StructElem + /S /TD + /P 293 0 R + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [64] + /Pg 419 0 R +>> +endobj + +295 0 obj +<< + /Type /StructElem + /S /TD + /P 293 0 R + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [63] + /Pg 419 0 R +>> +endobj + +296 0 obj +<< + /Type /StructElem + /S /TD + /P 293 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [298 0 R 61 297 0 R] + /Pg 419 0 R +>> +endobj + +297 0 obj +<< + /Type /StructElem + /S /Code + /P 296 0 R + /Lang (en) + /K [62] + /Pg 419 0 R +>> +endobj + +298 0 obj +<< + /Type /StructElem + /S /Code + /P 296 0 R + /Lang (en) + /K [60] + /Pg 419 0 R +>> +endobj + +299 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /Lang (de) + /K [302 0 R 301 0 R 300 0 R] +>> +endobj + +300 0 obj +<< + /Type /StructElem + /S /TD + /P 299 0 R + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [59] + /Pg 419 0 R +>> +endobj + +301 0 obj +<< + /Type /StructElem + /S /TD + /P 299 0 R + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [58] + /Pg 419 0 R +>> +endobj + +302 0 obj +<< + /Type /StructElem + /S /TD + /P 299 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [304 0 R 55 303 0 R 57] + /Pg 419 0 R +>> +endobj + +303 0 obj +<< + /Type /StructElem + /S /Code + /P 302 0 R + /Lang (en) + /K [56] + /Pg 419 0 R +>> +endobj + +304 0 obj +<< + /Type /StructElem + /S /Code + /P 302 0 R + /Lang (en) + /K [54] + /Pg 419 0 R +>> +endobj + +305 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [308 0 R 307 0 R 306 0 R] +>> +endobj + +306 0 obj +<< + /Type /StructElem + /S /TD + /P 305 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [53] + /Pg 419 0 R +>> +endobj + +307 0 obj +<< + /Type /StructElem + /S /TD + /P 305 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [52] + /Pg 419 0 R +>> +endobj + +308 0 obj +<< + /Type /StructElem + /S /TD + /P 305 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [309 0 R] +>> +endobj + +309 0 obj +<< + /Type /StructElem + /S /Code + /P 308 0 R + /K [51] + /Pg 419 0 R +>> +endobj + +310 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [313 0 R 312 0 R 311 0 R] +>> +endobj + +311 0 obj +<< + /Type /StructElem + /S /TD + /P 310 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [50] + /Pg 419 0 R +>> +endobj + +312 0 obj +<< + /Type /StructElem + /S /TD + /P 310 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [49] + /Pg 419 0 R +>> +endobj + +313 0 obj +<< + /Type /StructElem + /S /TD + /P 310 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [314 0 R] +>> +endobj + +314 0 obj +<< + /Type /StructElem + /S /Code + /P 313 0 R + /K [48] + /Pg 419 0 R +>> +endobj + +315 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [318 0 R 317 0 R 316 0 R] +>> +endobj + +316 0 obj +<< + /Type /StructElem + /S /TD + /P 315 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [47] + /Pg 419 0 R +>> +endobj + +317 0 obj +<< + /Type /StructElem + /S /TD + /P 315 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [46] + /Pg 419 0 R +>> +endobj + +318 0 obj +<< + /Type /StructElem + /S /TD + /P 315 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [319 0 R] +>> +endobj + +319 0 obj +<< + /Type /StructElem + /S /Code + /P 318 0 R + /K [45] + /Pg 419 0 R +>> +endobj + +320 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [323 0 R 322 0 R 321 0 R] +>> +endobj + +321 0 obj +<< + /Type /StructElem + /S /TD + /P 320 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [44] + /Pg 419 0 R +>> +endobj + +322 0 obj +<< + /Type /StructElem + /S /TD + /P 320 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [43] + /Pg 419 0 R +>> +endobj + +323 0 obj +<< + /Type /StructElem + /S /TD + /P 320 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [324 0 R] +>> +endobj + +324 0 obj +<< + /Type /StructElem + /S /Code + /P 323 0 R + /K [42] + /Pg 419 0 R +>> +endobj + +325 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [328 0 R 327 0 R 326 0 R] +>> +endobj + +326 0 obj +<< + /Type /StructElem + /S /TD + /P 325 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [41] + /Pg 419 0 R +>> +endobj + +327 0 obj +<< + /Type /StructElem + /S /TD + /P 325 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [40] + /Pg 419 0 R +>> +endobj + +328 0 obj +<< + /Type /StructElem + /S /TD + /P 325 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [329 0 R] +>> +endobj + +329 0 obj +<< + /Type /StructElem + /S /Code + /P 328 0 R + /K [39] + /Pg 419 0 R +>> +endobj + +330 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [333 0 R 332 0 R 331 0 R] +>> +endobj + +331 0 obj +<< + /Type /StructElem + /S /TD + /P 330 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [38] + /Pg 419 0 R +>> +endobj + +332 0 obj +<< + /Type /StructElem + /S /TD + /P 330 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [37] + /Pg 419 0 R +>> +endobj + +333 0 obj +<< + /Type /StructElem + /S /TD + /P 330 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [334 0 R] +>> +endobj + +334 0 obj +<< + /Type /StructElem + /S /Code + /P 333 0 R + /K [36] + /Pg 419 0 R +>> +endobj + +335 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [338 0 R 337 0 R 336 0 R] +>> +endobj + +336 0 obj +<< + /Type /StructElem + /S /TD + /P 335 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [35] + /Pg 419 0 R +>> +endobj + +337 0 obj +<< + /Type /StructElem + /S /TD + /P 335 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [34] + /Pg 419 0 R +>> +endobj + +338 0 obj +<< + /Type /StructElem + /S /TD + /P 335 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [339 0 R] +>> +endobj + +339 0 obj +<< + /Type /StructElem + /S /Code + /P 338 0 R + /K [33] + /Pg 419 0 R +>> +endobj + +340 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [343 0 R 342 0 R 341 0 R] +>> +endobj + +341 0 obj +<< + /Type /StructElem + /S /TD + /P 340 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [32] + /Pg 419 0 R +>> +endobj + +342 0 obj +<< + /Type /StructElem + /S /TD + /P 340 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [31] + /Pg 419 0 R +>> +endobj + +343 0 obj +<< + /Type /StructElem + /S /TD + /P 340 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [344 0 R] +>> +endobj + +344 0 obj +<< + /Type /StructElem + /S /Code + /P 343 0 R + /K [30] + /Pg 419 0 R +>> +endobj + +345 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [348 0 R 347 0 R 346 0 R] +>> +endobj + +346 0 obj +<< + /Type /StructElem + /S /TD + /P 345 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [29] + /Pg 419 0 R +>> +endobj + +347 0 obj +<< + /Type /StructElem + /S /TD + /P 345 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [28] + /Pg 419 0 R +>> +endobj + +348 0 obj +<< + /Type /StructElem + /S /TD + /P 345 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [349 0 R] +>> +endobj + +349 0 obj +<< + /Type /StructElem + /S /Code + /P 348 0 R + /K [27] + /Pg 419 0 R +>> +endobj + +350 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [353 0 R 352 0 R 351 0 R] +>> +endobj + +351 0 obj +<< + /Type /StructElem + /S /TD + /P 350 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [26] + /Pg 419 0 R +>> +endobj + +352 0 obj +<< + /Type /StructElem + /S /TD + /P 350 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [25] + /Pg 419 0 R +>> +endobj + +353 0 obj +<< + /Type /StructElem + /S /TD + /P 350 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [354 0 R] +>> +endobj + +354 0 obj +<< + /Type /StructElem + /S /Code + /P 353 0 R + /K [24] + /Pg 419 0 R +>> +endobj + +355 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [358 0 R 357 0 R 356 0 R] +>> +endobj + +356 0 obj +<< + /Type /StructElem + /S /TD + /P 355 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [23] + /Pg 419 0 R +>> +endobj + +357 0 obj +<< + /Type /StructElem + /S /TD + /P 355 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [22] + /Pg 419 0 R +>> +endobj + +358 0 obj +<< + /Type /StructElem + /S /TD + /P 355 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [359 0 R] +>> +endobj + +359 0 obj +<< + /Type /StructElem + /S /Code + /P 358 0 R + /K [21] + /Pg 419 0 R +>> +endobj + +360 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [363 0 R 362 0 R 361 0 R] +>> +endobj + +361 0 obj +<< + /Type /StructElem + /S /TD + /P 360 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [20] + /Pg 419 0 R +>> +endobj + +362 0 obj +<< + /Type /StructElem + /S /TD + /P 360 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [19] + /Pg 419 0 R +>> +endobj + +363 0 obj +<< + /Type /StructElem + /S /TD + /P 360 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [364 0 R] +>> +endobj + +364 0 obj +<< + /Type /StructElem + /S /Code + /P 363 0 R + /K [18] + /Pg 419 0 R +>> +endobj + +365 0 obj +<< + /Type /StructElem + /S /TR + /P 276 0 R + /K [368 0 R 367 0 R 366 0 R] +>> +endobj + +366 0 obj +<< + /Type /StructElem + /S /TD + /P 365 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x2y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [17] + /Pg 419 0 R +>> +endobj + +367 0 obj +<< + /Type /StructElem + /S /TD + /P 365 0 R + /Lang (de) + /A [<< + /O /Table + /Headers [(U1x1y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [16] + /Pg 419 0 R +>> +endobj + +368 0 obj +<< + /Type /StructElem + /S /TD + /P 365 0 R + /A [<< + /O /Table + /Headers [(U1x0y0)] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [369 0 R] +>> +endobj + +369 0 obj +<< + /Type /StructElem + /S /Code + /P 368 0 R + /K [15] + /Pg 419 0 R +>> +endobj + +370 0 obj +<< + /Type /StructElem + /S /THead + /P 275 0 R + /K [371 0 R] +>> +endobj + +371 0 obj +<< + /Type /StructElem + /S /TR + /P 370 0 R + /K [374 0 R 373 0 R 372 0 R] +>> +endobj + +372 0 obj +<< + /Type /StructElem + /S /TH + /P 371 0 R + /ID (U1x2y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [14] + /Pg 419 0 R +>> +endobj + +373 0 obj +<< + /Type /StructElem + /S /TH + /P 371 0 R + /ID (U1x1y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [13] + /Pg 419 0 R +>> +endobj + +374 0 obj +<< + /Type /StructElem + /S /TH + /P 371 0 R + /ID (U1x0y0) + /A [<< + /O /Table + /Scope /Column + /Headers [] + >> << + /O /Layout + /BorderStyle /Solid + >>] + /K [12] + /Pg 419 0 R +>> +endobj + +375 0 obj +<< + /Type /StructElem + /S /H2 + /P 18 0 R + /T (General) + /K [10 11] + /Pg 419 0 R +>> +endobj + +376 0 obj +<< + /Type /StructElem + /S /P + /P 18 0 R + /K [380 0 R 3 379 0 R 5 378 0 R 7 377 0 R 9] + /Pg 419 0 R +>> +endobj + +377 0 obj +<< + /Type /StructElem + /S /Code + /P 376 0 R + /Lang (en) + /K [8] + /Pg 419 0 R +>> +endobj + +378 0 obj +<< + /Type /StructElem + /S /Strong + /P 376 0 R + /K [6] + /Pg 419 0 R +>> +endobj + +379 0 obj +<< + /Type /StructElem + /S /Strong + /P 376 0 R + /K [4] + /Pg 419 0 R +>> +endobj + +380 0 obj +<< + /Type /StructElem + /S /Strong + /P 376 0 R + /K [2] + /Pg 419 0 R +>> +endobj + +381 0 obj +<< + /Type /StructElem + /S /H1 + /P 18 0 R + /T + /K [0 1] + /Pg 419 0 R +>> +endobj + +382 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /SODAXN+Inter-Bold + /Encoding /Identity-H + /DescendantFonts [383 0 R] + /ToUnicode 386 0 R +>> +endobj + +383 0 obj +<< + /Type /Font + /Subtype /CIDFontType2 + /BaseFont /SODAXN+Inter-Bold + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 385 0 R + /DW 0 + /CIDToGIDMap /Identity + /W [0 0 656.25 1 1 431.15234 2 2 333.98438 3 3 747.0703 4 4 602.0508 5 5 630.3711 6 6 407.22656 7 7 270.9961 8 8 580.5664 9 9 622.5586 10 10 630.3711 11 11 236.8164 12 12 719.2383 13 13 595.7031 14 14 630.3711 15 15 270.9961 16 16 631.83594 17 17 560.0586 18 18 1000 19 19 586.91406 20 20 622.5586 21 21 739.7461 22 22 622.5586 23 23 366.21094 24 24 565.4297 25 25 613.28125 26 26 333.98438 27 27 931.6406 28 28 580.0781 29 29 654.78516 30 30 588.3789 31 31 750.4883 32 32 629.8828 33 33 762.20703 34 34 599.6094 35 35 388.1836 36 36 645.5078 37 37 1037.5977 38 38 850.09766 39 39 912.59766 40 40 676.26953 41 41 656.7383 42 42 572.7539 43 43 622.0703 44 44 649.41406 45 45 581.54297 46 46 650.8789 47 47 667.48047 48 48 649.41406 49 49 607.4219] +>> +endobj + +384 0 obj +<< + /Length 13 + /Filter /FlateDecode +>> +stream +x> +endstream +endobj + +385 0 obj +<< + /Type /FontDescriptor + /FontName /SODAXN+Inter-Bold + /Flags 131076 + /FontBBox [0 -215.82031 1013.6719 906.25] + /ItalicAngle 0 + /Ascent 968.75 + /Descent -241.21094 + /CapHeight 727.53906 + /StemV 168.6 + /CIDSet 384 0 R + /FontFile2 387 0 R +>> +endobj + +386 0 obj +<< + /Length 1292 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +49 beginbfchar +<0001> <0031> +<0002> <002E> +<0003> <0048> +<0004> <0079> +<0005> <0070> +<0006> <0072> +<0007> <006C> +<0008> <0061> +<0009> <006E> +<000A> <0064> +<000B> <0020> +<000C> <004B> +<000D> <0065> +<000E> <0062> +<000F> <0069> +<0010> <0067> +<0011> <0073> +<0012> <2014> +<0013> <0046> +<0014> <0075> +<0015> <0043> +<0016> <0068> +<0017> <0074> +<0018> <004C> +<0019> <006F> +<001A> <003A> +<001B> <004D> +<001C> <006B> +<001D> <0053> +<001E> <0063> +<001F> <0047> +<0020> <0032> +<0021> <004E> +<0022> <0076> +<0023> <002F> +<0024> <0033> +<0025> <0057> +<0026> <0077> +<0027> <006D> +<0028> <0034> +<0029> <0052> +<002A> <007A> +<002B> <0035> +<002C> <0036> +<002D> <0037> +<002E> <0038> +<002F> <0054> +<0030> <0039> +<0031> <0045> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +387 0 obj +<< + /Length 8387 + /Filter /FlateDecode +>> +stream +x{{|TյZsfky$ 39y@ f &@xHf@P FUֶڊPVUmm^g_rUqNo ^{u^{:,*w~8O ۵i ӵx +g׆7ϼ3) ;#j68dIowo-W˞-_4Ҧ@/} ț#:. @w˶{ŕ{:{ǔA* +gL8 gQ +o=c/̍'ֱa8(E/G* 7?v'K& .i֟Ou>% g +ևdd-od5A6Ŧ䑫D5ە.AA@;PerxUq+n/T`?r8[+V ,Ca$t0.Sc%O^]#% ##EJDwqOFʽlFK X%)y6mrPt%E&4L]B'pb%<)k"82g Z +BX<^3+\͟_D@esNg<1 GTcD؝9P{_o3%@MZ5I G>r/1b|F@J ߠ0pc# #ܤ-\'(ꃊfdBq@*X{!a# 32kdb -oJm`%)>P)T)]9Ϝk̰Q5ZsKt[hu[WWUWٕjVj*.3~]8dvR]%Gft3jiNki ^O7EOvmQt4vtTO` 0ZQM۷@O};iaM OkִpT{q-*@X@Ή`V(MW/X +&0YcNs/AGyE,0Is"D&,h,XTZ=aI#um(XL+* K^"DZN,V1Y\*{0$7bR|8Yj)ڤ ؄ZDR%)X +tmLUT*U$Ų,ے}mC/xڵ{l=^U'V-:O>퟿D8tG3a +VȊZQ ) JA)@BRhӥ9$$yDH+XK^USSU鴖gF(c*m{{5Ү(r:8 +ht[a\ +Wi^ P7v +^ld栖Qk(NFu+POQO )  +\ S -y1a$!degTjښL%5UV$:$.Pq +ccKŤ@ +[h$BAd/@(" `2ш-ICI2 3D8S|ȢZb<䁐*Vʧ)b_|GNV,A[,*.+1Ԡ;+7KMj$a"˶A M}_vN/2[&߱{H_xx`T׷Gs3zw=m;)cghb6*P !YhJ 9&X4D̉*++ݮSLv$y/OA=+ϝ^qeǂe?E-DZoT|cAU#7̸9ݫ :ϙ L&n+aMUvw>{%"0]+BLJ@YpP+ LeIwXx%DGzӉ9=lE z؊`J#:grҖx"9,R<)߬n3weD˨wW`[ϐ⛺wByg>NcY6L> +DHA0|՜ >kRnH3YgWURSnPS$*>?#819W_;GspÖo׍~79$BdEo`H%ḍC__NGq4Ȧ$nG^i5fDHC D*;6D( q'y +iD8ּ\2كvjwZͯ&V< ˭vJ[;>;;Iӟ1]0sQ7 W"V+'v;ׯG{≬G;id ZyJmKDicR9N{J3A6fK=wG?ܿã߁]P8 O<CO=uO!ܞM i1SmVIUzWb.ߩ6b +BP<:)euy9qA.#enW>.nN+~_.XP[}uIDh|Ռ~wUcȓ?ɪ{X̎/HQȀr̒n(AlJ %41Ȁܼ,*BDQf\oϯG?]a|>ߝлwķܰC*H1 +HD${Sj\ɓ +6D(rDP=lBp_pn~oN7w׆ѫG_7ط}߭m{^ءs[njɊg лׯYi\鞲=/͠\>.\Fg}s{o=B'Hg#fp Ν_nŷa2f"R\@!홻9iۅ04&OSr ƚQdC$s{7=ͳ/ߓo\ӱmhӁ׶o}ڕG~z,cx%k\\2g/?p8KF)a\3?gGY ?ؾ'>r,uW}i+dP[2 #||\\kIc8Wo'Z&Rw LAfstoI8Mcgķ KR(6$RQQ7r$Q 6("`2%Ԝ*5)ߑf)xћ}mUQ@dr0n4Y~2䪸8mm#87bp:aʷBHŐ̖76D[u| ^z 9`ED,~Nj)`)#65Gld]fQ᳉~ۅɐnp+yJX,S9(:2;^i̶/t5^ծ.dYm}}=" ƛS+"ty :Lq!jY $(ݝo %ےnZs͖Ijt[m*h$[pc!e[1}7z?i71|CLCVaF-8gKAl,ȄLmJ8JnT*0aR(^;|?޸?+Xu  +&~puBd,Q-.G>@gk#׍GN\qw(Bn̟wt綻 ~_7Q,#m .]$|%<˃7}l쾖Mv켳F>Շk};e:vZ|ۨ5h m(q +r&Tx!fW[T[Y /{[%#g* d<;ȱ[~x#+y;W0x/n{Ұ.ok v=ವcFd7yfz7jh\ j*_I\r^=!¼Ȥ [1Fz>jN`7]?;}_;CZz`nֶgw${ȶǻݳ1;ඇ6x -{=vxvEkoB[6 B 癘z&߲ +UPL::.D{k4m 5Q7C~%ʯ$@(֕Nm˞w0?;Tl>>_i/FJRX `:?>mO<73Kp ֑cp _TQQ(.- >iXq,XNwR2=B+oɻ`_a,a Qr> %V16K0LSLˡݼfJ?%7B`~JhAX b 47&u^x3d5>yVX,B%*yQb\rIҝ_LSMӵgLk͏ iK{3ݒ^~ Y[-/fdf\qw9=̧fdeݘ\f!ߨWA*feeɘ͂@ِ0ҡ9 0Ú$,BX)hH$lU(%a31NȘZ2^3&($O [vAl.~*`&Ԁ :A } C3tBC?tm0zf*Bl~eP 0C'tBT\X+a 2j 6 NWAq76cF~t@'l5 A&qhD hc 93& :a! |n؝K(:a3l3N+8 ihA;qϬ9.MhǥX=NC.I>.܀aHpbz ?8 =34 f2XM3I_~|1 l`\ +*Xu>X Wj8 !-0VP 0B kP  +`&4$iUx +_!bsZھ-me&(79*bi M#]--~:K*,)Zfrl͢N ,1|Qbx n&xR!W=fRU rvHҕt>Ih*?cj@IC:o*. +endstream +endobj + +388 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /KVQFNV+Inter-Regular + /Encoding /Identity-H + /DescendantFonts [389 0 R] + /ToUnicode 392 0 R +>> +endobj + +389 0 obj +<< + /Type /Font + /Subtype /CIDFontType2 + /BaseFont /KVQFNV+Inter-Regular + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 391 0 R + /DW 0 + /CIDToGIDMap /Identity + /W [0 0 656.25 1 1 281.25 2 2 746.09375 3 3 583.0078 4 4 376.46484 5 5 875.97656 6 6 561.52344 7 7 590.8203 8 8 364.7461 9 9 612.3047 10 10 364.7461 11 11 332.51953 12 12 641.60156 13 13 744.1406 14 14 638.6719 15 15 601.0742 16 16 643.5547 17 17 364.7461 18 18 985.35156 19 19 242.1875 20 20 599.6094 21 21 818.3594 22 22 527.83203 23 23 548.8281 24 24 562.0117 25 25 242.1875 26 26 562.0117 27 27 591.3086 28 28 327.14844 29 29 571.28906 30 30 591.3086 31 31 689.9414 32 32 721.6797 33 33 764.64844 34 34 612.3047 35 35 671.875 36 36 545.89844 37 37 743.16406 38 38 590.33203 39 39 613.28125 40 40 645.5078 41 41 370.1172 42 42 459.96094 43 43 630.8594 44 44 730.46875 45 45 364.7461 46 46 612.3047 47 47 565.4297 48 48 903.3203 49 49 552.2461 50 50 288.08594 51 51 661.6211 52 52 645.9961 53 53 661.6211 54 54 954.10156 55 55 661.6211 56 56 406.73828 57 57 459.96094 58 58 620.1172 59 59 617.6758 60 60 609.8633 61 61 618.65234 62 62 288.08594 63 63 593.2617 64 64 620.1172 65 65 965.8203 66 66 689.9414 67 67 268.5547 68 68 654.2969 69 69 764.64844 70 70 562.5 71 71 1000 72 72 288.08594 73 73 753.41797 74 74 360.35156 75 75 628.90625] +>> +endobj + +390 0 obj +<< + /Length 12 + /Filter /FlateDecode +>> +stream +xAJ +w +endstream +endobj + +391 0 obj +<< + /Type /FontDescriptor + /FontName /KVQFNV+Inter-Regular + /Flags 131076 + /FontBBox [0 -234.375 1000 961.91406] + /ItalicAngle 0 + /Ascent 968.75 + /Descent -241.21094 + /CapHeight 727.53906 + /StemV 95.4 + /CIDSet 390 0 R + /FontFile2 393 0 R +>> +endobj + +392 0 obj +<< + /Length 1656 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +75 beginbfchar +<0001> <0020> +<0002> <0047> +<0003> <0065> +<0004> <0072> +<0005> <006D> +<0006> <0061> +<0007> <006E> +<0008> <0028> +<0009> <0064> +<000A> <0029> +<000B> <007C> +<000C> <0053> +<000D> <0055> +<000E> <0050> +<000F> <0045> +<0010> <0052> +<0011> <0028> +<0012> <0057> +<0013> <0069> +<0014> <006F> +<0015> <0077> +<0016> <0073> +<0017> <006B> +<0018> <0079> +<0019> <006C> +<001A> <0076> +<001B> <0068> +<001C> <0074> +<001D> <0063> +<001E> <0075> +<001F> <0041> +<0020> <0044> +<0021> <004F> +<0022> <0070> +<0023> <004B> +<0024> <0078> +<0025> <0048> +<0026> <0046> +<0027> <0067> +<0028> <0054> +<0029> <0066> +<002A> <002D> +<002B> <0030> +<002C> <0043> +<002D> <0029> +<002E> <0062> +<002F> <004C> +<0030> <004D> +<0031> <007A> +<0032> <003A> +<0033> <2212> +<0034> <0034> +<0035> <002B> +<0036> <2192> +<0037> <002B> +<0038> <0031> +<0039> <002D> +<003A> <0039> +<003B> <0033> +<003C> <0032> +<003D> <0038> +<003E> <002C> +<003F> <0035> +<0040> <0036> +<0041> <0040> +<0042> <0056> +<0043> <0049> +<0044> <0042> +<0045> <0051> +<0046> <2022> +<0047> <2014> +<0048> <002E> +<0049> <004E> +<004A> <002F> +<004B> <005A> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +393 0 obj +<< + /Length 10680 + /Filter /FlateDecode +>> +stream +x{y|UnUwzO$Td"Y$,I7K膄 aQYCpx:8g&3=QGu}3H*wC@}~:}{s*:hF/^o5~ +~ +ȒFi q1 M\8_ni 0 +냖>+Z6KƾJV-%0>_Ќk_\Q?듶i-]^p^4yM}s〰 @<s(<Z2)iX>7GjPgٿ& +i8 a;mr_8y_N1wn+f=><,_4 77V~-efCd \s|~x*$n\gFK9> g_Ԃ/v x@ xrI|`[..0&3x6y= +a #H IrCHav:gFaLjހGW 閈KbI7`xBDs{FXoR+%&?s.m>^%o" +|HI#*}7^MGS >~ J_K.! T |PkqK!{Ȥcpr:ɻ@w~=%|V*]!n)B)B>]!>3\!BWLW>GBZr3+ +;$:FMuvKFe1./GBH1l9RqҘ̥~喹C}8y.>_<a)!-i`Un(./%R+Z얊O..rKc]! >/.A;:ʅr!٨<=EMYniKd<ɐH:;/(rKoD$NDy)@}X;Cx!66w +, qޛ5@7P'H7XW铈7hXozC( )[F#VW9%A7@f%;JAȠD0'~-Gx:¼mSR2_&C' ^F}|`WmxtE!q1yh +V@U!x# ++GD,>rLz}~_F&[xL[ [^4C/:Q͖F;RreA)FW +*|P޿&ȒJbz'NJ"}a:]!pe+v*3Jh6,}P 7fKYniWBLF0-MuIc4R:`[]TiN4PtK@r ed)#(N-ͦ8Cq(PMq(P:^[3H:ԱyQh>SOj)-g:RI =XLq&9Rš@=šC[jTR. +-Sr. +5)tQhBV*tQh+ŃlVI-VN2]q +㴨 iUpPg+ ^ؠtF\!Fجa +R;\!0V囂M)z +R +#ܩa +R>_MAߥ.]!F[)B +R=J`'mv㔴^!&k h) ( Qth PENаYLFdj0# z(!Mivq)ĔdlD[XGaY08ND@ Oa87X5@4@t DGBhaPX M~vܸѣSSZBJK>ǎ[TX3&}Tl˙5rD##UHaDŬ5j}B|\l.:hƠO%9]oGz\ϘBaݜ@g.03G4tԬsu%d- H D$^$_xM$]@bg|B| m( @mMlpMM GD1 #h/?/16 |n`\pmAA@h4 #2,ɪҀdq~!=7X!ql2Xrs + + +v KǏz?t︸uwo9[qq,g8]7Ww7^q/81)#M<,f`4``YӀa !%:uXrQDQHvP rsRlPZ  +n9m[>8?o75/ݿxS=8`j>.n' 09Y!UD` AbfM +OEj3!=O꒜\snAAnjV4O T7vs0zk]_#k@JGROp#LjX&LKB EA(5~1`JQJU%I>Om>F\@,=w[.:Djef?}glccDz~Xf~{2i (Ebn6%>1AxB0+"îOԄYU#9ӁQYON4$@#?o.5$z!_Ù9q&Mti%S^u-w'tvIEkB1ٻĺI) WH<24-:6.m$׸vK֎U>YEOXsfV5~Zs)#HY"tE"Oc@ W $|y(Dz!"A'QO֍E~~{CO @; jºD1`(0yo{[*NO[]qm;P=|B~@:ly6\3p,G6zp\.e!h"B=xUdMDIVҀYnp5W;(jU8b\ܰmS&CCG~pپ{A'̫'/_^z+_ji=O^U4)[oetV`83b0MXho-n~~ 2 Um}W'@y/FP;}`t_*rCRte +9^ԃaKP "X ̧hn?JCFs823> (۬Tl8|KW?Z[wr6R;l2×fl1i8Kn^:}a~Ȅ7|rށY3v!TN"b9̪D;z #[IBiӦӵ:o;8\V@kFC^r0S ̠#@4a\1;Kt98NvUH>ފOQQȯ}.!~9Ծ4#F.4Bv!X?FO5?Pb|;.'c>f  W0QC*RCjՠIV aծQRn$[}h;zt`ߵΘ=nÁjA$JNEyӓ84U `X)&9]ӎr + 8 ^idr%Ϳ4s?קYؾk+.]j麶7^Yt]f=\u([zfw#M-fE򩅊 *>A5a~xQ^׺^Z1:Եꗉ9tm/{g\Uh~ل +k Fdb _ uјAx*u1mMb|Gc Ơ+%"$ ׂ]مܰ0LĺUrd2+ $`ӅD+Kr !C'9fgms~yHqd?͹]&/ ka_:*d|[ f}@hz(ͱef/w5ROEj!b*D"Do,Sˢ} y_:@YفGꮚ +B΍Ɏ;No3+\90$١m+ hY¶SB Sċݬ`^DfAoB#y\=r[>ߒ1\8p^R{TKEGKGPOUԇd&HvaK*g.- 4IA)^$l !G}2J}47A/XטUX;oO3ҁ/I +#T>GE2R#JB4|ЬQBj)/-,#21+iᤧzwnxS?W'ozh?7ի,b@ G"Q ˃+J (Ƙ䤆(0vh{<N#7JF*K eWuwJըNe 0B̠}B**>VG0Dh*]o!ԫ ;q< +m1e9iPW~#G>'r8G(QK++7ǖCb˂-BEfNM;Kv&'y3헶mԾm4j>Y>zQ i]@vߜ:`kVҤd5!vPC2q,68Zy*' +'iDf`CtN#iFP!z 5,ݧLƒ{qß.+/۷#GZΤΛW`x;Womyi_|/j f}Q&zapCLAAac&l+A?\bd,^u^kg?MOQ0jА80,+X ,r-e-Vyr3 K.p0Vo_cFjm,4SLA +z\N/wܵ/پ-xl|z/}e +Ff,"Э J?C#ym/?迃x0cRb0Q׉qXӀ mjhXgЊ1H}O1b#++ccN@:J%ىR%Ӛ*`OZgg++|]'M.ntiO2O)9)?*_O/lɁS||5n=x*hS)#kڨ.1U/"Kd96,u%B"=bXS'˒ R;Cc$(1M6 2]zYNeOJmޘљ1Y}y]UlSN1k*=rwzQGؘ9U+(x$ [ =C3=I_{S6 |J+cV :S},u933ǠOB'oϐ__#C1NԄ&>l(˯?6WTa̶KlQE)T657~Zgڴq?/ggϙ7zs7=|.A%{U]|gXTo7Uo>&[= D=(]E"ATo`xr06$N^0$֐ȠtXw!׳`X+>{}W/Wrؾp!% !Rj##j2yR;ۋ*[ Z_"Y'SIU.̲}f} vVQaܺqݓJW4 Q!^`FR%>|̈FBS51:ayVP̋0%kװq"Miwuq zޠiC>=vA/ 2o{?zPF=HȓѨ'krd7BxPAJpo`q2T)dP|Q8!aϤT{fa`ϷXVԖ?xk}+%+ ŊLD#mf)&MڈkfKceB~H88:GgC6w^n|ﱍw<ֹijy{~Ծf+u6wl<Ğv.SܲRZmJ2)'A QLّӹH!F(,M*f!Q5cA>7vgqݛK[wںU~Zu1OF + AjW_ZD*gASDpvyy9ewa8a/U)TLiUÇ1yJ6hԝV{}/9}Gwjv}ϟ<ȴkm;n͙3k֝ozvO?ݬm޲n?>gu]ͫ @|! L|UʪѷRҩ%!31bh*h0SA!aͷ>^QtQ"7df;Tkma_zyjKq\miw_ܼ̚ qYOc߹>JU`B-c zs=¯Ok +BwZ=<9xulޖoi-9ꞹsgvJA7d]OkNՂ[]O=`k| 9ha37Ϫy O*5<>wmo黏<Ll5@k~L?o͹p?QZ7Fq^XT+nr(bq)6 `kt!o?""dJ - ?%&Y$?jO;uO@>&m8v[~fE)8;ܻ`֩]ܥL1B&L fC<O| 0]S5gfYX43;SMzZQ~*dr }:iSxcd nW2{qwj ? GW~3'PhR LE;E6+'F +ar7몮TW@uU}H-zH _CBj~ YFQ٦>L4\M,1hƌX峨fuh7p X􉑎 UsP6Vs˸6uan9~Ӽ3qQlߵя7=_oj)@=^.ޒ"^?.shZ7{DWwrs^3Kw03#w#i)LoΘ1rʽSp.ݜ%9 >ژ >NuYnՈl7xT %C:&fEO@Z|;-j3M3!~S Y"^iMq4@̃K Y ?b!ZEu߻' ֊c2?X U~/KLVTtrAXj}kHZD!%m[(]pRH6'8|CBLGNCo¾eһ[6-&Z~fۢYٓhj_^H“O1gG+v<^U#Օ6_؀bJCF1yOqa;C'C?jC' RdͨchQ9VR;eJnޔ)lLNiiΘw[VJGb %2%'\ |0*,/'|dzZ.8@sA6[ZhzZ]7_+IX`Mihd`&[a.9 6O!M:hއ<l!Fn/Dꠛl$/A7F +Ǿ +\*l"W @/K^^14YL)dc`&lP| z5㠗,x:k?a;Aރ#+؄C9mt\s6QZz0=m辜zjU\lQMn.tg&l`>'$!}l [vqc;?htrMP_ mv!(s⨷gDo~BU2&6&*X&vFǾQW>=O$$%L++=ҏO?j` c 3 k ' 2jL=gMUt +vB4, ` >e6NѺD(M2 ca $Cof$ӪG50a-hњ0<u#a8fxt6 A~ +a#7xH*qQ)bh b5@=@?xP:]ݾ Z mL:tVώL(a:n WM!H6dz@D0a8(){i +endstream +endobj + +394 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /NMVPVO+DejaVuSansMono + /Encoding /Identity-H + /DescendantFonts [395 0 R] + /ToUnicode 398 0 R +>> +endobj + +395 0 obj +<< + /Type /Font + /Subtype /CIDFontType2 + /BaseFont /NMVPVO+DejaVuSansMono + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 397 0 R + /DW 0 + /CIDToGIDMap /Identity + /W [0 57 602.0508] +>> +endobj + +396 0 obj +<< + /Length 13 + /Filter /FlateDecode +>> +stream +x # +endstream +endobj + +397 0 obj +<< + /Type /FontDescriptor + /FontName /NMVPVO+DejaVuSansMono + /Flags 131077 + /FontBBox [0 -235.83984 602.0508 799.8047] + /ItalicAngle 0 + /Ascent 759.7656 + /Descent -240.23438 + /CapHeight 759.7656 + /StemV 95.4 + /CIDSet 396 0 R + /FontFile2 399 0 R +>> +endobj + +398 0 obj +<< + /Length 1404 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +57 beginbfchar +<0001> <0068> +<0002> <0079> +<0003> <0070> +<0004> <0072> +<0005> <0063> +<0006> <0074> +<0007> <006C> +<0008> <0020> +<0009> <0062> +<000A> <0069> +<000B> <006E> +<000C> <0064> +<000D> <0073> +<000E> <0053> +<000F> <0055> +<0010> <0050> +<0011> <0045> +<0012> <0052> +<0013> <002B> +<0014> <0051> +<0015> <0043> +<0016> <004D> +<0017> <0056> +<0018> <0044> +<0019> <004A> +<001A> <0046> +<001B> <0041> +<001C> <0054> +<001D> <0042> +<001E> <0048> +<001F> <0049> +<0020> <0060> +<0021> <004C> +<0022> <004B> +<0023> <0065> +<0024> <0066> +<0025> <0061> +<0026> <006F> +<0027> <0077> +<0028> <0067> +<0029> <0075> +<002A> <0031> +<002B> <002E> +<002C> <0039> +<002D> <0027> +<002E> <002F> +<002F> <005E> +<0030> <005C> +<0031> <002A> +<0032> <003D> +<0033> <0024> +<0034> <006D> +<0035> <003B> +<0036> <0023> +<0037> <007C> +<0038> <002D> +<0039> <0026> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +399 0 obj +<< + /Length 10129 + /Filter /FlateDecode +>> +stream +x{ xTsϝ53N&,d&$v!(PDL)P^dI0Z4!)EL" 4""JԺZ4R=IHm}/afr5Șwsu&;ÀQ䮲;?v޵heɯ|[ U:Nq+-?|@ez-/A}HEQ?8/sgy0 ~!we +S@K_`FZW#yM(Є jH]M8VH&J6Њ7bXfErZQ5+,Nc,_\Z{H q؄c8R]9h"X-UI%6`b.:0>~TIp%0x6\jQ$ +QN֡ 26);ƶ ^<5eĢ&>,Hva)c&|lԔ{^|+߬nmVBB)K.Pw2qP1uPOn4_P*#PA_Zㇿ-U1@VE?⠠D֚Y`tEpڳHoЮyrs3&y0ͫekp9{V55e3ҁҁ_mݱkR>U^+φ !GD%M=Jqqz54K8 &U^hom֥71ó~7Jw?y7l8Xk&O_i}vt{N PdhrdU]L~M-WTDO dl5CO~m"&D5Ne_쁃^^7~te-<{'W"({UUG«ZmiQ.;Qꅖ, *p^x> xh*=asoxL|Dm­3ҡggoL7q2$|BulfO 3;hlH2p[-YHoҞ%D>yrM*!;YO~~d?Z[wJkȭ hd$C- 6PO4xcgxH|Fj< \=#)nV;-a"r+JT7Kor| +jٴvg;Τ eŤN⚚فZ =ו岣7egoE.gS$T^=#w4Ǩ#5m9Оu=ZqopCKBhj}7o΍WU_}id #?m$ozFVJr?.9lXE2Y=q1V[l*rDvWj_V;j6aB(4) -+7WyE'3Kv +DL5IDԊTN=fUх?/z0 lj3+Fd?~P8lS{#ӛ^^ z~g>?;5C`CR'Kuhf4Xdu~--"tkf|vLX*XƎ3>5|!=?b6Q2e>Y0*Yu!m2- +R =%knk=#/r7p\u JgOCtA$0~?W9Vp(Ou=$.KʧfvlbmzC|`&y64L.Ea*vtoJ5*a>tF[FqHCr7yb0XUsFѰ:K-bD+/"K1\QHjSKT:(3&)Te7U^n^aC YC Q{RHEĿ$ɾC$Q/`_x yO +Ͳ#SɈj7i- 3Ώ$ΝF7N=rœ>}H-YB>}Nw[mSy%k)fJ&J%+EH$Q)ۘL%¬"[d道ߞ%:ݠ0rNLOdfC"aI"}hɥ,irZL234BhީA$"!~_|u.'^oi? 6(C|S@dǘ\FSELJg&5ЮKޞuӞ|zd/ɖJN1S,rؖIȓܢ?LlDSbYLSt`K֞里I ^-T`Ɖ]La0ov_!Ș+WVt_< ʮY4=v`\4Y7:]S 9.5p:,/-y`#GΣ5u<m.)F;E =IЫ{ +35|,k+-#l-dQGgV$Pj-5ՑtY&E[Xզ~bX/l3g7SƿnGD]NԠ2%6IvbRMYTJ lNW*m#ĩb>w9t@`BC!y4y,Zc]h2pj rOmɬrKS{>A~o$ꬖ:FRg}>NEƅ%Gl8iA+#(VPw+e32V܊I/}{ko~n#|4y֭4GH':>MR uɪ{wMOO6}}^ӒnsVDcY"èh,lV=#4[K-y7J}Z[;>hem;kdEZJ))&ӝd۳ '  #5xeucGz%>2ɧ.k2fcʝELoϰ/!R7@ Cn7fڅqZ%|* +mbuBשΟ`YLa& +LT!׀St&`rY,\v39%I#ۥi"Kt?[i8$Jd"Ģ^,EI6%h!4I"4|7glM ĤgŷxvaRi[-R}D\0p)VY(RB^mRK )ZDjdyzKIXBp/Yʲ\&G5E3/?Wtl;7VfݡI. %v:;^?n>j\hamj.LMH h-̷+3ܲԖFJq4Ndq8knneQօVjVӕj~sjkL2Sˎ&ڈw;/}a^yv`TL7]iJ:6dW_G{Ec{Y*4R^=czW$HJuSQն"o˄s <9 k78yO<#@ZνUfo )V]Omesˬe Eț?o2F%̤~Sԟ of/J +y}jyuGr)G|$V|6G]́ocexn4ZN)j b%Lgq+qԺv+(%TBSY"Cf}W}ͥEpA\i\ BLbzL|r2NJr +7db(vVl{Voh̖Wҝw1~ܠH 03",`V0HNxIg= !HG?ܻ'L}"d;]_UzĺB$5XUVzSlJt(0zԔ{jL"\D"tD#ڭDT AAd{bAIڿKTt1)91uor1sOM|sa|<]Vcf%&~- g`BgLZ +$\/6b(Dd^Z rp \M\N=SSdc=ݢfrfD &2\ ZW)I v?9!w3A5v%DC4W@тx"$t7-Dq:"|;'׾3qn~K^+]42^ݐu#>gI^w-3R*8Y[?멿}Q6b ysţ6}.b/ߝ=YuEx=iVo_3" |W6vl`j0ы^x͚δOPfǰN|WP6Ta+QTbp>c76lB%aKG9T`JEhF +Irb1Y8MbI i$g%UR"ZjvKys3?{})˔申&i9\`.61Œorz[_"6sv=ޞga/!!{:v9'̓z"wC4AJg3(,ҩ{ c f)xL]3Dూc3IT؆<< M"(uPc Vb).bB2xJģ X9(C +QŘ4ca1V~6Q4X1 s0y(,]xc#Ks 0(F90Gw#:Aaʱ(@9q7+@.4KC6_|ӝ^ODjh,p ˑ +c9b.յKb2FSN'b>+G&֛r6dX'<1_ "l,0[rKYfuze:k>h.uE,tJ6I_r]K~np(\, ZX +2/t'eוaIz'ڐzKuˉgO{9a3|pL"d]օO `QЏ{wxw!2x qe XyMb]abP"4)ץБX3tE,i!`A=*GSs0zff?^*[+Kn?'mXJ}@s~ž/k߱2-ѳvR?de\rgF ?]uŐT`کgw_r,Ϯi$BC߻Hצ4xmi*3$q#>R9:\z~7r3 뜄&<VBv^θ;!5N+toR &v6#vPg.FmUxânXp>g{` ~Qm:nC柎aGqO|Ve|~_ nN~%:Ƭȱj(A'Q_n(1G_#(uQxՏketZ.t!5 +u>0St>0S0 C0IWɈDLLE!a8vhBܮ2hLtE:^?B0(y dLiDE1c(v ӏGݨo<&b8]C)ЍR ʓ$ᘄ;( .9G%c$( Cq;g현:򰠴uF`RP% b&bb$Fa.4%ROs_5$8FEOC.Γubwa8`\NSrhܮ'+54=slIݬ"l:D\/qz6 a/rzf;p~{ t_1}A9YN뢍>ɢ{{7ݭJeYEw_sӧ8mx25'Pٓ >n;8}l{{!~[t[jiX->2=z>F~!{d&}/oW>=|>5U>V3>t-6Z]cŴjƪ|tF7q >^cp^:N_Nk9]s]Ul5XEWҟsZs{9]Ζ;&G2;]vDp +{8]iɬ..Oe"N΢ 9]EK/ӻNsZ鼹lst9Y:xywtNtS9=:ݞEp:I޶NttIe8{MGFiP+GQb#l!:<bӡC$" q4I[!~CE3Elv:"le4\Qlڟ~n֏Ӝ1oF;fgDlNifeFь(f4ԔPꦩM`j,%qk[|,[,#>IN /`ᴧz9Mt:Y" ,aOqchVb9Gt$i4TI84SOxa,UJ* Bԥ0IeZUNjT5s:N;G9a`b+ i"B·6NpfN*5qTpܔJy^IeR%PIP)i"뷐~?-'4k +endstream +endobj + +400 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /BJIPIG+Inter-Italic + /Encoding /Identity-H + /DescendantFonts [401 0 R] + /ToUnicode 404 0 R +>> +endobj + +401 0 obj +<< + /Type /Font + /Subtype /CIDFontType2 + /BaseFont /BJIPIG+Inter-Italic + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 403 0 R + /DW 0 + /CIDToGIDMap /Identity + /W [0 0 656.25 1 1 364.7461 2 2 612.79297 3 3 376.95312 4 4 600.09766 5 5 549.3164 6 6 575.6836 7 7 591.3086 8 8 281.25 9 9 1000.97656 10 10 612.79297 11 11 242.67578 12 12 242.1875 13 13 527.34375 14 14 328.125 15 15 613.28125 16 16 662.1094 17 17 373.04688 18 18 591.7969 19 19 552.2461 20 20 364.2578] +>> +endobj + +402 0 obj +<< + /Length 11 + /Filter /FlateDecode +>> +stream +x +endstream +endobj + +403 0 obj +<< + /Type /FontDescriptor + /FontName /BJIPIG+Inter-Italic + /Flags 131140 + /FontBBox [-84.47266 -218.75 1013.6719 906.25] + /ItalicAngle -9.399994 + /Ascent 968.75 + /Descent -241.21094 + /CapHeight 727.53906 + /StemV 95.4 + /CIDSet 402 0 R + /FontFile2 405 0 R +>> +endobj + +404 0 obj +<< + /Length 886 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +20 beginbfchar +<0001> <0028> +<0002> <0062> +<0003> <0072> +<0004> <006F> +<0005> <006B> +<0006> <0065> +<0007> <006E> +<0008> <0020> +<0009> <2014> +<000A> <0070> +<000B> <0069> +<000C> <006C> +<000D> <0073> +<000E> <0074> +<000F> <0067> +<0010> <002B> +<0011> <0066> +<0012> <0075> +<0013> <007A> +<0014> <0029> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +405 0 obj +<< + /Length 5607 + /Filter /FlateDecode +>> +stream +xZ{|T՝s_&$Lwr3 fL73y0C < _ъb> ۪g`ݴZ?~v׭-ݶJ&9NbPq>s~sa>4ބ+<@l_ 7o@sɞB`._Sߛ]0}@EÛOKs/2;g}@Y @ nuorOa=Z|b[@#@889@]L-LOo@6tNzǒJo$NBdii47|Jp+}D~Cp-}pY|d!s~s3{/f +}F8C!5 љdT|/] +2WTM$")ZB*F=L8&d΄+yf^GeLjt>ɉt0%c?OyGb*x\MYdeTV嵜9Sw##I;b T.sTQ}›^F,;Ͱ>>2ړgg$l{qFxƂQ-2IW[T&=*S1hf"^/H"dL=)e{DBnR2%ͤjlQuDa$L\Ktx1-1rdT 2EgY(fβ2h$w0H)A\hU3qNI4Ѭ\D["վq'R h Q&jˈA5 /S̘qZ:"YEG/6>nQ.-2 #jx/-'d:# Ueyѕ|i8Oc*7Uo:E=#{DK2g4$T"Zb)9^rzA;I/^\|BAtc,UPe$a/9FTȧ#nMe#c?22c}#i| 3qmcѶ!L.(òQB")Ж 1VEEXƔDDM| "@a$*اxASzDO |D>zR=%qRXl|еi39Ѿ!5ld,{Fx% V-.i'#Ӗ@)GMOQ>V)~=%ROI|S2))TktL` 519EXsVg lAu-UMD4d'2E!N-V>7eZCq[uQm dCOc5OTF AvpF+FFڴ6-ƶ{y" VbL\L(gw+hi<寜It:\ aClZýv'lqlْ6i4Vd,[XFFkߪ?2mWYm}Qkf/ѳMOaq`+| +:}3QbtrN[ 6p9Mf} @4d1}:,k*}XsWsh h+癨L?$?L9gy z8^`pg~S/vzqԋݦ^ zqԋ^Sh ~ ƂM N7" ;H3dA9hrHsHOa̮ךO+ S$Cނp9F=e3d>-[n '|ʂp•35L;, 'X>:7[&{GE*4G˄ӗuv8$ܙ߇r-C.JsK0[ȰFUbU";f!{vv;vUyNqkڊ2MZ[&c񕋯\qIW4/ -ZXbAMPT_6_i>uRb油 +y9{J32$@|GՔP8haApا\&2?C|B8< kC.-6OvÔMګQ=1naM? ǫ~b87^>?DŽw؞A 1Dф3 a +d &Cxxl003İcưz fMN"N#O!:q/ +9@ʭ+IBjfap?R!ۦq#@ +*꜒$rP}}hۣTVj"DΞ*S=eK}=Nn4d3(΋{aF5!sD.4g>A's^<'[޺Rn|?onxw=;w|qW?{;sw?e#zI4-9dXBD tw0 `C|$R]t:e!DBhD.k_qY:wQ:y+uK c{x%6CTNHR$3CPzd)(!%ʴ' +L\T-{dd"[]OvoL'~2;_ڽ{އ{_Oesۭ n{A3V׆壘8OK"O +3uD$)!$Z f^ nG"MmӂW5tJo++纒}_{F]~fqA57|>0/v}w0& Oʉdn+N$ :I[,y\ԩw2=]&fyKXV'M|j9͕ʏdL9(1UV l_ ҹj7 X:u^8j`W@VA2!3j"G$ Y ZUYyyme}UUEgWnGTr)S/r6/e~w+ _p}e U}۔eogv5nY3o}v=6;:&ÍÞE($~6E֘vmk<Dq#v:]~( EL ja~B+gѸ;܃O)ȞC%Y)4e![6"IR`(H22gqd~AmMUrPI*.ܨb&}˨' T(ɋ/~ٰ79ǟ_:4{Qٳ_Œ/t1ҭK6go/Cz$޿ޱ tϝ2U_8ϛ9y=q,0tPBDt`57H@a?|a+$@Hzy:B)MFz''.3ՙ6by#w,Ba# +Wf$$lr6bIL5vV3THEIyI7 +BIl&F>|uU9sysdY+ϸXQ[Fssw掿QFܗOTV,r,{X{≧KMb}Sgێ?t{w .tvJ[{ٴE[yy2IĔ 'K$.\aW(S2e|),s7>{JkV0bG?Gz[]pomC-bſYnI)D)>}N>ڊ'+(.T:̅7Oq< :1 +ͷL4CwK \OiU]PT K u~Bz>t>z}t'~^3B"- p*%4F#q*)Ouqw %WZqUd lBuS*j]eV <+vY=޼Λ;RY""ɫ>-PlWolx{ٓ/^'tPt?%HEHoD "".MC&j6 +@~yMbϣDZT<ѷ~ ߚF^o'Yh ׄ?1)*]+YnOȯovzpwD͆bJsq +}vtd0E6`+#Eez2`;m] f*/g E=(a? vEBC*V`/ЋA azmpC> , + !D7PZs%N !+ы^ %XNF''xN5=ɜ;؇PS6bT$=N0%*0$zЋ=Hbbv@5uڃA4AsuSw!,,bVci6ky,eM/i3qvbVAZ7w^u:ԏxz!j̿V|ܹx؉$Z36? L"8#֯Dm[ W)6l= rŞAkĈX'%s:7Ҕ5(1#p8S(4e4*ȱu1fe36LOĽ*>50h0-?F!yI^).kdURrϐL;E<&hn=n +endstream +endobj + +406 0 obj +[/ICCBased 407 0 R] +endobj + +407 0 obj +<< + /Length 258 + /N 1 + /Range [0 1] + /Filter /FlateDecode +>> +stream +xuJPFOUvDD@`]\ +FMkIRB|&إnऋ(HrTų9` ըa&ʺ:l +3Ŭ*ުnh)&C|>b纝黓AvCƫ+ y') +̵8+/> + /Font << + /f0 382 0 R + /f1 388 0 R + /f2 394 0 R + /f3 400 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 0 + /Parent 1 0 R + /Contents 420 0 R +>> +endobj + +420 0 obj +<< + /Length 3522 + /Filter /FlateDecode +>> +stream +x][~ׯ`NJ8AC@5}Hܺhc]n+}9ϑf9!:|*ϟۀ|l P4&ӗ^׫o^0xz +1XxjOy/~@i?[}bwϟNWChbdGqVwqj]cyi_H6AbĔwytux JovB~;dܽ<t4~?cyOŽ#uH L_R?[/]ϛegO@ 0{V*@kBcNp4ipb9SyF{3M P/ TGOǏ %m!+je~Eu`5t߲*;Iz;mD~W,;UJ'`O2 +nk%QhormvXX889'^/[>H5FlWFo3 $!_fL8dž`ƙ98[(:֎2]o޼_ B'&tD%ղȐ1鍖*iOl$`rd7.P$,^6Iycęm #Dv]v4Y@K#g`h-Dϼ鄀%.A; +DEHGEh3%H@ٗXv  S\$0Kf"OKF(/lp=j"dy-A2,A rxCg>HVLrXG9;!~5.n(<ڗX"@$v̒g+)M^ ɮ^iWUEOr<,@lR\sU 4ЁYNq mXH 6yÝ+ʏI9;ͪV~7azIIR=[Qm9@x γe`)Vl.+9 semM j/} oDxTũ|.K)7d@}mù9e,Rj8 v>ť- p%5c ײNnD1X#$\~VSu_T-[Иq%S{?:a.4o5*t_^u-s`&Li -/!ex?kZO2*ϛrU,jfSw\pXk_Vy',:pKKˇa;L<\ȹNNj9jr JW> ˼顃}+׶r6-Xk0c`~aﶓƸ/o}8&m+0 ˑEq"CeڬEjfm@jIDi$2^a%TS!BmU E}bF{`PsƩSMi 2#i QFw#-]S@ͱ01G"ts> ۘ[n +* Zo)1PT/3 nD\{Leh"h&\sd@^q;4b9_-*g\59eb@B$w?SoXmb5Ii특Tz`a,3ljL8Kvu:i +mzM r͵V?V L PIbbl`5<_ '|9c<=28Tb)z:U4zЉĤroMދOP5?~|骄t߰j<Šƣ+hrW)cb'qw[* e{_*P(E=m' Ob$4c7cLVE +c +B=VgNeW"wI59:`,rFE%~MM@ >>Fq侊#gG`nkO}Stl?59iy'vjH߲?~ ʱףOj%Li>iUP}vV#5"@pSLdcy}Gg}w9#$&XXN(S7׻ɘ-JB7vLkhuˀ/eY?[eO&Q.?;fKXxh|BWP}4h_ջID!q)6a51+ߴ7a1?j{ڜe\j| C5{$١#=؅˹B[>O+<~/PNF1}ˡ+&kn^QF} I +NKTme6Henμw$/O[ +endstream +endobj + +421 0 obj +<< + /Type /Page + /Resources << + /ProcSet [/PDF /Text /ImageC /ImageB] + /ColorSpace << + /c0 406 0 R + >> + /Font << + /f0 382 0 R + /f1 388 0 R + /f2 394 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 1 + /Parent 1 0 R + /Contents 422 0 R +>> +endobj + +422 0 obj +<< + /Length 3431 + /Filter /FlateDecode +>> +stream +x]ݓ۶_8c qvڤSw{u^O"%9}O\,㷋տ`>s/|y?4X Xt^ ւEU5oXgko6WA \O??|m}m-64X5%\~O_>\|bO`Uq .o@? 1xejnMcl/ 1nw7ͳP -Xl|d:5q#&]~cM`IͿ6f)oIsp@.:q4e +D֓6OXغ)OmO+lDʥ{{ yO84q‡۹[ےvGv\H8Za<}nDTϱ*5ɣy+dQ2hU7[s%Y߾b 3^]N;ƠJkk;Y:#4('D.cR콧w;;~iy4'\TuzG峹 U{J{;^W¤0:wDU &VU:ŔE_=~Q?١TP+x6N + i2ՐO+庍Q`iv̏CQ"alg%_wDXŒb)J wƶEP8y| 'Μة at (G66LtC(﵏yEE3)W\hʫh%Ob`r/ɤOӤY2@,gZXw}:#gN3Q }*s:ErwmW@q?-!g1K`=pXWt #"SF5j(3ņ]DBDZʟ,HwBq @afzؙ:j RT,\a:A,jeY@Q^ڑ(Z Bk0}1rfE**%܈)o2ots~e46 oy%#'ݗOg9OӤ-9d٤x: +8iKN;!j+* j=ΗOZpVЊSL.@@l8Pvx{(x<;ZKN$ +*OYԔN7}]V8  lq>bjVµAj8`TRԂ$ESuTҬOJu[X:+ GqyXZr[O0Z.UJ1⠖|`LF~Z"%S\ 陾/ƍ5E:[R|N U=͜M3d_+ͷaÍAb+5|F`C߻fGWmӷ E/GnK ubjZ$ +!(E"X% +n/ FUMnD?i{jK_oA"O⺅4-0eObn85<(vV+&4=H/R{^{`dDЍTz(xL}TX6[kh@R]_&d͠3 ؀N+Nb^cis *2_%.uy2+JG)^< 5M`gxD`MG^Z2sI?̎ZoOMzy^<͌&cb_"i$ ս"aaRſ$Ihf:ż }߀'vu텫Cu1S&V4VL};hlGq}duW4Z > + /Font << + /f0 382 0 R + /f1 388 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 2 + /Parent 1 0 R + /Contents 424 0 R +>> +endobj + +424 0 obj +<< + /Length 1054 + /Filter /FlateDecode +>> +stream +xYMk#Gϯ(BHv.GwU7, !-ac0$&FHjxNZӥWoj-n?6˟Oa 8gЀуC"Bb3l_OŲ!X>7&L|حc;"#(-,VR Q%̬e[s}s,Asthָ\ov˜],~Xݸi3廅ݢ<ܑ,-;|sθGv8tB>痿ܿMhQ2xVt|y^iaC!YPZc`sֈeDNf h!mgM,ő<,0k#eyRS4KP5yijfF $:GZYHCw7~(ReA$M-16j-FMZ} |J'^(rvMmU*S C*r.jy}q0%I{$CCzWOIm/ܦ#BI)>a<utc0d phZo&zͱ>c [ss:7[s 0p pUt ,ж=8╲ٔi^Y +XN+M?)wڂHםd4dWza`=vC OVU-X%pxfe5!^9Y,XVNU.D ȩk`t2 6Fzl 'NjTXg6_eT"*u0zgfNV%gy:QmOlΊo#)d0|C~V Mc7o{#ghh \ڴukTՍ|2;~m]"'I{pFj%wœq 5.ېu +endstream +endobj + +425 0 obj +<< + /Title (Hyprland Keybindings - Pandoc) + /Creator (Typst 0.14.2) + /ModDate (D:20260521130203+02'00) + /CreationDate (D:20260521130203+02'00) +>> +endobj + +426 0 obj +<< + /Length 1103 + /Type /Metadata + /Subtype /XML +>> +stream +Hyprland Keybindings - PandocTypst 0.14.2de2026-05-21T13:02:03+02:002026-05-21T13:02:03+02:003application/pdf7oCVvlr4WMOTzxKvloAJgg==7oCVvlr4WMOTzxKvloAJgg==proof1.7 +endstream +endobj + +427 0 obj +<< + /Type /Catalog + /Pages 1 0 R + /Metadata 426 0 R + /Lang (de) + /StructTreeRoot 14 0 R + /MarkInfo << + /Marked true + /Suspects false + >> + /ViewerPreferences << + /Direction /L2R + >> + /Outlines 2 0 R +>> +endobj + +xref +0 428 +0000000000 65535 f +0000000016 00000 n +0000000098 00000 n +0000000178 00000 n +0000000454 00000 n +0000000546 00000 n +0000000663 00000 n +0000000777 00000 n +0000000889 00000 n +0000000999 00000 n +0000001152 00000 n +0000001242 00000 n +0000001348 00000 n +0000001465 00000 n +0000001574 00000 n +0000002205 00000 n +0000003136 00000 n +0000003860 00000 n +0000004075 00000 n +0000004323 00000 n +0000004489 00000 n +0000004647 00000 n +0000004732 00000 n +0000004920 00000 n +0000005108 00000 n +0000005193 00000 n +0000005381 00000 n +0000005569 00000 n +0000005654 00000 n +0000005842 00000 n +0000006030 00000 n +0000006115 00000 n +0000006303 00000 n +0000006491 00000 n +0000006576 00000 n +0000006764 00000 n +0000006952 00000 n +0000007037 00000 n +0000007225 00000 n +0000007413 00000 n +0000007498 00000 n +0000007686 00000 n +0000007874 00000 n +0000007959 00000 n +0000008147 00000 n +0000008335 00000 n +0000008420 00000 n +0000008608 00000 n +0000008796 00000 n +0000008881 00000 n +0000009068 00000 n +0000009255 00000 n +0000009340 00000 n +0000009527 00000 n +0000009714 00000 n +0000009799 00000 n +0000009986 00000 n +0000010173 00000 n +0000010254 00000 n +0000010339 00000 n +0000010552 00000 n +0000010765 00000 n +0000010884 00000 n +0000011050 00000 n +0000011152 00000 n +0000011237 00000 n +0000011428 00000 n +0000011518 00000 n +0000011706 00000 n +0000011791 00000 n +0000011982 00000 n +0000012072 00000 n +0000012260 00000 n +0000012345 00000 n +0000012536 00000 n +0000012626 00000 n +0000012821 00000 n +0000012924 00000 n +0000013009 00000 n +0000013200 00000 n +0000013290 00000 n +0000013478 00000 n +0000013559 00000 n +0000013644 00000 n +0000013858 00000 n +0000014072 00000 n +0000014186 00000 n +0000014325 00000 n +0000014410 00000 n +0000014544 00000 n +0000014647 00000 n +0000014750 00000 n +0000014853 00000 n +0000014956 00000 n +0000015045 00000 n +0000015130 00000 n +0000015248 00000 n +0000015351 00000 n +0000015443 00000 n +0000015546 00000 n +0000015635 00000 n +0000015740 00000 n +0000015909 00000 n +0000016009 00000 n +0000016106 00000 n +0000016296 00000 n +0000016486 00000 n +0000016676 00000 n +0000016773 00000 n +0000016963 00000 n +0000017153 00000 n +0000017343 00000 n +0000017440 00000 n +0000017630 00000 n +0000017820 00000 n +0000018010 00000 n +0000018094 00000 n +0000018191 00000 n +0000018407 00000 n +0000018623 00000 n +0000018839 00000 n +0000018955 00000 n +0000019124 00000 n +0000019245 00000 n +0000019347 00000 n +0000019537 00000 n +0000019743 00000 n +0000019848 00000 n +0000019953 00000 n +0000020055 00000 n +0000020245 00000 n +0000020451 00000 n +0000020556 00000 n +0000020661 00000 n +0000020750 00000 n +0000020953 00000 n +0000021134 00000 n +0000021226 00000 n +0000021315 00000 n +0000021518 00000 n +0000021699 00000 n +0000021791 00000 n +0000021875 00000 n +0000021964 00000 n +0000022180 00000 n +0000022396 00000 n +0000022506 00000 n +0000022675 00000 n +0000022796 00000 n +0000022893 00000 n +0000023096 00000 n +0000023299 00000 n +0000023480 00000 n +0000023572 00000 n +0000023669 00000 n +0000023872 00000 n +0000024075 00000 n +0000024256 00000 n +0000024348 00000 n +0000024445 00000 n +0000024648 00000 n +0000024851 00000 n +0000025032 00000 n +0000025124 00000 n +0000025221 00000 n +0000025424 00000 n +0000025627 00000 n +0000025808 00000 n +0000025900 00000 n +0000025984 00000 n +0000026081 00000 n +0000026297 00000 n +0000026513 00000 n +0000026729 00000 n +0000026840 00000 n +0000027009 00000 n +0000027130 00000 n +0000027219 00000 n +0000027422 00000 n +0000027603 00000 n +0000027695 00000 n +0000027784 00000 n +0000027986 00000 n +0000028167 00000 n +0000028258 00000 n +0000028347 00000 n +0000028549 00000 n +0000028730 00000 n +0000028821 00000 n +0000028910 00000 n +0000029112 00000 n +0000029293 00000 n +0000029384 00000 n +0000029468 00000 n +0000029557 00000 n +0000029772 00000 n +0000029987 00000 n +0000030098 00000 n +0000030267 00000 n +0000030420 00000 n +0000030509 00000 n +0000030713 00000 n +0000030894 00000 n +0000030987 00000 n +0000031076 00000 n +0000031280 00000 n +0000031461 00000 n +0000031554 00000 n +0000031643 00000 n +0000031847 00000 n +0000032028 00000 n +0000032121 00000 n +0000032210 00000 n +0000032414 00000 n +0000032595 00000 n +0000032688 00000 n +0000032777 00000 n +0000032981 00000 n +0000033162 00000 n +0000033255 00000 n +0000033344 00000 n +0000033548 00000 n +0000033729 00000 n +0000033822 00000 n +0000033911 00000 n +0000034115 00000 n +0000034296 00000 n +0000034389 00000 n +0000034478 00000 n +0000034681 00000 n +0000034862 00000 n +0000034954 00000 n +0000035038 00000 n +0000035127 00000 n +0000035343 00000 n +0000035559 00000 n +0000035674 00000 n +0000035843 00000 n +0000035996 00000 n +0000036085 00000 n +0000036288 00000 n +0000036469 00000 n +0000036561 00000 n +0000036650 00000 n +0000036853 00000 n +0000037034 00000 n +0000037126 00000 n +0000037215 00000 n +0000037418 00000 n +0000037599 00000 n +0000037691 00000 n +0000037780 00000 n +0000037983 00000 n +0000038164 00000 n +0000038256 00000 n +0000038345 00000 n +0000038548 00000 n +0000038729 00000 n +0000038821 00000 n +0000038910 00000 n +0000039113 00000 n +0000039294 00000 n +0000039386 00000 n +0000039475 00000 n +0000039678 00000 n +0000039859 00000 n +0000039951 00000 n +0000040040 00000 n +0000040243 00000 n +0000040424 00000 n +0000040516 00000 n +0000040600 00000 n +0000040689 00000 n +0000040905 00000 n +0000041121 00000 n +0000041239 00000 n +0000041408 00000 n +0000041641 00000 n +0000041738 00000 n +0000041941 00000 n +0000042144 00000 n +0000042325 00000 n +0000042417 00000 n +0000042514 00000 n +0000042717 00000 n +0000042920 00000 n +0000043101 00000 n +0000043193 00000 n +0000043290 00000 n +0000043471 00000 n +0000043561 00000 n +0000043764 00000 n +0000043945 00000 n +0000044037 00000 n +0000044147 00000 n +0000044337 00000 n +0000044527 00000 n +0000044733 00000 n +0000044838 00000 n +0000044943 00000 n +0000045053 00000 n +0000045243 00000 n +0000045433 00000 n +0000045642 00000 n +0000045747 00000 n +0000045852 00000 n +0000045949 00000 n +0000046152 00000 n +0000046355 00000 n +0000046536 00000 n +0000046628 00000 n +0000046725 00000 n +0000046928 00000 n +0000047131 00000 n +0000047312 00000 n +0000047404 00000 n +0000047501 00000 n +0000047704 00000 n +0000047907 00000 n +0000048088 00000 n +0000048180 00000 n +0000048277 00000 n +0000048480 00000 n +0000048683 00000 n +0000048864 00000 n +0000048956 00000 n +0000049053 00000 n +0000049256 00000 n +0000049459 00000 n +0000049640 00000 n +0000049732 00000 n +0000049829 00000 n +0000050032 00000 n +0000050235 00000 n +0000050416 00000 n +0000050508 00000 n +0000050605 00000 n +0000050808 00000 n +0000051011 00000 n +0000051192 00000 n +0000051284 00000 n +0000051381 00000 n +0000051584 00000 n +0000051787 00000 n +0000051968 00000 n +0000052060 00000 n +0000052157 00000 n +0000052360 00000 n +0000052563 00000 n +0000052744 00000 n +0000052836 00000 n +0000052933 00000 n +0000053136 00000 n +0000053339 00000 n +0000053520 00000 n +0000053612 00000 n +0000053709 00000 n +0000053912 00000 n +0000054115 00000 n +0000054296 00000 n +0000054388 00000 n +0000054485 00000 n +0000054688 00000 n +0000054891 00000 n +0000055072 00000 n +0000055164 00000 n +0000055261 00000 n +0000055464 00000 n +0000055667 00000 n +0000055848 00000 n +0000055940 00000 n +0000056024 00000 n +0000056121 00000 n +0000056337 00000 n +0000056553 00000 n +0000056769 00000 n +0000056876 00000 n +0000057001 00000 n +0000057105 00000 n +0000057198 00000 n +0000057291 00000 n +0000057384 00000 n +0000057638 00000 n +0000057799 00000 n +0000058791 00000 n +0000058882 00000 n +0000059154 00000 n +0000060528 00000 n +0000068995 00000 n +0000069159 00000 n +0000070548 00000 n +0000070638 00000 n +0000070908 00000 n +0000072646 00000 n +0000083407 00000 n +0000083572 00000 n +0000083840 00000 n +0000083931 00000 n +0000084208 00000 n +0000085694 00000 n +0000095904 00000 n +0000096067 00000 n +0000096619 00000 n +0000096708 00000 n +0000096994 00000 n +0000097961 00000 n +0000103648 00000 n +0000103686 00000 n +0000104045 00000 n +0000104099 00000 n +0000104153 00000 n +0000104208 00000 n +0000104261 00000 n +0000104315 00000 n +0000104370 00000 n +0000104424 00000 n +0000104479 00000 n +0000104534 00000 n +0000104587 00000 n +0000104640 00000 n +0000104968 00000 n +0000108570 00000 n +0000108880 00000 n +0000112391 00000 n +0000112683 00000 n +0000113817 00000 n +0000113985 00000 n +0000115179 00000 n +trailer +<< + /Size 428 + /Root 427 0 R + /Info 425 0 R + /ID [(7oCVvlr4WMOTzxKvloAJgg==) (7oCVvlr4WMOTzxKvloAJgg==)] +>> +startxref +115417 +%%EOF \ No newline at end of file diff --git a/docs/pdf-comparison/hyprland-keybindings-pandoc.typ b/docs/pdf-comparison/hyprland-keybindings-pandoc.typ new file mode 100644 index 0000000..e0d047e --- /dev/null +++ b/docs/pdf-comparison/hyprland-keybindings-pandoc.typ @@ -0,0 +1,193 @@ += Hyprland Keybindings --- Full Cheatsheet + +#strong[Layout:] German (de) | #strong[Mod key:] SUPER (Windows key) | +#strong[Source:] `hyprctl binds` live + +#horizontalrule + +== General + +#figure( + align(center)[#table( + columns: (37.04%, 29.63%, 33.33%), + align: (auto,auto,auto,), + table.header([Shortcut], [Action], [Details],), + table.hline(), + [`SUPER+Q`], [Open terminal], [kitty], + [`SUPER+C`], [Kill active window], [killactive], + [`SUPER+M`], [Exit Hyprland], [exit], + [`SUPER+E`], [File manager], [dolphin], + [`SUPER+V`], [Toggle floating], [togglefloating], + [`SUPER+D`], [App launcher], [hyprlauncher], + [`SUPER+P`], [Toggle pseudo-split], [pseudo], + [`SUPER+J`], [Toggle split direction], [layoutmsg togglesplit], + [`SUPER+F`], [Toggle fullscreen], [fullscreen 0], + [`SUPER+R`], [Reload config], [hyprctl reload], + [`SUPER+SPACE`], [Toggle float (popup)], [togglefloating], + [`SUPER+TAB`], [Cycle next window], [cyclenext], + [`SUPER+SHIFT+TAB`], [Cycle previous window], [cyclenext prev], + [`SUPER+` #raw("`") (Grave)], [Toggle + scratchpad], [togglespecialworkspace], + [`SUPER+SHIFT+` #raw("`");], [Send window to + scratchpad], [movetoworkspace special], + [`SUPER+CTRL+K`], [Keybind cheat menu], [#emph[(broken --- pipelines + to grep+fuzzel)];], + [`SUPER+CTRL+L`], [Lock screen], [hyprlock], + [`SUPER+B`], [Web browser], [google-chrome-stable], + )] + , kind: table + ) + +== Navigation / Focus + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+TAB`], [Cycle next window], + [`SUPER+SHIFT+TAB`], [Cycle previous window], + [`SUPER+H`], [Move focus left], + [`SUPER+L`], [Move focus right], + [`SUPER+left arrow`], [Move focus left], + [`SUPER+right arrow`], [Move focus right], + [`SUPER+up arrow`], [Move focus up], + [`SUPER+down arrow`], [Move focus down], + )] + , kind: table + ) + +== Window Movement + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+SHIFT+H`], [Move window left], + [`SUPER+SHIFT+L`], [Move window right], + [`SUPER+SHIFT+K`], [Move window up], + [`SUPER+SHIFT+J`], [Move window down], + [`SUPER+SHIFT+left`], [Move window left], + [`SUPER+SHIFT+right`], [Move window right], + [`SUPER+SHIFT+up`], [Move window up], + [`SUPER+SHIFT+down`], [Move window down], + )] + , kind: table + ) + +== Window Resize + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+ALT+H`], [Resize active: width -40], + [`SUPER+ALT+L`], [Resize active: width +40], + [`SUPER+ALT+K`], [Resize active: height -40], + [`SUPER+ALT+J`], [Resize active: height +40], + )] + , kind: table + ) + +== Screenshots + +#figure( + align(center)[#table( + columns: (41.67%, 33.33%, 25%), + align: (auto,auto,auto,), + table.header([Shortcut], [Action], [Tool],), + table.hline(), + [`Print`], [Area select → save + copy], [grimblast copysave area], + [`SUPER+Print`], [Active window → save + copy], [grimblast copysave + active], + [`SUPER+SHIFT+Print`], [Full monitor → save + copy], [grimblast + copysave output], + [`SUPER+ALT+Print`], [Area select → annotate], [grim], + )] + , kind: table + ) + +== Workspaces + +#figure( + align(center)[#table( + columns: (55.56%, 44.44%), + align: (auto,auto,), + table.header([Shortcut], [Action],), + table.hline(), + [`SUPER+1..9`], [Switch to workspace 1-9], + [`SUPER+SHIFT+1..9`], [Move active window to workspace 1-9], + [`SUPER+` #raw("`");], [Toggle scratchpad (togglespecialworkspace)], + [`SUPER+SHIFT+` #raw("`");], [Move to scratchpad (movetoworkspace + special)], + )] + , kind: table + ) + +=== Workspace Layout + +#figure( + align(center)[#table( + columns: 3, + align: (auto,auto,auto,), + table.header([Workspace], [Monitor], [Position],), + table.hline(), + [1], [DP-1 (TERRA 3280W)], [Left, 2560x1440\@144], + [2], [DVI-D-1 (BenQ BL2405)], [Center, 1920x1080\@60 rotated 90deg], + [3], [HDMI-A-1 (TERRA 3280W)], [Right, 2560x1440\@144], + )] + , kind: table + ) + +== Notes + +- `SUPER+CTRL+K` (keybind menu) does #strong[not work] --- the `sed` + pipeline breaks. Needs fix. +- The `sed` pipeline `sed 's/^bind\s*=\s*\$mainMod/SUPER/;s/\s*#/#/'` + fails silently because the unescaped `$` in the `sed` command gets + interpreted as a variable. + +== Troubleshooting + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Issue], [Check],), + table.hline(), + [Print key not working], [`hyprctl binds | grep Print`], + [`SUPER+R` not working], [`hyprctl binds | grep 'reload'`], + [Screenshots fail], [`which grimblast satty slurp grim`], + [Clipboard empty], [`echo test | wl-copy && wl-paste`], + )] + , kind: table + ) + +== Satty Editor Shortcuts + +#figure( + align(center)[#table( + columns: 2, + align: (auto,auto,), + table.header([Action], [Shortcut],), + table.hline(), + [Freehand], [F], + [Rectangle], [R], + [Ellipse], [E], + [Line/Arrow], [L], + [Text], [T], + [Blur], [B], + [Crop], [C], + [Undo], [Ctrl+Z], + [Redo], [Ctrl+Shift+Z], + [Copy], [Ctrl+C], + [Save], [Ctrl+S], + [Quit], [Esc or Ctrl+Q], + )] + , kind: table + ) diff --git a/docs/pdf-comparison/hyprland-keybindings.pdf b/docs/pdf-comparison/hyprland-keybindings.pdf new file mode 100644 index 0000000..890b927 Binary files /dev/null and b/docs/pdf-comparison/hyprland-keybindings.pdf differ diff --git a/docs/pdf-comparison/hyprland-keybindings.qmd b/docs/pdf-comparison/hyprland-keybindings.qmd new file mode 100644 index 0000000..e47c68a --- /dev/null +++ b/docs/pdf-comparison/hyprland-keybindings.qmd @@ -0,0 +1,126 @@ +--- +title: "Hyprland Keybindings Cheatsheet" +author: "mw-pfeddersheim-workstation" +date: "May 2026" +--- + +# Hyprland Keybindings — Full Cheatsheet + +**Layout:** German (de) | **Mod key:** SUPER (Windows key) | **Source:** `hyprctl binds` live + +--- + +## General + +| Shortcut | Action | Details | +|----------|--------|---------| +| `SUPER+Q` | Open terminal | kitty | +| `SUPER+C` | Kill active window | killactive | +| `SUPER+M` | Exit Hyprland | exit | +| `SUPER+E` | File manager | dolphin | +| `SUPER+V` | Toggle floating | togglefloating | +| `SUPER+D` | App launcher | hyprlauncher | +| `SUPER+P` | Toggle pseudo-split | pseudo | +| `SUPER+J` | Toggle split direction | layoutmsg togglesplit | +| `SUPER+F` | Toggle fullscreen | fullscreen 0 | +| `SUPER+R` | Reload config | hyprctl reload | +| `SUPER+SPACE` | Toggle float (popup) | togglefloating | +| `SUPER+TAB` | Cycle next window | cyclenext | +| `SUPER+SHIFT+TAB` | Cycle previous window | cyclenext prev | +| `SUPER+` `` ` `` (Grave) | Toggle scratchpad | togglespecialworkspace | +| `SUPER+SHIFT+` `` ` `` | Send window to scratchpad | movetoworkspace special | +| `SUPER+CTRL+K` | Keybind cheat menu | *(broken — pipelines to grep+fuzzel)* | +| `SUPER+CTRL+L` | Lock screen | hyprlock | +| `SUPER+B` | Web browser | google-chrome-stable | + +## Navigation / Focus + +| Shortcut | Action | +|----------|--------| +| `SUPER+TAB` | Cycle next window | +| `SUPER+SHIFT+TAB` | Cycle previous window | +| `SUPER+H` | Move focus left | +| `SUPER+L` | Move focus right | +| `SUPER+left arrow` | Move focus left | +| `SUPER+right arrow` | Move focus right | +| `SUPER+up arrow` | Move focus up | +| `SUPER+down arrow` | Move focus down | + +## Window Movement + +| Shortcut | Action | +|----------|--------| +| `SUPER+SHIFT+H` | Move window left | +| `SUPER+SHIFT+L` | Move window right | +| `SUPER+SHIFT+K` | Move window up | +| `SUPER+SHIFT+J` | Move window down | +| `SUPER+SHIFT+left` | Move window left | +| `SUPER+SHIFT+right` | Move window right | +| `SUPER+SHIFT+up` | Move window up | +| `SUPER+SHIFT+down` | Move window down | + +## Window Resize + +| Shortcut | Action | +|----------|--------| +| `SUPER+ALT+H` | Resize active: width -40 | +| `SUPER+ALT+L` | Resize active: width +40 | +| `SUPER+ALT+K` | Resize active: height -40 | +| `SUPER+ALT+J` | Resize active: height +40 | + +## Screenshots + +| Shortcut | Action | Tool | +|----------|--------|------| +| `Print` | Area select → save + copy | grimblast copysave area | +| `SUPER+Print` | Active window → save + copy | grimblast copysave active | +| `SUPER+SHIFT+Print` | Full monitor → save + copy | grimblast copysave output | +| `SUPER+ALT+Print` | Area select → annotate | grim | slurp | satty | + +## Workspaces + +| Shortcut | Action | +|----------|--------| +| `SUPER+1..9` | Switch to workspace 1-9 | +| `SUPER+SHIFT+1..9` | Move active window to workspace 1-9 | +| `SUPER+` `` ` `` | Toggle scratchpad (togglespecialworkspace) | +| `SUPER+SHIFT+` `` ` `` | Move to scratchpad (movetoworkspace special) | + +### Workspace Layout + +| Workspace | Monitor | Position | +|-----------|---------|----------| +| 1 | DP-1 (TERRA 3280W) | Left, 2560x1440@144 | +| 2 | DVI-D-1 (BenQ BL2405) | Center, 1920x1080@60 rotated 90deg | +| 3 | HDMI-A-1 (TERRA 3280W) | Right, 2560x1440@144 | + +## Notes + +- `SUPER+CTRL+K` (keybind menu) does **not work** — the `sed` pipeline breaks. Needs fix. +- The `sed` pipeline `sed 's/^bind\s*=\s*\$mainMod/SUPER/;s/\s*#/#/'` fails silently because the unescaped `$` in the `sed` command gets interpreted as a variable. + +## Troubleshooting + +| Issue | Check | +|-------|-------| +| Print key not working | `hyprctl binds | grep Print` | +| `SUPER+R` not working | `hyprctl binds | grep 'reload'` | +| Screenshots fail | `which grimblast satty slurp grim` | +| Clipboard empty | `echo test | wl-copy && wl-paste` | + +## Satty Editor Shortcuts + +| Action | Shortcut | +|--------|----------| +| Freehand | F | +| Rectangle | R | +| Ellipse | E | +| Line/Arrow | L | +| Text | T | +| Blur | B | +| Crop | C | +| Undo | Ctrl+Z | +| Redo | Ctrl+Shift+Z | +| Copy | Ctrl+C | +| Save | Ctrl+S | +| Quit | Esc or Ctrl+Q | diff --git a/docs/pdf-comparison/pandoc-preamble.typ b/docs/pdf-comparison/pandoc-preamble.typ new file mode 100644 index 0000000..fe39ab1 --- /dev/null +++ b/docs/pdf-comparison/pandoc-preamble.typ @@ -0,0 +1,7 @@ +#set document(title: "Hyprland Keybindings - Pandoc") +#set text(font: ("Inter", "DejaVu Sans"), size: 9pt, lang: "de") +#set page(paper: "a4", margin: 1.2cm) +#set heading(numbering: "1.") +#set par(leading: 0.45em) +#show link: set text(navy) +#let horizontalrule = h(25%) + line(stroke: 0.5pt, length: 50%) diff --git a/docs/pdf-comparison/pandoc-typst.template b/docs/pdf-comparison/pandoc-typst.template new file mode 100644 index 0000000..de5f878 --- /dev/null +++ b/docs/pdf-comparison/pandoc-typst.template @@ -0,0 +1,18 @@ +#set document(title: $if(title)$$title$$else$""$endif$) +#set text(font: ($if(mainfont)$"$mainfont"$else$"Inter"$endif$, "DejaVu Sans"), size: $if(fontsize)$$fontsize$$else$9pt$endif$, lang: $if(lang)$$lang$$else$en$endif$) +#set page(paper: "a4", margin: $if(margin-top)$($margin-top$,$else$1.5cm,$endif$ $if(margin-bottom)$$margin-bottom$,$else$1.5cm,$endif$ $if(margin-left)$$margin-left$,$else$1.5cm,$endif$ $if(margin-right)$$margin-right,$else$1.5cm$endif$)$else$1.5cm$endif$) +$if(number-sections)$#set heading(numbering: "1.")$endif$ + +$for(include-before)$ +$include-before$ + +$endfor$ + +$body$ + +$for(include-after)$ +$include-after$ + +$endfor$ + +$if(quotes)$#show link.label => { box(text(str: #quotes.open) + content + text(str: #quotes.close)) }$endif$ diff --git a/docs/pdf-output/docs/hyprland-keybindings.pdf b/docs/pdf-output/docs/hyprland-keybindings.pdf new file mode 100644 index 0000000..f26d579 Binary files /dev/null and b/docs/pdf-output/docs/hyprland-keybindings.pdf differ diff --git a/docs/yazi-cheatsheet.md b/docs/yazi-cheatsheet.md index d4edd8f..a27f709 100644 --- a/docs/yazi-cheatsheet.md +++ b/docs/yazi-cheatsheet.md @@ -1,218 +1,167 @@ -# Yazi v26.5.6 - Cheatsheet & Daily Usage Tricks +--- +title: "Yazi v26.5.6 Cheatsheet" +author: "mw-pfeddersheim-workstation" +date: "May 2026" +--- -Version: 26.5.6 (Arch Linux 2026-05-10) | Rust-based terminal file manager -Config: ~/.config/yazi/ (keymap.toml, yazi.toml, theme.toml, init.lua) +# Yazi Cheatsheet -============================================================ -QUICK START -============================================================ - yazi # launch - y # shell wrapper (cd persists on exit) - q # quit (cwd applied) - Q # quit without changing cwd - F1 or ~ # show help / keybindings +**Version:** 26.5.6 (Arch Linux 2026-05-10) **Config:** `~/.config/yazi/` -============================================================ -NAVIGATION (essential) -============================================================ - h parent directory - l enter dir / open hovered file - j / k down / up - H / L history back / forward - Enter open file - o open file (alternative) - Tab toggle file details / info - . toggle hidden files - ~ jump to home - / search forward - ? search backward - n / N next / previous match - f interactive filter (fuzzy) - S search with fd - g g go to top - G go to bottom +## Quick Start -============================================================ -FILE OPERATIONS -============================================================ - Space toggle selection (multi-select) - v visual mode (range select) - Ctrl+A select all - Esc clear selection - y yank / copy - p paste - X cut - x undo cut - D delete to trash - Shift+D permanent delete - a create new file - Shift+A create new directory - R rename - Shift+R bulk rename (opens editor) - O "Open with..." menu +| Key | Action | +|-----|--------| +| `yazi` | Launch Yazi | +| `y` | Shell wrapper (cd persists on exit) | +| `q` | Quit normal (apply cwd) | +| `Q` | Quit without cwd change | +| `F1` | Show help | -============================================================ -TABS -============================================================ - t new tab - 1-9 switch to tab N - [ / ] previous / next tab - W close current tab +## Navigation -============================================================ -SORTING -============================================================ - , m sort by modified (mtime) - , M sort by modified (reverse) - , c sort by created - , C sort by created (reverse) - , e sort by extension - , E sort by extension (reverse) - , a sort alphabetically - , A sort alphabetically (reverse) - , s sort by size - , S sort by size (reverse) +| Key | Action | +|-----|--------| +| `h` | Parent directory | +| `l` | Enter dir / open file | +| `j` / `k` | Down / Up | +| `H` / `L` | History back / forward | +| `Enter` | Open hovered file | +| `Tab` | Toggle file details | +| `.` | Toggle hidden files | +| `~` | Home directory (DE: Shift+^+Space) | +| `g g` | Go to top | +| `G` | Go to bottom | -============================================================ -SHELL & COMMANDS -============================================================ - ! drop into $SHELL here (block) - : command line (yazi internal commands) - Ctrl+S run an arbitrary shell command +## Search -============================================================ -PLUGIN EMIT COMMANDS (used with : or ya emit) -============================================================ - :cd change directory - :reveal reveal a file in its parent dir - :tab_create open new tab - :tab_switch switch to tab N - :quit quit - :yank yank selected - :paste paste yanked - :remove delete to trash - :rename rename hovered - :shell run shell command +| Key | Action | +|-----|--------| +| `/` | Search forward | +| `?` | Search backward | +| `n` / `N` | Next / previous match | +| `f` | Interactive filter (fuzzy) | +| `S` | Search with fd | -============================================================ -CONFIGURATION (key files) -============================================================ - keymap.toml custom keybindings - yazi.toml behavior, previewers, open rules - theme.toml colors, UI theme - init.lua Lua startup script (plugins, status bar tweaks) - ~/.config/yazi/plugins/ plugin directory +## File Operations -============================================================ -POWER TRICKS & BEST PRACTICES -============================================================ +| Key | Action | +|-----|--------| +| `Space` | Toggle selection | +| `v` | Visual mode range select | +| `Ctrl+A` | Select all | +| `Esc` | Clear selection | +| `y` | Yank (copy) | +| `p` | Paste | +| `X` | Cut | +| `x` | Undo cut | +| `D` | Delete to trash | +| `Shift+D` | Permanent delete | +| `a` | New file | +| `Shift+A` | New directory | +| `R` | Rename | +| `Shift+R` | Bulk rename | +| `O` | "Open with..." menu | -1. Shell Wrapper (cd persistence) - Use the `y` wrapper script instead of raw `yazi` so your shell - `cd`s into the directory you navigated to on exit. - Install: https://yazi-rs.github.io/docs/quick-start/#shell-wrapper +## Sorting (comma prefix) -2. Open files in default apps (xdg-open) - Add to yazi.toml: - [[opener.system_default]] - run = "xdg-open \"$1\"" - for = "linux" - desc = "System Default" - [[open.rules]] - name = "*" - use = ["system_default"] +| Key | Action | +|-----|--------| +| `, m` | Modified (newest) | +| `, M` | Modified reverse | +| `, c` | Created (newest) | +| `, C` | Created reverse | +| `, e` | Extension (alpha) | +| `, a` | Alphabetic | +| `, s` | Size (largest) | +| `, S` | Size (smallest, reverse) | -3. Drop to shell from anywhere - Add to keymap.toml: - [[mgr.prepend_keymap]] - on = "!" - for = "unix" - run = 'shell "$SHELL" --block' - desc = "Open $SHELL here" +## Tabs -4. Close input with single Esc (no Vi mode) - [[input.prepend_keymap]] - on = "" - run = "close" - desc = "Cancel input" +| Key | Action | +|-----|--------| +| `t` | New tab | +| `1` ... `9` | Switch to tab | +| `[` / `]` | Prev / next tab | +| `W` | Close tab | -5. Copy to system clipboard on yank (Wayland) - [[mgr.prepend_keymap]] - on = "y" - run = [ 'shell -- for path in %s; do echo "file://$path"; done | wl-copy -t text/uri-list', "yank" ] +## Shell & Commands -6. cd to Git repo root - [[mgr.prepend_keymap]] - on = ["g", "r"] - run = 'shell -- ya emit cd "$(git rev-parse --show-toplevel)"' +| Key | Action | +|-----|--------| +| `!` | Drop into shell here | +| `:` | Command line | +| `Ctrl+S` | Run shell command | -7. Smart tab - create tab + enter hovered dir - Save plugin: ~/.config/yazi/plugins/smart-tab.yazi/main.lua - --- @sync entry - return { entry = function() - local h = cx.active.current.hovered - ya.emit("tab_create", h and h.cha.is_dir and { h.url } or { current = true }) - end } - Bind in keymap.toml: - [[mgr.prepend_keymap]] - on = ["t", "t"] run = "plugin smart-tab" +## Emit Commands (`:` prefix) -8. Performance: disable unnecessary image previews - If you don't need image previews, disable them: - [plugin] - preloaders = [] - previewers = [] - Or for network mounts only: - [[plugin.prepend_preloaders]] - url = "/remote/**" - run = "noop" +| Command | Action | +|---------|--------| +| `:cd ` | Change directory | +| `:reveal` | Reveal file in parent dir | +| `:tab_create` | Open new tab | +| `:tab_switch N` | Switch to tab N | +| `:quit` | Quit Yazi | +| `:yank` | Yank selected | +| `:paste` | Paste yanked | +| `:remove` | Trash | +| `:rename` | Rename hovered | +| `:shell ` | Run shell command | -9. Show username+hostname in header (init.lua) - Header:children_add(function() - if ya.target_family() ~= "unix" then return "" end - return ui.Span(ya.user_name().."@"..ya.host_name()..":"):fg("blue") - end, 500, Header.LEFT) +## Power Tricks -10. Show symlink target in status bar (init.lua) - Status:children_add(function(self) - local h = self._current.hovered - if h and h.link_to then - return " -> "..tostring(h.link_to) else return "" - end - end, 3300, Status.LEFT) +### 1. Shell Wrapper (cd persists) +Use the `y` wrapper instead of raw `yazi` so your shell cds into the directory you navigated to on exit. -============================================================ -PLUGINS WORTH INSTALLING (yazi-rs/plugins) -============================================================ - full-border.yazi full panel borders - smart-enter.yazi open files or enter dirs with one key - smart-paste.yazi paste without entering directory - toggle-pane.yazi maximize/hide preview pane - confirm-quit.yazi confirm quit when tabs are open - no-status.yazi hide status bar for minimal UI - mime-ext.yazi fast extension-based mime detection - chmod.yazi change file permissions - 7zip.yazi archive support - zoxide.yazi zoxide integration for jump history +### 2. Clipboard on Yank (Wayland) +Bind `y` in `keymap.toml` to `wl-copy -t text/uri-list` then yank for system clipboard integration. -============================================================ -DDS (Data Distribution Service) EVENTS -============================================================ - Yazi broadcasts events via DDS socket for inter-process comms: - cd directory changed - hover file hovered - yank files yanked - bulk bulk rename in progress - Use DDS to build custom integrations (e.g. folder-specific rules). +### 3. Git Root Jump +Bind `g r` to `ya emit cd "$(git rev-parse --show-toplevel)"` -============================================================ -DAILY DRILL (memorization order) -============================================================ - j/k move | l enter | h back - Space select | y copy | p paste | X cut - D delete | R rename | a create | . hidden - / search | f filter | g g top | G bottom - t tab | 1-9 switch | ! shell | q quit +### 4. Escape Closes Input +In `keymap.toml` input section: map `Esc` to `close` (skip vim mode). -============================================================ -Generated 2026-05-21 | Sources: yazi-rs.github.io/docs, official tips page \ No newline at end of file +### 5. Disable Image Previews +In `yazi.toml` `plugin` section: `preloaders = []` and `previewers = []`. +For network mounts: `url = /remote/** run = noop`. + +### 6. Hostname in Header +In `init.lua`: `Header:children_add` with `user_name()` + `host_name()` spans. + +### 7. Show Symlink Target in Status Bar +In `init.lua`: `Status:children_add` with `h.link_to`. + +## Configuration Files + +| File | Purpose | +|------|---------| +| `keymap.toml` | Custom key bindings | +| `yazi.toml` | Behavior, preview rules, openers | +| `theme.toml` | Colors and UI theme | +| `init.lua` | Lua startup script | +| `plugins/` | Plugin directory | + +## Recommended Plugins + +| Plugin | Purpose | +|--------|---------| +| `smart-enter` | One key: open file or enter dir | +| `smart-paste` | Paste without entering dir | +| `smart-tab` | New tab + enter hovered dir | +| `toggle-pane` | Maximize / hide preview pane | +| `full-border` | Full panel borders | +| `confirm-quit` | Confirm on multi-tab | +| `zoxide` | Zoxide dir jumping | +| `chmod` | Change file permissions | + +## Daily Drill + +| Area | Keys | +|------|------| +| **Nav** | `j/k` move / `l` enter / `h` back | +| **Files** | `Space` select / `y` copy / `p` paste / `X` cut | +| **Delete** | `D` trash / `R` rename / `a` create | +| **Search** | `/` search / `f` filter / `g` top / `G` bottom | +| **Tabs** | `t` new / `1-9` switch / `W` close | +| **Misc** | `!` shell / `q` quit / `F1` help | diff --git a/quarto.yml b/quarto.yml new file mode 100644 index 0000000..3319d41 --- /dev/null +++ b/quarto.yml @@ -0,0 +1,22 @@ +# quarto.yml - Batch PDF conversion config +# Use: quarto render docs/*.md --to typst-pdf +# Or: quarto render docs/md-to-pdf-combo.md --to typst-pdf + +project: + type: default + output-dir: "./docs/pdf-output" + +format: + typst-pdf: + default: true + toc: false + number-sections: true + mainfont: "Inter" + monofont: "JetBrains Mono" + fontsize: 9pt + papersize: a4 + margin: + top: 1.5cm + bottom: 1.5cm + left: 1.5cm + right: 1.5cm \ No newline at end of file diff --git a/scripts/batch-pdf.sh b/scripts/batch-pdf.sh new file mode 100755 index 0000000..3a0a932 --- /dev/null +++ b/scripts/batch-pdf.sh @@ -0,0 +1,72 @@ +#!/usr/bin/env bash +# batch-pdf.sh - Convert all Markdown docs to professional PDFs via Pandoc + WeasyPrint +# Usage: bash scripts/batch-pdf.sh [directory] +# Default directory: docs/ +# +# Pipeline: pandoc md → HTML → weasyprint CSS → PDF +# Requires: pandoc, weasyprint, CSS file at docs/pdf-comparison/cheatsheet.css + +set -euo pipefail + +PROJ_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +CSS_PATH="${PROJ_ROOT}/docs/pdf-comparison/cheatsheet.css" +DOC_DIR="${1:-${PROJ_ROOT}/docs}" +OUTPUT_DIR="${PROJ_ROOT}/docs/pdf-output" + +# Verify dependencies +for cmd in pandoc weasyprint; do + command -v "$cmd" &>/dev/null || { echo "ERROR: $cmd not found. Install: sudo pacman -S $cmd"; exit 1; } +done +[[ -f "$CSS_PATH" ]] || { echo "ERROR: CSS not found at $CSS_PATH"; exit 1; } + +mkdir -p "${OUTPUT_DIR}" +count=0 +errors=0 +tmpdir=$(mktemp -d) + +echo "=== Markdown → PDF Batch (Pandoc + WeasyPrint + CSS) ===" +echo "CSS: ${CSS_PATH}" +echo "Input: ${DOC_DIR}" +echo "Output: ${OUTPUT_DIR}" +echo "" + +find "${DOC_DIR}" -name "*.md" -not -path "*/pdf-output/*" -not -path "*/.*" -not -name "hyprland-keybindings-no-meta.md" | sort | while read -r md_file; do + rel_path="${md_file#${DOC_DIR}/}" + rel_dir="$(dirname "${rel_path#${DOC_DIR#${PROJ_ROOT}/}/}")" + basename="$(basename "${md_file}" .md)" + title="${basename//-/ }" + + out_subdir="${OUTPUT_DIR}" + if [[ "${rel_dir}" != "." && -n "${rel_dir}" ]]; then + out_subdir="${OUTPUT_DIR}/${rel_dir}" + fi + mkdir -p "${out_subdir}" + + html_file="${tmpdir}/${basename}.html" + pdf_file="${out_subdir}/${basename}.pdf" + + echo " ${rel_path} ..." + + pandoc "${md_file}" -t html5 --standalone \ + --css "file://${CSS_PATH}" \ + --metadata title="${title}" \ + -o "${html_file}" 2>&1 || { echo " PANDOC ERROR"; errors=$((errors+1)); continue; } + + weasyprint "${html_file}" "${pdf_file}" 2>/dev/null || \ + weasyprint "${html_file}" "${pdf_file}" 2>&1 | head -1 + + if [[ -f "${pdf_file}" ]]; then + size=$(du -h "${pdf_file}" | cut -f1) + echo " OK (${size})" + count=$((count + 1)) + else + echo " PDF GENERATION ERROR" + errors=$((errors + 1)) + fi +done + +rm -rf "${tmpdir}" + +echo "" +done_count=$(find "${OUTPUT_DIR}" -name "*.pdf" | wc -l) +echo "=== Done: ${done_count} files in ${OUTPUT_DIR} ==="