@layer components {
  :not(.widget-pdf-viewer) > .left.sidebar, :not(.widget-pdf-viewer) > .right.sidebar {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    z-index: auto !important;
  }
  .widget-pdf-viewer {
    contain: layout style paint;
    width: 100%;
    position: relative;
    background: var(--light);
    border: 1px solid var(--lightgray);
    border-radius: 0.5rem;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    isolation: isolate;
  }
  .pdf-viewer-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    background: var(--lightgray);
    border-bottom: 1px solid var(--gray);
    gap: 0.5rem;
  }
  .pdf-viewer-info {
    font-size: 0.875rem;
    color: var(--darkgray);
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  .pdf-viewer-controls {
    display: flex;
    gap: 0.5rem;
    align-items: center;
  }
  .pdf-viewer-download-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--secondary);
    color: white;
    border: none;
    border-radius: 0.25rem;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s ease;
    text-decoration: none;
  }
  .pdf-viewer-download-btn:hover {
    background: var(--tertiary);
  }
  .pdf-viewer-download-btn svg {
    width: 1rem;
    height: 1rem;
  }
  .pdf-viewer-canvas-container {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    background: var(--light);
    padding: 1rem;
    min-height: 0;
    position: relative;
  }
  .pdf-viewer-page-container {
    margin: 0 auto 1rem auto;
    max-width: 100%;
    position: relative;
    background-color: white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }
  .pdf-viewer-page-container .pdf-canvas {
    display: block;
    width: 100%;
    height: 100%;
  }
  .pdf-viewer-page-container .textLayer {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    opacity: 1;
    line-height: 1;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
    forced-color-adjust: none;
  }
  .pdf-viewer-page-container .textLayer span,
  .pdf-viewer-page-container .textLayer br {
    color: transparent;
    position: absolute;
    white-space: pre;
    cursor: text;
    transform-origin: 0% 0%;
  }
  .pdf-viewer-page-container .textLayer ::selection {
    background: rgba(0, 100, 255, 0.3);
  }
  .pdf-viewer-page-container .textLayer br::selection {
    background: transparent;
  }
  .pdf-viewer-page-container .textLayer .highlight {
    margin: -1px;
    padding: 1px;
    background-color: rgba(180, 0, 170, 0.3);
    border-radius: 4px;
  }
  .pdf-viewer-page-container .textLayer .highlight.appended {
    position: initial;
  }
  .pdf-viewer-page-container .textLayer .highlight.begin {
    border-radius: 4px 0 0 4px;
  }
  .pdf-viewer-page-container .textLayer .highlight.end {
    border-radius: 0 4px 4px 0;
  }
  .pdf-viewer-page-container .textLayer .highlight.middle {
    border-radius: 0;
  }
  .pdf-viewer-page-container .textLayer .highlight.selected {
    background-color: rgba(0, 100, 255, 0.3);
  }
  .pdf-viewer-page-container .annotationLayer {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    z-index: 2;
  }
  .pdf-viewer-page-container .annotationLayer section {
    position: absolute;
    text-align: initial;
    pointer-events: auto;
  }
  .pdf-viewer-page-container .annotationLayer .linkAnnotation > a {
    position: absolute;
    font-size: 1em;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 0, 0);
    opacity: 0.2;
    border: none;
    cursor: pointer;
  }
  .pdf-viewer-page-container .annotationLayer .linkAnnotation > a:hover {
    opacity: 0.4;
    background: rgba(255, 255, 0, 0.2);
    box-shadow: 0 2px 10px rgb(255, 255, 0);
  }
  .pdf-viewer-page-container .annotationLayer .textWidgetAnnotation input,
  .pdf-viewer-page-container .annotationLayer .textWidgetAnnotation textarea,
  .pdf-viewer-page-container .annotationLayer .textWidgetAnnotation select,
  .pdf-viewer-page-container .annotationLayer .choiceWidgetAnnotation input,
  .pdf-viewer-page-container .annotationLayer .choiceWidgetAnnotation textarea,
  .pdf-viewer-page-container .annotationLayer .choiceWidgetAnnotation select {
    background-color: rgba(0, 54, 255, 0.13);
    border: 1px solid transparent;
    box-sizing: border-box;
    font-size: calc(9px * var(--scale-factor));
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0 3px;
    vertical-align: top;
    resize: none;
  }
  .pdf-viewer-page-container .annotationLayer .textWidgetAnnotation input:focus,
  .pdf-viewer-page-container .annotationLayer .textWidgetAnnotation textarea:focus,
  .pdf-viewer-page-container .annotationLayer .textWidgetAnnotation select:focus,
  .pdf-viewer-page-container .annotationLayer .choiceWidgetAnnotation input:focus,
  .pdf-viewer-page-container .annotationLayer .choiceWidgetAnnotation textarea:focus,
  .pdf-viewer-page-container .annotationLayer .choiceWidgetAnnotation select:focus {
    background-color: rgba(0, 54, 255, 0.25);
    border: 1px solid rgba(0, 54, 255, 0.4);
  }
  .pdf-viewer-page-container .page {
    position: relative;
    overflow: visible;
    background-clip: content-box;
    background-color: white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin: 0 auto;
    max-width: 100%;
  }
  .pdf-viewer-page-container .page > * {
    max-width: 100%;
  }
  .pdf-viewer-page-container .textLayer ::selection {
    background: rgba(0, 100, 255, 0.3);
  }
  .pdf-viewer-page-container .annotationLayer :is(.linkAnnotation, .buttonWidgetAnnotation.pushButton) > a:hover {
    opacity: 0.2;
    background-color: rgba(255, 255, 0, 0.5);
  }
  .pdf-viewer-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    color: var(--gray);
    font-size: 0.875rem;
  }
  .pdf-viewer-error {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    color: var(--darkgray);
    text-align: center;
  }
  .pdf-viewer-error-title {
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--dark);
  }
  .pdf-viewer-error-message {
    font-size: 0.875rem;
    margin-bottom: 1rem;
  }
  .pdf-viewer-error a {
    color: var(--secondary);
    text-decoration: underline;
  }
  /* Responsive adjustments */
  @media (max-width: 768px) {
    .pdf-viewer-toolbar {
      flex-direction: column;
      align-items: stretch;
    }
    .pdf-viewer-info {
      justify-content: center;
    }
    .pdf-viewer-controls {
      justify-content: center;
    }
  }
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY2hhb3RpY2dvb2Rjb21wdXRpbmcuZ2l0aHViLmlvL2NoYW90aWNnb29kY29tcHV0aW5nLmdpdGh1Yi5pby9xdWFydHovd2lkZ2V0cy9wZGYtdmlld2VyIiwic291cmNlcyI6WyJzdHlsZS5pbmxpbmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQTtFQU1JO0lBSUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFJSjtJQUVFO0lBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0E7SUFDRTtJQUNBO0lBQ0E7O0VBSUY7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0FBQUE7SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFNTjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0lBQ0U7SUFDQTtJQUNBOztFQUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDRTtJQUNBO0lBQ0E7O0VBUUo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0lBR0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0lBQ0U7SUFDQTs7RUFPUjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdBO0lBQ0U7O0VBS0o7SUFDRTs7RUFJRjtJQUNFO0lBQ0E7O0VBSUo7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBOztBQUdGO0VBQ0E7SUFDRTtNQUNFO01BQ0E7O0lBR0Y7TUFDRTs7SUFHRjtNQUNFIiwic291cmNlc0NvbnRlbnQiOlsiLy8gUERGIFdpZGdldCBDU1MgSXNvbGF0aW9uIFN0cmF0ZWd5OlxuLy8gMS4gVXNlIENTUyBjb250YWlubWVudCB0byBwcmV2ZW50IGxheW91dC9zdHlsZSBsZWFrc1xuLy8gMi4gRGVmZW5zaXZlbHkgb3ZlcnJpZGUgYW55IFBERi5qcyBDU1MgdGhhdCBtaWdodCBlc2NhcGUgdGhlIHdpZGdldFxuLy8gMy4gQWxsIFBERi5qcyBlbGVtZW50cyBhcmUgc2NvcGVkIHdpdGhpbiAud2lkZ2V0LXBkZi12aWV3ZXJcblxuQGxheWVyIGNvbXBvbmVudHMge1xuXG4gIC8vIERlZmVuc2l2ZSBvdmVycmlkZXMgZm9yIFF1YXJ0eiBsYXlvdXQgZWxlbWVudHNcbiAgLy8gUHJldmVudHMgUERGLmpzJ3MgYmFyZSBzZWxlY3RvcnMgZnJvbSBhZmZlY3RpbmcgdGhlIHBhZ2UgbGF5b3V0XG4gIDpub3QoLndpZGdldC1wZGYtdmlld2VyKSB7XG5cbiAgICAmPi5sZWZ0LnNpZGViYXIsXG4gICAgJj4ucmlnaHQuc2lkZWJhciB7XG4gICAgICAvLyBFbnN1cmUgUXVhcnR6IHNpZGViYXJzIHJlbWFpbiB1bmFmZmVjdGVkIGJ5IFBERi5qcyBDU1NcbiAgICAgIC8vIFRoZXNlIHJ1bGVzIGNvdW50ZXJhY3QgUERGLmpzJ3MgLnNpZGViYXIgc2VsZWN0b3JcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAud2lkZ2V0LXBkZi12aWV3ZXIge1xuICAgIC8vIENTUyBDb250YWlubWVudDogUHJldmVudHMgaW50ZXJuYWwgbGF5b3V0IGZyb20gYWZmZWN0aW5nIGV4dGVybmFsIGxheW91dFxuICAgIGNvbnRhaW46IGxheW91dCBzdHlsZSBwYWludDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGlnaHRncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAvLyBJc29sYXRlIHRoaXMgd2lkZ2V0J3MgY29udGV4dCBmcm9tIHBhcmVudCBwYWdlXG4gICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICB9XG5cbiAgLnBkZi12aWV3ZXItdG9vbGJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodGdyYXkpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ncmF5KTtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gIC5wZGYtdmlld2VyLWluZm8ge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6IHZhcigtLWRhcmtncmF5KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cblxuICAucGRmLXZpZXdlci1jb250cm9scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLnBkZi12aWV3ZXItZG93bmxvYWQtYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC4zNzVyZW07XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnkpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5wZGYtdmlld2VyLWRvd25sb2FkLWJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGVydGlhcnkpO1xuICB9XG5cbiAgLnBkZi12aWV3ZXItZG93bmxvYWQtYnRuIHN2ZyB7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5cbiAgLnBkZi12aWV3ZXItY2FudmFzLWNvbnRhaW5lciB7XG4gICAgZmxleDogMTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gUmVxdWlyZWQgZm9yIFBERlZpZXdlciBjb21wb25lbnRcbiAgfVxuXG4gIC5wZGYtdmlld2VyLXBhZ2UtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgLy8gQ2FudmFzIGVsZW1lbnRcbiAgICAucGRmLWNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFRleHQgbGF5ZXIgZm9yIHNlbGVjdGlvbiBhbmQgbGlua3NcbiAgICAudGV4dExheWVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgICB0ZXh0LXNpemUtYWRqdXN0OiBub25lO1xuICAgICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTtcblxuICAgICAgc3BhbixcbiAgICAgIGJyIHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgICAgIGN1cnNvcjogdGV4dDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gICAgICB9XG5cbiAgICAgIDo6c2VsZWN0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAxMDAsIDI1NSwgMC4zKTtcbiAgICAgIH1cblxuICAgICAgYnI6OnNlbGVjdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAuaGlnaGxpZ2h0IHtcbiAgICAgICAgbWFyZ2luOiAtMXB4O1xuICAgICAgICBwYWRkaW5nOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTgwLCAwLCAxNzAsIDAuMyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAmLmFwcGVuZGVkIHtcbiAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYmVnaW4ge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5lbmQge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5taWRkbGUge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEwMCwgMjU1LCAwLjMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQW5ub3RhdGlvbiBsYXllciBmb3IgaHlwZXJsaW5rcyBhbmQgaW50ZXJhY3RpdmUgZWxlbWVudHNcbiAgICAuYW5ub3RhdGlvbkxheWVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB6LWluZGV4OiAyO1xuXG4gICAgICBzZWN0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBpbml0aWFsO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIH1cblxuICAgICAgLmxpbmtBbm5vdGF0aW9uIHtcbiAgICAgICAgJj5hIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDAsIDApO1xuICAgICAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAwLCAwLjIpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTBweCByZ2JhKDI1NSwgMjU1LCAwLCAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRleHRXaWRnZXRBbm5vdGF0aW9uLFxuICAgICAgLmNob2ljZVdpZGdldEFubm90YXRpb24ge1xuXG4gICAgICAgIGlucHV0LFxuICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDU0LCAyNTUsIDAuMTMpO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgZm9udC1zaXplOiBjYWxjKDlweCAqIHZhcigtLXNjYWxlLWZhY3RvcikpO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAzcHg7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICByZXNpemU6IG5vbmU7XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgNTQsIDI1NSwgMC4yNSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDU0LCAyNTUsIDAuNCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUERGLmpzIHBhZ2Ugd3JhcHBlciBzdHlsZXMgKGxlZ2FjeSwgbWF5IGJlIHJlbW92ZWQpXG4gICAgLnBhZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgIC8vIEVuc3VyZSBhbGwgY2hpbGQgZWxlbWVudHMgcmVzcGVjdCB0aGUgd2lkdGhcbiAgICAgICY+KiB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBPdmVycmlkZSBQREYuanMgZGVmYXVsdCB0ZXh0IGxheWVyIHNlbGVjdGlvbiBjb2xvciB0byBtYXRjaCBzaXRlIHRoZW1lXG4gICAgLnRleHRMYXllciA6OnNlbGVjdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEwMCwgMjU1LCAwLjMpO1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSBhbm5vdGF0aW9uIGxheWVyIGxpbmtzIGFyZSB2aXNpYmxlIG9uIGhvdmVyXG4gICAgLmFubm90YXRpb25MYXllciA6aXMoLmxpbmtBbm5vdGF0aW9uLCAuYnV0dG9uV2lkZ2V0QW5ub3RhdGlvbi5wdXNoQnV0dG9uKT5hOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDAsIDAuNSk7XG4gICAgfVxuICB9XG5cbiAgLnBkZi12aWV3ZXItbG9hZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgY29sb3I6IHZhcigtLWdyYXkpO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAucGRmLXZpZXdlci1lcnJvciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBjb2xvcjogdmFyKC0tZGFya2dyYXkpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wZGYtdmlld2VyLWVycm9yLXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICBjb2xvcjogdmFyKC0tZGFyayk7XG4gIH1cblxuICAucGRmLXZpZXdlci1lcnJvci1tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGRmLXZpZXdlci1lcnJvciBhIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIC8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnBkZi12aWV3ZXItdG9vbGJhciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgLnBkZi12aWV3ZXItaW5mbyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAucGRmLXZpZXdlci1jb250cm9scyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */