Generated banner for Clean Minimal Beige Light Mode
Generated logo for Clean Minimal Beige Light Mode

Clean Minimal Beige Light Mode

Meng ToCommunityCreated by Meng To

  • Skill
  • Guidelines
  • Design and creative
  • MIT
  • Medium risk

From the author

Create a clean minimal beige light-mode design system with warm neutral shells, quiet process grids, restrained accent color, and elegant low-contrast structure.
— the description by Meng To

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

This skill provides a comprehensive design framework for building clean, minimal, and process-oriented interfaces using a warm beige color palette. It moves away from standard cold white SaaS aesthetics, focusing instead on layered neutral surfaces, restrained accent usage, and low-contrast structural elements to create a premium, organized, and calm user experience.

What it does

  • Defines a warm neutral color palette using beige, stone, and cream tones.
  • Provides structural guidance for modular grids and framed application shells.
  • Establishes rules for restrained accent color usage in UI components.
  • Offers typography and motion guidelines for a modern, readable, and subtle interface.
  • Sets clear boundaries to avoid common pitfalls like high-contrast clutter or overly decorative textures.

When to use it

  • When you need to design a product interface that feels calm and premium rather than purely functional.
  • When moving away from standard stark white or cold gray enterprise UI patterns.
  • When building structured, process-oriented layouts that require high organization without visual noise.
  • When you want to implement a consistent, minimal design system across hero sections, cards, and navigation.

Advantages

  • Creates a distinct, sophisticated visual identity through warm neutral layering.
  • Reduces visual fatigue by prioritizing low-contrast, balanced structural elements.
  • Promotes a disciplined approach to UI design by limiting decorative flourishes.
  • Ensures a consistent look and feel across complex product modules and process grids.

Usage examples

“Apply the beige light-mode system to a new landing page design.”
The agent will generate a layout using a warm beige background, a centered hero section, and a modular grid, ensuring all elements adhere to the minimal, low-contrast aesthetic.
“How should I style my dashboard cards using the beige design system?”
The agent will provide instructions on using thin borders, subtle tonal separation, and restrained accent colors to keep the cards feeling light and organized.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/mengto/clean-minimal-beige-light-mode/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip clean-minimal-beige-light-mode.zip -d .agents/skills

Documentation by Meng To

Clean Minimal Beige Light Mode Skill

Use When

  • Create a clean minimal beige light-mode design system with warm neutral shells, quiet process grids, restrained accent color, and elegant low-contrast structure.

Workflow

Scope

  • Apply this as a full design-system direction across page background, hero, shell, grid modules, cards, buttons, and motion.

  • Use it when the interface should feel light, calm, premium, and process-oriented, with warm beige neutrals instead of cold white enterprise UI.

  • This is not generic bright SaaS and not an ornate paper system. It should stay clean, minimal, and quietly operational.

Visual target

  • Build the page on layered beige, stone, cream, and off-white surfaces with very low-contrast borders and subtle tonal separation.

  • Use a centered master container or framed application shell that holds the experience together in a precise but understated way.

  • Pair a simple centered hero with a modular lower information grid or process layout made of evenly divided blocks.

  • Keep accent color sparse and purposeful, used only for key badges, active indicators, progress, or primary action states.

  • Let the design feel highly organized and premium without relying on strong shadows, loud gradients, or heavy decorative effects.

Implementation guidance

  • Prefer warm neutral backgrounds with a gentle radial or painted wash behind the main UI rather than flat plain white.

  • Use thin borders, soft dividers, and restrained panel contrast to create hierarchy between sections and cards.

  • Organize lower content into a rigid modular grid with equal columns, calm labels, short descriptions, and simple functional mock components.

  • Buttons and pills should feel light, refined, and understated, using soft fills, tiny radius or low-radius corners, and subtle border treatment.

  • Typography should remain modern and readable: clean sans-serif, modest weight contrast, quiet tracking, and balanced spacing.

  • Motion should be subtle and clean: masked text reveals, mild fade-ins, and gentle background drift are enough.

  • Large warm neutral hero with centered heading, small badge, and minimal CTA stack.

  • Framed app shell or product block using light beige backgrounds and thin internal dividers.

  • Process columns or modular info panels with consistent heights and restrained descriptive content.

  • Small dark or tinted inset cards used sparingly as contrast moments within a mostly light composition.

  • Tiny status dots, low-key progress bars, and minimal approval or routing cards that communicate process without clutter.

Tuning knobs

  • Beige warmth: shift from cooler stone to warmer parchment depending on brand mood.

  • Contrast level: keep enough separation between shells and panels to feel crisp, but avoid harsh black-on-white jumps.

  • Accent intensity: use the accent as a signal color only, not as a dominant palette driver.

  • Grid density: make the modular lower section information-rich but still breathable.

  • Surface softness: allow slight softness in shadows and gradients, but keep the overall result disciplined and minimal.

Avoid

  • Stark white SaaS layouts with cold gray borders and no warmth.

  • Overdecorated paper textures, vintage distressing, or ornate editorial flourishes.

  • Heavy shadows, high-saturation accents, or thick cards that break the quiet minimal tone.

  • Filling every module with too much content until the process grid feels noisy.

  • Turning the design into a dashboard-heavy system instead of a calm structured product presentation.

Files

demo/index.html

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="neuform-sandboxed-demo" content="1">
  <meta http-equiv="Content-Security-Policy" content="default-src 'none'; connect-src 'self'; frame-src 'self'; script-src 'unsafe-inline'; style-src 'unsafe-inline'; base-uri 'none'; form-action 'none'; object-src 'none'">
  <title>Sandboxed Neuform demo</title>
  <style>
    html, body, iframe { width: 100%; height: 100%; margin: 0; border: 0; }
    body { overflow: hidden; background: #0b0b0b; }
    iframe { display: block; background: white; }
    .error { box-sizing: border-box; min-height: 100%; padding: 32px; color: #fff; font: 16px/1.5 system-ui, sans-serif; }
  </style>
</head>
<body>
  <iframe id="neuform-demo" title="Sandboxed Neuform design demo" sandbox="allow-scripts" referrerpolicy="no-referrer"></iframe>
  <script>
    const encodedHtml = "PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtU2VjdXJpdHktUG9saWN5IiBjb250ZW50PSJkZWZhdWx0LXNyYyAnbm9uZSc7IGJhc2UtdXJpICdub25lJzsgY29ubmVjdC1zcmMgJ25vbmUnOyBmb250LXNyYyBkYXRhOiBodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tOyBmb3JtLWFjdGlvbiAnbm9uZSc7IGZyYW1lLXNyYyAnbm9uZSc7IGltZy1zcmMgYmxvYjo7IG1lZGlhLXNyYyBibG9iOjsgbmF2aWdhdGUtdG8gJ25vbmUnOyBvYmplY3Qtc3JjICdub25lJzsgc2NyaXB0LXNyYyAndW5zYWZlLWlubGluZScgX19ORVVGT1JNX1JVTlRJTUVfU09VUkNFU19fOyBzdHlsZS1zcmMgJ3Vuc2FmZS1pbmxpbmUnIGh0dHBzOi8vYXBpLmZvbnRzaGFyZS5jb20gaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbTsgd29ya2VyLXNyYyAnbm9uZSciPgo8c2NyaXB0IGRhdGEtbmV1Zm9ybS1hc3NldC1ib290c3RyYXA+CigoKSA9PiB7CiAgbGV0IHJlY2VpdmVkID0gZmFsc2U7CiAgY29uc3Qgb2JqZWN0VXJscyA9IFtdOwogIGNvbnN0IHJlcGxhY2VBbGwgPSAodmFsdWUsIHJlcGxhY2VtZW50cykgPT4gewogICAgbGV0IG5leHQgPSBTdHJpbmcodmFsdWUgfHwgIiIpOwogICAgZm9yIChjb25zdCBbZmlsZSwgb2JqZWN0VXJsXSBvZiByZXBsYWNlbWVudHMpIG5leHQgPSBuZXh0LnNwbGl0KGZpbGUpLmpvaW4ob2JqZWN0VXJsKTsKICAgIHJldHVybiBuZXh0OwogIH07CiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCAoZXZlbnQpID0+IHsKICAgIGlmIChyZWNlaXZlZCB8fCBldmVudC5zb3VyY2UgIT09IHBhcmVudCB8fCBldmVudC5kYXRhPy50eXBlICE9PSAibmV1Zm9ybS1hc3NldHMtdjEiKSByZXR1cm47CiAgICByZWNlaXZlZCA9IHRydWU7CiAgICBjb25zdCByZXBsYWNlbWVudHMgPSBbXTsKICAgIGZvciAoY29uc3QgYXNzZXQgb2YgZXZlbnQuZGF0YS5hc3NldHMgfHwgW10pIHsKICAgICAgaWYgKCFhc3NldCB8fCB0eXBlb2YgYXNzZXQuZmlsZSAhPT0gInN0cmluZyIgfHwgdHlwZW9mIGFzc2V0LmJhc2U2NCAhPT0gInN0cmluZyIpIGNvbnRpbnVlOwogICAgICBjb25zdCBiaW5hcnkgPSBhdG9iKGFzc2V0LmJhc2U2NCk7CiAgICAgIGNvbnN0IGJ5dGVzID0gVWludDhBcnJheS5mcm9tKGJpbmFyeSwgKGNoYXJhY3RlcikgPT4gY2hhcmFjdGVyLmNoYXJDb2RlQXQoMCkpOwogICAgICBjb25zdCBvYmplY3RVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtieXRlc10sIHsgdHlwZTogYXNzZXQuY29udGVudFR5cGUgfHwgImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIgfSkpOwogICAgICBvYmplY3RVcmxzLnB1c2gob2JqZWN0VXJsKTsKICAgICAgcmVwbGFjZW1lbnRzLnB1c2goW2Fzc2V0LmZpbGUsIG9iamVjdFVybF0pOwogICAgfQogICAgZm9yIChjb25zdCBlbGVtZW50IG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSkgewogICAgICBmb3IgKGNvbnN0IG5hbWUgb2YgWyJzcmMiLCAicG9zdGVyIiwgInNyY3NldCIsICJzdHlsZSJdKSB7CiAgICAgICAgY29uc3QgdmFsdWUgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShuYW1lKTsKICAgICAgICBpZiAodmFsdWUpIGVsZW1lbnQuc2V0QXR0cmlidXRlKG5hbWUsIHJlcGxhY2VBbGwodmFsdWUsIHJlcGxhY2VtZW50cykpOwogICAgICB9CiAgICB9CiAgICBmb3IgKGNvbnN0IHN0eWxlIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInN0eWxlIikpIHsKICAgICAgc3R5bGUudGV4dENvbnRlbnQgPSByZXBsYWNlQWxsKHN0eWxlLnRleHRDb250ZW50LCByZXBsYWNlbWVudHMpOwogICAgfQogIH0pOwogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlaGlkZSIsICgpID0+IHsKICAgIGZvciAoY29uc3Qgb2JqZWN0VXJsIG9mIG9iamVjdFVybHMpIFVSTC5yZXZva2VPYmplY3RVUkwob2JqZWN0VXJsKTsKICB9LCB7IG9uY2U6IHRydWUgfSk7Cn0pKCk7Cjwvc2NyaXB0PgoKPG1ldGEgY2hhcnNldD0iVVRGLTgiIC8+CiAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiIC8+CiAgPHRpdGxlPk1lbnRvckJyaWRnZSDigJQgRmluZCBhIG1lbnRvciB0byBoZWxwIHlvdSBncm93IHlvdXIgY2FyZWVyPC90aXRsZT4KICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iTWVudG9yQnJpZGdlIGNvbm5lY3RzIHN0dWRlbnRzIGFuZCBqdW5pb3IgcHJvZmVzc2lvbmFscyBpbiBDZW50cmFsIEFzaWEgd2l0aCB0cnVzdGVkIG1lbnRvcnMgaW4gSVQsIGRlc2lnbiwgbWFya2V0aW5nLCBidXNpbmVzcywgYW5kIEVuZ2xpc2guIiAvPgogIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9hc3NldHMvcnVudGltZS9ydW50aW1lLWNjYzg4OTRiMzQxOC1ydW50aW1lLmpzIj48L3NjcmlwdD4KICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vYXNzZXRzL3J1bnRpbWUvcnVudGltZS0xNjNlYmQwODdjZmMtaWNvbmlmeS1pY29uLW1pbi5qcyI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2Fzc2V0cy9ydW50aW1lL3J1bnRpbWUtY2I5YzYyNjJiZGQ3LWdzYXAtbWluLmpzIj48L3NjcmlwdD4KICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vYXNzZXRzL3J1bnRpbWUvcnVudGltZS0zNmMyOWMwMjgxNTgtc2Nyb2xsdHJpZ2dlci1taW4uanMiPjwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5IGNsYXNzPSJiZy1bI2Y1ZWZlNl0gdGV4dC1bIzFmMWIxNl0gYW50aWFsaWFzZWQgc2VsZWN0aW9uOmJnLVsjZDdjMmFiXSBzZWxlY3Rpb246dGV4dC1bIzFmMWIxNl0iIHN0eWxlPSJmb250LWZhbWlseTogSW50ZXIsIHVpLXNhbnMtc2VyaWYsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCBzYW5zLXNlcmlmOyBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AsIHJnYmEoMjM3LDIyOCwyMTQsMC45KSAwJSwgcmdiYSgyNDUsMjM5LDIzMCwxKSA0MiUsIHJnYmEoMjQxLDIzNCwyMjMsMSkgMTAwJSk7Ij4KICA8Y2FudmFzIGlkPSJiZy1jYW52YXMiIGNsYXNzPSJmaXhlZCB0b3AtMCBsZWZ0LTAgdy1zY3JlZW4gaC1zY3JlZW4gLXotMTAgcG9pbnRlci1ldmVudHMtbm9uZSBvcGFjaXR5LTQwIj48L2NhbnZhcz4KCiAgPGRpdiBjbGFzcz0iZml4ZWQgaW5zZXQteS0wIGxlZnQtMS8yIGhpZGRlbiB3LWZ1bGwgbWF4LXctN3hsIC10cmFuc2xhdGUteC0xLzIgbGc6YmxvY2sgcG9pbnRlci1ldmVudHMtbm9uZSI+CiAgICA8ZGl2IGNsYXNzPSJhYnNvbHV0ZSBpbnNldC15LTAgbGVmdC0wIHctcHggYmctWyNkOGNlYmZdIj48L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIGluc2V0LXktMCByaWdodC0wIHctcHggYmctWyNkOGNlYmZdIj48L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIGxlZnQtMCB0b3AtMjQgaC0yIHctMiAtdHJhbnNsYXRlLXgtMS8yIHJvdW5kZWQtc20gYm9yZGVyIGJvcmRlci1bI2M5YmNhYV0gYmctWyNmOGYzZWJdIj48L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIHJpZ2h0LTAgdG9wLTI0IGgtMiB3LTIgdHJhbnNsYXRlLXgtMS8yIHJvdW5kZWQtc20gYm9yZGVyIGJvcmRlci1bI2M5YmNhYV0gYmctWyNmOGYzZWJdIj48L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIGxlZnQtMCBib3R0b20tMjQgaC0yIHctMiAtdHJhbnNsYXRlLXgtMS8yIHJvdW5kZWQtc20gYm9yZGVyIGJvcmRlci1bI2M5YmNhYV0gYmctWyNmOGYzZWJdIj48L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIHJpZ2h0LTAgYm90dG9tLTI0IGgtMiB3LTIgdHJhbnNsYXRlLXgtMS8yIHJvdW5kZWQtc20gYm9yZGVyIGJvcmRlci1bI2M5YmNhYV0gYmctWyNmOGYzZWJdIj48L2Rpdj4KICA8L2Rpdj4KCiAgPGhlYWRlciBjbGFzcz0ic3RpY2t5IHRvcC0wIHotNDAgYm9yZGVyLWIgYm9yZGVyLVsjZGRkMmMyXS84MCBiYWNrZHJvcC1ibHVyLXhsIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNDUsMjM5LDIzMCwwLjc4KTsiPgogICAgPGRpdiBjbGFzcz0ibXgtYXV0byBmbGV4IG1heC13LTd4bCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIHB4LTQgcHktNCBzbTpweC02IGxnOnB4LTgiPgogICAgICA8YSBocmVmPSIjdG9wIiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMiIGFyaWEtbGFiZWw9Ik1lbnRvckJyaWRnZSBob21lIj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmxleCBoLTEwIHctMTAgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQteGwgYm9yZGVyIGJvcmRlci1bI2Q3Y2JiYl0iIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjZjlmNGVjIDAlLCAjZWZlNWQ3IDEwMCUpOyI+CiAgICAgICAgICA8c3BhbiBjbGFzcz0icmVsYXRpdmUgaC01IHctNSI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhYnNvbHV0ZSBsZWZ0LTAgdG9wLTEvMiBoLTIuNSB3LTIuNSAtdHJhbnNsYXRlLXktMS8yIHJvdW5kZWQtZnVsbCBiZy1bIzJmM2EyZl0iPjwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFic29sdXRlIHJpZ2h0LTAgdG9wLTAgaC0yLjUgdy0yLjUgcm91bmRlZC1mdWxsIGJnLVsjOGE1YTM3XSI+PC9zcGFuPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYWJzb2x1dGUgbGVmdC0xLjUgdG9wLTIgaC0yIHctMiByb3VuZGVkLWZ1bGwgYmctWyNjNTlhNzFdIj48L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhYnNvbHV0ZSBsZWZ0LTEuNSB0b3AtWzAuNDVyZW1dIGgtcHggdy0yLjUgcm90YXRlLVsyNGRlZ10gYmctWyM2ZTdhNjddIj48L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhYnNvbHV0ZSBsZWZ0LTEuNSB0b3AtWzAuNTVyZW1dIGgtcHggdy0yLjUgcm90YXRlLVstMjJkZWddIGJnLVsjNmU3YTY3XSI+PC9zcGFuPgogICAgICAgICAgPC9zcGFuPgogICAgICAgIDwvc3Bhbj4KICAgICAgICA8ZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+TWVudG9yQnJpZGdlPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM3ZTczNjVdIj5DZW50cmFsIEFzaWEgbWVudG9yc2hpcCBtYXJrZXRwbGFjZTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2E+CgogICAgICA8bmF2IGNsYXNzPSJoaWRkZW4gaXRlbXMtY2VudGVyIGdhcC04IG1kOmZsZXgiPgogICAgICAgIDxhIGhyZWY9IiNob3ciIGNsYXNzPSJ0ZXh0LXNtIGZvbnQtbm9ybWFsIHRleHQtWyM1YzUxNDVdIHRyYW5zaXRpb24gaG92ZXI6dGV4dC1bIzFmMWIxNl0iPkhvdyBpdCB3b3JrczwvYT4KICAgICAgICA8YSBocmVmPSIjd2h5IiBjbGFzcz0idGV4dC1zbSBmb250LW5vcm1hbCB0ZXh0LVsjNWM1MTQ1XSB0cmFuc2l0aW9uIGhvdmVyOnRleHQtWyMxZjFiMTZdIj5XaHkgdXM8L2E+CiAgICAgICAgPGEgaHJlZj0iI2NhdGVnb3JpZXMiIGNsYXNzPSJ0ZXh0LXNtIGZvbnQtbm9ybWFsIHRleHQtWyM1YzUxNDVdIHRyYW5zaXRpb24gaG92ZXI6dGV4dC1bIzFmMWIxNl0iPkNhdGVnb3JpZXM8L2E+CiAgICAgICAgPGEgaHJlZj0iI3Rlc3RpbW9uaWFscyIgY2xhc3M9InRleHQtc20gZm9udC1ub3JtYWwgdGV4dC1bIzVjNTE0NV0gdHJhbnNpdGlvbiBob3Zlcjp0ZXh0LVsjMWYxYjE2XSI+U3RvcmllczwvYT4KICAgICAgICA8YSBocmVmPSIjZmFxIiBjbGFzcz0idGV4dC1zbSBmb250LW5vcm1hbCB0ZXh0LVsjNWM1MTQ1XSB0cmFuc2l0aW9uIGhvdmVyOnRleHQtWyMxZjFiMTZdIj5GQVE8L2E+CiAgICAgIDwvbmF2PgoKICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMiPgogICAgICAgIDxhIGhyZWY9IiNtZW50b3ItY3RhIiBjbGFzcz0iaGlkZGVuIHJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZDdjYmJiXSBweC00IHB5LTIgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LVsjMWYxYjE2XSBtZDppbmxpbmUtZmxleCIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LDI1NSwyNTUsMC42KSAwJSwgcmdiYSgyNDQsMjM2LDIyNSwwLjgpIDEwMCUpOyI+QmVjb21lIGEgbWVudG9yPC9hPgogICAgICAgIDxhIGhyZWY9IiNoZXJvLWN0YSIgY2xhc3M9ImlubGluZS1mbGV4IHJvdW5kZWQtZnVsbCBweC00IHB5LTIgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LVsjZjhmNGVkXSIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZTNhMmYgMCUsICM1YzM4MjIgMTAwJSk7Ij5GaW5kIGEgbWVudG9yPC9hPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvaGVhZGVyPgoKICA8bWFpbiBpZD0idG9wIj4KICAgIDxzZWN0aW9uIGNsYXNzPSJyZWxhdGl2ZSBvdmVyZmxvdy1oaWRkZW4iPgogICAgICA8ZGl2IGNsYXNzPSJteC1hdXRvIG1heC13LTd4bCBweC00IHB0LTE2IHBiLTEyIHNtOnB4LTYgc206cHQtMjAgbGc6cHgtOCBsZzpwdC0yNCBsZzpwYi0yMCI+CiAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC1bMnJlbV0gYm9yZGVyIGJvcmRlci1bI2Q5Y2ZiZl0gcC00IHNtOnAtNiBsZzpwLTgiIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1MCwyNDYsMjM5LDAuOTIpIDAlLCByZ2JhKDI0NSwyMzksMjMwLDAuODYpIDEwMCUpOyBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsMC43NSksIDAgMXB4IDAgcmdiYSgxMTQsOTMsNzIsMC4wNCk7Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgaXRlbXMtY2VudGVyIGdhcC0xMCBsZzpncmlkLWNvbHMtMiBsZzpnYXAtMTIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYXgtdy0yeGwiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1iLTUgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGdhcC0yIHJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZGJjZmJmXSBweC0zIHB5LTEuNSB0ZXh0LXhzIGZvbnQtbWVkaXVtIHRleHQtWyM2NjVhNGRdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjQ4KTsiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImgtMS41IHctMS41IHJvdW5kZWQtZnVsbCBiZy1bIzdhOTE2ZF0iPjwvc3Bhbj4KICAgICAgICAgICAgICAgIEJ1aWx0IGZvciByZWFsIHBlb3BsZSBhY3Jvc3MgQ2VudHJhbCBBc2lhCiAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgIDxoMSBjbGFzcz0icmV2ZWFsIHRleHQtNHhsIGZvbnQtc2VtaWJvbGQgbGVhZGluZy10aWdodCB0cmFja2luZy10aWdodCB0ZXh0LVsjMWIxNzEzXSBzbTp0ZXh0LTV4bCBsZzp0ZXh0LTZ4bCI+CiAgICAgICAgICAgICAgICBGaW5kIGEgbWVudG9yIHRvIGhlbHAgeW91IGdyb3cgeW91ciBjYXJlZXIKICAgICAgICAgICAgICA8L2gxPgoKICAgICAgICAgICAgICA8cCBjbGFzcz0ibXQtNSBtYXgtdy14bCB0ZXh0LWJhc2UgZm9udC1ub3JtYWwgbGVhZGluZy03IHRleHQtWyM1YzUxNDVdIHNtOnRleHQtbGciPgogICAgICAgICAgICAgICAgSGFuZHMtb24gbGVhcm5pbmcgZnJvbSBJVCwgZGVzaWduLCBidXNpbmVzcywgYW5kIG1hcmtldGluZyBwcm9mZXNzaW9uYWxzIGluIENlbnRyYWwgQXNpYS4KICAgICAgICAgICAgICA8L3A+CgogICAgICAgICAgICAgIDxkaXYgaWQ9Imhlcm8tY3RhIiBjbGFzcz0ibXQtOCBmbGV4IGZsZXgtY29sIGdhcC0zIHNtOmZsZXgtcm93Ij4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNjYXRlZ29yaWVzIiBjbGFzcz0iaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC0yIHJvdW5kZWQtZnVsbCBweC01IHB5LTMgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LVsjZjhmNGVkXSIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZTNhMmYgMCUsICM1YzM4MjIgMTAwJSk7IGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwwLjE0KTsiPgogICAgICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOnVzZXJzLWdyb3VwLXJvdW5kZWQtbGluZWFyIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHN0eWxlPSJjb2xvcjojZjhmNGVkOyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICAgICAgRmluZCBhIG1lbnRvcgogICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI21lbnRvci1jdGEiIGNsYXNzPSJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZ2FwLTIgcm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIHB4LTUgcHktMyB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtWyMxZjFiMTZdIiBzdHlsZT0iYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsMjU1LDI1NSwwLjcyKSAwJSwgcmdiYSgyNDQsMjM2LDIyNSwwLjk0KSAxMDAlKTsiPgogICAgICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOmhhbmQtbW9uZXktbGluZWFyIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHN0eWxlPSJjb2xvcjojMWYxYjE2OyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICAgICAgQmVjb21lIGEgbWVudG9yCiAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTggZ3JpZCBtYXgtdy1sZyBncmlkLWNvbHMtMyBnYXAtMyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3VuZGVkLTJ4bCBib3JkZXIgYm9yZGVyLVsjZGRkMmMyXSBwLTQiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNDYpOyI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteGwgZm9udC1zZW1pYm9sZCB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+MjAwKzwvZGl2PgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtdC0xIHRleHQteHMgdGV4dC1bIzZiNjA1NF0iPnRydXN0ZWQgbWVudG9yczwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3VuZGVkLTJ4bCBib3JkZXIgYm9yZGVyLVsjZGRkMmMyXSBwLTQiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNDYpOyI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteGwgZm9udC1zZW1pYm9sZCB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+MTUwMCs8L2Rpdj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtMSB0ZXh0LXhzIHRleHQtWyM2YjYwNTRdIj5zdWNjZXNzZnVsIHNlc3Npb25zPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHAtNCIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC40Nik7Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC14bCBmb250LXNlbWlib2xkIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZjFiMTZdIj42PC9kaXY+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTEgdGV4dC14cyB0ZXh0LVsjNmI2MDU0XSI+Y2FyZWVyIGNhdGVnb3JpZXM8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlbGF0aXZlIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYnNvbHV0ZSAtbGVmdC00IC10b3AtNCBoLTI0IHctMjQgcm91bmRlZC1mdWxsIGJsdXItM3hsIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgxOTYsMTYxLDEyMywwLjE4KTsiPjwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFic29sdXRlIC1ib3R0b20tNCAtcmlnaHQtNCBoLTI0IHctMjQgcm91bmRlZC1mdWxsIGJsdXItM3hsIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSg2OSw4OSw3MCwwLjE2KTsiPjwvZGl2PgoKICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWxhdGl2ZSByb3VuZGVkLVsycmVtXSBib3JkZXIgYm9yZGVyLVsjZDZjYWI5XSBwLTMiIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwyNTUsMjU1LDAuNTgpIDAlLCByZ2JhKDI0MSwyMzMsMjIxLDAuOSkgMTAwJSk7Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgZ2FwLTMgbGc6Z3JpZC1jb2xzLVsxLjJmcl8wLjhmcl0iPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJvdmVyZmxvdy1oaWRkZW4gcm91bmRlZC1bMS41cmVtXSBib3JkZXIgYm9yZGVyLVsjZDZjYWI5XSI+CiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImFzc2V0cy9wYWdlLTAxLTMxODZmOWVhLTVmNWEtNDlmNy04ZmNmLTU2OGFkNTJmNTE1ZS0zODQwdy53ZWJwIiBhbHQ9Ik1lbnRvciBhbmQgbWVudGVlIGluIGNvbnZlcnNhdGlvbiIgY2xhc3M9ImgtZnVsbCB3LWZ1bGwgb2JqZWN0LWNvdmVyIiBzdHlsZT0iYXNwZWN0LXJhdGlvOiA0IC8gNTsiIC8+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBmbGV4LWNvbCBnYXAtMyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC1bMS4yNXJlbV0gYm9yZGVyIGJvcmRlci1bI2Q5Y2ViZV0gcC00IiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNDksMjQ0LDIzNiwwLjkyKTsiPgogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM3YjZmNjFdIj5OZXh0IHN0ZXA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtdC0xIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1bIzFmMWIxNl0iPkJvb2sgeW91ciBmaXJzdCAxOjEgc2Vzc2lvbjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InJvdW5kZWQtZnVsbCBweC0yLjUgcHktMSB0ZXh0LXhzIGZvbnQtbWVkaXVtIHRleHQtWyMyZTNhMmZdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgxMDksMTMwLDEwOCwwLjEyKTsiPkxpdmU8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTQgaC0yIHctZnVsbCBvdmVyZmxvdy1oaWRkZW4gcm91bmRlZC1mdWxsIGJnLVsjZWNlMmQzXSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImgtZnVsbCByb3VuZGVkLWZ1bGwiIHN0eWxlPSJ3aWR0aDogNzIlOyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM4YTVhMzcgMCUsICMyZTNhMmYgMTAwJSk7Ij48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3VuZGVkLVsxLjI1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDljZWJlXSBwLTQiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MiwyNDgsMjQxLDAuOTQpOyI+CiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJhc3NldHMvcGFnZS0wMi1lY2E3MDdjYy1hNWI3LTQzOWEtYjRmZC0yNDdmNjEwNmMyZTEtMTYwMHcuanBnIiBhbHQ9Ik1lbnRvciBhdmF0YXIiIGNsYXNzPSJoLTEyIHctMTIgcm91bmRlZC0yeGwgb2JqZWN0LWNvdmVyIiAvPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1bIzFmMWIxNl0iPkFpZGEgUy48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM2ZjYzNTZdIj5Qcm9kdWN0IERlc2lnbmVyIMK3IDcgeWVhcnM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTQgZ3JpZCBncmlkLWNvbHMtMiBnYXAtMiB0ZXh0LXhzIHRleHQtWyM2MjU3NGJdIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC14bCBib3JkZXIgYm9yZGVyLVsjZTFkN2M4XSBwLTMiPlJVIC8gRU4gLyBLWjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3VuZGVkLXhsIGJvcmRlciBib3JkZXItWyNlMWQ3YzhdIHAtMyI+JDE4IC8gc2Vzc2lvbjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtWzEuMjVyZW1dIGJvcmRlciBib3JkZXItWyMzZjM0MmJdLzEwIHAtNCB0ZXh0LVsjZjhmNGVkXSIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZTNhMmYgMCUsICM1YzM4MjIgMTAwJSk7Ij4KICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgdGV4dC1bI2U4ZGFjYl0iPldhcm0sIHByYWN0aWNhbCBndWlkYW5jZTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtMiB0ZXh0LXNtIGZvbnQtbWVkaXVtIj5MZWFybiBmcm9tIHBlb3BsZSB3aG8gdW5kZXJzdGFuZCB5b3VyIGxvY2FsIGNvbnRleHQsIGxhbmd1YWdlLCBhbmQgY2FyZWVyIHBhdGguPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9pbnRlci1ldmVudHMtbm9uZSBhYnNvbHV0ZSBpbnNldC0wIHJvdW5kZWQtWzJyZW1dIiBzdHlsZT0icGFkZGluZzogMXB4OyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDI1NSwyNTUsMjU1LDAuNzIpLCByZ2JhKDE3MywxNTAsMTI3LDAuMzQpLCByZ2JhKDI1NSwyNTUsMjU1LDAuNTIpKTsgLXdlYmtpdC1tYXNrOiBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LCBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApOyAtd2Via2l0LW1hc2stY29tcG9zaXRlOiB4b3I7IG1hc2stY29tcG9zaXRlOiBleGNsdWRlOyI+PC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgoKICAgIDxzZWN0aW9uIGlkPSJob3ciIGNsYXNzPSJweS0xMiBzbTpweS0xNiBsZzpweS0yMCI+CiAgICAgIDxkaXYgY2xhc3M9Im14LWF1dG8gbWF4LXctN3hsIHB4LTQgc206cHgtNiBsZzpweC04Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJtYi0xMCBtYXgtdy0yeGwiPgogICAgICAgICAgPGRpdiBjbGFzcz0ibWItMyB0ZXh0LXhzIGZvbnQtbWVkaXVtIHVwcGVyY2FzZSB0cmFja2luZy1bMC4xOGVtXSB0ZXh0LVsjODQ3NjY2XSI+SG93IGl0IHdvcmtzPC9kaXY+CiAgICAgICAgICA8aDIgY2xhc3M9InJldmVhbCB0ZXh0LTN4bCBmb250LXNlbWlib2xkIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZDE5MTRdIHNtOnRleHQtNHhsIj5TaW1wbGUgc3RlcHMgZnJvbSBjdXJpb3NpdHkgdG8gY29uZmlkZW5jZTwvaDI+CiAgICAgICAgICA8cCBjbGFzcz0ibXQtNCB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNjE1NjRhXSBzbTp0ZXh0LWJhc2UiPkEgY2FsbSwgdHJhbnNwYXJlbnQgcGF0aCB0aGF0IG1ha2VzIG1lbnRvcnNoaXAgZmVlbCBlYXN5IGZyb20gdGhlIHZlcnkgZmlyc3QgY2xpY2suPC9wPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGdhcC00IG1kOmdyaWQtY29scy0zIj4KICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJyb3VuZGVkLVsxLjc1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDljZmJmXSBwLTYiIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1MSwyNDcsMjQwLDAuOSkgMCUsIHJnYmEoMjQ1LDIzOSwyMzAsMC44OCkgMTAwJSk7Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBoLTEyIHctMTIgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjY0KTsiPgogICAgICAgICAgICAgIDxpY29uaWZ5LWljb24gaWNvbj0ic29sYXI6d2lkZ2V0LWFkZC1saW5lYXIiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgc3R5bGU9ImNvbG9yOiM1YzM4MjI7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtNSBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZDljZmJmXSBweC0yLjUgcHktMSB0ZXh0LXhzIHRleHQtWyM2YjYwNTRdIj5TdGVwIDE8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8aDMgY2xhc3M9Im10LTQgdGV4dC1sZyBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+Q2hvb3NlIGEgZmllbGQ8L2gzPgogICAgICAgICAgICA8cCBjbGFzcz0ibXQtMiB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNjI1NzRiXSI+UGljayBVWC9VSSwgcHJvZ3JhbW1pbmcsIG1hcmtldGluZywgYnVzaW5lc3MsIEVuZ2xpc2gsIG9yIGNhcmVlciBncm93dGggYmFzZWQgb24gd2hhdCB5b3Ugd2FudCB0byBpbXByb3ZlIHJpZ2h0IG5vdy48L3A+CiAgICAgICAgICA8L2FydGljbGU+CgogICAgICAgICAgPGFydGljbGUgY2xhc3M9InJvdW5kZWQtWzEuNzVyZW1dIGJvcmRlciBib3JkZXItWyNkOWNmYmZdIHAtNiIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUxLDI0NywyNDAsMC45KSAwJSwgcmdiYSgyNDUsMjM5LDIzMCwwLjg4KSAxMDAlKTsiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGgtMTIgdy0xMiBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC0yeGwgYm9yZGVyIGJvcmRlci1bI2Q3Y2JiYl0iIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNjQpOyI+CiAgICAgICAgICAgICAgPGljb25pZnktaWNvbiBpY29uPSJzb2xhcjp0dW5pbmctMi1saW5lYXIiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgc3R5bGU9ImNvbG9yOiMyZTNhMmY7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtNSBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZDljZmJmXSBweC0yLjUgcHktMSB0ZXh0LXhzIHRleHQtWyM2YjYwNTRdIj5TdGVwIDI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8aDMgY2xhc3M9Im10LTQgdGV4dC1sZyBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+RmluZCBhIG1lbnRvciB3aXRoIGZpbHRlcnM8L2gzPgogICAgICAgICAgICA8cCBjbGFzcz0ibXQtMiB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNjI1NzRiXSI+Q29tcGFyZSBtZW50b3JzIGJ5IGV4cGVyaWVuY2UsIGxhbmd1YWdlLCBhbmQgcHJpY2Ugc28gdGhlIGNob2ljZSBmZWVscyBjbGVhciwgaHVtYW4sIGFuZCByZWxldmFudCB0byB5b3VyIGdvYWxzLjwvcD4KICAgICAgICAgIDwvYXJ0aWNsZT4KCiAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0icm91bmRlZC1bMS43NXJlbV0gYm9yZGVyIGJvcmRlci1bI2Q5Y2ZiZl0gcC02IiBzdHlsZT0iYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTEsMjQ3LDI0MCwwLjkpIDAlLCByZ2JhKDI0NSwyMzksMjMwLDAuODgpIDEwMCUpOyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaC0xMiB3LTEyIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciByb3VuZGVkLTJ4bCBib3JkZXIgYm9yZGVyLVsjZDdjYmJiXSIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC42NCk7Ij4KICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOmNoYXQtcm91bmQtbGluZS1saW5lYXIiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgc3R5bGU9ImNvbG9yOiM1YzM4MjI7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtNSBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZDljZmJmXSBweC0yLjUgcHktMSB0ZXh0LXhzIHRleHQtWyM2YjYwNTRdIj5TdGVwIDM8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8aDMgY2xhc3M9Im10LTQgdGV4dC1sZyBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+U3RhcnQgbGVhcm5pbmcgaW4gMToxIHNlc3Npb25zPC9oMz4KICAgICAgICAgICAgPHAgY2xhc3M9Im10LTIgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYyNTc0Yl0iPkdldCBkaXJlY3QsIHByYWN0aWNhbCBoZWxwIG9ubGluZeKAlHdoZXRoZXIgeW91IG5lZWQgb25lIGNvbnN1bHRhdGlvbiBvciBvbmdvaW5nIG1lbnRvcnNoaXAgYWNyb3NzIHNldmVyYWwgd2Vla3MuPC9wPgogICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8c2VjdGlvbiBpZD0id2h5IiBjbGFzcz0icHktMTIgc206cHktMTYgbGc6cHktMjAiPgogICAgICA8ZGl2IGNsYXNzPSJteC1hdXRvIG1heC13LTd4bCBweC00IHNtOnB4LTYgbGc6cHgtOCI+CiAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZCBnYXAtNCBsZzpncmlkLWNvbHMtWzFmcl8xLjE1ZnJdIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtWzJyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNiBzbTpwLTgiIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1MCwyNDYsMjM5LDAuOTQpIDAlLCByZ2JhKDI0NCwyMzcsMjI2LDAuOTIpIDEwMCUpOyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgZm9udC1tZWRpdW0gdXBwZXJjYXNlIHRyYWNraW5nLVswLjE4ZW1dIHRleHQtWyM4NDc2NjZdIj5XaHkgTWVudG9yQnJpZGdlPC9kaXY+CiAgICAgICAgICAgIDxoMiBjbGFzcz0icmV2ZWFsIG10LTMgdGV4dC0zeGwgZm9udC1zZW1pYm9sZCB0cmFja2luZy10aWdodCB0ZXh0LVsjMWQxOTE0XSBzbTp0ZXh0LTR4bCI+QSBtZW50b3JzaGlwIGV4cGVyaWVuY2UgdGhhdCBmZWVscyBsb2NhbCwgdHJ1c3RlZCwgYW5kIGVhc3kgdG8gc3RhcnQ8L2gyPgogICAgICAgICAgICA8cCBjbGFzcz0ibXQtNCB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNjE1NjRhXSBzbTp0ZXh0LWJhc2UiPgogICAgICAgICAgICAgIFdlIGJlbGlldmUgcmVhbCBncm93dGggaGFwcGVucyB0aHJvdWdoIHBlcnNvbmFsIGNvbm5lY3Rpb24uIFRoYXQgaXMgd2h5IE1lbnRvckJyaWRnZSBmb2N1c2VzIG9uIHRydXN0ZWQgcHJvZmVzc2lvbmFscywgY2xlYXIgZXhwZWN0YXRpb25zLCBhbmQgZ3VpZGFuY2UgdGhhdCBmaXRzIGxpZmUgaW4gQ2VudHJhbCBBc2lhLgogICAgICAgICAgICA8L3A+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtdC04IGdyaWQgZ3JpZC1jb2xzLTIgZ2FwLTMiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHAtNCIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC40KTsiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC0yeGwgZm9udC1zZW1pYm9sZCB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+MjAwKzwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtMSB0ZXh0LXhzIHRleHQtWyM2YjYwNTRdIj5tZW50b3JzIGFjcm9zcyBrZXkgaW5kdXN0cmllczwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHAtNCIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC40KTsiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC0yeGwgZm9udC1zZW1pYm9sZCB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+MTUwMCs8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTEgdGV4dC14cyB0ZXh0LVsjNmI2MDU0XSI+c2Vzc2lvbnMgdGhhdCBtb3ZlZCBjYXJlZXJzIGZvcndhcmQ8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGdhcC00IHNtOmdyaWQtY29scy0yIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC1bMS43NXJlbV0gYm9yZGVyIGJvcmRlci1bI2Q4Y2ViZV0gcC02IiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTIsMjQ4LDI0MSwwLjg2KTsiPgogICAgICAgICAgICAgIDxpY29uaWZ5LWljb24gaWNvbj0ic29sYXI6c2hpZWxkLWNoZWNrLWxpbmVhciIgd2lkdGg9IjIyIiBoZWlnaHQ9IjIyIiBzdHlsZT0iY29sb3I6IzJlM2EyZjsiIGRhdGEtaW5saW5lPSJmYWxzZSI+PC9pY29uaWZ5LWljb24+CiAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtdC00IHRleHQtbGcgZm9udC1tZWRpdW0gdHJhY2tpbmctdGlnaHQgdGV4dC1bIzFmMWIxNl0iPlZldHRlZCBtZW50b3JzPC9oMz4KICAgICAgICAgICAgICA8cCBjbGFzcz0ibXQtMiB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNjI1NzRiXSI+UmVhbC13b3JsZCBwcm9mZXNzaW9uYWxzIHdpdGggcHJhY3RpY2FsIGV4cGVyaWVuY2UsIG5vdCBvbmx5IHRoZW9yeS48L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3VuZGVkLVsxLjc1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTYiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MiwyNDgsMjQxLDAuODYpOyI+CiAgICAgICAgICAgICAgPGljb25pZnktaWNvbiBpY29uPSJzb2xhcjpnbG9iYWwtbGluZWFyIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHN0eWxlPSJjb2xvcjojNWMzODIyOyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICA8aDMgY2xhc3M9Im10LTQgdGV4dC1sZyBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+TG9jYWxseSByZWxldmFudDwvaDM+CiAgICAgICAgICAgICAgPHAgY2xhc3M9Im10LTIgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYyNTc0Yl0iPlByb2Zlc3Npb25hbHMgZnJvbSBDZW50cmFsIEFzaWEgd2hvIHVuZGVyc3RhbmQgbG9jYWwgY3VsdHVyZSwgbGFuZ3VhZ2UsIGFuZCBvcHBvcnR1bml0aWVzLjwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtWzEuNzVyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNiIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjUyLDI0OCwyNDEsMC44Nik7Ij4KICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOmNsb2NrLWNpcmNsZS1saW5lYXIiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgc3R5bGU9ImNvbG9yOiMyZTNhMmY7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICAgIDxoMyBjbGFzcz0ibXQtNCB0ZXh0LWxnIGZvbnQtbWVkaXVtIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZjFiMTZdIj5GbGV4aWJsZSBmb3JtYXRzPC9oMz4KICAgICAgICAgICAgICA8cCBjbGFzcz0ibXQtMiB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNjI1NzRiXSI+Qm9vayBhIHNpbmdsZSBjb25zdWx0YXRpb24gb3IgYnVpbGQgYSBsb25nZXIgbWVudG9yc2hpcCByZWxhdGlvbnNoaXAuPC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC1bMS43NXJlbV0gYm9yZGVyIGJvcmRlci1bI2Q4Y2ViZV0gcC02IHRleHQtWyNmOGY0ZWRdIiBzdHlsZT0iYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzJlM2EyZiAwJSwgIzVjMzgyMiAxMDAlKTsiPgogICAgICAgICAgICAgIDxpY29uaWZ5LWljb24gaWNvbj0ic29sYXI6aGVhcnQtYW5nbGUtbGluZWFyIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHN0eWxlPSJjb2xvcjojZjNlN2Q5OyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICA8aDMgY2xhc3M9Im10LTQgdGV4dC1sZyBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCI+SHVtYW4gYnkgZGVzaWduPC9oMz4KICAgICAgICAgICAgICA8cCBjbGFzcz0ibXQtMiB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjZWFkZmQwXSI+V2FybSwgc3VwcG9ydGl2ZSBndWlkYW5jZSB3aXRoIHRyYW5zcGFyZW50IHByaWNpbmcgYW5kIGEgc2Vuc2Ugb2YgY29tbXVuaXR5LjwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPHNlY3Rpb24gaWQ9ImNhdGVnb3JpZXMiIGNsYXNzPSJweS0xMiBzbTpweS0xNiBsZzpweS0yMCI+CiAgICAgIDxkaXYgY2xhc3M9Im14LWF1dG8gbWF4LXctN3hsIHB4LTQgc206cHgtNiBsZzpweC04Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJtYi0xMCBmbGV4IGZsZXgtY29sIGdhcC00IHNtOmZsZXgtcm93IHNtOml0ZW1zLWVuZCBzbTpqdXN0aWZ5LWJldHdlZW4iPgogICAgICAgICAgPGRpdiBjbGFzcz0ibWF4LXctMnhsIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC14cyBmb250LW1lZGl1bSB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMThlbV0gdGV4dC1bIzg0NzY2Nl0iPkNhdGVnb3JpZXM8L2Rpdj4KICAgICAgICAgICAgPGgyIGNsYXNzPSJyZXZlYWwgbXQtMyB0ZXh0LTN4bCBmb250LXNlbWlib2xkIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZDE5MTRdIHNtOnRleHQtNHhsIj5FeHBsb3JlIHRoZSBwYXRocyBwZW9wbGUgYXJlIGdyb3dpbmcgaW4gdG9kYXk8L2gyPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8cCBjbGFzcz0ibWF4LXctbGcgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYxNTY0YV0iPldoZXRoZXIgeW91IGFyZSBwcmVwYXJpbmcgZm9yIHlvdXIgZmlyc3Qgam9iLCBpbXByb3ZpbmcgeW91ciBwb3J0Zm9saW8sIG9yIHN3aXRjaGluZyBmaWVsZHMsIHlvdSBjYW4gc3RhcnQgd2l0aCB0aGUgcmlnaHQgZ3VpZGUuPC9wPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGdhcC00IHNtOmdyaWQtY29scy0yIHhsOmdyaWQtY29scy0zIj4KICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJyb3VuZGVkLVsxLjc1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTYiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MSwyNDcsMjQwLDAuODgpOyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBoLTEyIHctMTIgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjYpOyI+CiAgICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOnBhbGV0dGUtcm91bmQtbGluZWFyIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHN0eWxlPSJjb2xvcjojNWMzODIyOyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC14cyB0ZXh0LVsjN2Y3MzY2XSI+RGVzaWduPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGgzIGNsYXNzPSJtdC01IHRleHQtbGcgZm9udC1tZWRpdW0gdHJhY2tpbmctdGlnaHQgdGV4dC1bIzFmMWIxNl0iPlVYL1VJIERlc2lnbjwvaDM+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC0yIHRleHQtc20gbGVhZGluZy03IHRleHQtWyM2MjU3NGJdIj5Qb3J0Zm9saW8gZmVlZGJhY2ssIHByb2R1Y3QgdGhpbmtpbmcsIHdpcmVmcmFtZXMsIGludGVyZmFjZXMsIGFuZCBjYXNlIHN0dWR5IHN1cHBvcnQuPC9wPgogICAgICAgICAgPC9hcnRpY2xlPgoKICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJyb3VuZGVkLVsxLjc1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTYiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MSwyNDcsMjQwLDAuODgpOyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBoLTEyIHctMTIgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjYpOyI+CiAgICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOmNvZGUtbGluZWFyIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHN0eWxlPSJjb2xvcjojMmUzYTJmOyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC14cyB0ZXh0LVsjN2Y3MzY2XSI+VGVjaDwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxoMyBjbGFzcz0ibXQtNSB0ZXh0LWxnIGZvbnQtbWVkaXVtIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZjFiMTZdIj5Qcm9ncmFtbWluZzwvaDM+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC0yIHRleHQtc20gbGVhZGluZy03IHRleHQtWyM2MjU3NGJdIj5Gcm9udGVuZCwgYmFja2VuZCwgaW50ZXJ2aWV3IHByZXAsIGNvZGUgcmV2aWV3cywgYW5kIHByYWN0aWNhbCBwcm9qZWN0IGhlbHAuPC9wPgogICAgICAgICAgPC9hcnRpY2xlPgoKICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJyb3VuZGVkLVsxLjc1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTYiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MSwyNDcsMjQwLDAuODgpOyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBoLTEyIHctMTIgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjYpOyI+CiAgICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOmNoYXJ0LTItbGluZWFyIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHN0eWxlPSJjb2xvcjojNWMzODIyOyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC14cyB0ZXh0LVsjN2Y3MzY2XSI+R3Jvd3RoPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGgzIGNsYXNzPSJtdC01IHRleHQtbGcgZm9udC1tZWRpdW0gdHJhY2tpbmctdGlnaHQgdGV4dC1bIzFmMWIxNl0iPk1hcmtldGluZzwvaDM+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC0yIHRleHQtc20gbGVhZGluZy03IHRleHQtWyM2MjU3NGJdIj5EaWdpdGFsIHN0cmF0ZWd5LCBjb250ZW50LCBicmFuZCBidWlsZGluZywgYW5hbHl0aWNzLCBhbmQgY2FtcGFpZ24gcGxhbm5pbmcuPC9wPgogICAgICAgICAgPC9hcnRpY2xlPgoKICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJyb3VuZGVkLVsxLjc1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTYiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MSwyNDcsMjQwLDAuODgpOyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBoLTEyIHctMTIgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjYpOyI+CiAgICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOmNhc2Utcm91bmQtbGluZWFyIiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHN0eWxlPSJjb2xvcjojMmUzYTJmOyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC14cyB0ZXh0LVsjN2Y3MzY2XSI+TGVhZGVyc2hpcDwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxoMyBjbGFzcz0ibXQtNSB0ZXh0LWxnIGZvbnQtbWVkaXVtIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZjFiMTZdIj5CdXNpbmVzczwvaDM+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC0yIHRleHQtc20gbGVhZGluZy03IHRleHQtWyM2MjU3NGJdIj5TdGFydHVwcywgb3BlcmF0aW9ucywgcHJvZHVjdCBzdHJhdGVneSwgZnJlZWxhbmNlIGdyb3d0aCwgYW5kIGJ1c2luZXNzIGJhc2ljcy48L3A+CiAgICAgICAgICA8L2FydGljbGU+CgogICAgICAgICAgPGFydGljbGUgY2xhc3M9InJvdW5kZWQtWzEuNzVyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNiIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjUxLDI0NywyNDAsMC44OCk7Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGgtMTIgdy0xMiBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC0yeGwgYm9yZGVyIGJvcmRlci1bI2Q3Y2JiYl0iIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNik7Ij4KICAgICAgICAgICAgICAgIDxpY29uaWZ5LWljb24gaWNvbj0ic29sYXI6Y2hhdC1zcXVhcmUtbGlrZS1saW5lYXIiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgc3R5bGU9ImNvbG9yOiM1YzM4MjI7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM3ZjczNjZdIj5MYW5ndWFnZTwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxoMyBjbGFzcz0ibXQtNSB0ZXh0LWxnIGZvbnQtbWVkaXVtIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZjFiMTZdIj5FbmdsaXNoICYgQ29tbXVuaWNhdGlvbjwvaDM+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC0yIHRleHQtc20gbGVhZGluZy03IHRleHQtWyM2MjU3NGJdIj5TcGVha2luZyBjb25maWRlbmNlLCBpbnRlcnZpZXcgbGFuZ3VhZ2UsIGJ1c2luZXNzIHdyaXRpbmcsIGFuZCBkYWlseSBjb21tdW5pY2F0aW9uLjwvcD4KICAgICAgICAgIDwvYXJ0aWNsZT4KCiAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0icm91bmRlZC1bMS43NXJlbV0gYm9yZGVyIGJvcmRlci1bI2Q4Y2ViZV0gcC02IiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTEsMjQ3LDI0MCwwLjg4KTsiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggaC0xMiB3LTEyIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciByb3VuZGVkLTJ4bCBib3JkZXIgYm9yZGVyLVsjZDdjYmJiXSIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC42KTsiPgogICAgICAgICAgICAgICAgPGljb25pZnktaWNvbiBpY29uPSJzb2xhcjphcnJvdy1yaWdodC11cC1saW5lYXIiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgc3R5bGU9ImNvbG9yOiMyZTNhMmY7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM3ZjczNjZdIj5DYXJlZXI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8aDMgY2xhc3M9Im10LTUgdGV4dC1sZyBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+Q2FyZWVyIEdyb3d0aDwvaDM+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC0yIHRleHQtc20gbGVhZGluZy03IHRleHQtWyM2MjU3NGJdIj5DViByZXZpZXcsIGpvYiBzZWFyY2ggc3RyYXRlZ3ksIGNvbmZpZGVuY2UgYnVpbGRpbmcsIGFuZCBmaXJzdC1yb2xlIGJyZWFrdGhyb3VnaCBzdXBwb3J0LjwvcD4KICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPHNlY3Rpb24gY2xhc3M9InB5LTEyIHNtOnB5LTE2IGxnOnB5LTIwIj4KICAgICAgPGRpdiBjbGFzcz0ibXgtYXV0byBtYXgtdy03eGwgcHgtNCBzbTpweC02IGxnOnB4LTgiPgogICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgZ2FwLTYgbGc6Z3JpZC1jb2xzLVswLjlmcl8xLjFmcl0gbGc6aXRlbXMtY2VudGVyIj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgZm9udC1tZWRpdW0gdXBwZXJjYXNlIHRyYWNraW5nLVswLjE4ZW1dIHRleHQtWyM4NDc2NjZdIj5TYW1wbGUgbWVudG9yIHByb2ZpbGU8L2Rpdj4KICAgICAgICAgICAgPGgyIGNsYXNzPSJyZXZlYWwgbXQtMyB0ZXh0LTN4bCBmb250LXNlbWlib2xkIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZDE5MTRdIHNtOnRleHQtNHhsIj5TZWUgaG93IHNpbXBsZSBib29raW5nIGEgbWVudG9yIGNhbiBmZWVsPC9oMj4KICAgICAgICAgICAgPHAgY2xhc3M9Im10LTQgbWF4LXcteGwgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYxNTY0YV0gc206dGV4dC1iYXNlIj4KICAgICAgICAgICAgICBBIGNsZWFyIHByb2ZpbGUsIGhvbmVzdCBwcmljaW5nLCBhbmQgcHJhY3RpY2FsIGV4cGVydGlzZeKAlHNvIG1lbnRlZXMga25vdyBleGFjdGx5IHdobyB0aGV5IGFyZSBsZWFybmluZyBmcm9tLgogICAgICAgICAgICA8L3A+CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3VuZGVkLVsycmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTQgc206cC02IiBzdHlsZT0iYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTAsMjQ2LDIzOSwwLjk1KSAwJSwgcmdiYSgyNDUsMjM5LDIzMCwwLjkpIDEwMCUpOyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgZ2FwLTQgc206Z3JpZC1jb2xzLVswLjlmcl8xLjFmcl0iPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im92ZXJmbG93LWhpZGRlbiByb3VuZGVkLVsxLjVyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIj4KICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJhc3NldHMvcGFnZS0wMy0wZDg2OGZlZi1mNTYwLTQ1Y2EtYWIzNS01ZGFkNGZjMjkwNTktMzg0MHcud2VicCIgYWx0PSJNZW50b3IgcHJvZmlsZSIgY2xhc3M9ImgtZnVsbCB3LWZ1bGwgb2JqZWN0LWNvdmVyIiBzdHlsZT0iYXNwZWN0LXJhdGlvOiA0IC8gNTsiIC8+CiAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZsZXggZmxleC1jb2wiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1zdGFydCBqdXN0aWZ5LWJldHdlZW4gZ2FwLTQiPgogICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGV4dC14bCBmb250LW1lZGl1bSB0cmFja2luZy10aWdodCB0ZXh0LVsjMWYxYjE2XSI+QWl6YWRhIE51cjwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im10LTEgdGV4dC1zbSB0ZXh0LVsjNjc1YzUwXSI+U2VuaW9yIFByb2R1Y3QgRGVzaWduZXIgYXQgYSByZWdpb25hbCB0ZWNoIGNvbXBhbnk8L3A+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHB4LTMgcHktMSB0ZXh0LXhzIHRleHQtWyM2YjYwNTRdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjUyKTsiPlRvcCByYXRlZDwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTUgZmxleCBmbGV4LXdyYXAgZ2FwLTIiPgogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHB4LTMgcHktMS41IHRleHQteHMgdGV4dC1bIzVlNTM0N10iPjUrIHllYXJzIGV4cGVyaWVuY2U8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJyb3VuZGVkLWZ1bGwgYm9yZGVyIGJvcmRlci1bI2RkZDJjMl0gcHgtMyBweS0xLjUgdGV4dC14cyB0ZXh0LVsjNWU1MzQ3XSI+VVgvVUk8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJyb3VuZGVkLWZ1bGwgYm9yZGVyIGJvcmRlci1bI2RkZDJjMl0gcHgtMyBweS0xLjUgdGV4dC14cyB0ZXh0LVsjNWU1MzQ3XSI+UlUgLyBFTjwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTUgZ3JpZCBncmlkLWNvbHMtMiBnYXAtMyI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHAtNCIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC40Nik7Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM3YjZmNjFdIj5TZXNzaW9uIHByaWNlPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtMSB0ZXh0LWxnIGZvbnQtbWVkaXVtIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZjFiMTZdIj4kMjI8L2Rpdj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtMnhsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHAtNCIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC40Nik7Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM3YjZmNjFdIj5SYXRpbmc8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtdC0xIGZsZXggaXRlbXMtY2VudGVyIGdhcC0xIHRleHQtbGcgZm9udC1tZWRpdW0gdHJhY2tpbmctdGlnaHQgdGV4dC1bIzFmMWIxNl0iPgogICAgICAgICAgICAgICAgICAgICAgNC45CiAgICAgICAgICAgICAgICAgICAgICA8aWNvbmlmeS1pY29uIGljb249InNvbGFyOnN0YXItYm9sZCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBzdHlsZT0iY29sb3I6I2M2OGE1NTsiIGRhdGEtaW5saW5lPSJmYWxzZSI+PC9pY29uaWZ5LWljb24+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPHAgY2xhc3M9Im10LTUgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYxNTY0YV0iPgogICAgICAgICAgICAgICAgICBIZWxwcyBqdW5pb3IgZGVzaWduZXJzIGJ1aWxkIHBvcnRmb2xpb3MsIHByZXBhcmUgZm9yIGludGVydmlld3MsIGFuZCB0dXJuIGNvdXJzZXdvcmsgaW50byByZWFsIGNhc2Ugc3R1ZGllcy4KICAgICAgICAgICAgICAgIDwvcD4KCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtdC02Ij4KICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iI2ZhcSIgY2xhc3M9ImlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMiByb3VuZGVkLWZ1bGwgcHgtNSBweS0zIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1bI2Y4ZjRlZF0iIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMmUzYTJmIDAlLCAjNWMzODIyIDEwMCUpOyI+CiAgICAgICAgICAgICAgICAgICAgPGljb25pZnktaWNvbiBpY29uPSJzb2xhcjpjYWxlbmRhci1saW5lYXIiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgc3R5bGU9ImNvbG9yOiNmOGY0ZWQ7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICAgICAgICAgIEJvb2sKICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9pbnRlci1ldmVudHMtbm9uZSBtdC00IHJvdW5kZWQtWzEuNXJlbV0gcC1bMXB4XSIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsMjU1LDI1NSwwLjcpLCByZ2JhKDE4MSwxNTYsMTMwLDAuNDUpLCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpOyI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm91bmRlZC1bMS40NXJlbV0gcHgtNCBweS0zIHRleHQteHMgdGV4dC1bIzZkNjI1Nl0iIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI0OCwyNDIsMjMzLDAuOTIpOyI+CiAgICAgICAgICAgICAgICBDbGVhciBwcm9maWxlIGRldGFpbHMgaGVscCBwZW9wbGUgYm9vayB3aXRoIGNvbmZpZGVuY2UuCiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgoKICAgIDxzZWN0aW9uIGlkPSJ0ZXN0aW1vbmlhbHMiIGNsYXNzPSJweS0xMiBzbTpweS0xNiBsZzpweS0yMCI+CiAgICAgIDxkaXYgY2xhc3M9Im14LWF1dG8gbWF4LXctN3hsIHB4LTQgc206cHgtNiBsZzpweC04Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJtYi0xMCBtYXgtdy0yeGwiPgogICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC14cyBmb250LW1lZGl1bSB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMThlbV0gdGV4dC1bIzg0NzY2Nl0iPlRlc3RpbW9uaWFsczwvZGl2PgogICAgICAgICAgPGgyIGNsYXNzPSJyZXZlYWwgbXQtMyB0ZXh0LTN4bCBmb250LXNlbWlib2xkIHRyYWNraW5nLXRpZ2h0IHRleHQtWyMxZDE5MTRdIHNtOnRleHQtNHhsIj5TbWFsbCBjb252ZXJzYXRpb25zLCBiaWcgdHVybmluZyBwb2ludHM8L2gyPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGdhcC00IGxnOmdyaWQtY29scy0zIj4KICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJyb3VuZGVkLVsxLjc1cmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTYiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MiwyNDgsMjQxLDAuODgpOyI+CiAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNTA0NjNjXSI+4oCcQWZ0ZXIgdGhyZWUgc2Vzc2lvbnMgd2l0aCBteSBtZW50b3IsIEkgZ290IGFuIG9mZmVyIGFzIGEganVuaW9yIFVYIGRlc2lnbmVyLiBUaGUgZmVlZGJhY2sgd2FzIHByYWN0aWNhbCwga2luZCwgYW5kIGV4YWN0bHkgd2hhdCBJIG5lZWRlZC7igJ08L3A+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTYgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMiPgogICAgICAgICAgICAgIDxpbWcgc3JjPSJhc3NldHMvcGFnZS0wNC01ODJhZmVmNC1iODEwLTQ3YjgtYTA0Ny04YjM1OTdjMzIzZTEtMzg0MHcud2VicCIgYWx0PSJNZW50ZWUgcG9ydHJhaXQiIGNsYXNzPSJoLTEyIHctMTIgcm91bmRlZC0yeGwgb2JqZWN0LWNvdmVyIiAvPgogICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtWyMxZjFiMTZdIj5NYWRpbmEsIDIyPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIHRleHQtWyM3MjY3NTldIj5TdGFydGVkIGEganVuaW9yIFVYIHJvbGU8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2FydGljbGU+CgogICAgICAgICAgPGFydGljbGUgY2xhc3M9InJvdW5kZWQtWzEuNzVyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNiIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjUyLDI0OCwyNDEsMC44OCk7Ij4KICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gbGVhZGluZy03IHRleHQtWyM1MDQ2M2NdIj7igJxJIHdhcyBsb3N0IGJldHdlZW4gY291cnNlcyBhbmQgcmVhbCB3b3JrLiBNeSBtZW50b3IgaGVscGVkIG1lIGZvY3VzIG9uIG1hcmtldGluZyBza2lsbHMgdGhhdCBlbXBsb3llcnMgYWN0dWFsbHkgYXNrIGZvci7igJ08L3A+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTYgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMiPgogICAgICAgICAgICAgIDxpbWcgc3JjPSJhc3NldHMvcGFnZS0wNS02NTY5NWY4MC0yM2Y5LTQ2ZWUtODQ4Ny1jYmI2YzkzY2M0OGItMzg0MHcud2VicCIgYWx0PSJNZW50ZWUgcG9ydHJhaXQiIGNsYXNzPSJoLTEyIHctMTIgcm91bmRlZC0yeGwgb2JqZWN0LWNvdmVyIiAvPgogICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtWyMxZjFiMTZdIj5UZW1pcmxhbiwgMjQ8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgdGV4dC1bIzcyNjc1OV0iPk1vdmVkIGludG8gZGlnaXRhbCBtYXJrZXRpbmc8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2FydGljbGU+CgogICAgICAgICAgPGFydGljbGUgY2xhc3M9InJvdW5kZWQtWzEuNzVyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNiB0ZXh0LVsjZjhmNGVkXSIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZTNhMmYgMCUsICM1YzM4MjIgMTAwJSk7Ij4KICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20gbGVhZGluZy03IHRleHQtWyNlZmUzZDZdIj7igJxBcyBhIG1lbnRvciwgSSB3YW50ZWQgYSBzaW1wbGUgd2F5IHRvIHN1cHBvcnQgeW91bmcgcHJvZmVzc2lvbmFscyBmcm9tIHRoZSByZWdpb24gYW5kIGFsc28gZWFybiBmcm9tIG15IGV4cGVyaWVuY2UuIFRoaXMgbWFkZSBpdCBuYXR1cmFsLuKAnTwvcD4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXQtNiBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMyI+CiAgICAgICAgICAgICAgPGltZyBzcmM9ImFzc2V0cy9wYWdlLTA2LWM5Mjg1MmJiLWE1MTAtNDA1YS04NWFiLWZmYTBmZGUxMzZhNC0xNjAwdy5qcGciIGFsdD0iTWVudG9yIHBvcnRyYWl0IiBjbGFzcz0iaC0xMiB3LTEyIHJvdW5kZWQtMnhsIG9iamVjdC1jb3ZlciIgLz4KICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1zbSBmb250LW1lZGl1bSI+QXphbWF0LCAzMTwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC14cyB0ZXh0LVsjZGJjZGJmXSI+UHJvZ3JhbW1pbmcgbWVudG9yPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8c2VjdGlvbiBpZD0ibWVudG9yLWN0YSIgY2xhc3M9InB5LTEyIHNtOnB5LTE2IGxnOnB5LTIwIj4KICAgICAgPGRpdiBjbGFzcz0ibXgtYXV0byBtYXgtdy03eGwgcHgtNCBzbTpweC02IGxnOnB4LTgiPgogICAgICAgIDxkaXYgY2xhc3M9InJvdW5kZWQtWzJyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNiBzbTpwLTggbGc6cC0xMCIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoNDYsNTgsNDcsMC45OCkgMCUsIHJnYmEoOTIsNTYsMzQsMC45OCkgMTAwJSk7Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQgZ2FwLTggbGc6Z3JpZC1jb2xzLVsxZnJfYXV0b10gbGc6aXRlbXMtY2VudGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWF4LXctMnhsIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTIgcm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItd2hpdGUvMTAgcHgtMyBweS0xLjUgdGV4dC14cyBmb250LW1lZGl1bSB0ZXh0LVsjZTdkOWNhXSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaC0xLjUgdy0xLjUgcm91bmRlZC1mdWxsIGJnLVsjYzdhMjdhXSI+PC9zcGFuPgogICAgICAgICAgICAgICAgRm9yIGV4cGVyaWVuY2VkIHNwZWNpYWxpc3RzCiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGgyIGNsYXNzPSJyZXZlYWwgbXQtNCB0ZXh0LTN4bCBmb250LXNlbWlib2xkIHRyYWNraW5nLXRpZ2h0IHRleHQtWyNmYmY2ZjBdIHNtOnRleHQtNHhsIj5TaGFyZSB5b3VyIGV4cGVyaWVuY2UuIE1vbmV0aXplIHlvdXIga25vd2xlZGdlLiBIZWxwIGRldmVsb3AgdGhlIHJlZ2lvbi48L2gyPgogICAgICAgICAgICAgIDxwIGNsYXNzPSJtdC00IG1heC13LXhsIHRleHQtc20gbGVhZGluZy03IHRleHQtWyNlYWRlZDJdIHNtOnRleHQtYmFzZSI+CiAgICAgICAgICAgICAgICBNZW50b3JCcmlkZ2UgZ2l2ZXMgc2Vhc29uZWQgcHJvZmVzc2lvbmFscyBhIHRob3VnaHRmdWwgd2F5IHRvIHN1cHBvcnQgc3R1ZGVudHMgYW5kIGVhcmx5LWNhcmVlciB0YWxlbnQgd2hpbGUgZWFybmluZyB0aHJvdWdoIGNvbnN1bHRhdGlvbnMuCiAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICA8YSBocmVmPSIjZm9vdGVyIiBjbGFzcz0iaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC0yIHJvdW5kZWQtZnVsbCBiZy1bI2Y2ZWZlNV0gcHgtNSBweS0zIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1bIzFmMWIxNl0iPgogICAgICAgICAgICAgICAgPGljb25pZnktaWNvbiBpY29uPSJzb2xhcjp1c2VyLXBsdXMtbGluZWFyIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHN0eWxlPSJjb2xvcjojMWYxYjE2OyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICAgIEJlY29tZSBhIG1lbnRvcgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPHNlY3Rpb24gaWQ9ImZhcSIgY2xhc3M9InB5LTEyIHNtOnB5LTE2IGxnOnB5LTIwIj4KICAgICAgPGRpdiBjbGFzcz0ibXgtYXV0byBtYXgtdy01eGwgcHgtNCBzbTpweC02IGxnOnB4LTgiPgogICAgICAgIDxkaXYgY2xhc3M9Im1iLTEwIHRleHQtY2VudGVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgZm9udC1tZWRpdW0gdXBwZXJjYXNlIHRyYWNraW5nLVswLjE4ZW1dIHRleHQtWyM4NDc2NjZdIj5GQVE8L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0icmV2ZWFsIG10LTMgdGV4dC0zeGwgZm9udC1zZW1pYm9sZCB0cmFja2luZy10aWdodCB0ZXh0LVsjMWQxOTE0XSBzbTp0ZXh0LTR4bCI+UXVlc3Rpb25zIHBlb3BsZSB1c3VhbGx5IGFzayBiZWZvcmUgdGhleSBzdGFydDwvaDI+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9InNwYWNlLXktMyI+CiAgICAgICAgICA8ZGV0YWlscyBjbGFzcz0iZ3JvdXAgcm91bmRlZC1bMS41cmVtXSBib3JkZXIgYm9yZGVyLVsjZDhjZWJlXSBwLTUiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1MSwyNDcsMjQwLDAuODYpOyI+CiAgICAgICAgICAgIDxzdW1tYXJ5IGNsYXNzPSJmbGV4IGN1cnNvci1wb2ludGVyIGxpc3Qtbm9uZSBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIGdhcC00IHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1bIzFmMWIxNl0iPgogICAgICAgICAgICAgIEhvdyBkbyBzZXNzaW9ucyB3b3JrPwogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmbGV4IGgtOCB3LTggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZGRkMmMyXSB0ZXh0LVsjNmY2NDU4XSB0cmFuc2l0aW9uIGdyb3VwLW9wZW46cm90YXRlLTQ1IiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjU2KTsiPis8L3NwYW4+CiAgICAgICAgICAgIDwvc3VtbWFyeT4KICAgICAgICAgICAgPHAgY2xhc3M9Im10LTQgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYxNTY0YV0iPllvdSBjaG9vc2UgYSBtZW50b3IsIGJvb2sgYSB0aW1lLCBhbmQgbWVldCBvbmxpbmUgZm9yIGEgMToxIHNlc3Npb24gZm9jdXNlZCBvbiB5b3VyIGdvYWxzLCBxdWVzdGlvbnMsIG9yIHBvcnRmb2xpby48L3A+CiAgICAgICAgICA8L2RldGFpbHM+CgogICAgICAgICAgPGRldGFpbHMgY2xhc3M9Imdyb3VwIHJvdW5kZWQtWzEuNXJlbV0gYm9yZGVyIGJvcmRlci1bI2Q4Y2ViZV0gcC01IiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTEsMjQ3LDI0MCwwLjg2KTsiPgogICAgICAgICAgICA8c3VtbWFyeSBjbGFzcz0iZmxleCBjdXJzb3ItcG9pbnRlciBsaXN0LW5vbmUgaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiBnYXAtNCB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtWyMxZjFiMTZdIj4KICAgICAgICAgICAgICBIb3cgbXVjaCBkb2VzIGl0IGNvc3Q/CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImZsZXggaC04IHctOCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkZGQyYzJdIHRleHQtWyM2ZjY0NThdIHRyYW5zaXRpb24gZ3JvdXAtb3Blbjpyb3RhdGUtNDUiIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNTYpOyI+Kzwvc3Bhbj4KICAgICAgICAgICAgPC9zdW1tYXJ5PgogICAgICAgICAgICA8cCBjbGFzcz0ibXQtNCB0ZXh0LXNtIGxlYWRpbmctNyB0ZXh0LVsjNjE1NjRhXSI+UHJpY2VzIHZhcnkgYnkgbWVudG9yLCBleHBlcmllbmNlLCBhbmQgc2Vzc2lvbiBmb3JtYXQuIFlvdSBjYW4gY29tcGFyZSBwcm9maWxlcyBhbmQgY2hvb3NlIGFuIG9wdGlvbiB0aGF0IGZpdHMgeW91ciBidWRnZXQuPC9wPgogICAgICAgICAgPC9kZXRhaWxzPgoKICAgICAgICAgIDxkZXRhaWxzIGNsYXNzPSJncm91cCByb3VuZGVkLVsxLjVyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNSIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjUxLDI0NywyNDAsMC44Nik7Ij4KICAgICAgICAgICAgPHN1bW1hcnkgY2xhc3M9ImZsZXggY3Vyc29yLXBvaW50ZXIgbGlzdC1ub25lIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gZ2FwLTQgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LVsjMWYxYjE2XSI+CiAgICAgICAgICAgICAgSG93IGRvIEkgY2hvb3NlIGEgbWVudG9yPwogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmbGV4IGgtOCB3LTggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZGRkMmMyXSB0ZXh0LVsjNmY2NDU4XSB0cmFuc2l0aW9uIGdyb3VwLW9wZW46cm90YXRlLTQ1IiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjU2KTsiPis8L3NwYW4+CiAgICAgICAgICAgIDwvc3VtbWFyeT4KICAgICAgICAgICAgPHAgY2xhc3M9Im10LTQgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYxNTY0YV0iPlVzZSBmaWx0ZXJzIGxpa2UgZmllbGQsIGxhbmd1YWdlLCBleHBlcmllbmNlLCBhbmQgcHJpY2UuIFRoZW4gcmV2aWV3IHByb2ZpbGVzLCByYXRpbmdzLCBhbmQgZm9jdXMgYXJlYXMgdG8gZmluZCB0aGUgcmlnaHQgbWF0Y2guPC9wPgogICAgICAgICAgPC9kZXRhaWxzPgoKICAgICAgICAgIDxkZXRhaWxzIGNsYXNzPSJncm91cCByb3VuZGVkLVsxLjVyZW1dIGJvcmRlciBib3JkZXItWyNkOGNlYmVdIHAtNSIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjUxLDI0NywyNDAsMC44Nik7Ij4KICAgICAgICAgICAgPHN1bW1hcnkgY2xhc3M9ImZsZXggY3Vyc29yLXBvaW50ZXIgbGlzdC1ub25lIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gZ2FwLTQgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LVsjMWYxYjE2XSI+CiAgICAgICAgICAgICAgQ2FuIEkgYmVjb21lIGEgbWVudG9yIHdpdGhvdXQgdGVhY2hpbmcgZXhwZXJpZW5jZT8KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZmxleCBoLTggdy04IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciByb3VuZGVkLWZ1bGwgYm9yZGVyIGJvcmRlci1bI2RkZDJjMl0gdGV4dC1bIzZmNjQ1OF0gdHJhbnNpdGlvbiBncm91cC1vcGVuOnJvdGF0ZS00NSIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC41Nik7Ij4rPC9zcGFuPgogICAgICAgICAgICA8L3N1bW1hcnk+CiAgICAgICAgICAgIDxwIGNsYXNzPSJtdC00IHRleHQtc20gbGVhZGluZy03IHRleHQtWyM2MTU2NGFdIj5ZZXMuIElmIHlvdSBoYXZlIHN0cm9uZyBwcmFjdGljYWwgZXhwZXJpZW5jZSBhbmQgY2FuIGd1aWRlIG90aGVycyBjbGVhcmx5IGFuZCByZXNwZWN0ZnVsbHksIHlvdSBjYW4gYXBwbHkgdG8gYmVjb21lIGEgbWVudG9yLjwvcD4KICAgICAgICAgIDwvZGV0YWlscz4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgPC9tYWluPgoKICA8Zm9vdGVyIGlkPSJmb290ZXIiIGNsYXNzPSJib3JkZXItdCBib3JkZXItWyNkZGQyYzJdIHB5LTEwIj4KICAgIDxkaXYgY2xhc3M9Im14LWF1dG8gZmxleCBtYXgtdy03eGwgZmxleC1jb2wgZ2FwLTggcHgtNCBzbTpweC02IGxnOnB4LTgiPgogICAgICA8ZGl2IGNsYXNzPSJmbGV4IGZsZXgtY29sIGdhcC02IG1kOmZsZXgtcm93IG1kOml0ZW1zLXN0YXJ0IG1kOmp1c3RpZnktYmV0d2VlbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ibWF4LXctbWQiPgogICAgICAgICAgPGRpdiBjbGFzcz0iZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMiPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZmxleCBoLTEwIHctMTAgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQteGwgYm9yZGVyIGJvcmRlci1bI2Q3Y2JiYl0iIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjZjlmNGVjIDAlLCAjZWZlNWQ3IDEwMCUpOyI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InJlbGF0aXZlIGgtNSB3LTUiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFic29sdXRlIGxlZnQtMCB0b3AtMS8yIGgtMi41IHctMi41IC10cmFuc2xhdGUteS0xLzIgcm91bmRlZC1mdWxsIGJnLVsjMmYzYTJmXSI+PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFic29sdXRlIHJpZ2h0LTAgdG9wLTAgaC0yLjUgdy0yLjUgcm91bmRlZC1mdWxsIGJnLVsjOGE1YTM3XSI+PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFic29sdXRlIGxlZnQtMS41IHRvcC0yIGgtMiB3LTIgcm91bmRlZC1mdWxsIGJnLVsjYzU5YTcxXSI+PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFic29sdXRlIGxlZnQtMS41IHRvcC1bMC40NXJlbV0gaC1weCB3LTIuNSByb3RhdGUtWzI0ZGVnXSBiZy1bIzZlN2E2N10iPjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhYnNvbHV0ZSBsZWZ0LTEuNSB0b3AtWzAuNTVyZW1dIGgtcHggdy0yLjUgcm90YXRlLVstMjJkZWddIGJnLVsjNmU3YTY3XSI+PC9zcGFuPgogICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1bIzFmMWIxNl0iPk1lbnRvckJyaWRnZTwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgdGV4dC1bIzdlNzM2NV0iPkEgYnJpZGdlIGJldHdlZW4gZXhwZXJpZW5jZSBhbmQgY2FyZWVyIGdyb3d0aDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPHAgY2xhc3M9Im10LTQgdGV4dC1zbSBsZWFkaW5nLTcgdGV4dC1bIzYzNTg0Yl0iPgogICAgICAgICAgICBBIGh1bWFuIG1lbnRvcnNoaXAgbWFya2V0cGxhY2UgY29ubmVjdGluZyBtZW50b3JzIGFuZCBtZW50ZWVzIGFjcm9zcyBDZW50cmFsIEFzaWEgd2l0aCB3YXJtdGgsIHRydXN0LCBhbmQgdHJhbnNwYXJlbmN5LgogICAgICAgICAgPC9wPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJncmlkIGdhcC04IHNtOmdyaWQtY29scy0zIj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgZm9udC1tZWRpdW0gdXBwZXJjYXNlIHRyYWNraW5nLVswLjE4ZW1dIHRleHQtWyM4NDc2NjZdIj5FeHBsb3JlPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTQgc3BhY2UteS0zIj4KICAgICAgICAgICAgICA8YSBocmVmPSIjaG93IiBjbGFzcz0iYmxvY2sgdGV4dC1zbSB0ZXh0LVsjNWQ1MjQ2XSBob3Zlcjp0ZXh0LVsjMWYxYjE2XSI+SG93IGl0IHdvcmtzPC9hPgogICAgICAgICAgICAgIDxhIGhyZWY9IiNjYXRlZ29yaWVzIiBjbGFzcz0iYmxvY2sgdGV4dC1zbSB0ZXh0LVsjNWQ1MjQ2XSBob3Zlcjp0ZXh0LVsjMWYxYjE2XSI+Q2F0ZWdvcmllczwvYT4KICAgICAgICAgICAgICA8YSBocmVmPSIjdGVzdGltb25pYWxzIiBjbGFzcz0iYmxvY2sgdGV4dC1zbSB0ZXh0LVsjNWQ1MjQ2XSBob3Zlcjp0ZXh0LVsjMWYxYjE2XSI+U3RvcmllczwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQteHMgZm9udC1tZWRpdW0gdXBwZXJjYXNlIHRyYWNraW5nLVswLjE4ZW1dIHRleHQtWyM4NDc2NjZdIj5Db250YWN0PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTQgc3BhY2UteS0zIHRleHQtc20gdGV4dC1bIzVkNTI0Nl0iPgogICAgICAgICAgICAgIDxkaXY+aGVsbG9AbWVudG9yYnJpZGdlLmFzaWE8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2Pis5OTYgNzAwIDEyMyA0NTY8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2PkNlbnRyYWwgQXNpYTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC14cyBmb250LW1lZGl1bSB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMThlbV0gdGV4dC1bIzg0NzY2Nl0iPkxhbmd1YWdlPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTQgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTIiPgogICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIHB4LTMgcHktMS41IHRleHQteHMgZm9udC1tZWRpdW0gdGV4dC1bIzFmMWIxNl0iIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNik7Ij5FTjwvYnV0dG9uPgogICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIHB4LTMgcHktMS41IHRleHQteHMgdGV4dC1bIzZmNjQ1OF0iIHN0eWxlPSJiYWNrZ3JvdW5kOiByZ2JhKDI0NSwyMzksMjMwLDAuNzIpOyI+UlU8L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im10LTUgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMiPgogICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGFyaWEtbGFiZWw9IlRlbGVncmFtIiBjbGFzcz0iZmxleCBoLTEwIHctMTAgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtZnVsbCBib3JkZXIgYm9yZGVyLVsjZDdjYmJiXSIgc3R5bGU9ImJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC41OCk7Ij4KICAgICAgICAgICAgICAgIDxpY29uaWZ5LWljb24gaWNvbj0ic29sYXI6cGxhaW4tMi1saW5lYXIiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgc3R5bGU9ImNvbG9yOiMxZjFiMTY7IiBkYXRhLWlubGluZT0iZmFsc2UiPjwvaWNvbmlmeS1pY29uPgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICA8YSBocmVmPSIjIiBhcmlhLWxhYmVsPSJJbnN0YWdyYW0iIGNsYXNzPSJmbGV4IGgtMTAgdy0xMCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjU4KTsiPgogICAgICAgICAgICAgICAgPGljb25pZnktaWNvbiBpY29uPSJzb2xhcjpjYW1lcmEtbGluZWFyIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHN0eWxlPSJjb2xvcjojMWYxYjE2OyIgZGF0YS1pbmxpbmU9ImZhbHNlIj48L2ljb25pZnktaWNvbj4KICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgYXJpYS1sYWJlbD0iTGlua2VkSW4iIGNsYXNzPSJmbGV4IGgtMTAgdy0xMCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGJvcmRlciBib3JkZXItWyNkN2NiYmJdIiBzdHlsZT0iYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjU4KTsiPgogICAgICAgICAgICAgICAgPGljb25pZnktaWNvbiBpY29uPSJzb2xhcjpsaW5rLXJvdW5kLWFuZ2xlLWxpbmVhciIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiBzdHlsZT0iY29sb3I6IzFmMWIxNjsiIGRhdGEtaW5saW5lPSJmYWxzZSI+PC9pY29uaWZ5LWljb24+CiAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImZsZXggZmxleC1jb2wgZ2FwLTQgYm9yZGVyLXQgYm9yZGVyLVsjZGRkMmMyXSBwdC02IHRleHQteHMgdGV4dC1bIzdhNmY2Ml0gc206ZmxleC1yb3cgc206aXRlbXMtY2VudGVyIHNtOmp1c3RpZnktYmV0d2VlbiI+CiAgICAgICAgPGRpdj7CqSAyMDI2IE1lbnRvckJyaWRnZS4gQnVpbHQgZm9yIG1lYW5pbmdmdWwgY2FyZWVyIGdyb3d0aC48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJmbGV4IGZsZXgtd3JhcCBnYXAtNCI+CiAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iaG92ZXI6dGV4dC1bIzFmMWIxNl0iPlByaXZhY3k8L2E+CiAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iaG92ZXI6dGV4dC1bIzFmMWIxNl0iPlRlcm1zPC9hPgogICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImhvdmVyOnRleHQtWyMxZjFiMTZdIj5TdXBwb3J0PC9hPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZm9vdGVyPgoKICA8c2NyaXB0PgogICAgKGZ1bmN0aW9uICgpIHsKICAgICAgY29uc3QgcmV2ZWFscyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5yZXZlYWwnKTsKICAgICAgcmV2ZWFscy5mb3JFYWNoKChlbCkgPT4gewogICAgICAgIGNvbnN0IHRleHQgPSBlbC50ZXh0Q29udGVudC50cmltKCkuc3BsaXQoJyAnKTsKICAgICAgICBlbC5pbm5lckhUTUwgPSB0ZXh0Lm1hcCgod29yZCkgPT4gewogICAgICAgICAgcmV0dXJuICc8c3BhbiBzdHlsZT0iZGlzcGxheTppbmxpbmUtYmxvY2s7IG92ZXJmbG93OmhpZGRlbjsgdmVydGljYWwtYWxpZ246dG9wOyBtYXJnaW4tcmlnaHQ6MC4yOGVtOyI+PHNwYW4gY2xhc3M9InJldmVhbC13b3JkIiBzdHlsZT0iZGlzcGxheTppbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTp0cmFuc2xhdGVZKDExNSUpOyBvcGFjaXR5OjA7Ij4nICsgd29yZCArICc8L3NwYW4+PC9zcGFuPic7CiAgICAgICAgfSkuam9pbignJyk7CiAgICAgIH0pOwoKICAgICAgZ3NhcC5yZWdpc3RlclBsdWdpbihTY3JvbGxUcmlnZ2VyKTsKICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnJldmVhbCcpLmZvckVhY2goKGVsKSA9PiB7CiAgICAgICAgZ3NhcC50byhlbC5xdWVyeVNlbGVjdG9yQWxsKCcucmV2ZWFsLXdvcmQnKSwgewogICAgICAgICAgeTogMCwKICAgICAgICAgIG9wYWNpdHk6IDEsCiAgICAgICAgICBlYXNlOiAncG93ZXIzLm91dCcsCiAgICAgICAgICBkdXJhdGlvbjogMC45LAogICAgICAgICAgc3RhZ2dlcjogMC4wNDUsCiAgICAgICAgICBzY3JvbGxUcmlnZ2VyOiB7CiAgICAgICAgICAgIHRyaWdnZXI6IGVsLAogICAgICAgICAgICBzdGFydDogJ3RvcCA4MiUnLAogICAgICAgICAgICBvbmNlOiB0cnVlCiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfSkoKTsKCiAgICAoZnVuY3Rpb24gKCkgewogICAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYmctY2FudmFzJyk7CiAgICAgIGNvbnN0IGdsID0gY2FudmFzLmdldENvbnRleHQoJ3dlYmdsJywgeyBhbHBoYTogdHJ1ZSwgYW50aWFsaWFzOiB0cnVlIH0pOwogICAgICBpZiAoIWdsKSByZXR1cm47CgogICAgICBjb25zdCB2ZXJ0ZXhTcmMgPSBgCiAgICAgICAgYXR0cmlidXRlIHZlYzIgYV9wb3NpdGlvbjsKICAgICAgICB2b2lkIG1haW4oKSB7CiAgICAgICAgICBnbF9Qb3NpdGlvbiA9IHZlYzQoYV9wb3NpdGlvbiwgMC4wLCAxLjApOwogICAgICAgIH0KICAgICAgYDsKCiAgICAgIGNvbnN0IGZyYWdtZW50U3JjID0gYAogICAgICAgIHByZWNpc2lvbiBoaWdocCBmbG9hdDsKICAgICAgICB1bmlmb3JtIGZsb2F0IHVfdGltZTsKICAgICAgICB1bmlmb3JtIHZlYzIgdV9yZXNvbHV0aW9uOwoKICAgICAgICBmbG9hdCBoYXNoKHZlYzIgcCl7CiAgICAgICAgICByZXR1cm4gZnJhY3Qoc2luKGRvdChwLCB2ZWMyKDEyNy4xLCAzMTEuNykpKSAqIDQzNzU4LjU0NTMxMjMpOwogICAgICAgIH0KCiAgICAgICAgZmxvYXQgbm9pc2UodmVjMiBwKXsKICAgICAgICAgIHZlYzIgaSA9IGZsb29yKHApOwogICAgICAgICAgdmVjMiBmID0gZnJhY3QocCk7CiAgICAgICAgICBmbG9hdCBhID0gaGFzaChpKTsKICAgICAgICAgIGZsb2F0IGIgPSBoYXNoKGkgKyB2ZWMyKDEuMCwgMC4wKSk7CiAgICAgICAgICBmbG9hdCBjID0gaGFzaChpICsgdmVjMigwLjAsIDEuMCkpOwogICAgICAgICAgZmxvYXQgZCA9IGhhc2goaSArIHZlYzIoMS4wLCAxLjApKTsKICAgICAgICAgIHZlYzIgdSA9IGYgKiBmICogKDMuMCAtIDIuMCAqIGYpOwogICAgICAgICAgcmV0dXJuIG1peChhLCBiLCB1LngpICsgKGMgLSBhKSAqIHUueSAqICgxLjAgLSB1LngpICsgKGQgLSBiKSAqIHUueCAqIHUueTsKICAgICAgICB9CgogICAgICAgIG1hdDIgcm90KGZsb2F0IGEpewogICAgICAgICAgZmxvYXQgcyA9IHNpbihhKSwgYyA9IGNvcyhhKTsKICAgICAgICAgIHJldHVybiBtYXQyKGMsLXMscyxjKTsKICAgICAgICB9CgogICAgICAgIGZsb2F0IHNkT2N0YWhlZHJvbih2ZWMzIHAsIGZsb2F0IHMpewogICAgICAgICAgcCA9IGFicyhwKTsKICAgICAgICAgIHJldHVybiAocC54ICsgcC55ICsgcC56IC0gcykgKiAwLjU3NzM1MDI3OwogICAgICAgIH0KCiAgICAgICAgZmxvYXQgbWFwKHZlYzMgcCl7CiAgICAgICAgICB2ZWMzIHEgPSBwOwogICAgICAgICAgcS54eSAqPSByb3QoMC4zNSArIHNpbih1X3RpbWUgKiAwLjA5KSAqIDAuMik7CiAgICAgICAgICBxLnh6ICo9IHJvdCgtMC4yICsgY29zKHVfdGltZSAqIDAuMDcpICogMC4xNik7CgogICAgICAgICAgZmxvYXQgZDEgPSBzZE9jdGFoZWRyb24ocSAtIHZlYzMoMC4wLCAwLjEgKiBzaW4odV90aW1lICogMC4yNSksIDMuNiksIDAuOTUpOwogICAgICAgICAgZmxvYXQgZDIgPSBzZE9jdGFoZWRyb24oKHEgLSB2ZWMzKDEuMzUsIC0wLjI1LCA1LjEpKSAqIHZlYzMoMC44NSwgMS4yNSwgMC44NSksIDAuODIpOwogICAgICAgICAgZmxvYXQgZDMgPSBzZE9jdGFoZWRyb24oKHEgLSB2ZWMzKC0xLjQ1LCAwLjM1LCA0LjYpKSAqIHZlYzMoMS4xNSwgMC44LCAxLjA1KSwgMC43Nik7CgogICAgICAgICAgZmxvYXQgZHJpZnQgPSAobm9pc2UocS54eSAqIDEuMiArIHVfdGltZSAqIDAuMDUpIC0gMC41KSAqIDAuMTg7CiAgICAgICAgICBmbG9hdCBkID0gbWluKG1pbihkMSwgZDIpLCBkMykgKyBkcmlmdDsKICAgICAgICAgIHJldHVybiBkOwogICAgICAgIH0KCiAgICAgICAgdmVjMyBodWVSb3RhdGVTZXBpYSh2ZWMzIGMpewogICAgICAgICAgbWF0MyBzZXBpYSA9IG1hdDMoCiAgICAgICAgICAgIDAuMzkzLCAwLjc2OSwgMC4xODksCiAgICAgICAgICAgIDAuMzQ5LCAwLjY4NiwgMC4xNjgsCiAgICAgICAgICAgIDAuMjcyLCAwLjUzNCwgMC4xMzEKICAgICAgICAgICk7CiAgICAgICAgICB2ZWMzIHMgPSBjICogc2VwaWE7CiAgICAgICAgICByZXR1cm4gbWl4KGMsIHMsIDAuMzQpOwogICAgICAgIH0KCiAgICAgICAgdmVjMyBwYWxldHRlKGZsb2F0IHQpewogICAgICAgICAgdmVjMyBicm93biA9IHZlYzMoMC4zNjA4LCAwLjIxOTYsIDAuMTMzMyk7CiAgICAgICAgICB2ZWMzIG1vc3MgPSB2ZWMzKDAuMTgwNCwgMC4yMjc1LCAwLjE4NDMpOwogICAgICAgICAgdmVjMyB3YXJtID0gdmVjMygwLjY5MDIsIDAuNTY0NywgMC40MzkyKTsKICAgICAgICAgIHZlYzMgYmFzZSA9IG1peChtb3NzLCBicm93biwgdCk7CiAgICAgICAgICBiYXNlID0gbWl4KGJhc2UsIHdhcm0sIHQgKiB0ICogMC4zMik7CiAgICAgICAgICByZXR1cm4gaHVlUm90YXRlU2VwaWEoYmFzZSk7CiAgICAgICAgfQoKICAgICAgICB2b2lkIG1haW4oKXsKICAgICAgICAgIHZlYzIgdXYgPSAoZ2xfRnJhZ0Nvb3JkLnh5IC0gMC41ICogdV9yZXNvbHV0aW9uLnh5KSAvIHVfcmVzb2x1dGlvbi55OwoKICAgICAgICAgIHZlYzIgZ3V2ID0gZ2xfRnJhZ0Nvb3JkLnh5IC8gdV9yZXNvbHV0aW9uLnh5OwogICAgICAgICAgZmxvYXQgZ3JhaW4gPSBub2lzZShnbF9GcmFnQ29vcmQueHkgKiAwLjg1ICsgdV90aW1lICogMC4zNSkgKiAwLjA2OwogICAgICAgICAgZmxvYXQgZmllbGQgPSBub2lzZSh1diAqIDUuMCArIHZlYzIoMC4wLCB1X3RpbWUgKiAwLjAzKSk7CiAgICAgICAgICBmbG9hdCBwYXJ0aWNsZXMgPSBzbW9vdGhzdGVwKDAuODIsIDEuMCwgbm9pc2UodXYgKiA2MC4wICsgdV90aW1lICogMC4wMikpICogMC4wODsKCiAgICAgICAgICB2ZWMzIHJvID0gdmVjMygwLjAsIDAuMCwgLTEuNik7CiAgICAgICAgICB2ZWMzIHJkID0gbm9ybWFsaXplKHZlYzModXYsIDEuNSkpOwoKICAgICAgICAgIGZsb2F0IHQgPSAwLjA7CiAgICAgICAgICBmbG9hdCBoaXQgPSAwLjA7CiAgICAgICAgICBmbG9hdCBnbG93ID0gMC4wOwoKICAgICAgICAgIGZvcihpbnQgaSA9IDA7IGkgPCA3MjsgaSsrKXsKICAgICAgICAgICAgdmVjMyBwID0gcm8gKyByZCAqIHQ7CiAgICAgICAgICAgIGZsb2F0IGQgPSBtYXAocCk7CiAgICAgICAgICAgIGdsb3cgKz0gMC4wMTQgLyAoMC4wNiArIGFicyhkKSk7CiAgICAgICAgICAgIGlmKGQgPCAwLjAwMil7CiAgICAgICAgICAgICAgaGl0ID0gMS4wOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHQgKz0gZCAqIDAuNzI7CiAgICAgICAgICAgIGlmKHQgPiA5LjApIGJyZWFrOwogICAgICAgICAgfQoKICAgICAgICAgIGZsb2F0IHB1bHNlID0gMC41ICsgMC41ICogc2luKHVfdGltZSAqIDAuMjgpOwogICAgICAgICAgZmxvYXQgbHVtID0gc21vb3Roc3RlcCgwLjAsIDEuNiwgZ2xvdykgKiAoMC42NSArIHB1bHNlICogMC4xOCk7CgogICAgICAgICAgdmVjMyBjb2wgPSBwYWxldHRlKGNsYW1wKGx1bSwgMC4wLCAxLjApKTsKICAgICAgICAgIGNvbCArPSB2ZWMzKGZpZWxkICogMC4wMyArIHBhcnRpY2xlcyArIGdyYWluKTsKICAgICAgICAgIGNvbCAqPSAwLjcyOwoKICAgICAgICAgIGZsb2F0IHZpZ25ldHRlID0gc21vb3Roc3RlcCgxLjI4LCAwLjEyLCBsZW5ndGgodXYpKTsKICAgICAgICAgIGNvbCAqPSB2aWduZXR0ZTsKCiAgICAgICAgICBmbG9hdCBsdW1hID0gZG90KGNvbCwgdmVjMygwLjI5OSwgMC41ODcsIDAuMTE0KSk7CiAgICAgICAgICBjb2wgPSBtaXgodmVjMyhsdW1hKSwgY29sLCAxLjEpOwoKICAgICAgICAgIGNvbCA9IHRhbmgoY29sICogMS4zKTsKCiAgICAgICAgICBmbG9hdCBkZXB0aEZhZGUgPSBzbW9vdGhzdGVwKDkuMCwgMi4wLCB0KTsKICAgICAgICAgIGZsb2F0IGFscGhhID0gMC4yMiArIGx1bSAqIDAuMTggKyBkZXB0aEZhZGUgKiAwLjA0OwoKICAgICAgICAgIGdsX0ZyYWdDb2xvciA9IHZlYzQoY29sLCBhbHBoYSk7CiAgICAgICAgfQogICAgICBgOwoKICAgICAgZnVuY3Rpb24gY29tcGlsZSh0eXBlLCBzb3VyY2UpIHsKICAgICAgICBjb25zdCBzaGFkZXIgPSBnbC5jcmVhdGVTaGFkZXIodHlwZSk7CiAgICAgICAgZ2wuc2hhZGVyU291cmNlKHNoYWRlciwgc291cmNlKTsKICAgICAgICBnbC5jb21waWxlU2hhZGVyKHNoYWRlcik7CiAgICAgICAgcmV0dXJuIHNoYWRlcjsKICAgICAgfQoKICAgICAgY29uc3QgdnMgPSBjb21waWxlKGdsLlZFUlRFWF9TSEFERVIsIHZlcnRleFNyYyk7CiAgICAgIGNvbnN0IGZzID0gY29tcGlsZShnbC5GUkFHTUVOVF9TSEFERVIsIGZyYWdtZW50U3JjKTsKICAgICAgY29uc3QgcHJvZ3JhbSA9IGdsLmNyZWF0ZVByb2dyYW0oKTsKICAgICAgZ2wuYXR0YWNoU2hhZGVyKHByb2dyYW0sIHZzKTsKICAgICAgZ2wuYXR0YWNoU2hhZGVyKHByb2dyYW0sIGZzKTsKICAgICAgZ2wubGlua1Byb2dyYW0ocHJvZ3JhbSk7CiAgICAgIGdsLnVzZVByb2dyYW0ocHJvZ3JhbSk7CgogICAgICBjb25zdCBidWZmZXIgPSBnbC5jcmVhdGVCdWZmZXIoKTsKICAgICAgZ2wuYmluZEJ1ZmZlcihnbC5BUlJBWV9CVUZGRVIsIGJ1ZmZlcik7CiAgICAgIGdsLmJ1ZmZlckRhdGEoCiAgICAgICAgZ2wuQVJSQVlfQlVGRkVSLAogICAgICAgIG5ldyBGbG9hdDMyQXJyYXkoWwogICAgICAgICAgLTEsIC0xLAogICAgICAgICAgIDEsIC0xLAogICAgICAgICAgLTEsICAxLAogICAgICAgICAgLTEsICAxLAogICAgICAgICAgIDEsIC0xLAogICAgICAgICAgIDEsICAxCiAgICAgICAgXSksCiAgICAgICAgZ2wuU1RBVElDX0RSQVcKICAgICAgKTsKCiAgICAgIGNvbnN0IHBvc2l0aW9uID0gZ2wuZ2V0QXR0cmliTG9jYXRpb24ocHJvZ3JhbSwgJ2FfcG9zaXRpb24nKTsKICAgICAgZ2wuZW5hYmxlVmVydGV4QXR0cmliQXJyYXkocG9zaXRpb24pOwogICAgICBnbC52ZXJ0ZXhBdHRyaWJQb2ludGVyKHBvc2l0aW9uLCAyLCBnbC5GTE9BVCwgZmFsc2UsIDAsIDApOwoKICAgICAgY29uc3QgdVRpbWUgPSBnbC5nZXRVbmlmb3JtTG9jYXRpb24ocHJvZ3JhbSwgJ3VfdGltZScpOwogICAgICBjb25zdCB1UmVzb2x1dGlvbiA9IGdsLmdldFVuaWZvcm1Mb2NhdGlvbihwcm9ncmFtLCAndV9yZXNvbHV0aW9uJyk7CgogICAgICBmdW5jdGlvbiByZXNpemUoKSB7CiAgICAgICAgY29uc3QgZHByID0gTWF0aC5taW4od2luZG93LmRldmljZVBpeGVsUmF0aW8gfHwgMSwgMik7CiAgICAgICAgY2FudmFzLndpZHRoID0gTWF0aC5mbG9vcih3aW5kb3cuaW5uZXJXaWR0aCAqIGRwcik7CiAgICAgICAgY2FudmFzLmhlaWdodCA9IE1hdGguZmxvb3Iod2luZG93LmlubmVySGVpZ2h0ICogZHByKTsKICAgICAgICBnbC52aWV3cG9ydCgwLCAwLCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpOwogICAgICB9CgogICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgcmVzaXplKTsKICAgICAgcmVzaXplKCk7CgogICAgICBmdW5jdGlvbiByZW5kZXIodGltZSkgewogICAgICAgIGdsLnVuaWZvcm0xZih1VGltZSwgdGltZSAqIDAuMDAxKTsKICAgICAgICBnbC51bmlmb3JtMmYodVJlc29sdXRpb24sIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7CiAgICAgICAgZ2wuZHJhd0FycmF5cyhnbC5UUklBTkdMRVMsIDAsIDYpOwogICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShyZW5kZXIpOwogICAgICB9CgogICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUocmVuZGVyKTsKICAgIH0pKCk7CiAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=";
    const assetFiles = ["assets/page-01-3186f9ea-5f5a-49f7-8fcf-568ad52f515e-3840w.webp","assets/page-02-eca707cc-a5b7-439a-b4fd-247f6106c2e1-1600w.jpg","assets/page-03-0d868fef-f560-45ca-ab35-5dad4fc29059-3840w.webp","assets/page-04-582afef4-b810-47b8-a047-8b3597c323e1-3840w.webp","assets/page-05-65695f80-23f9-46ee-8487-cbb6c93cc48b-3840w.webp","assets/page-06-c92852bb-a510-405a-85ab-ffa0fde136a4-1600w.jpg"];
    const runtimeFiles = ["../../../../assets/runtime/runtime-163ebd087cfc-iconify-icon-min.js","../../../../assets/runtime/runtime-36c29c028158-scrolltrigger-min.js","../../../../assets/runtime/runtime-cb9c6262bdd7-gsap-min.js","../../../../assets/runtime/runtime-ccc8894b3418-runtime.js"];
    const frame = document.getElementById("neuform-demo");
    const decodeBytes = (value) => Uint8Array.from(atob(value), (character) => character.charCodeAt(0));
    const decode = (value) => new TextDecoder().decode(decodeBytes(value));
    const encodeBytes = (bytes) => {
      let binary = "";
      for (let index = 0; index < bytes.length; index += 32768) {
        binary += String.fromCharCode(...bytes.subarray(index, index + 32768));
      }
      return btoa(binary);
    };
    const mediaTypes = {
      avif: "image/avif",
      gif: "image/gif",
      jpg: "image/jpeg",
      jpeg: "image/jpeg",
      mp4: "video/mp4",
      png: "image/png",
      webm: "video/webm",
      webp: "image/webp"
    };
    const loadAsset = async (file) => {
      const response = await fetch(file, { cache: "no-store", credentials: "omit", redirect: "error" });
      if (!response.ok) throw new Error("Could not load local demo asset: " + file);
      const extension = file.split(".").pop().toLowerCase();
      const contentType = mediaTypes[extension] || "application/octet-stream";
      const bytes = new Uint8Array(await response.arrayBuffer());
      return { base64: encodeBytes(bytes), contentType, file, kind: "asset" };
    };
    Promise.allSettled(assetFiles.map(loadAsset)).then((results) => {
      const runtimeSources = runtimeFiles.map((file) => new URL(file, location.href).href).join(" ");
      const source = decode(encodedHtml).replace("__NEUFORM_RUNTIME_SOURCES__", runtimeSources);
      const mediaAssets = [];
      for (const result of results) {
        if (result.status !== "fulfilled") continue;
        mediaAssets.push(result.value);
      }
      frame.addEventListener("load", () => {
        frame.contentWindow.postMessage({ type: "neuform-assets-v1", assets: mediaAssets }, "*");
      }, { once: true });
      frame.srcdoc = source;
    }).catch((error) => {
      document.body.innerHTML = '<div class="error">Unable to load this sandboxed demo.</div>';
      console.error(error);
    });
  </script>
</body>
</html>

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Security

What our scanner noticed· Medium risk

  • Large base64-encoded blobs

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
Meng To
Publisher
Meng To (Community)
Source
MengTo/Skills · agent-skills/web-design/clean-minimal-beige-light-mode · commit 5ea1661
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Meng To.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download clean-minimal-beige-light-mode.zip