UNPKG

ng-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

489 lines (481 loc) 52.9 kB
/** * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE */ import { NgStyle, NgTemplateOutlet } from '@angular/common'; import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core'; import { isNonEmptyString, isTemplateRef } from 'ng-zorro-antd/core/util'; import { NzIconModule } from 'ng-zorro-antd/icon'; import * as i0 from "@angular/core"; import * as i1 from "ng-zorro-antd/icon"; export class NzHashCodeComponent { copyHandle() { this.nzOnCopy.emit(this.nzValue); } constructor(cdr) { this.cdr = cdr; this.nzValue = ''; this.nzTitle = 'HashCode'; this.nzLogo = ''; this.nzMode = 'double'; this.nzType = 'default'; this.nzOnCopy = new EventEmitter(); this.hashDataList = []; } ngOnChanges(changes) { const { nzValue } = changes; if (nzValue) { this.setData(this.nzValue); } } setData(value) { if (this.nzMode !== 'single') { this.hashDataList = value.match(/.{1,4}/g); } else { this.hashDataList = value.match(/.{1,8}/g); } this.cdr.markForCheck(); } get isNzLogoTemplateRef() { return isTemplateRef(this.nzLogo); } get isNzLogoNonEmptyString() { return isNonEmptyString(this.nzLogo); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NzHashCodeComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.2", type: NzHashCodeComponent, isStandalone: true, selector: "nz-hash-code", inputs: { nzValue: "nzValue", nzTitle: "nzTitle", nzLogo: "nzLogo", nzMode: "nzMode", nzType: "nzType" }, outputs: { nzOnCopy: "nzOnCopy" }, host: { properties: { "class.ant-hashCode-default": "nzType === 'default'", "class.ant-hashCode-primary": "nzType === 'primary'", "class.ant-hashCode-double": "nzMode === 'double'", "class.ant-hashCode-single": "nzMode === 'single'", "class.ant-hashCode-strip": "nzMode === 'strip'", "class.ant-hashCode-rect": "nzMode === 'rect'" }, classAttribute: "ant-hashCode" }, exportAs: ["nzHashCode"], usesOnChanges: true, ngImport: i0, template: ` @if (nzMode !== 'single' && nzMode !== 'rect') { <div class="ant-hashCode-header"> <div class="ant-hashCode-header-title">{{ nzTitle }}</div> <div class="ant-hashCode-header-copy" (click)="copyHandle()"> <span nz-icon nzType="copy" nzTheme="outline"></span> </div> <div class="ant-hashCode-header-logo"> @if (isNzLogoTemplateRef) { <ng-container *ngTemplateOutlet="$any(nzLogo)" /> } @if (isNzLogoNonEmptyString) { <span [innerHTML]="nzLogo"></span> } </div> </div> } @if (nzMode === 'single' || nzMode === 'rect') { <div class="ant-hashCode-header-copy" (click)="copyHandle()"> <span nz-icon nzType="copy" nzTheme="outline"></span> </div> } <div class="ant-hashCode-contant" [class.ant-hashCode-value-default]="nzType === 'default'" [class.ant-hashCode-value-primary]="nzType === 'primary'" > <div class="ant-hashCode-code-value" [ngStyle]="{ height: nzMode === 'rect' ? '70px' : nzMode === 'single' ? '18px' : '35px' }" > @if (nzMode === 'double') { @if (hashDataList.length > 8) { @for (v of hashDataList.slice(0, 6); track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } <div class="ant-hashCode-code-value-block">····</div> <div class="ant-hashCode-code-value-block">{{ hashDataList[hashDataList.length - 1] }}</div> } @else { @for (v of hashDataList; track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } } } @if (nzMode === 'single') { <div class="ant-hashCode-code-value-block">{{ hashDataList[0] }}</div> <div class="ant-hashCode-code-value-block">····</div> <div class="ant-hashCode-code-value-block">{{ hashDataList[hashDataList.length - 1] }}</div> } @if (nzMode === 'rect' || nzMode === 'strip') { @if (hashDataList.length > 16) { @for (v of hashDataList.slice(0, 14); track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } <div class="ant-hashCode-code-value-block">····</div> <div class="ant-hashCode-code-value-block">{{ hashDataList[hashDataList.length - 1] }}</div> } @else { @for (v of hashDataList; track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } } } </div> <div class="ant-hashCode-texaure" [class.ant-hashCode-texaure-double]="nzMode === 'double'" [class.ant-hashCode-texaure-single]="nzMode === 'single'" [class.ant-hashCode-texaure-strip]="nzMode === 'strip'" [class.ant-hashCode-texaure-rect]="nzMode === 'rect'" > <svg width="545px" height="111px" viewBox="0 0 545 111" version="1.1" xmlns="http://www.w3.org/2000/svg"> <defs> <linearGradient x1="15.7162414%" y1="50.0992184%" x2="49.5266564%" y2="50.0234565%" id="linearGradient-2bm6v9icte-1" > <stop stop-color="#A76A00" offset="0%"></stop> <stop stop-color="#F50006" offset="61.2716995%"></stop> <stop stop-color="#DA8500" offset="100%"></stop> </linearGradient> </defs> <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> <g id="画板" transform="translate(-163.000000, -315.000000)" stroke="url(#linearGradient-2bm6v9icte-1)" stroke-width="0.72" > <g id="编组-9" transform="translate(163.535712, 316.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> <g id="编组-9" transform="translate(163.535712, 373.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> <g id="编组-9" transform="translate(435.535712, 316.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> <g id="编组-9" transform="translate(435.535712, 373.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> </g> </g> </svg> </div> </div> `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i1.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NzHashCodeComponent, decorators: [{ type: Component, args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgTemplateOutlet, NgStyle, NzIconModule], selector: 'nz-hash-code', exportAs: 'nzHashCode', template: ` @if (nzMode !== 'single' && nzMode !== 'rect') { <div class="ant-hashCode-header"> <div class="ant-hashCode-header-title">{{ nzTitle }}</div> <div class="ant-hashCode-header-copy" (click)="copyHandle()"> <span nz-icon nzType="copy" nzTheme="outline"></span> </div> <div class="ant-hashCode-header-logo"> @if (isNzLogoTemplateRef) { <ng-container *ngTemplateOutlet="$any(nzLogo)" /> } @if (isNzLogoNonEmptyString) { <span [innerHTML]="nzLogo"></span> } </div> </div> } @if (nzMode === 'single' || nzMode === 'rect') { <div class="ant-hashCode-header-copy" (click)="copyHandle()"> <span nz-icon nzType="copy" nzTheme="outline"></span> </div> } <div class="ant-hashCode-contant" [class.ant-hashCode-value-default]="nzType === 'default'" [class.ant-hashCode-value-primary]="nzType === 'primary'" > <div class="ant-hashCode-code-value" [ngStyle]="{ height: nzMode === 'rect' ? '70px' : nzMode === 'single' ? '18px' : '35px' }" > @if (nzMode === 'double') { @if (hashDataList.length > 8) { @for (v of hashDataList.slice(0, 6); track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } <div class="ant-hashCode-code-value-block">····</div> <div class="ant-hashCode-code-value-block">{{ hashDataList[hashDataList.length - 1] }}</div> } @else { @for (v of hashDataList; track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } } } @if (nzMode === 'single') { <div class="ant-hashCode-code-value-block">{{ hashDataList[0] }}</div> <div class="ant-hashCode-code-value-block">····</div> <div class="ant-hashCode-code-value-block">{{ hashDataList[hashDataList.length - 1] }}</div> } @if (nzMode === 'rect' || nzMode === 'strip') { @if (hashDataList.length > 16) { @for (v of hashDataList.slice(0, 14); track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } <div class="ant-hashCode-code-value-block">····</div> <div class="ant-hashCode-code-value-block">{{ hashDataList[hashDataList.length - 1] }}</div> } @else { @for (v of hashDataList; track v) { <div class="ant-hashCode-code-value-block">{{ v }}</div> } } } </div> <div class="ant-hashCode-texaure" [class.ant-hashCode-texaure-double]="nzMode === 'double'" [class.ant-hashCode-texaure-single]="nzMode === 'single'" [class.ant-hashCode-texaure-strip]="nzMode === 'strip'" [class.ant-hashCode-texaure-rect]="nzMode === 'rect'" > <svg width="545px" height="111px" viewBox="0 0 545 111" version="1.1" xmlns="http://www.w3.org/2000/svg"> <defs> <linearGradient x1="15.7162414%" y1="50.0992184%" x2="49.5266564%" y2="50.0234565%" id="linearGradient-2bm6v9icte-1" > <stop stop-color="#A76A00" offset="0%"></stop> <stop stop-color="#F50006" offset="61.2716995%"></stop> <stop stop-color="#DA8500" offset="100%"></stop> </linearGradient> </defs> <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> <g id="画板" transform="translate(-163.000000, -315.000000)" stroke="url(#linearGradient-2bm6v9icte-1)" stroke-width="0.72" > <g id="编组-9" transform="translate(163.535712, 316.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> <g id="编组-9" transform="translate(163.535712, 373.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> <g id="编组-9" transform="translate(435.535712, 316.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> <g id="编组-9" transform="translate(435.535712, 373.000000)" style="mix-blend-mode: exclusion;"> <path d="M0,0 C22.68,0 22.68,5.76 45.36,5.76 C68.04,5.76 68.04,0 90.72,0 C113.4,0 113.4,5.76 136.08,5.76 C158.76,5.76 158.76,0 181.44,0 C204.12,0 204.12,5.76 226.8,5.76 C249.48,5.76 249.48,0 272.16,0" id="路径-3" ></path> <path d="M0,28.08 C22.68,28.08 22.68,33.84 45.36,33.84 C68.04,33.84 68.04,28.08 90.72,28.08 C113.4,28.08 113.4,33.84 136.08,33.84 C158.76,33.84 158.76,28.08 181.44,28.08 C204.12,28.08 204.12,33.84 226.8,33.84 C249.48,33.84 249.48,28.08 272.16,28.08" id="路径-3备份-2" ></path> <path d="M0,37.44 C22.68,37.44 22.68,43.2 45.36,43.2 C68.04,43.2 68.04,37.44 90.72,37.44 C113.4,37.44 113.4,43.2 136.08,43.2 C158.76,43.2 158.76,37.44 181.44,37.44 C204.12,37.44 204.12,43.2 226.8,43.2 C249.48,43.2 249.48,37.44 272.16,37.44" id="路径-3备份-2" ></path> <path d="M0,9.36 C22.68,9.36 22.68,15.12 45.36,15.12 C68.04,15.12 68.04,9.36 90.72,9.36 C113.4,9.36 113.4,15.12 136.08,15.12 C158.76,15.12 158.76,9.36 181.44,9.36 C204.12,9.36 204.12,15.12 226.8,15.12 C249.48,15.12 249.48,9.36 272.16,9.36" id="路径-3备份-2" ></path> <path d="M0,18.72 C22.68,18.72 22.68,24.48 45.36,24.48 C68.04,24.48 68.04,18.72 90.72,18.72 C113.4,18.72 113.4,24.48 136.08,24.48 C158.76,24.48 158.76,18.72 181.44,18.72 C204.12,18.72 204.12,24.48 226.8,24.48 C249.48,24.48 249.48,18.72 272.16,18.72" id="路径-3备份-2" ></path> <path d="M0,46.8 C22.68,46.8 22.68,52.56 45.36,52.56 C68.04,52.56 68.04,46.8 90.72,46.8 C113.4,46.8 113.4,52.56 136.08,52.56 C158.76,52.56 158.76,46.8 181.44,46.8 C204.12,46.8 204.12,52.56 226.8,52.56 C249.48,52.56 249.48,46.8 272.16,46.8" id="路径-3备份-2" ></path> </g> </g> </g> </svg> </div> </div> `, host: { class: 'ant-hashCode', '[class.ant-hashCode-default]': `nzType === 'default'`, '[class.ant-hashCode-primary]': `nzType === 'primary'`, '[class.ant-hashCode-double]': `nzMode === 'double'`, '[class.ant-hashCode-single]': `nzMode === 'single'`, '[class.ant-hashCode-strip]': `nzMode === 'strip'`, '[class.ant-hashCode-rect]': `nzMode === 'rect'` } }] }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { nzValue: [{ type: Input }], nzTitle: [{ type: Input }], nzLogo: [{ type: Input }], nzMode: [{ type: Input }], nzType: [{ type: Input }], nzOnCopy: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC1jb2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2NvbXBvbmVudHMvaGFzaC1jb2RlL2hhc2gtY29kZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUdQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQWlPbEQsTUFBTSxPQUFPLG1CQUFtQjtJQVU5QixVQUFVO1FBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWJqQyxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBQ3JCLFlBQU8sR0FBVyxVQUFVLENBQUM7UUFDN0IsV0FBTSxHQUErQixFQUFFLENBQUM7UUFDeEMsV0FBTSxHQUFlLFFBQVEsQ0FBQztRQUM5QixXQUFNLEdBQTBCLFNBQVMsQ0FBQztRQUNoQyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV6RCxpQkFBWSxHQUFhLEVBQUUsQ0FBQztJQU1pQixDQUFDO0lBRTlDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRTVCLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFhO1FBQ25CLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFhLENBQUM7UUFDekQsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFhLENBQUM7UUFDekQsQ0FBQztRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxzQkFBc0I7UUFDeEIsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkMsQ0FBQzs4R0F2Q1UsbUJBQW1CO2tHQUFuQixtQkFBbUIsb25CQXZOcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRNVCw0REEvTVMsZ0JBQWdCLG9KQUFFLE9BQU8sMEVBQUUsWUFBWTs7MkZBME50QyxtQkFBbUI7a0JBN04vQixTQUFTO21CQUFDO29CQUNULGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQztvQkFDbEQsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFFBQVEsRUFBRSxZQUFZO29CQUN0QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRNVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLGNBQWM7d0JBQ3JCLDhCQUE4QixFQUFFLHNCQUFzQjt3QkFDdEQsOEJBQThCLEVBQUUsc0JBQXNCO3dCQUN0RCw2QkFBNkIsRUFBRSxxQkFBcUI7d0JBQ3BELDZCQUE2QixFQUFFLHFCQUFxQjt3QkFDcEQsNEJBQTRCLEVBQUUsb0JBQW9CO3dCQUNsRCwyQkFBMkIsRUFBRSxtQkFBbUI7cUJBQ2pEO2lCQUNGO3NGQUVVLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ2EsUUFBUTtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9naXRodWIuY29tL05HLVpPUlJPL25nLXpvcnJvLWFudGQvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7IE5nU3R5bGUsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgaXNOb25FbXB0eVN0cmluZywgaXNUZW1wbGF0ZVJlZiB9IGZyb20gJ25nLXpvcnJvLWFudGQvY29yZS91dGlsJztcbmltcG9ydCB7IE56SWNvbk1vZHVsZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvaWNvbic7XG5cbmltcG9ydCB7IE56TW9kZVR5cGUgfSBmcm9tICcuL3R5cGluZ3MnO1xuXG5AQ29tcG9uZW50KHtcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ1RlbXBsYXRlT3V0bGV0LCBOZ1N0eWxlLCBOekljb25Nb2R1bGVdLFxuICBzZWxlY3RvcjogJ256LWhhc2gtY29kZScsXG4gIGV4cG9ydEFzOiAnbnpIYXNoQ29kZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmIChuek1vZGUgIT09ICdzaW5nbGUnICYmIG56TW9kZSAhPT0gJ3JlY3QnKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiYW50LWhhc2hDb2RlLWhlYWRlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LWhhc2hDb2RlLWhlYWRlci10aXRsZVwiPnt7IG56VGl0bGUgfX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFudC1oYXNoQ29kZS1oZWFkZXItY29weVwiIChjbGljayk9XCJjb3B5SGFuZGxlKClcIj5cbiAgICAgICAgICA8c3BhbiBuei1pY29uIG56VHlwZT1cImNvcHlcIiBuelRoZW1lPVwib3V0bGluZVwiPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtaGFzaENvZGUtaGVhZGVyLWxvZ29cIj5cbiAgICAgICAgICBAaWYgKGlzTnpMb2dvVGVtcGxhdGVSZWYpIHtcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCIkYW55KG56TG9nbylcIiAvPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKGlzTnpMb2dvTm9uRW1wdHlTdHJpbmcpIHtcbiAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwibnpMb2dvXCI+PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKG56TW9kZSA9PT0gJ3NpbmdsZScgfHwgbnpNb2RlID09PSAncmVjdCcpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJhbnQtaGFzaENvZGUtaGVhZGVyLWNvcHlcIiAoY2xpY2spPVwiY29weUhhbmRsZSgpXCI+XG4gICAgICAgIDxzcGFuIG56LWljb24gbnpUeXBlPVwiY29weVwiIG56VGhlbWU9XCJvdXRsaW5lXCI+PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJhbnQtaGFzaENvZGUtY29udGFudFwiXG4gICAgICBbY2xhc3MuYW50LWhhc2hDb2RlLXZhbHVlLWRlZmF1bHRdPVwibnpUeXBlID09PSAnZGVmYXVsdCdcIlxuICAgICAgW2NsYXNzLmFudC1oYXNoQ29kZS12YWx1ZS1wcmltYXJ5XT1cIm56VHlwZSA9PT0gJ3ByaW1hcnknXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYW50LWhhc2hDb2RlLWNvZGUtdmFsdWVcIlxuICAgICAgICBbbmdTdHlsZV09XCJ7IGhlaWdodDogbnpNb2RlID09PSAncmVjdCcgPyAnNzBweCcgOiBuek1vZGUgPT09ICdzaW5nbGUnID8gJzE4cHgnIDogJzM1cHgnIH1cIlxuICAgICAgPlxuICAgICAgICBAaWYgKG56TW9kZSA9PT0gJ2RvdWJsZScpIHtcbiAgICAgICAgICBAaWYgKGhhc2hEYXRhTGlzdC5sZW5ndGggPiA4KSB7XG4gICAgICAgICAgICBAZm9yICh2IG9mIGhhc2hEYXRhTGlzdC5zbGljZSgwLCA2KTsgdHJhY2sgdikge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LWhhc2hDb2RlLWNvZGUtdmFsdWUtYmxvY2tcIj57eyB2IH19PC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LWhhc2hDb2RlLWNvZGUtdmFsdWUtYmxvY2tcIj7Ct8K3wrfCtzwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFudC1oYXNoQ29kZS1jb2RlLXZhbHVlLWJsb2NrXCI+e3sgaGFzaERhdGFMaXN0W2hhc2hEYXRhTGlzdC5sZW5ndGggLSAxXSB9fTwvZGl2PlxuICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgQGZvciAodiBvZiBoYXNoRGF0YUxpc3Q7IHRyYWNrIHYpIHtcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFudC1oYXNoQ29kZS1jb2RlLXZhbHVlLWJsb2NrXCI+e3sgdiB9fTwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAobnpNb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtaGFzaENvZGUtY29kZS12YWx1ZS1ibG9ja1wiPnt7IGhhc2hEYXRhTGlzdFswXSB9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtaGFzaENvZGUtY29kZS12YWx1ZS1ibG9ja1wiPsK3wrfCt8K3PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImFudC1oYXNoQ29kZS1jb2RlLXZhbHVlLWJsb2NrXCI+e3sgaGFzaERhdGFMaXN0W2hhc2hEYXRhTGlzdC5sZW5ndGggLSAxXSB9fTwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChuek1vZGUgPT09ICdyZWN0JyB8fCBuek1vZGUgPT09ICdzdHJpcCcpIHtcbiAgICAgICAgICBAaWYgKGhhc2hEYXRhTGlzdC5sZW5ndGggPiAxNikge1xuICAgICAgICAgICAgQGZvciAodiBvZiBoYXNoRGF0YUxpc3Quc2xpY2UoMCwgMTQpOyB0cmFjayB2KSB7XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtaGFzaENvZGUtY29kZS12YWx1ZS1ibG9ja1wiPnt7IHYgfX08L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtaGFzaENvZGUtY29kZS12YWx1ZS1ibG9ja1wiPsK3wrfCt8K3PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LWhhc2hDb2RlLWNvZGUtdmFsdWUtYmxvY2tcIj57eyBoYXNoRGF0YUxpc3RbaGFzaERhdGFMaXN0Lmxlbmd0aCAtIDFdIH19PC9kaXY+XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAZm9yICh2IG9mIGhhc2hEYXRhTGlzdDsgdHJhY2sgdikge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LWhhc2hDb2RlLWNvZGUtdmFsdWUtYmxvY2tcIj57eyB2IH19PC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJhbnQtaGFzaENvZGUtdGV4YXVyZVwiXG4gICAgICAgIFtjbGFzcy5hbnQtaGFzaENvZGUtdGV4YXVyZS1kb3VibGVdPVwibnpNb2RlID09PSAnZG91YmxlJ1wiXG4gICAgICAgIFtjbGFzcy5hbnQtaGFzaENvZGUtdGV4YXVyZS1zaW5nbGVdPVwibnpNb2RlID09PSAnc2luZ2xlJ1wiXG4gICAgICAgIFtjbGFzcy5hbnQtaGFzaENvZGUtdGV4YXVyZS1zdHJpcF09XCJuek1vZGUgPT09ICdzdHJpcCdcIlxuICAgICAgICBbY2xhc3MuYW50LWhhc2hDb2RlLXRleGF1cmUtcmVjdF09XCJuek1vZGUgPT09ICdyZWN0J1wiXG4gICAgICA+XG4gICAgICAgIDxzdmcgd2lkdGg9XCI1NDVweFwiIGhlaWdodD1cIjExMXB4XCIgdmlld0JveD1cIjAgMCA1NDUgMTExXCIgdmVyc2lvbj1cIjEuMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgICA8ZGVmcz5cbiAgICAgICAgICAgIDxsaW5lYXJHcmFkaWVudFxuICAgICAgICAgICAgICB4MT1cIjE1LjcxNjI0MTQlXCJcbiAgICAgICAgICAgICAgeTE9XCI1MC4wOTkyMTg0JVwiXG4gICAgICAgICAgICAgIHgyPVwiNDkuNTI2NjU2NCVcIlxuICAgICAgICAgICAgICB5Mj1cIjUwLjAyMzQ1NjUlXCJcbiAgICAgICAgICAgICAgaWQ9XCJsaW5lYXJHcmFkaWVudC0yYm02djlpY3RlLTFcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPVwiI0E3NkEwMFwiIG9mZnNldD1cIjAlXCI+PC9zdG9wPlxuICAgICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPVwiI0Y1MDAwNlwiIG9mZnNldD1cIjYxLjI3MTY5OTUlXCI+PC9zdG9wPlxuICAgICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPVwiI0RBODUwMFwiIG9mZnNldD1cIjEwMCVcIj48L3N0b3A+XG4gICAgICAgICAgICA8L2xpbmVhckdyYWRpZW50PlxuICAgICAgICAgIDwvZGVmcz5cbiAgICAgICAgICA8ZyBpZD1cIumhtemdoi0xXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjFcIiBmaWxsPVwibm9uZVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIj5cbiAgICAgICAgICAgIDxnXG4gICAgICAgICAgICAgIGlkPVwi55S75p2/XCJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKC0xNjMuMDAwMDAwLCAtMzE1LjAwMDAwMClcIlxuICAgICAgICAgICAgICBzdHJva2U9XCJ1cmwoI2xpbmVhckdyYWRpZW50LTJibTZ2OWljdGUtMSlcIlxuICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIwLjcyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGcgaWQ9XCLnvJbnu4QtOVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxNjMuNTM1NzEyLCAzMTYuMDAwMDAwKVwiIHN0eWxlPVwibWl4LWJsZW5kLW1vZGU6IGV4Y2x1c2lvbjtcIj5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDAgQzIyLjY4LDAgMjIuNjgsNS43NiA0NS4zNiw1Ljc2IEM2OC4wNCw1Ljc2IDY4LjA0LDAgOTAuNzIsMCBDMTEzLjQsMCAxMTMuNCw1Ljc2IDEzNi4wOCw1Ljc2IEMxNTguNzYsNS43NiAxNTguNzYsMCAxODEuNDQsMCBDMjA0LjEyLDAgMjA0LjEyLDUuNzYgMjI2LjgsNS43NiBDMjQ5LjQ4LDUuNzYgMjQ5LjQ4LDAgMjcyLjE2LDBcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM1wiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDI4LjA4IEMyMi42OCwyOC4wOCAyMi42OCwzMy44NCA0NS4zNiwzMy44NCBDNjguMDQsMzMuODQgNjguMDQsMjguMDggOTAuNzIsMjguMDggQzExMy40LDI4LjA4IDExMy40LDMzLjg0IDEzNi4wOCwzMy44NCBDMTU4Ljc2LDMzLjg0IDE1OC43NiwyOC4wOCAxODEuNDQsMjguMDggQzIwNC4xMiwyOC4wOCAyMDQuMTIsMzMuODQgMjI2LjgsMzMuODQgQzI0OS40OCwzMy44NCAyNDkuNDgsMjguMDggMjcyLjE2LDI4LjA4XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDM3LjQ0IEMyMi42OCwzNy40NCAyMi42OCw0My4yIDQ1LjM2LDQzLjIgQzY4LjA0LDQzLjIgNjguMDQsMzcuNDQgOTAuNzIsMzcuNDQgQzExMy40LDM3LjQ0IDExMy40LDQzLjIgMTM2LjA4LDQzLjIgQzE1OC43Niw0My4yIDE1OC43NiwzNy40NCAxODEuNDQsMzcuNDQgQzIwNC4xMiwzNy40NCAyMDQuMTIsNDMuMiAyMjYuOCw0My4yIEMyNDkuNDgsNDMuMiAyNDkuNDgsMzcuNDQgMjcyLjE2LDM3LjQ0XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDkuMzYgQzIyLjY4LDkuMzYgMjIuNjgsMTUuMTIgNDUuMzYsMTUuMTIgQzY4LjA0LDE1LjEyIDY4LjA0LDkuMzYgOTAuNzIsOS4zNiBDMTEzLjQsOS4zNiAxMTMuNCwxNS4xMiAxMzYuMDgsMTUuMTIgQzE1OC43NiwxNS4xMiAxNTguNzYsOS4zNiAxODEuNDQsOS4zNiBDMjA0LjEyLDkuMzYgMjA0LjEyLDE1LjEyIDIyNi44LDE1LjEyIEMyNDkuNDgsMTUuMTIgMjQ5LjQ4LDkuMzYgMjcyLjE2LDkuMzZcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsMTguNzIgQzIyLjY4LDE4LjcyIDIyLjY4LDI0LjQ4IDQ1LjM2LDI0LjQ4IEM2OC4wNCwyNC40OCA2OC4wNCwxOC43MiA5MC43MiwxOC43MiBDMTEzLjQsMTguNzIgMTEzLjQsMjQuNDggMTM2LjA4LDI0LjQ4IEMxNTguNzYsMjQuNDggMTU4Ljc2LDE4LjcyIDE4MS40NCwxOC43MiBDMjA0LjEyLDE4LjcyIDIwNC4xMiwyNC40OCAyMjYuOCwyNC40OCBDMjQ5LjQ4LDI0LjQ4IDI0OS40OCwxOC43MiAyNzIuMTYsMTguNzJcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsNDYuOCBDMjIuNjgsNDYuOCAyMi42OCw1Mi41NiA0NS4zNiw1Mi41NiBDNjguMDQsNTIuNTYgNjguMDQsNDYuOCA5MC43Miw0Ni44IEMxMTMuNCw0Ni44IDExMy40LDUyLjU2IDEzNi4wOCw1Mi41NiBDMTU4Ljc2LDUyLjU2IDE1OC43Niw0Ni44IDE4MS40NCw0Ni44IEMyMDQuMTIsNDYuOCAyMDQuMTIsNTIuNTYgMjI2LjgsNTIuNTYgQzI0OS40OCw1Mi41NiAyNDkuNDgsNDYuOCAyNzIuMTYsNDYuOFwiXG4gICAgICAgICAgICAgICAgICBpZD1cIui3r+W+hC0z5aSH5Lu9LTJcIlxuICAgICAgICAgICAgICAgID48L3BhdGg+XG4gICAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICAgICAgPGcgaWQ9XCLnvJbnu4QtOVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxNjMuNTM1NzEyLCAzNzMuMDAwMDAwKVwiIHN0eWxlPVwibWl4LWJsZW5kLW1vZGU6IGV4Y2x1c2lvbjtcIj5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDAgQzIyLjY4LDAgMjIuNjgsNS43NiA0NS4zNiw1Ljc2IEM2OC4wNCw1Ljc2IDY4LjA0LDAgOTAuNzIsMCBDMTEzLjQsMCAxMTMuNCw1Ljc2IDEzNi4wOCw1Ljc2IEMxNTguNzYsNS43NiAxNTguNzYsMCAxODEuNDQsMCBDMjA0LjEyLDAgMjA0LjEyLDUuNzYgMjI2LjgsNS43NiBDMjQ5LjQ4LDUuNzYgMjQ5LjQ4LDAgMjcyLjE2LDBcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM1wiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDI4LjA4IEMyMi42OCwyOC4wOCAyMi42OCwzMy44NCA0NS4zNiwzMy44NCBDNjguMDQsMzMuODQgNjguMDQsMjguMDggOTAuNzIsMjguMDggQzExMy40LDI4LjA4IDExMy40LDMzLjg0IDEzNi4wOCwzMy44NCBDMTU4Ljc2LDMzLjg0IDE1OC43NiwyOC4wOCAxODEuNDQsMjguMDggQzIwNC4xMiwyOC4wOCAyMDQuMTIsMzMuODQgMjI2LjgsMzMuODQgQzI0OS40OCwzMy44NCAyNDkuNDgsMjguMDggMjcyLjE2LDI4LjA4XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDM3LjQ0IEMyMi42OCwzNy40NCAyMi42OCw0My4yIDQ1LjM2LDQzLjIgQzY4LjA0LDQzLjIgNjguMDQsMzcuNDQgOTAuNzIsMzcuNDQgQzExMy40LDM3LjQ0IDExMy40LDQzLjIgMTM2LjA4LDQzLjIgQzE1OC43Niw0My4yIDE1OC43NiwzNy40NCAxODEuNDQsMzcuNDQgQzIwNC4xMiwzNy40NCAyMDQuMTIsNDMuMiAyMjYuOCw0My4yIEMyNDkuNDgsNDMuMiAyNDkuNDgsMzcuNDQgMjcyLjE2LDM3LjQ0XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDkuMzYgQzIyLjY4LDkuMzYgMjIuNjgsMTUuMTIgNDUuMzYsMTUuMTIgQzY4LjA0LDE1LjEyIDY4LjA0LDkuMzYgOTAuNzIsOS4zNiBDMTEzLjQsOS4zNiAxMTMuNCwxNS4xMiAxMzYuMDgsMTUuMTIgQzE1OC43NiwxNS4xMiAxNTguNzYsOS4zNiAxODEuNDQsOS4zNiBDMjA0LjEyLDkuMzYgMjA0LjEyLDE1LjEyIDIyNi44LDE1LjEyIEMyNDkuNDgsMTUuMTIgMjQ5LjQ4LDkuMzYgMjcyLjE2LDkuMzZcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsMTguNzIgQzIyLjY4LDE4LjcyIDIyLjY4LDI0LjQ4IDQ1LjM2LDI0LjQ4IEM2OC4wNCwyNC40OCA2OC4wNCwxOC43MiA5MC43MiwxOC43MiBDMTEzLjQsMTguNzIgMTEzLjQsMjQuNDggMTM2LjA4LDI0LjQ4IEMxNTguNzYsMjQuNDggMTU4Ljc2LDE4LjcyIDE4MS40NCwxOC43MiBDMjA0LjEyLDE4LjcyIDIwNC4xMiwyNC40OCAyMjYuOCwyNC40OCBDMjQ5LjQ4LDI0LjQ4IDI0OS40OCwxOC43MiAyNzIuMTYsMTguNzJcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsNDYuOCBDMjIuNjgsNDYuOCAyMi42OCw1Mi41NiA0NS4zNiw1Mi41NiBDNjguMDQsNTIuNTYgNjguMDQsNDYuOCA5MC43Miw0Ni44IEMxMTMuNCw0Ni44IDExMy40LDUyLjU2IDEzNi4wOCw1Mi41NiBDMTU4Ljc2LDUyLjU2IDE1OC43Niw0Ni44IDE4MS40NCw0Ni44IEMyMDQuMTIsNDYuOCAyMDQuMTIsNTIuNTYgMjI2LjgsNTIuNTYgQzI0OS40OCw1Mi41NiAyNDkuNDgsNDYuOCAyNzIuMTYsNDYuOFwiXG4gICAgICAgICAgICAgICAgICBpZD1cIui3r+W+hC0z5aSH5Lu9LTJcIlxuICAgICAgICAgICAgICAgID48L3BhdGg+XG4gICAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICAgICAgPGcgaWQ9XCLnvJbnu4QtOVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0MzUuNTM1NzEyLCAzMTYuMDAwMDAwKVwiIHN0eWxlPVwibWl4LWJsZW5kLW1vZGU6IGV4Y2x1c2lvbjtcIj5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDAgQzIyLjY4LDAgMjIuNjgsNS43NiA0NS4zNiw1Ljc2IEM2OC4wNCw1Ljc2IDY4LjA0LDAgOTAuNzIsMCBDMTEzLjQsMCAxMTMuNCw1Ljc2IDEzNi4wOCw1Ljc2IEMxNTguNzYsNS43NiAxNTguNzYsMCAxODEuNDQsMCBDMjA0LjEyLDAgMjA0LjEyLDUuNzYgMjI2LjgsNS43NiBDMjQ5LjQ4LDUuNzYgMjQ5LjQ4LDAgMjcyLjE2LDBcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM1wiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDI4LjA4IEMyMi42OCwyOC4wOCAyMi42OCwzMy44NCA0NS4zNiwzMy44NCBDNjguMDQsMzMuODQgNjguMDQsMjguMDggOTAuNzIsMjguMDggQzExMy40LDI4LjA4IDExMy40LDMzLjg0IDEzNi4wOCwzMy44NCBDMTU4Ljc2LDMzLjg0IDE1OC43NiwyOC4wOCAxODEuNDQsMjguMDggQzIwNC4xMiwyOC4wOCAyMDQuMTIsMzMuODQgMjI2LjgsMzMuODQgQzI0OS40OCwzMy44NCAyNDkuNDgsMjguMDggMjcyLjE2LDI4LjA4XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDM3LjQ0IEMyMi42OCwzNy40NCAyMi42OCw0My4yIDQ1LjM2LDQzLjIgQzY4LjA0LDQzLjIgNjguMDQsMzcuNDQgOTAuNzIsMzcuNDQgQzExMy40LDM3LjQ0IDExMy40LDQzLjIgMTM2LjA4LDQzLjIgQzE1OC43Niw0My4yIDE1OC43NiwzNy40NCAxODEuNDQsMzcuNDQgQzIwNC4xMiwzNy40NCAyMDQuMTIsNDMuMiAyMjYuOCw0My4yIEMyNDkuNDgsNDMuMiAyNDkuNDgsMzcuNDQgMjcyLjE2LDM3LjQ0XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDkuMzYgQzIyLjY4LDkuMzYgMjIuNjgsMTUuMTIgNDUuMzYsMTUuMTIgQzY4LjA0LDE1LjEyIDY4LjA0LDkuMzYgOTAuNzIsOS4zNiBDMTEzLjQsOS4zNiAxMTMuNCwxNS4xMiAxMzYuMDgsMTUuMTIgQzE1OC43NiwxNS4xMiAxNTguNzYsOS4zNiAxODEuNDQsOS4zNiBDMjA0LjEyLDkuMzYgMjA0LjEyLDE1LjEyIDIyNi44LDE1LjEyIEMyNDkuNDgsMTUuMTIgMjQ5LjQ4LDkuMzYgMjcyLjE2LDkuMzZcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsMTguNzIgQzIyLjY4LDE4LjcyIDIyLjY4LDI0LjQ4IDQ1LjM2LDI0LjQ4IEM2OC4wNCwyNC40OCA2OC4wNCwxOC43MiA5MC43MiwxOC43MiBDMTEzLjQsMTguNzIgMTEzLjQsMjQuNDggMTM2LjA4LDI0LjQ4IEMxNTguNzYsMjQuNDggMTU4Ljc2LDE4LjcyIDE4MS40NCwxOC43MiBDMjA0LjEyLDE4LjcyIDIwNC4xMiwyNC40OCAyMjYuOCwyNC40OCBDMjQ5LjQ4LDI0LjQ4IDI0OS40OCwxOC43MiAyNzIuMTYsMTguNzJcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsNDYuOCBDMjIuNjgsNDYuOCAyMi42OCw1Mi41NiA0NS4zNiw1Mi41NiBDNjguMDQsNTIuNTYgNjguMDQsNDYuOCA5MC43Miw0Ni44IEMxMTMuNCw0Ni44IDExMy40LDUyLjU2IDEzNi4wOCw1Mi41NiBDMTU4Ljc2LDUyLjU2IDE1OC43Niw0Ni44IDE4MS40NCw0Ni44IEMyMDQuMTIsNDYuOCAyMDQuMTIsNTIuNTYgMjI2LjgsNTIuNTYgQzI0OS40OCw1Mi41NiAyNDkuNDgsNDYuOCAyNzIuMTYsNDYuOFwiXG4gICAgICAgICAgICAgICAgICBpZD1cIui3r+W+hC0z5aSH5Lu9LTJcIlxuICAgICAgICAgICAgICAgID48L3BhdGg+XG4gICAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICAgICAgPGcgaWQ9XCLnvJbnu4QtOVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0MzUuNTM1NzEyLCAzNzMuMDAwMDAwKVwiIHN0eWxlPVwibWl4LWJsZW5kLW1vZGU6IGV4Y2x1c2lvbjtcIj5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDAgQzIyLjY4LDAgMjIuNjgsNS43NiA0NS4zNiw1Ljc2IEM2OC4wNCw1Ljc2IDY4LjA0LDAgOTAuNzIsMCBDMTEzLjQsMCAxMTMuNCw1Ljc2IDEzNi4wOCw1Ljc2IEMxNTguNzYsNS43NiAxNTguNzYsMCAxODEuNDQsMCBDMjA0LjEyLDAgMjA0LjEyLDUuNzYgMjI2LjgsNS43NiBDMjQ5LjQ4LDUuNzYgMjQ5LjQ4LDAgMjcyLjE2LDBcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM1wiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDI4LjA4IEMyMi42OCwyOC4wOCAyMi42OCwzMy44NCA0NS4zNiwzMy44NCBDNjguMDQsMzMuODQgNjguMDQsMjguMDggOTAuNzIsMjguMDggQzExMy40LDI4LjA4IDExMy40LDMzLjg0IDEzNi4wOCwzMy44NCBDMTU4Ljc2LDMzLjg0IDE1OC43NiwyOC4wOCAxODEuNDQsMjguMDggQzIwNC4xMiwyOC4wOCAyMDQuMTIsMzMuODQgMjI2LjgsMzMuODQgQzI0OS40OCwzMy44NCAyNDkuNDgsMjguMDggMjcyLjE2LDI4LjA4XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDM3LjQ0IEMyMi42OCwzNy40NCAyMi42OCw0My4yIDQ1LjM2LDQzLjIgQzY4LjA0LDQzLjIgNjguMDQsMzcuNDQgOTAuNzIsMzcuNDQgQzExMy40LDM3LjQ0IDExMy40LDQzLjIgMTM2LjA4LDQzLjIgQzE1OC43Niw0My4yIDE1OC43NiwzNy40NCAxODEuNDQsMzcuNDQgQzIwNC4xMiwzNy40NCAyMDQuMTIsNDMuMiAyMjYuOCw0My4yIEMyNDkuNDgsNDMuMiAyNDkuNDgsMzcuNDQgMjcyLjE2LDM3LjQ0XCJcbiAgICAgICAgICAgICAgICAgIGlkPVwi6Lev5b6ELTPlpIfku70tMlwiXG4gICAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk0wLDkuMzYgQzIyLjY4LDkuMzYgMjIuNjgsMTUuMTIgNDUuMzYsMTUuMTIgQzY4LjA0LDE1LjEyIDY4LjA0LDkuMzYgOTAuNzIsOS4zNiBDMTEzLjQsOS4zNiAxMTMuNCwxNS4xMiAxMzYuMDgsMTUuMTIgQzE1OC43NiwxNS4xMiAxNTguNzYsOS4zNiAxODEuNDQsOS4zNiBDMjA0LjEyLDkuMzYgMjA0LjEyLDE1LjEyIDIyNi44LDE1LjEyIEMyNDkuNDgsMTUuMTIgMjQ5LjQ4LDkuMzYgMjcyLjE2LDkuMzZcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsMTguNzIgQzIyLjY4LDE4LjcyIDIyLjY4LDI0LjQ4IDQ1LjM2LDI0LjQ4IEM2OC4wNCwyNC40OCA2OC4wNCwxOC43MiA5MC43MiwxOC43MiBDMTEzLjQsMTguNzIgMTEzLjQsMjQuNDggMTM2LjA4LDI0LjQ4IEMxNTguNzYsMjQuNDggMTU4Ljc2LDE4LjcyIDE4MS40NCwxOC43MiBDMjA0LjEyLDE4LjcyIDIwNC4xMiwyNC40OCAyMjYuOCwyNC40OCBDMjQ5LjQ4LDI0LjQ4IDI0OS40OCwxOC43MiAyNzIuMTYsMTguNzJcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCLot6/lvoQtM+Wkh+S7vS0yXCJcbiAgICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTAsNDYuOCBDMjIuNjgsNDYuOCAyMi4