1 2<!--HEADER SIMPLE--> 3 4<!DOCTYPE html> 5<html lang="en" ng-app="sd" class="intake-form js-standalone-form-page round-mode"> 6<head> 7 <style type="text/css">html [ng\:cloak], html [ng-cloak], html [data-ng-cloak], html [x-ng-cloak], html .ng-cloak, html .x-ng-cloak {display: none !important;}</style> 8 <!-- Favicon --> 9 <link rel="shortcut icon" href="/icon.png" /> 10<link rel="icon" href="/icon.png" /> 11<link rel="icon" href="/favicon.ico" /> 12<link rel="apple-touch-icon" href="/app-icon-180.png" /> 13<link rel="apple-touch-icon" sizes="512x512" href="/app-icon-512.png" /> 14<link rel="manifest" href="/manifest.webmanifest" crossorigin="use-credentials"> 15<meta name="apple-mobile-web-app-capable" content="yes"> 16<meta name="mobile-web-app-capable" content="yes"> 17<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"> 18<meta name="theme-color" content="#ffffff"> 19<meta name="apple-mobile-web-app-title" content="Maxillopixel Diagnostics"> 20 21 <!-- PAGE LOADER STYLES --> 22 23<style type="text/css"> 24 .pace { 25 -webkit-pointer-events: none; 26 pointer-events: none; 27 -webkit-user-select: none; 28 -moz-user-select: none; 29 user-select: none; 30 } 31 @media (min-width: 768px) { 32 body:not(.pace-image-loading) .pace .pace-progress { 33 background: ; 34 background-color: #010001; 35 position: fixed; 36 z-index: 2000; 37 top: 0; 38 right: 100%; 39 width: 100%; 40 height: 3px; 41 } 42 } 43 44 body:not(.sd-dark-mode) .pace-activity::before { 45 border-right-color: #010001; 46 } 47 48 body:not(.sd-dark-mode) .pace-activity::after { 49 border-left-color: #010001; 50 } 51 52 /* navigation-curtain-reduced-motion:start */ 53 @media (prefers-reduced-motion: reduce) { 54 [data-sd-navigation-curtain-owned], 55 [data-sd-navigation-curtain-owned]::before, 56 [data-sd-navigation-curtain-owned]::after, 57 [data-sd-navigation-curtain-owned] .pace-progress, 58 [data-sd-navigation-curtain-owned] .pace-progress::before, 59 [data-sd-navigation-curtain-owned] .pace-progress::after, 60 [data-sd-navigation-curtain-owned] .pace-progress-inner, 61 [data-sd-navigation-curtain-owned] .pace-progress-inner::before, 62 [data-sd-navigation-curtain-owned] .pace-progress-inner::after, 63 [data-sd-navigation-curtain-owned] .pace-activity, 64 [data-sd-navigation-curtain-owned] .pace-activity::before, 65 [data-sd-navigation-curtain-owned] .pace-activity::after, 66 [data-sd-navigation-curtain-owned] .custom-pace-activity-inner, 67 [data-sd-navigation-curtain-owned] .custom-pace-activity-inner::before, 68 [data-sd-navigation-curtain-owned] .custom-pace-activity-inner::after { 69 -webkit-animation-duration: 0.001ms !important; 70 animation-duration: 0.001ms !important; 71 -webkit-animation-iteration-count: 1 !important; 72 animation-iteration-count: 1 !important; 73 transition-duration: 0.001ms !important; 74 transition-delay: 0s !important; 75 } 76 } 77 /* navigation-curtain-reduced-motion:end */ 78 79 body.pace-custom-loader.pace-bg-NO_ANIMATION .pace, 80body.pace-custom-loader.pace-bg-fade .pace, 81body.pace-custom-loader.pace-bg-slide-left .pace, 82body.pace-custom-loader.pace-bg-slide-right .pace, 83body.pace-custom-loader.pace-bg-slide-up .pace, 84body.pace-custom-loader .pace:before, 85body.pace-custom-loader .pace:after{ 86 background-color: rgb(255, 255, 255) !important; 87} 88 89body.pace-custom-loader .pace-activity, 90body.pace-custom-loader.pace-image-loading .pace-progress{ 91 width: 150px; 92 height: 150px; 93 max-width: 80%; 94} 95 96body.pace-custom-loader.loader-preview.pace-image-loading .pace-progress .pace-progress-inner:after, 97body.pace-custom-loader.loader-preview .pace-activity { 98 background-image: url(https://secure.maxillopixel.com/uploads/company/picture/66104/MPLogo_cd97555b86fef6c0e66757ff291d5ef7_bc310d1341e92326a5349abef2b7dd85.png); 99} 100body.pace-custom-loader.pace-image-drawing-frame .pace-activity:before, 101body.pace-custom-loader.pace-image-drawing-frame .pace-activity:after, 102body.pace-custom-loader.pace-image-drawing-frame .pace-activity .custom-pace-activity-inner:before, 103body.pace-custom-loader.pace-image-drawing-frame .pace-activity .custom-pace-activity-inner:after 104{ 105background-color: #DDDDDD !important; 106}</style> 107 108 <meta charset="utf-8"> 109 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 110 <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=yes, maximum-scale=1.0, user-scalable=0"> 111 <meta name="csrf-token" content="N3NvdTI2c2FfMHp5dXBucW9RSlBfVDh1TVV4VGM0NFZBfahos4asFf9Q3t-3t36iNpntCnuTgkeKm-oEt1jxtw=="> 112 <meta name="csrf-param" content="TOKEN"> 113 <meta name="facebook-domain-verification" content="rpmdrnr85m91yzmbsb2dxy9bvh0275"/> 114 115 <meta name="robots" content="noindex,nofollow"> 116 117 118 119 <!-- Head Libs --> 120
120<script type="text/javascript">/* Start-up failure recorder, read by the watchdog: see FULL_LAYOUT_BOOT_RECORDER in config/define.php. */ 121(function (window) { 122 try { 123 if (window.sdBootLog) { return; } 124 var log = { failed: [], errors: [] }; 125 var MAX_FAILED = 8; 126 var MAX_ERRORS = 20; 127 var MAX_TEXT = 20000; 128 var text = function (value) { return typeof value === 'string' ? value.slice(0, MAX_TEXT) : ''; }; 129 window.sdBootLog = log; 130 window.addEventListener('error', function (event) { 131 try { 132 var target = event.target; 133 if (target && target !== window && target.tagName) { 134 var tag = String(target.tagName).toUpperCase(); 135 var url = tag === 'SCRIPT' ? target.src 136 : (tag === 'LINK' && /(^|\s)stylesheet(\s|$)/i.test(target.rel || '') ? target.href : ''); 137 if (url && log.failed.length < MAX_FAILED) { log.failed.push({ url: text(url) }); } 138 return; 139 } 140 if (log.errors.length < MAX_ERRORS) { 141 var error = event.error; 142 log.errors.push({ 143 name: error && typeof error.name === 'string' ? error.name : '', 144 message: text(error && typeof error.message === 'string' ? error.message : event.message), 145 stack: text(error && typeof error.stack === 'string' ? error.stack : ''), 146 file: text(event.filename), 147 line: event.lineno || 0 148 }); 149 } 150 } catch (ignored) { /* a recorder that throws becomes one more failure to explain */ } 151 }, true); 152 } catch (ignored) { /* same: the page must never pay for the recorder */ } 153})(window); 154</script>
vendor: 1 bytes, line 154
154
155<script type="text/javascript">/* ES2022 built-ins that Redactor and the placeholder plugin call bare; the theme bundles transpile syntax only, so pre-2022 browsers need them installed ahead of every editor. */ 156(function () { 157 if (typeof Object.hasOwn !== 'function') { 158 Object.defineProperty(Object, 'hasOwn', { 159 value: function hasOwn(target, key) { 160 if (target === null || target === undefined) { throw new TypeError('Cannot convert undefined or null to object'); } 161 return Object.prototype.hasOwnProperty.call(Object(target), key); 162 }, 163 writable: true, enumerable: false, configurable: true 164 }); 165 } 166 if (typeof Array.prototype.findLast !== 'function') { 167 Object.defineProperty(Array.prototype, 'findLast', { 168 value: function findLast(predicate, thisArg) { 169 if (this === null || this === undefined) { throw new TypeError('Array.prototype.findLast called on null or undefined'); } 170 var list = Object(this); 171 var length = list.length >>> 0; 172 if (typeof predicate !== 'function') { throw new TypeError(String(predicate) + ' is not a function'); } 173 for (var index = length - 1; index >= 0; index--) { 174 var value = list[index]; 175 if (predicate.call(thisArg, value, index, list)) { return value; } 176 } 177 return undefined; 178 }, 179 writable: true, enumerable: false, configurable: true 180 }); 181 } 182})(); 183</script>
vendor: 1 bytes, line 183
183
184<script src="/themes/mpa/node_modules/jquery/dist/jquery.min.js?2c872dbe60f4ba70"></script>
vendor: 1 bytes, line 184
184
185<script src="/themes/mpa/node_modules/angular/angular.min.js?967a32633fa8f38f"></script>
185 186 187 <!-- Title --> 188
188<script type="text/javascript" id="Translation">window.TranslationsCompany = 'e4f4ea1bac0dd99a11597a253b794ae5a40ad79166104';window.Translations="eyJGSUVMRFNfV0lUSCI6IkZpZWxkcyB3aXRoIiwiQVJFX1JFUVVJUkVEIjoiYXJlIHJlcXVpcmVkIiwiTkVFRFNfQVRURU5USU9OIjoiTmVlZHMgQXR0ZW50aW9uIiwiRklMRV9TSVpFIjoiRmlsZSBzaXplIiwiTEFTVF9NT0RJRklFRCI6Ikxhc3QgTW9kaWZpZWQiLCJDUkVBVEVEIjoiQ3JlYXRlZCIsIkRFTEVURUQiOiJEZWxldGVkIiwiRklMRVNfT1BFUkFUSU9OX1JFTkFNRV9GSUxFIjoiUmVuYW1lIiwiU0hBUkVfRk9MREVSIjoiU2hhcmUgYSBGb2xkZXIiLCJNQU5BR0VfU0hBUklORyI6Ik1hbmFnZSBTaGFyaW5nIiwiRE9XTkxPQUQiOiJEb3dubG9hZCIsIk9QRU5fT1JJR0lOQUxfRElSRUNUT1JZIjoiT3BlbiBPcmlnaW5hbCBEaXJlY3RvcnkiLCJORVdfVkVSU0lPTiI6Ik5ldyBWZXJzaW9uIiwiVklFV19WRVJTSU9OUyI6IlZpZXcgVmVyc2lvbnMiLCJIT01FIjoiSG9tZSIsIk5BTUUiOiJOYW1lIiwiQUxMIjoiQWxsIiwiRk9MREVSUyI6IkZvbGRlcnMiLCJGSUxFUyI6IkZpbGVzIiwiTk9ORSI6Ik5vbmUiLCJTRUxFQ1RfT1JfRFJPUF9GSUxFUyI6IlNlbGVjdCBvciBEcm9wIEZpbGVzIiwiRklMRV9EUkFHX0RST1BfTk9UX1NVUFBPUlRFRCI6IkZpbGUgRHJhZyBcdTAwMjYgRHJvcCBpcyBub3Qgc3VwcG9ydGVkIGZvciB0aGlzIGJyb3dzZXIiLCJTRUxFQ1RfRklMRVMiOiJTZWxlY3QgRmlsZXMiLCJVUExPQURJTkdfRUxMSVBTRVMiOiJVcGxvYWRpbmcuLi4iLCJSRU1PVkVfQ0FOQ0VMX0FMTCI6IlJlbW92ZSBcLyBDYW5jZWwgQWxsIiwiU0VMRUNUX09SX0RST1BfUERGX0ZJTEUiOiJTZWxlY3Qgb3IgRHJvcCBQREYgRmlsZSIsIlNUQVJUX1NIT1dfVElNRVJTIjoiU3RhcnRcL1Nob3cgVGltZXJzIiwiSU5WT0lDRSI6Ikludm9pY2UiLCJJTlZPSUNFRCI6Ikludm9pY2VkIiwiUEFVU0UiOiJQYXVzZSIsIlJFU1VNRSI6IlJlc3VtZSIsIkNPTVBMRVRFIjoiQ29tcGxldGUiLCJERUxFVEUiOiJEZWxldGUiLCJOT1RFUyI6Ik5vdGVzIiwiVE9UQUxfVElNRSI6IlRvdGFsIFRpbWUiLCJQQVVTRV9SVU5OSU5HIjoiUGF1c2UgUnVubmluZyIsIlJFU1VNRV9QQVVTRUQiOiJSZXN1bWUgUGF1c2VkIiwiSU5WT0lDRV9DT01QTEVURUQiOiJJbnZvaWNlIENvbXBsZXRlZCIsIkNPTVBMRVRFX1BBVVNFRCI6IkNvbXBsZXRlIFBhdXNlZCIsIkRFTEVURV9DT01QTEVURURfSU5WT0lDRUQiOiJEZWxldGUgQ29tcGxldGVkXC9JbnZvaWNlZCIsIklGX0xPR0lDX0lNUExJRURfQllfQ09ORElUSU9OU19BQk9WRV9JU19UUlVFIjoiSWYgdGhlIGxvZ2ljIGltcGxpZWQgYnkgdGhlIGNvbmRpdGlvbnMgYWJvdmUgaXMgdHJ1ZSIsIlRIRU5fRVhFQ1VURV9USEVfSU5TVFJVQ1RJT05TX0JFTE9XIjoiVGhlbiBleGVjdXRlIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3ciLCJBRERfTkVXX1RIRU4iOiJBZGQgTmV3IFRIRU4iLCJBRERfTkVXX0NPTkRJVElPTiI6IkFkZCBOZXcgQ29uZGl0aW9uIiwiQVBQT0lOVE1FTlRfQkxPQ0tFRF9JTlRFUlZBTF9XSU5ET1ciOiJXaW5kb3ciLCJORVdfV0lORE9XIjoiTmV3IFdpbmRvdyIsIkZPUl9USEVfVElNRV9XSU5ET1dTX0FCT1ZFIjoiRm9yIHRoZSB0aW1lIHdpbmRvdyhzKSBpbmRpY2F0ZWQgYWJvdmUiLCJCTE9DS19BVkFJTEFCSUxJVFlfRk9SX0FQUE9JTlRNRU5UX1RZUEVfQkVMT1ciOiJCbG9jayBhdmFpbGFiaWxpdHkgZm9yIHRoZSBBcHBvaW50bWVudCBUeXBlKHMpIGFuZCBNZWV0aW5nKHMpIGJlbG93IiwiU0VMRUNUX0FQUE9JTlRNRU5UX1RZUEVfUyI6IlNlbGVjdCBBcHBvaW50bWVudCBUeXBlKHMpIGFuZCBNZWV0aW5nKHMpIiwiQUREX05FV19HUk9VUCI6IkFkZCBOZXcgR3JvdXAiLCJBTSI6IkFNIiwiUE0iOiJQTSIsIlNVTkRBWSI6IlN1bmRheSIsIk1PTkRBWSI6Ik1vbmRheSIsIlRVRVNEQVkiOiJUdWVzZGF5IiwiV0VETkVTREFZIjoiV2VkbmVzZGF5IiwiVEhVUlNEQVkiOiJUaHVyc2RheSIsIkZSSURBWSI6IkZyaWRheSIsIlNBVFVSREFZIjoiU2F0dXJkYXkiLCJKQU5VQVJZIjoiSmFudWFyeSIsIkZFQlJVQVJZIjoiRmVicnVhcnkiLCJNQVJDSCI6Ik1hcmNoIiwiQVBSSUwiOiJBcHJpbCIsIk1BWSI6Ik1heSIsIkpVTkUiOiJKdW5lIiwiSlVMWSI6Ikp1bHkiLCJBVUdVU1QiOiJBdWd1c3QiLCJTRVBURU1CRVIiOiJTZXB0ZW1iZXIiLCJPQ1RPQkVSIjoiT2N0b2JlciIsIk5PVkVNQkVSIjoiTm92ZW1iZXIiLCJERUNFTUJFUiI6IkRlY2VtYmVyIiwiU1VOREFZX1NIT1JUIjoiU3VuIiwiTU9OREFZX1NIT1JUIjoiTW9uIiwiVFVFU0RBWV9TSE9SVCI6IlR1ZSIsIldFRE5FU0RBWV9TSE9SVCI6IldlZCIsIlRIVVJTREFZX1NIT1JUIjoiVGh1IiwiRlJJREFZX1NIT1JUIjoiRnJpIiwiU0FUVVJEQVlfU0hPUlQiOiJTYXQiLCJKQU5VQVJZX1NIT1JUIjoiSmFuIiwiRkVCUlVBUllfU0hPUlQiOiJGZWIiLCJNQVJDSF9TSE9SVCI6Ik1hciIsIkFQUklMX1NIT1JUIjoiQXByIiwiTUFZX1NIT1JUIjoiTWF5IiwiSlVORV9TSE9SVCI6Ikp1biIsIkpVTFlfU0hPUlQiOiJKdWwiLCJBVUdVU1RfU0hPUlQiOiJBdWciLCJTRVBURU1CRVJfU0hPUlQiOiJTZXAiLCJPQ1RPQkVSX1NIT1JUIjoiT2N0IiwiTk9WRU1CRVJfU0hPUlQiOiJOb3YiLCJERUNFTUJFUl9TSE9SVCI6IkRlYyIsIkNPTlRSQUNUX01TR19QTEFDRUhPTERFUl9JU19GT1JfQ0xJRU5UIjoiVGhpcyBwbGFjZWhvbGRlciBpcyBmb3IgdGFyZ2V0IHRvIHNpZ24hIiwiQ09OVFJBQ1RfTVNHX1BMQUNFSE9MREVSX0lTX0ZPUl9PUkdBTklaQVRJT04iOiJUaGlzIHBsYWNlaG9sZGVyIGlzIGZvciBvcmdhbml6YXRpb24gdG8gc2lnbiEiLCJDT05UUkFDVF9NU0dfUExBQ0VIT0xERVJfV0lMTF9GSUxMX0FVVE9NQVRJQ0FMTFkiOiJUaGlzIHBsYWNlaG9sZGVyIHdpbGwgZmlsbCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IGNvbXBsZXRlIGFsbCByZXF1aXJlZCBlU2lnbmluZyBmaWVsZHMiLCJDT05UUkFDVF9NU0dfQ09NUExFVEVfUkVRVUlSRURfRklFTERTX0JFRk9SRV9TSUdOSU5HIjoiUGxlYXNlIGNvbXBsZXRlIGFsbCBvdGhlciByZXF1aXJlZCBmaWVsZHMgYmVmb3JlIHNpZ25pbmcuIiwiU0FWRSI6IlNhdmUiLCJJX0FTX0lOX01ZU0VMRiI6IkkiLCJDT05GSVJNX1NJR05BVFVSRV9URVhUIjoiY29uZmlybSB0aGF0IEkgaGF2ZSByZWFkIGFuZCBmdWxseSB1bmRlcnN0YW5kIHRoaXMgZG9jdW1lbnQsIGFuZCBieSBjb25maXJtaW5nIGNvbnN0aXR1dGVzIGEgbGVnYWxseSBiaW5kaW5nIHNpZ25hdHVyZS4iLCJORVhUIjoiTmV4dCIsIkNPTkZJUk1fU0lHTkFUVVJFIjoiQ29uZmlybSBzaWduYXR1cmUiLCJBUkVfWU9VX1NVUkUiOiJBcmUgeW91IHN1cmU/IiwiT0siOiJPayIsIkNBTkNFTCI6IkNhbmNlbCIsIkNBTl9CRV9DSEFOR0VEX0JBQ0siOiJZb3UgY2FuIGNoYW5nZSB0aGlzIGJhY2sgbGF0ZXIiLCJDT05GSVJNX0JVTEtfU0VORF9QT1JUQUxfSU5WSVRBVElPTiI6IllvdSBoYXZlIHtDT1VOVH0gY29udGFjdChzKSBzZWxlY3RlZC4gVGhlIFBvcnRhbCBBY2Nlc3MgSW52aXRhdGlvbiB3aWxsIGJlIHNlbnQgdG8gdGhvc2Ugd2hvIGhhdmUgbm90IHlldCBiZWVuIGludml0ZWQuIENvbnRpbnVlPyIsIkFTU0lHTl9PTl9ERU1BTkRfRkxPVyI6IkFzc2lnblwvQ2FuY2VsIE9uLURlbWFuZCBGTE9XcyIsIkFQUExZX0FDVElPTlNfVEVNUExBVEUiOiJUcmlnZ2VyIEF1dG8tVGVtcGxhdGUiLCJDQU5OT1RfVU5ETyI6IlRoaXMgY2Fubm90IGJlIHVuZG9uZSIsIlNPTUVUSElOR19XRU5UX1dST05HIjoiU29tZXRoaW5nIHdlbnQgd3JvbmciLCJSRU1PVkUiOiJSZW1vdmUiLCJFRElUX01VTFRJUExFX1RBU0tTIjoiRWRpdCBNdWx0aXBsZSBUYXNrcyIsIlBST1BPU0FMX1RFTVBMQVRFU19CVUxLX0RFTEVURV9DT05GSVJNIjoiRGVsZXRlIHtDT1VOVH0gUHJvcG9zYWwgVGVt
188cGxhdGUocyk/IFRoZXkgY2Fubm90IGJlIHJlY292ZXJlZCBcdTIwMTQgdGhlIHRlbXBsYXRlcywgdGhlaXIgcGFnZXMgYW5kIHRoZWlyIGF1dG9tYXRpb25zIGFyZSBwZXJtYW5lbnRseSByZW1vdmVkLiIsIkJVTEtfQUNUSU9OX1FVRVVFRF9OT1RJRl9URVhUIjoiV29ya2luZyB0aHJvdWdoIHtDT1VOVH0gaXRlbXMgaW4gdGhlIGJhY2tncm91bmQgXHUyMDE0IHlvdSB3aWxsIGdldCBhIG5vdGlmaWNhdGlvbiB3aGVuIGl0IGlzIGRvbmUuIiwiU1lTVEVNX0VSUk9SIjoiU3lzdGVtIGVycm9yLCBwbGVhc2UgdHJ5IGFnYWluLiBJZiBwcm9ibGVtIHBlcnNpc3RzIGNvbnRhY3QgQWRtaW5pc3RyYXRvci4iLCJEVVBMSUNBVEUiOiJEdXBsaWNhdGUiLCJTQ0hFRFVMRVNfSU1QT1JUX1NUQUZGX0NPTlNFUVVFTkNFIjoiVGhleSB3aWxsIGJlIGFkZGVkIGFzIFRhcmdldHMgYW5kIHdpbGwgc3RhcnQgcmVjZWl2aW5nIHRoaXMgU2NoZWR1bGVcdTAwMjdzIEF1dG9tYXRpb25zLiBZb3UgY2FuIHJlbW92ZSB0aGVtIGxhdGVyLiIsIlFVRVNUSU9OX0lNUE9SVF9TRUxFQ1RFRF9VU0VSUyI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBpbXBvcnQgdGhlIHNlbGVjdGVkIHVzZXJzPyIsIlFVRVNUSU9OX0lNUE9SVF9TVEFGRl9NRU1CRVIiOiJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gaW1wb3J0IHRoaXMgU3RhZmYgbWVtYmVyPyIsIkFSQ0hJVkUiOiJBcmNoaXZlIiwiQ09VTlRfSVRFTVNfU0VMRUNURUQiOiJ7Y291bnR9IGl0ZW0ocykgc2VsZWN0ZWQiLCJSRVNFTkRfRU1BSUwiOiJSZXNlbmQgRW1haWwiLCJCVUxLX1JFU0VORF9QRU9QTEVfQ09VTlRfVU5BVkFJTEFCTEUiOiJXZSBjb3VsZCBub3Qgd29yayBvdXQgaG93IG1hbnkgcGVvcGxlIHRoaXMgd2lsbCBlbWFpbCBhY3Jvc3Mge0NPVU5UfSBpdGVtKHMpLiBUaGlzIGNhbm5vdCBiZSB1bmRvbmUuIiwiQlVMS19SRVNFTkRfUEVPUExFX1dJTExfQkVfRU1BSUxFRCI6IlRoaXMgd2lsbCBlbWFpbCB7UEVPUExFfSBwZXJzb24ocykgYWNyb3NzIHtDT1VOVH0gaXRlbShzKS4gVGhpcyBjYW5ub3QgYmUgdW5kb25lLiIsIlBVQkxJQ19QQUdFU19CVUxLX1NLSVBQRURfTk9USUZfVEVYVCI6IntDT1VOVH0gb2YgdGhlIHBhZ2VzIHlvdSBzZWxlY3RlZCB3ZXJlIHNraXBwZWQuIEJ1aWx0LWluIGVycm9yIHBhZ2VzIGFuZCBBVVRPUDFMT1Qgc2FsZXMgZnVubmVscyBhcmUgbWFuYWdlZCBlbHNld2hlcmUuIiwiQ09ORklSTSI6IkNvbmZpcm0iLCJTQ0hFRFVMRV9JTVBPUlRfQ09ORklSTV9TRUxFQ1RFRCI6IlRoaXMgYWRkcyB0aGUge0NPVU5UfSBzZWxlY3RlZCBDb250YWN0cyB0byB0aGlzIFNjaGVkdWxlIGFuZCBzY2hlZHVsZXMge0FVVE9NQVRJT05TfSBBdXRvbWF0aW9ucy4iLCJVTktOT1dOX0VSUk9SIjoiVW5rbm93biBlcnJvciIsIkJVTEtfQUNUSU9OX1FVRVVFRF9QQVJUSUFMX05PVElGX1RFWFQiOiJXb3JraW5nIHRocm91Z2gge0NPVU5UfSBvZiB0aGUge1RPVEFMfSB5b3Ugc2VsZWN0ZWQgaW4gdGhlIGJhY2tncm91bmQ7IHRoZSByZXN0IHdlcmUgc2tpcHBlZC4gWW91IHdpbGwgZ2V0IGEgbm90aWZpY2F0aW9uIHdoZW4gaXQgaXMgZG9uZS4iLCJFRElUIjoiRWRpdCIsIkVTVElNQVRFUyI6IkVzdGltYXRlcyIsIlRJTUVSU19CVUxLX0RFTEVURV9DT05GSVJNIjoiWW91IGFyZSBhYm91dCB0byBkZWxldGUge0NPVU5UfSBUaW1lcnMuIFRoaXMgY2Fubm90IGJlIHVuZG9uZS4iLCJUSU1FUlNfQlVMS19QQVVTRV9DT05GSVJNIjoiWW91IGFyZSBhYm91dCB0byBwYXVzZSB7Q09VTlR9IFRpbWVycy4gWW91IGNhbiByZXN1bWUgdGhlbSBsYXRlci4iLCJUSU1FUlNfQlVMS19SRVNVTUVfQ09ORklSTSI6IllvdSBhcmUgYWJvdXQgdG8gcmVzdW1lIHtDT1VOVH0gVGltZXJzLiBUaGV5IHdpbGwgc3RhcnQgY291bnRpbmcgYWdhaW4uIiwiQlVMS19ERUxFVEVfU1VCU0NSSUJFUlNfQ09ORklSTV9USVRMRSI6IlBlcm1hbmVudGx5IGRlbGV0ZSB7Q09VTlR9IHN1YnNjcmliZXIocyk/IiwiQlVMS19FRElUX1RJVExFIjoiRWRpdCB7SVRFTVNfQ09VTlR9IGl0ZW0ocykiLCJFWFBFTlNFU19DT05WRVJUX1RPX1JFQ1VSUklORyI6IkNvbnZlcnQgVG8gUmVjdXJyaW5nIEV4cGVuc2UiLCJSRU9SREVSX0xPQURfQUxMX1JPV1NfRklSU1QiOiJVc2UgU2hvdyBNb3JlIHVudGlsIGV2ZXJ5IHJvdyBpcyBsb2FkZWQsIHRoZW4gZHJhZyB0byByZW9yZGVyLiIsIlJUX0RSQUdfVE9fUkVPUkRFUiI6IkRyYWcgdG8gcmVvcmRlciIsIkRBU0hCT0FSRFNfQlVMS19ERUxFVEVfQ09ORklSTSI6IllvdSBhcmUgYWJvdXQgdG8gZGVsZXRlIHtDT1VOVH0gRGFzaGJvYXJkcy4gVGhpcyBjYW5ub3QgYmUgdW5kb25lLiIsIlRBU0tfVEVNUExBVEVTX0lOX1VTRV9XQVJOSU5HIjoiVXNlZCBieSBhIFByb2plY3QgR2VuZXJhdG9yIG9yIGEgcmVjdXJyaW5nIHNjaGVkdWxlOiB7Q09VTlR9LiBSZXRpcmluZyB0aGVtIGxlYXZlcyB0aG9zZSBwb2ludGluZyBhdCBhIFRhc2sgVGVtcGxhdGUgdGhlIHBpY2tlciBubyBsb25nZXIgb2ZmZXJzLiIsIkRFTEVURV9BVVRPTUFUSU9OX1RFTVBMQVRFU19DT05GSVJNIjoiVGhlIHNlbGVjdGVkIEF1dG8tVGVtcGxhdGVzIGFuZCB0aGVpciBBdXRvbWF0aW9ucyB3aWxsIGJlIHBlcm1hbmVudGx5IGRlbGV0ZWQuIFRoaXMgY2Fubm90IGJlIHVuZG9uZS4iLCJEVVBMSUNBVEVfQVVUT01BVElPTl9URU1QTEFURVNfQ09ORklSTSI6IkEgY29weSBvZiBlYWNoIHNlbGVjdGVkIEF1dG8tVGVtcGxhdGUgd2lsbCBiZSBjcmVhdGVkLCBpbmNsdWRpbmcgaXRzIEF1dG9tYXRpb25zLiIsIlNDSEVEVUxFU19SRU1PVkVfVEFSR0VUX0NPTkZJUk0iOiJUaGlzIHRha2VzIHRoZW0gb2ZmIHRoaXMgU2NoZWR1bGUgb25seS4gVGhlaXIgYWNjb3VudCwgYW5kIGFueSBvdGhlciBTY2hlZHVsZSB0aGV5IGFyZSBvbiwgYXJlIG5vdCBhZmZlY3RlZC4iLCJCVUxLX0VESVRfTk9fSVRFTVNfU0VMRUNURUQiOiJBdCBsZWFzdCBvbmUgaXRlbSBzaG91bGQgYmUgc2VsZWN0ZWQiLCJGSUVMRF9IQVNfQkVFTl9NQVJLRURfUkVRVUlSRUQiOiJGaWVsZCBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgbWFya2VkIGFzIHJlcXVpcmVkIiwiRklFTERfSEFTX0JFRU5fVU5NQVJLRURfUkVRVUlSRUQiOiJGaWVsZCBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgdW5tYXJrZWQgYXMgcmVxdWlyZWQiLCJTVEFDS1NfQlVMS19ERUxFVEVfQ09ORklSTSI6IllvdSBhcmUgYWJvdXQgdG8gZGVsZXRlIHtDT1VOVH0ge0VOVElUWX0uIFRoaXMgY2Fubm90IGJlIHVuZG9uZS4iLCJURU1QTEFURV9UQVNLX0RFUEVOREVOVFNfV0FSTklORyI6IlRhc2tzIHRoYXQgd2lsbCByZW1haW4gYW5kIGRlcGVuZCBvbiBvbmUgeW91IGFyZSByZW1vdmluZzoge0NPVU5UfS4gVGhvc2UgVGFzayBEZXBlbmRlbmN5IHJ1bGVzIGFyZSBkcm9wcGVkIHRoZSBuZXh0IHRpbWUgdGhpcyBUZW1wbGF0ZSBpcyBhcHBsaWVkLiIsIkJVTEtfREVMRVRFX0NPTkZJUk0iOiJZb3UgYXJlIGFib3V0IHRvIGRlbGV0ZSB7Q09VTlR9IHtFTlRJVFl9LiBUaGlzIGNhbm5vdCBiZSB1bmRvbmUuIiwiVEVNUExBVEVfVEFTS19SRU9SREVSX0RJ
188U0FCTEVEX0ZJTFRFUkVEIjoiUmVvcmRlcmluZyBpcyBkaXNhYmxlZCB3aGlsZSBhIGZpbHRlciBpcyBhY3RpdmUuIENsZWFyIHRoZSBmaWx0ZXJzIHRvIHJlYXJyYW5nZSBUYXNrcy4iLCJQUk9QT1NBTF9QQUdFU19CVUxLX0RFTEVURV9DT05GSVJNIjoiRGVsZXRlIHtDT1VOVH0gUHJvcG9zYWwgUGFnZShzKT8gVGhleSBjYW5ub3QgYmUgcmVjb3ZlcmVkIFx1MjAxNCB0aGUgcGFnZXMgYXJlIHBlcm1hbmVudGx5IHJlbW92ZWQsIGFuZCBwcm9wb3NhbHMgYWxyZWFkeSBidWlsdCBmcm9tIHRoZW0gYXJlIHVuYWZmZWN0ZWQuIiwiQ0xFQVIiOiJDbGVhciIsIkVYUE9SVCI6IkV4cG9ydCIsIkVYUEFORCI6IkV4cGFuZCIsIkNPTExBUFNFIjoiQ29sbGFwc2UiLCJTRUxFQ1RfVVBfVE9fQ09VTlRfUk9XUyI6IlNlbGVjdCB1cCB0byB7Y291bnR9IHJvd3MgdG8gZXhwb3J0LCBvciB1c2UgU2VsZWN0IEFsbCB0byBleHBvcnQgZXZlcnl0aGluZyBtYXRjaGluZyB5b3VyIGZpbHRlcnMuIiwiQUxMX0NPVU5UX0lURU1TX1NFTEVDVEVEIjoiQWxsIHtjb3VudH0gaXRlbShzKSBzZWxlY3RlZCIsIkNVU1RPTV9TRUxFQ1RJT04iOiJDdXN0b20gc2VsZWN0aW9uIiwiU0VMRUNUX0FMTF9DT1VOVF9JVEVNUyI6IlNlbGVjdCBhbGwge2NvdW50fSBpdGVtKHMpIiwiU0VMRUNUX0NVUlJFTlRfUEFHRV9PTkxZIjoiU2VsZWN0IGN1cnJlbnQgcGFnZSBvbmx5IiwiUFJFVklPVVMiOiJQcmV2aW91cyIsIlFaX05fT0ZfVE9UQUwiOiJ7bG9hZGVkfSBvZiB7dG90YWx9IiwiU0VBUkNIIjoiU2VhcmNoIiwiTE9BRElOR19FTExJUFNFUyI6IkxvYWRpbmcuLi4iLCJOT19SRVNVTFRTX0ZPVU5EIjoiTm8gcmVzdWx0cyBmb3VuZC4iLCJTVF9PUEVOX0lOX05FV19UQUIiOiJPcGVuIGxpbmsgaW4gbmV3IHRhYiIsIlNJR05BVFVSRV9JU19SRVFVSVJFRCI6IlNpZ25hdHVyZSBpcyBSZXF1aXJlZCIsIk1BS0VfQV9TRUxFQ1RJT04iOiJNYWtlIGEgc2VsZWN0aW9uIiwiQlVMS19FRElUIjoiQnVsayBFZGl0IiwiQlVMS19PUFRJT05TX0NPTVBBTklFU19TVUNDRVNTIjoiQWxsIENvbXBhbmllcyBoYXZlIGJlZW4gc2V0IGFzIEluYWN0aXZlIiwiQlVMS19PUFRJT05TX0NPTVBBTklFU19GQUlMIjoiRmFpbGVkIHRvIGluYWN0aXZhdGUiLCJBU1NJR05fRkxPV1MiOiJBc3NpZ25cL0NhbmNlbCBGTE9XcyIsIlRBU0tTX0JVTEtfREVMRVRFX0NPTkZJUk0iOiJZb3UgYXJlIGFib3V0IHRvIGRlbGV0ZSB7Q09VTlR9IFRhc2tzLiBUaGlzIGNhbm5vdCBiZSB1bmRvbmUuIiwiRElTQ09VTlRTIjoiRGlzY291bnRzIiwiVEFYRVMiOiJUYXhlcyIsIklURU1TIjoiSXRlbXMiLCJDVVNUT01fRklFTERfREVMRVRFX1dBUk5JTkciOiJXYXJuaW5nOiBUaGlzIGFjdGlvbiBjYW5ub3QgYmUgdW5kb25lISIsIkFSRV9ZT1VfU1VSRV9ZT1VfV0FOVF9UT19E
188RUxFVEVfU0VMRUNURUQiOiJZb3UgYXJlIGRlbGV0aW5nIHNlbGVjdGVkIHt1bml0VHlwZX0uIEFyZSB5b3Ugc3VyZSB5b3Ugd2lzaCB0byBjb250aW51ZT8iLCJCSUxMSU5HX0FERE9OUyI6IkFkZC1vbnMiLCJJVEVNU19TVUNDRVNTRlVMTFlfREVMRVRFRCI6IkRlbGV0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkiLCJTWVNURU1fRVJSMFJfR0VORVJJQ19TSE9SVCI6IlN5c3RlbSBlcnJvciwgcGxlYXNlIGNvbnRhY3QgQWRtaW5pc3RyYXRvciIsIkFSRV9ZT1VfU1VSRV9ZT1VfV0FOVF9UT19ERUxFVEVfQUxMIjoiWW91IGFyZSBkZWxldGluZyBBTEwge3VuaXRUeXBlfS4gQXJlIHlvdSBzdXJlIHlvdSB3aXNoIHRvIGNvbnRpbnVlPyIsIk5PVEVTX0JVTEtfREVMRVRFX0NPTkZJUk0iOiJZb3UgYXJlIGFib3V0IHRvIGRlbGV0ZSB7Q09VTlR9IE5vdGVzLiBUaGlzIGNhbm5vdCBiZSB1bmRvbmUuIiwiQVJFX1lPVV9TVVJFX1lPVV9XQU5UX1RPX1JFTU9WRV9USEVfU0VMRUNURURfRlJPTV9XT1JMRCI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgdGhlIHNlbGVjdGVkIG1lbWJlcnMgZnJvbSB0aGlzIFdPUkxEPyIsIlNVQ0NFU1MiOiJTdWNjZXNzISIsIkFSRV9ZT1VfU1VSRV9ZT1VfV0FOVF9UT19ERUxFVEVfVEhFX1NFTEVDVEVEX1VTRVJTIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgc2VsZWN0ZWQgdXNlcnM/IiwiRVJST1IiOiJFcnJvciIsIkZBSUxFRF9UT19ERUxFVEVfVklERU8iOiJGYWlsZWQgdG8gZGVsZXRlIHZpZGVvLiIsIllPVVJfQ0hFQ0tPVVRfVE9UQUxTIjoiWW91ciBDaGVja291dCBUb3RhbHMiLCJTRUxFQ1RfSVRFTVMiOiJTZWxlY3QgSXRlbShzKSIsIk9ORV9USU1FX0lURU1TIjoiT25lLVRpbWUgSXRlbXMiLCJPTkVfVElNRV9DSEFSR0VTIjoiT25lLVRpbWUgQ2hhcmdlcyIsIlNVQlNDUklQVElPTl9JVEVNUyI6IlN1YnNjcmlwdGlvbiBJdGVtcyIsIlNVQlNDUklQVElPTlNfQ0hBUkdFUyI6IlN1YnNjcmlwdGlvbnMgQ2hhcmdlcyIsIkdSQU5EX1RPVEFMIjoiR3JhbmQgVG90YWwiLCJDSE9PU0VfUFJJQ0lOR19QQUNLQUdFIjoiQ2hvb3NlIGEgUHJpY2luZyBQYWNrYWdlIiwiRlJFRV9UUklBTF9DSEVDS09VVF9TRUNUSU9OX1RJVExFX09ORSI6IjEtRGF5IEZyZWUgVHJpYWwiLCJGUkVFX1RSSUFMX0NIRUNLT1VUX1NFQ1RJT05fVElUTEUiOiJ7ZGF5c30tRGF5IEZyZWUgVHJpYWwiLCJUUklBTF9BVVRPX0NIQVJHRV9OT1RFIjoiWW91ciBwYXltZW50IG1ldGhvZCB3aWxsIGJlIGNoYXJnZWQge0FNT1VOVH0gYXV0b21hdGljYWxseSwgc3RhcnRpbmcge0RBVEV9LiIsIk5FWFRfU1RFUCI6Ik5leHQgU3RlcCIsIlBST0NFU1NJTkciOiJQcm9jZXNzaW5nIiwiQ09NUExFVEVfQU5EX1BBWSI6IkNvbXBsZXRlIFx1MDAyNiBQYXkiLCJFUlJPUl9TVUJNSVRUSU5HX0ZPUk1fREFUQSI6IlRoZXJlIHdhcyBhbiBlcnJvciBzdWJtaXR0aW5nIHRoZSBGb3JtIGRhdGEuIFlvdXIgUGF5bWVudCB3YXMgc3VjY2Vzc2Z1bC4gUGxlYXNlIGRvIG5vdCBzdWJtaXQgYWdhaW4gXHUyMDE0IGNvbnRhY3QgdXMgYW5kIHdlIHdpbGwgY29tcGxldGUgaXQgZm9yIHlvdS4iLCJGUkVFX1RSSUFMX1BFUklPRCI6IlRyaWFsIiwiRElTQ09VTlQiOiJEaXNjb3VudCIsIlRBWCI6IlRheCIsIlNVQl9UT1RBTCI6IlN1YnRvdGFsIiwiU1VCU0NSSVBUSU9OX0ZSRUVfVFJJQUxfRElTQ09VTlQiOiJGcmVlIFRyaWFsIERpc2NvdW50IiwiVE9UQUxfT05FX1RJTUUiOiJUb3RhbCBPbmUtVGltZSIsIkdPX0JBQ0siOiJHbyBCYWNrIiwiRlJFRV9UUklBTF9DSEVDS09VVF9OT1RFX0NBUkQiOiJZb3Ugd2lsbCBub3QgYmUgY2hhcmdlZCB0b2RheS4gWW91ciBwYXltZW50IG1ldGhvZCBpcyBzZWN1cmVseSBzYXZlZCBhbmQgYmlsbGVkIGF1dG9tYXRpY2FsbHkgb25seSB3aGVuIHlvdXIgZnJlZSB0cmlhbCBlbmRzIFx1MjAxNCBjYW5jZWwgYW55dGltZSBkdXJpbmcgdGhlIHRyaWFsIGFuZCB5b3UgcGF5IG5vdGhpbmcuIiwiRlJFRV9UUklBTF9DSEVDS09VVF9OT1RFX05PX0NBUkQiOiJObyBwYXltZW50IGRldGFpbHMgYXJlIG5lZWRlZCB0byBzdGFydCB5b3VyIGZyZWUgdHJpYWwuIFdoZW4gaXQgZW5kcywgc2ltcGx5IGFkZCBhIHBheW1lbnQgbWV0aG9kIHRvIGNvbnRpbnVlIHlvdXIgc3Vic2NyaXB0aW9uIFx1MjAxNCB1bnRpbCB0aGVuLCB5b3UgcGF5IG5vdGhpbmcuIiwiU0hPV19NT1JFIjoiU2hvdyBNb3JlIiwiTk9fSVRFTVNfSEFWRV9CRUVOX0FEREVEIjoiTm8gaXRlbXMgaGF2ZSBiZWVuIGFkZGVkLiIsIkFMTF9VTlNBVkVEX0RBVEFfV0lMTF9CRV9MT1NUX0FSRV9ZT1VfU1VSRV9ZT1VfV0FOVF9UT19DTE9TRV9GT1JNIjoiQWxsIHVuc2F2ZWQgZGF0YSB3aWxsIGJlIGxvc3QuIEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjbG9zZSBmb3JtPyIsIkFUVEFDSEVEX0ZJTEVTIjoiVXBsb2FkIEZpbGVzIChQbGVhc2UgdXBsb2FkIERJQ09NIEZpbGVzIGFzIGNvbXByZXNzZWQgWmlwIGZpbGVzKSIsIkZPTlRfT1BUSU9OUyI6IkZvbnQgT3B0aW9ucyIsIlBST1BPU0FMX1ZBTFVFX0RZTkFNSUNfT1BUSU9OUyI6IkNvbmZpZ3VyZSBQcm9wb3NhbCBPcHRpb25zIiwiQVNTSUdOX0FDVElPTlMiOiJBc3NpZ24gQXV0b21hdGlvbnMiLCJUSElTX1dJTExfT1ZFUldSSVRFX0FOWV9DSEFOR0VTIjoiVGhpcyB3aWxsIG92ZXJ3cml0ZSBhbnkgY2hhbmdlcyB5b3UgaGF2ZSBtYWRlIiwiTU9WRSI6Ik1vdmUiLCJMQVlPVVQiOiJMYXlvdXQiLCJPUFRJT05TIjoiT3B0aW9ucyIsIlJPVyI6IlJvdyIsIkNPTFVNTiI6IkNvbHVtbiIsIkFERF9FTlRJVFkiOiJBZGQge0VOVElUWX0iLCJDSE9PU0VfVFlQRV9ST1ciOiJDaG9vc2UgdGhlIFR5cGUgb2YgUm93IiwiQUREX1JPVyI6IkFkZCBOZXcgUm93IiwiU1RBQ0siOiJTdGFjayIsIkNPTU1VTklUWV9URU1QTEFURV9GQUlMRURfVE9fQkVfQ1JFQVRFRCI6IlRlbXBsYXRlIGZhaWxlZCB0byBiZSBjcmVhdGVkIiwiREFURV9SQU5HRSI6IkRhdGUgUmFuZ2UiLCJGSUxURVIiOiJGaWx0ZXIiLCJTT1JUIjoiU29ydCIsIlJFRlJFU0giOiJSZWZyZXNoIiwiT1BFTl9TRUFSQ0giOiJPcGVuIFNlYXJjaCIsIkNCRV9CTE9DS19T
188VEFUVVNfUFJJVkFURV9ERVNDIjoiSGlkZGVuIGZyb20gVW5rbm93biBUYXJnZXRzIChQdWJsaWMgVmlld2VycykiLCJDQkVfQkxPQ0tfU1RBVFVTX1ZJU0lCSUxJVFlfREVTQyI6IkFjY2VzcyBvcHRpb25zIGVuYWJsZWQuIE1heSBub3QgYmUgdmlzaWJsZSB0byBzb21lIFRhcmdldHMiLCJDQkVfUkVRVUlSRURfREFUQV9NSVNTSU5HIjoiUmVxdWlyZWQgZGF0YSBpcyBtaXNzaW5nIiwiRURJVF9FTlRJVFkiOiJFZGl0IHtFTlRJVFl9IiwiUkVNT1ZFX0VOVElUWSI6IlJlbW92ZSB7RU5USVRZfSIsIlNFTEVDVF9SQU5HRSI6IlNlbGVjdCByYW5nZSIsIkZST01fRFVFX0RBVEUiOiJGcm9tIER1ZSBEYXRlIiwiVE9fRFVFX0RBVEUiOiJUbyBEdWUgRGF0ZSIsIkVNUFRZIjoiRW1wdHkiLCJDUk1fRklMVEVSX0JMT0NLIjoiQ1JNIEZpbHRlciBCbG9jayIsIkNCRV9XUk9OR19DT05URU5UIjoiV3JvbmcgY29udGVudCwgY29udGVudCBzaG91bGQgY29udGFpbiB2YWxpZCBIVE1MIHRhZ3MsIHBsZWFzZSBjaGVjayBjb250ZW50IGluIEhUTUwgbW9kZS4iLCJUSElTX0ZJRUxEX0lTX1JFUVVJUkVEIjoiVGhpcyBmaWVsZCBpcyByZXF1aXJlZCIsIkFOTk9VTkNFTUVOVFNfRVhBTVBMRV9USVRMRSI6IkV4YW1wbGUgb2YgYW5ub3VuY2VtZW50IHRpdGxlLiIsIkFOTk9VTkNFTUVOVFNfU0VMRUNURUQiOiJTZWxlY3RlZCBhbm5vdW5jZW1lbnRzIHRvIGRpc3BsYXkiLCJBTk5PVU5DRU1FTlRTX0FMTF9ESVNQTEFZIjoiQWxsIGV4aXN0IGFuZCBuZXcgYW5ub3VuY2VtZW50cyB3aWxsIGJlIGRpc3BsYXllZCBoZXJlLiIsIkFMTF9UQVNLU19CTE9DS19ORVciOiJBbGwgVGFza3MgQmxvY2siLCJBTExfVEFTS1MiOiJBbGwgVGFza3MiLCJDT05GSUdVUkVEX0FDVElPTlMiOiJDb25maWd1cmVkIEF1dG9tYXRpb25zIiwiSU5DTFVERVNfU1VCVEFTS1MiOiJJbmNsdWRlcyBTdWJ0YXNrcyIsIkRFUEVOREVOVF9UQVNLIjoiRGVwZW5kZW50IFRhc2siLCJCTFVFUFJJTlRfVEFTSyI6IkJsdWVwcmludCBUYXNrIiwiUkVDVVJSSU5HX1RBU0siOiJSZWN1cnJpbmcgVGFzayIsIkNPTkZJUk1fVEFTS19DT01QTEVUSU9OIjoiQ29uZmlybSIsIlRBU0tfRklMRVMiOiJUYXNrIEZpbGVzIiwiQ09NUExFVEVEX09OIjoiQ29tcGxldGVkIG9uIiwiUEFTVF9EVUUiOiJQYXN0IGR1ZSIsIkRVRSI6IkR1ZSIsIkNPTVBMRVRFRCI6IkNvbXBsZXRlZCIsIlNFTEVDVF9JVEVNIjoiU2VsZWN0IHtJVEVNfSIsIlNUQVRVUyI6IlN0YXR1cyIsIlBSSU9SSVRZIjoiUHJpb3JpdHkiLCJBU1NJR05FRSI6IkFzc2lnbmVlIiwiTk9fSVRFTVMiOiJObyB7SVRFTVN9IiwiVEFTS1MiOiJUYXNrcyIsIk5PVEhJTkdfVE9fRE9fRk9SX05PVyI6Ik5vdGhpbmcgdG8gZG8gZm9yIG5vdyIsIlNIT1dJTkdfTlVNQkVSX09GX1JFU1VMVFMiOiJTaG93aW5nIHtOVU1CRVJ9IFJlc3VsdHMiLCJWSUVXX0FMTF9UQVNLUyI6IlZpZXcgQWxsIFRhc2tzIiwiU1RfTk9fVElDS0VUUyI6Ik5vIHRpY2tldHMiLCJTVF9BREpVU1RfRklMVEVSU19ISU5UIjoiQWRqdXN0IHRoZSBmaWx0ZXJzIHRvIHNlZSByZXN1bHRzLiIsIlNUX05PX1RJQ0tFVFNfSElOVCI6Ik9wZW4gdGlja2V0cyB3aWxsIHNob3cgdXAgaGVyZS4iLCJTVF9PUEVOX1RJQ0tFVFMiOiJPcGVuIFRpY2tldHMiLCJSVF9PUEVSQVRPUl9MQVNUX1hfREFZUyI6Ikxhc3Qge1h9IERheXMiLCJVTkFTU0lHTkVEIjoiVW5hc3NpZ25lZCIsIlNUX01ZX0FTU0lHTkVEIjoiTXkgQXNzaWduZWQiLCJBU1NJR05FRCI6IkFzc2lnbmVkIiwiU1RfU1VQUE9SVF9USUNLRVRTIjoiU3VwcG9ydCBUaWNrZXRzIiwiU1RfQVNTSUdOTUVOVCI6IkFzc2lnbm1lbnQiLCJUQUdTIjoiVGFncyIsIlNUX0xBQkVMUyI6IkxhYmVscyIsIkNNX05FV0VTVF9GSVJTVCI6Ik5ld2VzdCBGaXJzdCIsIkNNX09MREVTVF9GSVJTVCI6Ik9sZGVzdCBGaXJzdCIsIlNUX05VTUJFUiI6Ik51bWJlciIsIlNVQkpFQ1QiOiJTdWJqZWN0IiwiU1RfUkVRVUVTVEVSIjoiUmVxdWVzdGVyIiwiQU5ZIjoiQW55IiwiU0hPV0lOR19OVU1CRVJfT0ZfVE9UQUxfUkVTVUxUUyI6IlNob3dpbmcge05VTUJFUn0gb2Yge1RPVEFMfSBSZXN1bHRzIiwiV0FJVElORyI6IldhaXRpbmciLCJUSU1FX0NPTVBBQ1RfTUlOVVRFUyI6Im0iLCJUSU1FX0NPTVBBQ1RfSE9VUlMiOiJoIiwiVElNRV9DT01QQUNUX0RBWVMiOiJkIiwiVElNRV9DT01QQUNUX1dFRUtTIjoidyIsIlRJTUVfQ09NUEFDVF9ZRUFSUyI6InkiLCJOT1ciOiJOb3ciLCJBR08iOiJhZ28iLCJUT0RBWSI6IlRvZGF5IiwiT0xERVIiOiJPbGRlciIsIkNPUElFRCI6IkNvcGllZCIsIlNUX0NSRUFURV9ORVdfVElDS0VUIjoiQ3JlYXRlIE5ldyBUaWNrZXQiLCJDTE9TRSI6IkNsb3NlIiwiU1RfV0FJVElOR19TSU5DRSI6IldhaXRpbmcgU2luY2UiLCJWSUVXIjoiVmlldyIsIkNPUFlfTElOSyI6IkNvcHkgbGluayIsIkxPQURJTkciOiJMb2FkaW5nIiwiVU5SRUFEIjoiVW5yZWFkIiwiQ1VTVE9NX1VQTE9BRF9JTUFHRSI6IlVwbG9hZCBJbWFnZSIsIlVSTCI6IlVSTCIsIk9QVElPTl9DVVNUT01fRklFTERfVVBMT0FEIjoiQ3VzdG9tIEZpZWxkIChGaWxlIFVwbG9hZCB0eXBlKSIsIk9QVElPTl9DVVNUT01fRklFTERfVVJMIjoiQ3VzdG9tIEZpZWxkIChVUkwgdHlwZSkiLCJDVVNUT01fSU1BR0VfU1RBRkYiOiJTdGFmZiBDdXN0b20gSW1hZ2UiLCJDVVNUT01fSU1BR0VfQ1JNX0NPTlRBQ1QiOiJDUk0gQ29udGFjdCBDdXN0b20gSW1hZ2UiLCJDVVNUT01fSU1BR0VfQ1JNX0NPTVBBTlkiOiJDUk0gQ29tcGFueSBDdXN0b20gSW1hZ2UiLCJDVVNUT01fSU1BR0VfU0FMRVNQRVJTT04iOiJTYWxlc3BlcnNvbiBDdXN0b20gSW1hZ2UiLCJDVVNUT01fSU1BR0VfQ09PUkRJTkFUT1IiOiJDb29yZGluYXRvciBDdXN0b20gSW1hZ2UiLCJQUk9KRUNUU19NRU5VIjoiTXkgQ2FzZXMiLCJLQU5CQU5fQk9BUkQiOiJLYW5iYW4iLCJBUFBMWV9QUk9KRUNUX1RFTVBMQVRFIjoiQXBwbHkgVGFzayBUZW1wbGF0ZSIsIkNBTEVOREFSIjoiQ2FsZW5kYXIiLCJUSU1FUlMiOiJUaW1lcnMiLCJOVU1CRVJfQ09NUExFVEVEIjoie05VTUJFUn0gQ29tcGxldGVkIiwiQlVTSU5FU1NfU0VDVE9SIjoiQnVzaW5lc3MgU2VjdG9yIiwiUFJPSkVDVF9MRUFERVIiOiJDYXNlIExlYWRlciIsIlZJRVdfQUxMX1BST0pFQ1RTIjoiVmlldyBBbGwgUHJvamVjdHMiLCJQTEVBU0VfRU5URVJfQV9WQUxJRF9VUkwiOiJQbGVhc2UgZW50ZXIgYSB2YWxpZCBVUkwiLCJNWV9UQVNLU19CTE9DS19ORVciOiJNeSBUYXNrcyBCbG9jayIsIk1ZX1RBU0tTIjoiTXkgVGFza3MiLCJFWEFNUExFX09GX1BST0pFQ1RfVElUTEUiOiJFeGFtcGxlIG9mIHByb2plY3QgdGl0bGUiLCJUWVBFIjoiVHlwZSIsIlZJRVdfQUxMX01ZX1RBU0tTIjoiVmlldyBhbGwgTXkgVGFza3MiLCJTRUxFQ1RfQ0xJRU5UIjoiU2VsZWN0IHtDTElFTlR9IiwiQkxPQ0tfTkFNRV9PUFRJT05TIjoie0JMT0NLfSBPcHRpb25zIiwiVVBMT0FEX0ZBSUxFRCI6IlVwbG9hZCBmYWlsZWQiLCJDSEVDS0xJU1QiOiJDSEVDS0xJU1QgR0VORVJBVE9SIiwiQ0hFQ0tMSVNUX0JMT0NLX1BSRVZJRVdfQ1JNIjoiQ2hlY2tsaXN0IEJsb2NrIFByZXZpZXcgZm9yIENSTSBUYXJnZXRzIiwiQ0hFQ0tMSVNUX0JMT0NLX0VNUFRZX1NUQVRFIjoiTm8gY2hlY2tsaXN0cyB0byBkaXNwbGF5IHlldC4iLCJSRUNPUkRfUEFZTUVOVCI6IlJlY29yZCBQYXltZW50IiwiRlVMTFlfUEFJRF9PTiI6IkZ1bGx5IHBhaWQgb24iLCJNWV9JTlZPSUNFU19CTE9DSyI6Ik15IEludm9pY2VzIEJsb2NrIiwiTVlfSU5WT0lDRVMiOiJNeSBJbnZvaWNlcyIsIk9QRU5fQkFMQU5DRV9OVU1CRVIiOiJPUEVOIEJBTEFOQ0U6IHtOVU1CRVJ9IiwiUEFSVElBTF9QQVlNRU5UIjoiUGFydGlhbCBQYXltZW50IiwiRlVMTFlfUEFJRCI6IkZ1bGx5IHBhaWQiLCJOT19JTlZPSUNFUyI6Ik5vIEludm9pY2VzIiwiVklFV19BTExfSU5WT0lDRVMiOiJWaWV3IGFsbCBJbnZvaWNlcyIsIkNBTk5PVF9BRERfTVVMVElQTEVfVklERU9fQkxPQ0tTX1RPX0xFU1NPTiI6IllvdSBjYW5ub3QgYWRkIG11bHRpcGxlIHZpZGVvIGJsb2NrcyB0byBhIGxlc3Nvbi4gUGxlYXNlIHJlbW92ZSBhbnkgZXhpc3RpbmcgdmlkZW8gYmxvY2tzIGJlZm9yZSBhZGRpbmcgYSBuZXcgb25lLiIsIkNCRV9DVVNUT01fRklFTERfUFJFVklFVyI6IlRoZSBjb250ZW50IGxvYWRzIGZyb20gY3VzdG9tIGZpZWxkIFVSTC4gUHJldmlldyBpcyBub3QgYXZhaWxhYmxlLiIsIlZJREVPX0ZJTEVfSVNfUkVRVUlSRUQiOiJWaWRlbyBmaWxlIGlzIHJlcXVpcmVkIiwiVklERU9fVVJMX0lTX1JFUVVJUkVEIjoiVmlkZW8gVVJMIGlzIHJlcXVpcmVkIiwiUkVQT1JUSU5HX0JMT0NLIjoiUmVwb3J0aW5nIEJsb2NrIiwiU0VORF9NRVNTQUdFIjoiU2VuZCBNZXNzYWdlIiwiRFJCX1VOQUJMRV9UT19MT0FEIjoiVW5hYmxlIHRvIGxvYWQgZGF0YSIsIkRSQl9SRVRSWSI6IlJldHJ5IiwiRFJCX1RJTEVfRkFJTEVEIjoiVGhpcyBmaWd1cmUgY291bGQgbm90IGJlIGxvYWRlZC4iLCJEUkJfVElMRV9UT09fTEFSR0UiOiJUb28gbWFueSByb3dzIHRvIHRvdGFsLiIsIkRSQl9USUxFX0JST0tFTl9BSU0iOiJXaGF0IHRoaXMgdGlsZSB3YXMgcG9pbnRpbmcgYXQgbm8gbG9uZ2VyIGV4aXN0cy4gRWRpdCB0aGUgYmxvY2sgdG8gcG9pbnQgaXQgYXQgc29tZXRoaW5nIGVsc2UuIiwiRFJCX1RJTEVfSU5DT01QTEVURSI6IlRoaXMgdGlsZSBpcyBub3Qgc2V0IHVwIHlldC4iLCJDQkVfV1JPTkdfTlVNQkVSX09GX1RJTEVTIjoiTnVtYmVyIG9mIHRpbGVzIGRvZXMgbm90IG1hdGNoIHNlbGVjdGVkIHRpbGVzLiIsIkRSQl9ET1dOTE9BRF9BU19QREYiOiJEb3dubG9hZCBhcyBQREYiLCJEUkJfRE9XTkxPQURfQVNfU1ZHIjoiRG93bmxvYWQgYXMgU1ZHIiwiRFJCX0RPV05MT0FEX0FTX1BORyI6IkRvd25sb2FkIGFzIFBORyIsIkRSQl9ET1dOTE9BRF9BU19DU1YiOiJEb3dubG9hZCBhcyBDU1YiLCJEUkJfVE9UQUxfQ0xJRU5UX0RFRkFVTFRfVElUTEUiOiJUb3RhbCBDbGllbnRzIiwiQkxPQ0tfVElUTEUiOiJCbG9jayBUaXRsZSIsIkRSQl9QUklNRV9ESVNQTEFZIjoiUHJpbWUgRGlzcGxheSIsIkRSQl9TVEFUU19SQU5HRSI6IlN0YXRzIFJhbmdlIiwiRFJCX05FV19HT0FMX01FVFJJQyI6IkdvYWwgTWV0cmljIiwiRFJCX0lDT05fQ09MT1JfVEhFTUUiOiJJY29uIENvbG9yIFRoZW1lIiwiRFJCX0lDT05fQkFDS0dST1VORF9USEVNRSI6Ikljb24gQmFja2dyb3VuZCBUaGVtZSIsIkRSQl9UT1RBTF9QUk9TUEVDVFMiOiJ
188Ub3RhbCBQcm9zcGVjdHMiLCJEUkJfVE9UQUxfTEVBRFMiOiJUb3RhbCBMZWFkcyIsIkRSQl9UT1RBTF9OVU1CRVJfSU5fQ0lSQ0xFX1MiOiJUb3RhbCAjIGluIENpcmNsZShzKSIsIkRSQl9DSVJDTEVfUyI6IkNpcmNsZShzKSIsIkRSQl9UT1RBTF9OVU1CRVJfSU5fVEVBTV9TIjoiVG90YWwgIyBpbiBUZWFtKHMpIiwiRFJCX1RFQU1fUyI6IlRlYW0ocykiLCJEUkJfVE9UQUxfUkVWRU5VRSI6IlRvdGFsIFJldmVudWUiLCJDVVJSRU5DWSI6IkN1cnJlbmN5IiwiRFJCX1VOUEFJRF9JTlZPSUNFUyI6IlVucGFpZCBJbnZvaWNlcyIsIkRSQl9PUEVOX0VTVElNQVRFUyI6Ik9wZW4gRXN0aW1hdGVzIiwiRFJCX09QRU5fUFJPUE9TQUxTIjoiT3BlbiBQcm9wb3NhbHMiLCJSVF9BR0lOR19CVUNLRVQiOiJBZ2luZyBCdWNrZXQiLCJQSVBFTElORV9TVEFHRSI6IlBpcGVsaW5lXC9TdGFnZSIsIlBJUEVMSU5FIjoiUGlwZWxpbmUiLCJTVEFHRSI6IlN0YWdlIiwiUlRfT1VUU1RBTkRJTkdfUkVDRUlWQUJMRVMiOiJPdXRzdGFuZGluZyBSZWNlaXZhYmxlcyIsIlJUX0NPTExFQ1RJT05fUkFURSI6IkNvbGxlY3Rpb24gUmF0ZSIsIlJUX1BFUklPRCI6IlBlcmlvZCIsIlJUX0hPVVJTX0xPR0dFRCI6IkhvdXJzIExvZ2dlZCIsIlJUX0FJTV9BVCI6IkFpbSBBdCIsIlJUX1dISUNIX09ORSI6IldoaWNoIE9uZSIsIlJUX1BBWU1FTlRTX1JFQ0VJVkVEIjoiUGF5bWVudHMgUmVjZWl2ZWQiLCJSVF9VTkJJTExFRF9WQUxVRSI6IlVuYmlsbGVkIFZhbHVlIiwiTk9fT1BFTl9ERUFMUyI6Ik5vIE9wZW4gRGVhbHMiLCJOT19PUEVOX0RFQUxTX0hJTlQiOiJPcGVuIERlYWxzIGluIHRoaXMgdmlldyB3aWxsIGFwcGVhciBoZXJlLiIsIk9QRU5fQ1JNX0RFQUxTIjoiT3BlbiBDUk0gRGVhbHMiLCJBRERfREVBTCI6IkFkZCBEZWFsIiwiUFJPQkFCSUxJVFkiOiJQcm9iYWJpbGl0eSIsIk5FRURTX0FfU1RBR0UiOiJOZWVkcyBhIFN0YWdlIiwiQ0FURUdPUlkiOiJDYXRlZ29yeSIsIlZBTFVFIjoiVmFsdWUiLCJOT1RfUFJPVklERUQiOiJOb3QgUHJvdmlkZWQiLCJVTktOT1dOX0FNT1VOVCI6IlVua25vd24iLCJFWFBFQ1RFRF9DTE9TRSI6IkV4cGVjdGVkIENsb3NlIiwiQ1JFQVRFRF9CWSI6IkNyZWF0ZWQgQnkiLCJERUFMX01BUktfV09OX0NPTkZJUk0iOiJNYXJrIGFzIFdvbiIsIkRFQUxfTUFSS19MT1NUX0NPTkZJUk0iOiJNYXJrIGFzIExvc3QiLCJWSUVXX0RFQUwiOiJWaWV3IERlYWwiLCJFRElUX0RFQUwiOiJFZGl0IERlYWwiLCJORVhUX1hfREFZUyI6Ik5leHQge1h9IERheXMiLCJERUFMX1JFU1VMVCI6IlJlc3VsdCIsIlBJUEVMSU5FUyI6IlBpcGVsaW5lcyIsIlNUQUdFUyI6IlN0YWdlcyIsIkNBVEVHT1JJRVMiOiJDYXRlZ29yaWVzIiwiREVBTFMiOiJEZWFscyIsIldFSUdIVEVEX1dJVEhPVVRfUkFURSI6IkRlYWxzIHdpdGggbm8gY3VycmVuY3kgb3Igbm8gZXhjaGFuZ2UgcmF0ZSBhcmUgbGVmdCBvdXQiLCJXRUlHSFRFRCI6IldlaWdodGVkIiwiT1ZFUkRVRSI6Ik92ZXJkdWUiLCJJTlZPSUNFX0lORk8iOiJJbnZvaWNlIEluZm8iLCJHT19UT19NWV9JTlZPSUNFUyI6IkdvIHRvIE1ZIElOVk9JQ0VTIiwiQ09QSUVEX1RPX0NMSVBCT0FSRCI6IkNvcGllZCB0byBjbGlwYm9hcmQiLCJBQ0NPUkRJT05fU0VDVElPTl9NQVJLRVJfQ09QSUVEIjoiVGhpcyBwYWdlIGhhcyBubyBzaW5nbGUgYWRkcmVzcywgc28gb25seSB0aGUgc2VjdGlvbiBtYXJrZXIgd2FzIGNvcGllZC4gQWRkIGl0IHRvIHRoZSBlbmQgb2YgdGhlIHBhZ2UgYWRkcmVzcyB0byBvcGVuIHRoaXMgc2VjdGlvbi4iLCJBQ0NPUkRJT05fU0VDVElPTl9MSU1JVF9SRUFDSEVEIjoiVGhlIHNlY3Rpb24gbGltaXQgaGFzIGJlZW4gcmVhY2hlZC4gRGVsZXRlIGEgc2VjdGlvbiBiZWZvcmUgYWRkaW5nIGFub3RoZXIuIiwiVklFV19UQVNLIjoiVmlldyBUYXNrIiwiR09fVE9fTVlfVEFTS1MiOiJHbyB0byBNWSBUQVNLUyIsIk5BVl9OT19BQ0NFU1MiOiJZb3UgaGF2ZSBubyBhY2Nlc3MgdG8gdGhpcyBjb250ZW50IiwiQUREX0FQUE9JTlRNRU5UIjoiQWRkIEFwcG9pbnRtZW50IiwiQUREX05FV19QQUdFIjoiQWRkIFBvcnRhbCBQYWdlIiwiSU5WQUxJRF9SRVFVRVNUIjoiSW52YWxpZCByZXF1ZXN0IiwiU0FWRURfT1VUU0lERV9DVVJSRU5UX1ZJRVciOiJTYXZlZCBcdTIwMTQgdGhlIGl0ZW0gaXMgb3V0c2lkZSB0aGUgY3VycmVudCB2aWV3IiwiU1VSRV9ZT1VfV0FOVF9UT19NT1ZFX1RPX1RSQVNIIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIG1vdmUgdGhlIHNlbGVjdGVkIG1lc3NhZ2UocykgdG8gdGhlIFRyYXNoPyIsIk5PX1JFQ0VOVF9NRVNTQUdFUyI6Ik5vIFJlY2VudCBNZXNzYWdlcyIsIk1BSUxCT1hfUFJFUEFSSU5HX1RJVExFIjoiV2UgYXJlIHByZXBhcmluZyB5b3VyIG1lc3NhZ2VzIiwiTUFJTEJPWF9QUkVQQVJJTkdfQk9EWSI6IllvdSBoYXZlIG5vdCBvcGVuZWQgeW91ciBtZXNzYWdlcyBpbiBhIHdoaWxlLCBzbyB3ZSBhcmUgcmVidWlsZGluZyB5b3VyIGNvbnZlcnNhdGlvbiBsaXN0LiBUaGlzIHBhZ2Ugd2lsbCB1cGRhdGUgaXRzZWxmIGFzIHNvb24gYXMgaXQgaXMgcmVhZHkuIiwiRU5USVRZX0NSRUFUSU9OX1RBS0lOR19MT05HRVIiOiJ7RU5USVRZfSBzZXR1cCBpcyB0YWtpbmcgbG9uZ2VyIHRoYW4gZXhwZWN0ZWQuIFBsZWFzZSByZWZyZXNoIHRoZSBwYWdlIHRvIGNoZWNrIHRoZSBzdGF0dXMuIiwiTUVTU0FHRVMiOiJNZXNzYWdlcyIsIk9QRU5fSU5CT1giOiJPcGVuIEluYm94IiwiTkVXX01FU1NBR0UiOiJOZXcgTWVzc2FnZSIsIlBJTl9NRVNTQUdFIjoiUGluIiwiVU5QSU5fTUVTU0FHRSI6IlVucGluIiwiTUFSS19BU19SRUFEIjoiTWFyayBhcyBSZWFkIiwiTUFSS19NRVNTQUdFX0FTX1VOUkVBRCI6Ik1hcmsgYXMgVW5yZWFkIiwiUkVQTFkiOiJSZXBseSIsIlJFUExZX0FMTCI6IlJlcGx5IEFsbCIsIk1PVkVfVE9fRk9MREVSIjoiTW92ZSB0byBGb2xkZXIiLCJNT1ZFX1RPX1RSQVNIIjoiTW92ZSB0byBUcmFzaCIsIlBJTk5FRCI6IlBpbm5lZCIsIk5PX1JFQ0VOVF9NRVNTQUdFU19ISU5UIjoiQ29udmVyc2F0aW9ucyBmcm9tIHRoZSBsYXN0IHtYfSBkYXlzIHdpbGwgYXBwZWFyIGhlcmUuIiwiVVNFX1BST1ZJREVEX0lNQUdFIjoiVXNlIFByb3ZpZGVkIEltYWdlIiwiV0VMQ09NRV9CTE9DS19ERUZBVUxUX0hFQUQiOiJXZWxjb21lIHRvIHRoZSBTZWN1cmUgUG9ydGFsISIsIldFTENPTUVfQkxPQ0tfREVGQVVMVF9URVhUIjoiQ29uZ3JhdHVsYXRpb25zLCB5b3UgaGF2ZSBhcnJpdmVkIGF0IG91ciBTZWN1cmUgUG9ydGFsLiBXZSBob3BlIHlvdVx1MDAyN2xsIGZpbmQgdGhlIGV4cGVyaWVuY2UgaGVscGZ1bCBhbmQgY29udmVuaWVudCwgYnV0IHdlXHUwMDI3cmUgYWx3YXlzIGxvb2tpbmcgdG8gaW1wcm92ZSwgc28gaWYgeW91IGhhdmUgc3VnZ2VzdGlvbnMgb3IgZmVlZGJhY2
188ssIHdlXHUwMDI3ZCBsb3ZlIHRvIGhlYXIgdGhlbSEiLCJGT1JNIjoiRm9ybSIsIkZPUk1fQkxPQ0tfRU1QVFlfU0VMRUNUSU9OX0VSUk9SIjoiUGxlYXNlLCBzZWxlY3QgYSBmb3JtIHRvIGRpc3BsYXkuIiwiTk9fRk9STV9TRUxFQ1RFRCI6Ik5vIEZvcm0gU2VsZWN0ZWQiLCJMSVZFX1NUUkVBTV9CTE9DSyI6IkFjdGl2aXR5IFN0cmVhbSBCbG9jayIsIkFDVElWSVRZX1NUUkVBTSI6IkFjdGl2aXR5IFN0cmVhbSIsIkZST01fREFURSI6IkZyb20gRGF0ZSIsIlRPX0RBVEUiOiJUbyBEYXRlIiwiVEhJU19JU19MSVZFU1RSRUFNX1dJREdFVCI6IlRoaXMgaXMgdGhlIExpdmVTdHJlYW0gV2lkZ2V0IiwiU1RBUlRfVVNJTkdfVEhFX0FQUCI6IlN0YXJ0IHVzaW5nIHRoZSBwbGF0Zm9ybSBhbmQgeW91XHUwMDI3bGwgc2VlIGRldGFpbHMgb2YgZXZlcnl0aGluZyB0aGF0IGhhcHBlbnMgaW4gdGhpcyBmZWVkIiwiQ0xJQ0tfSEVSRV9BRERfVEVBTU1BVEUiOiJDbGljayBoZXJlIHRvIGFkZCB5b3VyIGZpcnN0IFRlYW1tYXRlIiwiUkVQVVRBVElPTl9QT1JUQUxfQ0hBTk5FTF9SRVFVSVJFRCI6IlNlbGVjdCBhdCBsZWFzdCBvbmUgQ2hhbm5lbC4iLCJSRVBVVEFUSU9OX1BPUlRBTF9TVEFSU19VTkFWQUlMQUJMRSI6IkNvbmZpZ3VyZSBhIFN0YXIgUmF0aW5nIHRocmVzaG9sZCBpbiBSZXB1dGF0aW9uIFNldHRpbmdzIGJlZm9yZSB1c2luZyBzdGFycyBoZXJlLiIsIlJFUFVUQVRJT05fSU5fUE9SVEFMX0JMT0NLX05PVEUiOiJFYWNoIGNsaWVudCBzZWVzIHRoaXMgb24gdGhlaXIgb3duIHBvcnRhbCwgYW5kIG9ubHkgd2hlbiB5b3VyIHNlbmRpbmcgcnVsZXMgYWxsb3cgaXQuIFN0YWZmIG5ldmVyIHNlZSBpdCwgYW5kIG5laXRoZXIgZG9lcyBhIGNsaWVudCB3aG8gaGFzIGFscmVhZHkgYW5zd2VyZWQuIiwiTkVYVF9VUCI6Ik5leHQgdXAiLCJDT01QTEVURV9BU19TQ0hFRFVMRUQiOiJDb21wbGV0ZSBhcyBTY2hlZHVsZWQiLCJDT01QTEVURV9KVVNUX05PVyI6IkNvbXBsZXRlIEp1c3QgTm93IiwiQVBQT0lOVE1FTlRTIjoiQXBwb2ludG1lbnRzIiwiRVZFTlRTIjoiRm9sbG93LVVwcyIsIkNPTk5FQ1RFRF9FVkVOVFMiOiJFdmVudHMiLCJHQ0FMX0VWRU5UX0ZPUk1fSVNfQUxMX0RBWV9MQUJFTCI6IkFsbCBEYXkiLCJDQU5DRUxfQVBQT0lOVE1FTlQiOiJDYW5jZWwgQXBwb2ludG1lbnQiLCJSRVNDSEVEVUxFX0FQUE9JTlRNRU5UIjoiUmVzY2hlZHVsZSBBcHBvaW50bWVudCIsIk1BTkFHRV9BQ1RJT05TIjoiTWFuYWdlIEF1dG9tYXRpb25zIiwiTVlfU0NIRURVTEVfQkxPQ0siOiJNeSBTY2hlZHVsZSBCbG9jayIsIlNPUlRfRFVFX1NPT05FU1QiOiJEdWUgZGF0ZSBcdTAwYjcgc29vbmVzdCBmaXJzdCIsIlNPUlRfRFVFX0xBVEVTVCI6IkR1ZSBkYXRlIFx1MDBiNyBsYXRlc3QgZmlyc3QiLCJTT1JUX1RJVExFX0FaIjoiVGl0bGUgXHUwMGI3IEFcdTIwMTNaIiwiU09VUkNFX09ORV9USU1FIjoiT25lLXRpbWUiLCJTT1VSQ0VfUkVDVVJSSU5HIjoiUmVjdXJyaW5nIiwiT1BFTiI6Ik9wZW4iLCJTT1VSQ0UiOiJTb3VyY2UiLCJQUk9KRUNUIjoiQ2FzZSIsIk1ZX1NDSEVEVUxFIjoiTXkgU2NoZWR1bGUiLCJVUENPTUlORyI6IlVwY29taW5nIiwiTl9NT1JFX09WRVJEVUUiOiJ7Q09VTlR9IG1vcmUgb3ZlcmR1ZSIsIkxJU1QiOiJMaXN0IiwiQUxMX1BST0pFQ1RTIjoiQWxsIENhc2VzIiwiT1BFTl9DQUxFTkRBUiI6Ik9wZW4gQ2FsZW5kYXIiLCJSRVBPUlRJTkciOiJSZXBvcnRpbmciLCJQUk9QT1NBTF9FRElUX0NIT09TRV9JVEVNU19CTE9DS19QQVJBR1JBUEhfMSI6IlRvIGNvbmZpZ3VyZSB5b3VyIFByb3Bvc2FsIENob2ljZXMsIHlvdSB3aWxsIHdhbnQgdG8gc2VsZWN0IFx1MDAyMlByb3Bvc2FsIE9wdGlvbnMgQmxvY2sgVmFsdWVcdTAwMjIgYXMgdGhlIFZhbHVlIFNvdXJjZSBhbmQgdGhlbiBzZWxlY3QgdGhlIFx1MDAyMkNvbmZpZ3VyZSBQcm9wb3NhbCBPcHRpb25zXHUwMDIyIGJ1dHRvbiB0byBzZXQgeW91ciBwb3NzaWJsZSBJdGVtcywgUGFja2FnZXMsIGFuZCBtb3JlLiIsIkNIT09TRV9JVEVNU19TVU1NQVJZX1RJVExFX1BST1BPU0FMIjoiWW91ciBUb3RhbHMiLCJDSE9PU0VfSVRFTVNfU1VNTUFSWV9UT1RBTF9QUk9QT1NBTCI6IlByb3Bvc2VkIEFtb3VudCIsIlFVSVpfRk9STV9BQ1RJT05fUkVGVVNFRCI6IlRoYXQgYWN0aW9uIGNvdWxkIG5vdCBiZSBhcHBsaWVkLiBQbGVhc2UgcmVsb2FkIHRoZSBwYWdlIGFuZCB0cnkgYWdhaW4uIiwiU1RBRkZfRklMVEVSX0JMT0NLIjoiU3RhZmYgRmlsdGVyIEJsb2NrIiwiSU1QRVJTT05BVEUiOiJJbXBlcnNvbmF0ZSIsIlNUQUZGIjoiU3RhZmYiLCJMT0dfSU4iOiJMb2cgSW4iLCJMT0dJTl9CTE9DS19DSElQX0dSRUVUSU5HX0RFRkFVTFQiOiJIaSwgIiwiTE9HSU5fQkxPQ0tfR1JFRVRJTkdfREVGQVVMVCI6IldlbGNvbWUgYmFjaywgIiwiTE9HSU5fQkxPQ0tfT05XQVJEX0RFRkFVTFQiOiJHbyB0byBNeSBQb3J0YWwiLCJMT0dJTl9CTE9DS19ERVNUSU5BVElPTl9SRUZVU0VEIjoiVXNlIGEgcGFnZSBpbnNpZGUgeW91ciBwb3J0YWwsIHN1Y2ggYXMgXC9kYXNoYm9hcmQuIExpbmtzIHRvIG90aGVyIHNpdGVzIG9yIHRvIHRoZSBzaWduLWluIHBhZ2VzIGNhbm5vdCBiZSB1c2VkIGhlcmUuIiwiUVpfUVVJWl9CTE9DS19FTVBUWV9TRUxFQ1RJT05fRVJST1IiOiJQbGVhc2UsIHNlbGVjdCBhIFF1aXogdG8gZGlzcGxheS4iLCJRWl9RVUlaX0JMT0NLX1BSRVZJRVciOiJRdWl6IEJsb2NrIFByZXZpZXciLCJRWl9RVUlaX0JMT0NLX1BJQ0tfQV9RVUlaIjoiUGljayBhIFF1aXoiLCJRWl9RVUlaX0JMT0NLX05PVF9QVUJMSVNIRUQiOiJUaGlzIHF1aXogaXMgbm8gbG9uZ2VyIHB1Ymxpc2hlZC4gUGljayBhbm90aGVyIHRvIHNob3cgaGVyZS4iLCJRWl9RVUlaX0JMT0NLX09USEVSX0FDQ09VTlQiOiJUaGlzIHF1aXogYmVsb25ncyB0byBhbm90aGVyIGFjY291bnQuIFBpY2sgb25lIG9mIHlvdXJzIHRvIHNob3cgaGVyZS4iLCJRWl9RVUlaX0JMT0NLX1VOQVZBSUxBQkxFIjoiVGhpcyBxdWl6IGlzIG5vIGxvbmdlciBhdmFpbGFibGUuIiwiUVpfUVVJWl9CTE9DS19UQUtFX0FHQUlOIjoiVGFrZSBBZ2FpbiIsIlNIT1dfTlVNQkVSX09GX0lURU1TIjoiU2hvdyB7TlVNQkVSfSIsIlRSQUlMU19CTE9DS19FTlRFUl9VUkwiOiJFbnRlciBhIFRyYWlsIFVSTCBvciBJRCB0byBkaXNwbGF5IGNvbnRlbnQiLCJSRVBVVEFUSU9OX1RFU1RJTU9OSUFMU19FTVBUWSI6Ik5vdGhpbmcgaXMgcHVibGlzaGVkIHlldCwgc28gdGhpcyBibG9jayBpcyBlbXB0eSBmb3IgeW91ciBjbGllbnRzLiBQdWJsaXNoIGEgcmVjb21tZW5kYXRpb24gZnJvbSB0aGUgUmVzcG9uc2VzIHNjcmVlbiBhbmQgaXQgd2lsbCBhcHBlYXIgaGVyZS4iLCJUQVJHRVQiOiJUYXJnZXQiLCJDT05UUkFDVFMiOiJEb2N1bWVudHMiLCJOT19ET0NVTUVOVFMiOiJObyBEb2N1bWVudHMiLCJOT19ET0NVTUVOVFNfSElOVCI6IkRvY3VtZW50cyB0byBzaWduIHdpbGwgc2hvdyB1cCBoZXJlLiIsIlZJRVdfQUxMX0RPQ1VNRU5UUyI6IlZpZXcgQWxsIERvY3VtZW50cyIsIkFERF9DT05UUkFDVCI6IkFkZCBEb2N1bWVudCIsIkhFQURFUiI6IkhlYWRlciIsIk5PX0NPTlRBQ1RTIjoiTm8gQ1JNIFRhcmdldHMiLCJDT01QQU5JRVMiOiJDb21wYW5pZXMiLCJDT05UQUNUUyI6IkNvbnRhY3RzIiwiQUREX0JMT0NLIjoiQWRkIEJsb2NrIiwiRE9fWU9VX1dJU0hfVE9fU1RPUF9DVVJSRU5UX1RJTUVSIjoiU3RvcCB0aGUgY3VycmVudCB0aW1lcj8iLCJET05UX0FTS19NRV9BR0FJTiI6IkRvblx1MDAyN3QgYXNrIG1lIGFnYWluIiwiWUVTIjoiWWVzIiwiTk8iOiJObyIsIlRJTUVSX0FERF9ORVciOiJBZGQgTmV3IFRpbWVyIiwiVElNRVIiOiJUaW1lciIsIlRPREFZX0NBTEVOREFSIjoiVG9kYXkiLCJET05FX0NBTEVOREFSIjoiRG9uZSIsIk
188ZSRUVfVFJJQUxfUkVRVUlSRV9DQVJEIjoiUmVxdWlyZSBDYXJkIFVwZnJvbnQiLCJGUkVFX1RSSUFMX05PX0NBUkRfVVBGUk9OVCI6Ik5vIENhcmQgVXBmcm9udCIsIk1BTkFHRURfU01TX0FDVElPTl9GQUlMRUQiOiJTb21ldGhpbmcgd2VudCB3cm9uZy4gUGxlYXNlIHRyeSBhZ2Fpbi4iLCJNQU5BR0VEX1NNU19QUk9GSUxFX1NBVkVfRkFJTEVEIjoiVGhlIHByb2ZpbGUgY291bGQgbm90IGJlIHNhdmVkLiBQbGVhc2UgcmV2aWV3IHRoZSBoaWdobGlnaHRlZCBkZXRhaWxzIGFuZCB0cnkgYWdhaW4uIiwiUEFZTUVOVF9QUk9DRVNTSU5HIjoiWW91ciBwYXltZW50IGlzIHByb2Nlc3NpbmciLCJQQVlNRU5UX0ZBSUwiOiJZb3VyIHBheW1lbnQgd2FzIG5vdCBzdWNjZXNzZnVsLCBwbGVhc2UgdHJ5IGFnYWluIiwiTUFOQUdFRF9TTVNfT1BUSU5fSU1BR0VfRkFJTEVEIjoiV2UgY291bGQgbm90IGNhcHR1cmUgdGhlIGNvbnNlbnQgZGlzY2xvc3VyZSBwcmV2aWV3LiBQbGVhc2UgdHJ5IGFnYWluLiIsIk1BTkFHRURfU01TX1NXSVRDSF9GQUlMRUQiOiJXZSBjb3VsZCBub3Qgc3dpdGNoIHlvdSB0byB0aGUgdG9sbC1mcmVlIGxhbmUuIFBsZWFzZSB0cnkgYWdhaW4uIiwiTUFOQUdFRF9TTVNfT1BUSU5fSU1BR0VfTk9UX1BORyI6IlRoZSBjb25zZW50IGltYWdlIG11c3QgYmUgYSBQTkcgZmlsZS4iLCJNQU5BR0VEX1NNU19PUFRJTl9JTUFHRV9UT09fTEFSR0UiOiJUaGUgY29uc2VudCBpbWFnZSBtdXN0IGJlIDJNQiBvciBzbWFsbGVyLiIsIkFERF9CUkFORElOR19URU1QTEFURSI6IkFkZCBCcmFuZGluZyBUZW1wbGF0ZSIsIkVESVRfQlJBTkRJTkdfVEVNUExBVEUiOiJFZGl0IEJyYW5kaW5nIFRlbXBsYXRlIiwiVEVNUExBVEVfREVUQUlMUyI6IlRlbXBsYXRlIERldGFpbHMiLCJMT0dPX0FEQVBUQVRJT05fV0FSTl9TUEFSU0VfUEFMRVRURSI6IllvdXIgbG9nbyBoYXMgdmVyeSBmZXcgY29sb3JzLCBzbyB3ZSBrZXB0IHRoZSBzY2hlbWUgbmV1dHJhbCBhbmQgdXNlZCB5b3VyIGJyYW5kIGNvbG9yIG9ubHkgd2hlcmUgaXQgc3RhbmRzIG91dC4iLCJMT0dPX0FEQVBUQVRJT05fV0FSTl9EQVJLX01PREVfTEVHSUJJTElUWSI6Ik9uZSBvZiB0aGVzZSBjb2xvcnMgbWF5IGJlIGhhcmQgdG8gcmVhZCBpbiBkYXJrIG1vZGUuIEFkanVzdCBpdCBpZiB5b3VyIHBvcnRhbCBvZmZlcnMgYSBkYXJrIHRoZW1lLiIsIkxPR09fQURBUFRBVElPTl9DT05UUkFTVF9BRFZJU09SWSI6IlRoZXNlIGNvbG9ycyBtYXkgYmUgaGFyZCB0byByZWFkIHRvZ2V0aGVyLiBZb3UgY2FuIHN0aWxsIHVzZSB0aGVtLiIsIkxPR09fQURBUFRBVElPTl9BUFBMWV9GQUlMRUQiOiJXZSBjb3VsZCBub3QgYXBwbHkgeW91ciBicmFuZGluZy4gUGxlYXNlIHRyeSBhZ2Fpbi4iLCJMT0dPX0FEQVBUQVRJT05fUlVOX0ZBSUxFRF9HRU5FUklDIjoiQnJhbmRpbmcgZ2VuZXJhdGlvbiBkaWQgbm90IHByb2R1Y2UgYW55IGltYWdlcy4gUGxlYXNlIHRyeSBhZ2FpbiBvciB1cGxvYWQgYSBkaWZmZXJlbnQgbG9nbyBmaWxlLiIsIlRXT19GQUNUT1JfTlVER0VfQUxMX0NPTkZJUk0iOiJUaGlzIGVtYWlscyBldmVyeW9uZSBpbiB0aGlzIGdyb3VwIHdobyBoYXMgbm90IHNldCB1cCB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uLiBBbnlvbmUgcmVtaW5kZWQgaW4gdGhlIGxhc3QgZGF5IGlzIHNraXBwZWQuIiwiQklMTElOR19BRERSRVNTIjoiQmlsbGluZyBBZGRyZXNzIiwiTUVFVElOR19SRU1JTkRFUlNfU0FWRV9GQUlMRUQiOiJZb3VyIHJlbWluZGVyIHNldHRpbmdzIGNvdWxkIG5vdCBiZSBzYXZlZC4gTm90aGluZyB3YXMgY2hhbmdlZC4iLCJCVUxLX0NPUFlfQUxMX1dBUk5JTkciOiJUaGlzIG9wZXJhdGlvbiBjYW5ub3QgYmUgdW5kb25lLiIsIkNPTlRJTlVFIjoiQ29udGludWUiLCJDQU5DRUxfQVNTSUdORURfRkxPVyI6IkNhbmNlbCBBc3NpZ25lZCBGTE9XcyIsIlNNU19DT05TRU5UX1JFTEVBU0VfQ09ORklSTV9USVRMRSI6IkxpZnQgYW4gRXhpc3RpbmcgT3B0LU91dD8iLCJTTVNfQ09OU0VOVF9SRUxFQVNFX0NPTkZJUk1fVEVYVCI6IlRoaXMgY29udGFjdCBvcHRlZCBvdXQgb2YgdGV4dCBtZXNzYWdlcyBvbiB7TlVNQkVSU30uIFJlY29yZGluZyBjb25zZW50IG5vdyBhbHNvIGxpZnRzIHRoZSBvcHQtb3V0IG9uIGV2ZXJ5IG51bWJlciBsaXN0ZWQsIHNvIHRleHQgbWVzc2FnZXMgdG8gdGhlbSBjYW4gcmVzdW1lLiBDb250aW51ZSBvbmx5IGlmIHRoZSBjb250YWN0IGFncmVlZCB0byByZWNlaXZlIHRleHQgbWVzc2FnZXMgYWdhaW4uIiwiU01TX0NPTlNFTlRfUkVMRUFTRV9DT05GSVJNX0JVVFRPTiI6IlJlY29yZCBDb25zZW50IGFuZCBMaWZ0IE9wdC1PdXQiLCJXT1VMRF9ZT1VfU0FWRV9PUl9ESVNDQVJEX0RSQUZUX05PVEUiOiJXb3VsZCB5b3UgbGlrZSB0byBzYXZlIG9yIGRpc2NhcmQgcHJldmlvdXNseSBkcmFmdGVkIG5vdGVzPyIsIkRJU0NBUkQiOiJEaXNjYXJkIiwiTk9URV9IQVNfQkVBTl9ERUxFVEVEIjoiTm90ZSBoYXMgYmVlbiBkZWxldGVkIiwiQVBQT0lOVE1FTlRfU1VDQ0VTU0ZVTExZX0RFTEVURUQiOiJBcHBvaW50bWVudCBzdWNjZXNzZnVsbHkgY2FuY2VsZWQuIiwiUEZDVF9DSEFOR0VfUkVHSU9OX0FMRVJUX0NPTkZJUk0iOiJDb250aW51ZSIsIlBGQ1RfUkVHSU9OX0NIQU5HRV9TVUNDRUVERUQiOiJSZWdpb24gY2hhbmdlZCBzdWNjZXNzZnVsbHkuIiwiUEZDVF9TQVZFX1NVQ0NFRURFRCI6IlNhdmVkIHN1Y2Nlc3NmdWxseS4iLCJQRkNUX1NBVkVfUkVKRUNURUQiOiJFbnRlcmVkIG51bWJlciBpcyBpbnZhbGlkLiIsIlBGQ1RfU0FWRV9GQUlMRUQiOiJBbiBlcnJvciBvY2N1cnJlZC4gUGxlYXNlLCB0cnkgYWdhaW4uIiwiVE9UQUwiOiJUT1RBTCIsIkFERF9TVEFHRSI6IkFkZCBTdGFnZSIsIkxPV0VSQ0FTRV9PRiI6Im9mIiwiV09OIjoiV29uIiwiRk9SRUNBU1RfVE9UQUwiOiJGb3JlY2FzdCIsIkRFRkFVTFQiOiJEZWZhdWx0IiwiTE9TVCI6Ikxvc3QiLCJIQVZFX0FUX0xFQVNUX09ORV9TVEFHRSI6IllvdSBzaG91bGQgaGF2ZSBhdCBsZWFzdCBvbmUgc3RhZ2UiLCJUSElTX1NUQUdFX0NPTlRBSU5TX0RFQUxTIjoiVGhpcyBTdGFnZSBjb250YWlucyBEZWFscyIsIk5FRURfVE9fTU9WRV9ERUFMUyI6IldlIG5lZWQgdG8gbW92ZSB0aGUgRGVhbHMgdGhhdCBhcmUgY3VycmVudGx5IGluIHRoaXMgU3RhZ2UuIiwiTkVFRF9UT19NT1ZFX0RFQUxTX0xBQkVMIjoiTW92ZSB0aGUgRGVhbHMgdGhhdCBhcmUgY3VycmVudGx5IGluIHRoaXMgU3RhZ2UgdG8gdGhlIGZvbGxvd2luZyBTdGFnZSIsIkRFTEVURV9TVEFHRSI6IkRlbGV0ZSBTdGFnZSIsImM1OGVlYTY3LWY0MWQtNDYzMS1hMjRkLTgxOGYwOThlZmVjMCI6IkRlYWwgRGV0YWlscyIsIlRJVExFX0FDVElPTlNfVEVNUExBVEUiOiJBdXRvLVRlbXBsYXRlIiwiWU9VX0NBTk5PVF9VTkRPX1RISVNfQUNUSU9OIjoiWW91IGNhbm5vdCB1bmRvIHRoaXMgYWN0aW9uIiwiQ1JNX1NFVFRJTkdTX1VQREFURUQiOiJDUk0gU2V0dGluZyBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHVwZGF0ZWQiLCJJTVBPUlRBTlRfUExBQ0VIT0xERVJTX0RPX05PVF9QT1BVTEFURV9JTl9URVNUX0VNQUlMUyI6Ilx1MDAzQ3N0cm9uZ1x1MDAzRUlNUE9SVEFOVDogXHUwMDNDXC9zdHJvbmdcdTAwM0VQbGFjZWhvbGRlcnMgRE8gTk9UIHBvcHVsYXRlIGluIHRlc3QgZW1haWxzLiIsIkFDVElPTl9XSUxMX09WRVJXUklURV9ZT1VSX0NIQU5HRVMiOiJUaGlzIHdpbGwgb3ZlcndyaXRlIGFueSBjaGFuZ2VzIHlvdSBoYXZlIG1hZGUiLCJDT05UUkFDVF9FTUFJTF9URU1QTEFURV9SRVNFVF9BTExfUSI6IlRoaXMgd2lsbCBjbGVhciBhbGwgY3VzdG9tIHRlbXBsYXRlcyBmb3IgYWxsIERvY3VtZW50IEdlbmVyYXRvcnMiLCJERUZBVUxUX1NVQkpFQ1QiOiJEZWZhdWx0IFN1YmplY3QiLCJERUZBVUxUX0JPRFkiOiJEZWZhdWx0IEJvZHkiLCJSRVNFVF9UT19ERUZBVUxUIjoiUmVzZXQgdG8gRGVmYXVsdCIsIlNFTkRfVEVTVCI6IlNlbmQgVGVzdCIsIkFWQUlMQUJMRV9QTEFD
188RUhPTERFUlNfRk9SIjoiQXZhaWxhYmxlIFBsYWNlaG9sZGVycyBmb3IiLCJBUkUiOiJhcmUiLCJBUFBMWV9UT19BTEwiOiJBcHBseSB0byBBbGwiLCJTRUxFQ1RfRk9MREVSIjoiU2VsZWN0IEZvbGRlciIsIk1PVkVfVE9fSU5CT1giOiJNb3ZlIHRvIEluYm94IiwiTk9fRk9MREVSU19BVkFJTEFCTEUiOiJObyBmb2xkZXJzIGF2YWlsYWJsZS4gQ3JlYXRlIGEgZm9sZGVyIGZpcnN0LiIsIklOQk9YIjoiSW5ib3giLCJORVdfQ0FOTkVEX1JFU1BPTlNFIjoiTmV3IENhbm5lZCBSZXNwb25zZSIsIlVQREFURV9DQU5ORURfUkVTUE9OU0UiOiJFZGl0IENhbm5lZCBSZXNwb25zZSIsIkNBTk5FRF9SRVNQT05TRV9XSUxMX0JFX0RFTEVURUQiOiJDYW5uZWQgUmVzcG9uc2Ugd2lsbCBiZSBkZWxldGVkIHBlcm1hbmVudGx5IiwiU1VSRV9ZT1VfV0FOVF9UT19SRVNUT1JFIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlc3RvcmUgdGhlIHNlbGVjdGVkIG1lc3NhZ2Uocyk/IiwiU1VSRV9ZT1VfV0FOVF9UT19ERUxFVEVfRk9SRVZFUiI6IlRoaXMgYWN0aW9uIGNhbm5vdCBiZSB1bmRvbmUuIFRoZSBtZXNzYWdlKHMpIHdpbGwgYmUgcGVybWFuZW50bHkgZGVsZXRlZC4iLCJBVFRBQ0hNRU5UUyI6IkF0dGFjaG1lbnRzIiwiRk9MREVSX05BTUVfQUxSRUFEWV9FWElTVFMiOiJBIGZvbGRlciB3aXRoIHRoaXMgbmFtZSBhbHJlYWR5IGV4aXN0cyIsIkRFTEVURV9GT0xERVJfQ09ORklSTSI6Ik1lc3NhZ2VzIHdpbGwgYmUgbW92ZWQgYmFjayB0byBJbmJveC4gQ29udGludWU/IiwiRk9MREVSX05BTUVfUExBQ0VIT0xERVIiOiJGb2xkZXIgbmFtZS4uLiIsIkNSRUFURV9ZT1VSX0ZJUlNUX0ZPTERFUiI6IisgQ3JlYXRlIHlvdXIgZmlyc3QgZm9sZGVyIiwiVEFTS19OT19QUklPUklUWSI6Ik5vIFByaW9yaXR5IiwiU1lTVEVNX0VSUk9SX0dFTkVSSUMiOiJTeXN0ZW0gZXJyb3IuIFBsZWFzZSB0cnkgYWdhaW4uIElmIHByb2JsZW0gcGVyc2lzdHMsIGNvbnRhY3QgQWRtaW5pc3RyYXRvci4iLCJVTlNBVkVEX0NIQU5HRVMiOiJVbnNhdmVkIGNoYW5nZXMiLCJTQVZFX0FORF9DT05USU5VRSI6IlNhdmUgXHUwMDI2IENvbnRpbnVlIiwiS0VFUF9FRElUSU5HIjoiS2VlcCBFZGl0aW5nIiwiU1RfVU5BVVRIT1JJWkVEX0FDVElPTiI6IllvdSBhcmUgbm90IGF1dGhvcml6ZWQgdG8gcGVyZm9ybSB0aGlzIGFjdGlvbiIsIkFJX1JFV1JJVEVfUFJPTVBUX1NBVkVEIjoiUHJvbXB0IHNhdmVkLiIsIkVOVElUWV9DT1BJRURfVE9fWU9VUl9DTElQQk9BUkQiOiJ7RU5USVRZfSBjb3BpZWQgdG8geW91ciBjbGlwYm9hcmQiLCJUQVNLX1VSTCI6IlRhc2sgVVJMIiwiREFJTFkiOiJEYWlseSIsIkVWRVJZX1hfREFZUyI6IkV2ZXJ5IHtYfSBkYXlzIiwiV0VFS0xZIjoiV2Vla2x5IiwiRVZFUllfWF9XRUVLUyI6IkV2ZXJ5IHtYfSB3ZWVrcyIsIk1PTlRITFkiOiJNb250aGx5IiwiRVZFUllfWF9NT05USFMiOiJFdmVyeSB7WH0gbW9udGhzIiwiMmUyM2RiNDktZDQzNS00MWFhLTg0YTYtMDU5YTM3MDNjODAxIjoiWWVhcmx5IiwiQU5OVUFMTFlfT04iOiJBbm51YWxseSBvbiIsIkVWRVJZX1hfWUVBUlNfT04iOiJFdmVyeSB7WH0geWVhcnMgb24iLCJFVkVSWV9XRUVLREFZX01PTkRBWV9UT19GUklEQVkiOiJFdmVyeSB3ZWVrZGF5IChNb25kYXkgdG8gRnJpZGF5KSIsIldFRUtMWV9PTl9XRUVLREFZUyI6IldlZWtseSBvbiB3ZWVrZGF5cyIsIlJFQ1VSUkVOQ0VfTE9XRVJDQVNFX09OX0FMTF9EQVlTIjoib24gYWxsIGRheXMiLCJSRUNVUlJFTkNFX0xPV0VSQ0FTRV9PTl9XRUVLREFZUyI6Im9uIHdlZWtkYXlzIiwiUkVDVVJSRU5DRV9BVF9MRUFTVF9PTkVfREFZIjoiQXQgbGVhc3Qgb25lIGRheSBtdXN0IGJlIHNlbGVjdGVkLiIsIlJFQ1VSUkVOQ0VfTE9XRVJDQVNFX09OIjoib24iLCJSRUNVUlJFTkNFX0xPV0VSQ0FTRV9PTl9EQVkiOiJvbiBkYXkiLCJSRUNVUlJFTkNFX0xPV0VSQ0FTRV9PTl9USEVfRklSU1QiOiJvbiB0aGUgZmlyc3QiLCJSRUNVUlJFTkNFX0xPV0VSQ0FTRV9PTl9USEVfU0VDT05EIjoib24gdGhlIHNlY29uZCIsIlJFQ1VSUkVOQ0VfTE9XRVJDQVNFX09OX1RIRV9USElSRCI6Im9uIHRoZSB0aGlyZCIsIlJFQ1VSUkVOQ0VfTE9XRVJDQVNFX09OX1RIRV9GT1VSVEgiOiJvbiB0aGUgZm91cnRoIiwiUkVDVVJSRU5DRV9MT1dFUkNBU0VfT05fVEhFX0xBU1QiOiJvbiB0aGUgbGFzdCIsIlJFQ1VSUkVOQ0VfTE9XRVJDQVNFX1RJTUVTIjoidGltZXMiLCJSRUNVUlJFTkNFX0xPV0VSQ0FTRV9VTlRJTCI6InVudGlsIiwiSURMRV9XQVJOSU5HX0JPRFkiOiJZb3Ugd2lsbCBiZSBzaWduZWQgb3V0IGluIHtOfSBzZWNvbmRzIiwiSURMRV9XQVJOSU5HX1RJVExFIjoiU3RheSBzaWduZWQgaW4/IiwiSURMRV9XQVJOSU5HX1NUQVkiOiJTdGF5IHNpZ25lZCBpbiIsIk1PTlRIIjoiTW9udGgiLCJXRUVLIjoiV2VlayIsIkRBWSI6IkRheShzKSIsIkNVUlJFTlQiOiJjdXJyZW50IiwiQUREX1RBU0siOiJBZGQgVGFzayIsIk1JTlVURSI6Ik1pbnV0ZSIsIkhPVVIiOiJIb3VyIiwiQkVGT1JFX0FUIjoiYmVmb3JlIGF0IiwiT1VUTE9PS19SRU1JTkRFUl9TRVRUSU5HU19OX0RBWVMiOiIjIG9mIGRheXMgdG8gaW5jbHVkZSBpbiBPdXRsb29rIGVtYWlsIiwiT1VUTE9PS19SRU1JTkRFUl9TRVRUSU5HU19JTkNMVURFX1NDSEVEVUxFRCI6IkluY2x1ZGUgaXRlbXMgc2NoZWR1bGVkIHdpdGhpbiB0aGlzIHRpbWUtZnJhbWUuIiwiT1VUTE9PS19SRU1JTkRFUl9TRVRUSU5HU19TRU5EX0FUX1lPVVJfVFoiOiJTZW5kIGF0IChiYXNlZCBvbiB5b3VyIHRpbWV6b25lKSIsIkFDQ09VTlRfSU5WT0lDRV9ERVRBSUxTIjoiSW52b2ljZSBEZXRhaWxzIiwiVkFMSURBVEVfUEFZTUVOVCI6IkFkZFwvVXBkYXRlIFBheW1lbnQgSW5mb3JtYXRpb24iLCJTVEFSVF9TRVNTSU9OIjoiU3RhcnQgU2Vzc2lvbiIsIkVESVRfU0VTU0lPTiI6IkVkaXQgU2Vzc2lvbiIsIlBPUlRBTF9CQU5LX01JTklNVU1fTkVHQVRJVkVfQkFMQU5DRSI6IlRvIGNvdmVyIGEgbmVnYXRpdmUgYmFsYW5jZSwgeW91ciBtaW5pbXVtIGRlcG9zaXQgaXMgJCIsIlBPUlRBTF9CQU5LX01JTklNVU1fREVQT1NJVCI6IlRoZSBtaW5pbXVtIGRlcG9zaXQgaXMgJCIsIlZBVUxUX05VTUJFUiI6IkNhcmQgTnVtYmVyIiwiQ0FSRF9FWFBJUkFUSU9OX0RBVEUiOiJFeHBpcmF0aW9uIiwiQ1ZWIjoiQ1ZWIENvZGUiLCJCSUxMSU5HX1pJUCI6IlBvc3RhbFwvWmlwIENvZGUiLCJUUl81OWNlNTgxMmQ1ZmRiIjoiQ2FyZGhvbGRlciBOYW1lIiwiUkVTRUxMRVJfQ0FOQ0VMX1NVQlNDUklQVElPTiI6IkFyZSB5b3Ugc3VyZT8gVGhpcyBDaGlsZCBhY2NvdW50IGFsb25nIHdpdGggYWxsIG9mIGl0cyBkYXRhIHdpbGwgbm8gbG9uZ2VyIGJlIGFjY2Vzc2libGUuIiwiUExBTl9DSEVDS09VVF9DQVJEX0VOVFJZX1VOQVZBSUxBQkxFIjoiV2UgY2Fubm90IHRha2UgbmV3IGNhcmQgZGV0YWlscyByaWdodCBub3cuIFBsZWFzZSB0cnkgYWdhaW4gc2hvcnRseS4iLCJDUkVESVRfQ0FSRF9OVU1CRVIiOiJDcmVkaXQgQ2FyZCBOdW1iZXIiLCJFWFBJUkFUSU9OX0RBVEUiOiJFeHBpcmF0aW9uIERhdGUiLCJWQVVMVF9aSVBfQ09ERSI6IlppcCBDb2RlIiwiUExBTl9DSEVDS09VVF9DT05GSVJNSU5HX0RPX05PVF9SRVRSWSI6IldlIGxvc3QgdGhlIGNvbm5lY3Rpb24gd2hpbGUgeW91ciBwYXltZW50IHdhcyBiZWluZyB0YWtlbi4gV2UgYXJlIGNvbmZpcm1pbmcgaXQgbm93IFx1MjAxNCBwbGVhc2UgZG8gbm90IHBheSBhZ2Fpbi4gUmVmcmVzaCB0aGlzIHBhZ2UgaW4gYSBtb21lbnQgdG8gc2VlIHlvdXIgcGxhbi4iLCJJU19SRVFVSVJFRCI6InthdHRyaWJ1dGV9IGlzIHJlcXVpcmVkIiwiRU1BSUxfQUREUkVTUyI6IkVtYWlsIEFkZHJlc3MiLCJTRVRUSU5HUyI6IlNldHRpbmdzIiwiU0FWRUQiOiJTYXZlZCIsIlBBR0VfU09NRV9FUlJPUiI6IlNvbWUgZXJyb3IsIGNoYW5nZXMgaGF2ZSBub3QgYmVlbiBzY
188XZlZCIsIlVTRV9URU1QTEFURSI6IlVzZSB0ZW1wbGF0ZSIsIkFJX1JFV1JJVEVfQ09OTkVDVElPTl9MT1NUIjoiVGhlIGNvbm5lY3Rpb24gZHJvcHBlZCB3aGlsZSB3YWl0aW5nLiBUaGUgcmV3cml0ZSBpcyBzdGlsbCBydW5uaW5nIFx1MjAxNCB5b3Ugd2lsbCBiZSBub3RpZmllZCB3aGVuIGl0IGlzIHJlYWR5LiIsIkFJX1JFV1JJVEVfUFJFVklFV19QUk9HUkVTUyI6IntET05FfSBvZiB7VE9UQUx9IHBpZWNlcyBvZiB3cml0aW5nIHJld3JpdHRlbi4iLCJBSV9SRVdSSVRFX1BSRVZJRVdfRUxBUFNFRF9TRUNPTkRTIjoiUnVubmluZyBmb3Ige1NFQ09ORFN9IHNlY29uZHMuIiwiQUlfUkVXUklURV9QUkVWSUVXX0VMQVBTRURfTUlOVVRFUyI6IlJ1bm5pbmcgZm9yIHtNSU5VVEVTfSBtaW51dGVzLiIsIkFJX1JFV1JJVEVfU1RJTExfV09SS0lORyI6IlRoaXMgaXMgdGFraW5nIGxvbmdlciB0aGFuIHVzdWFsLiBZb3UgY2FuIGNhcnJ5IG9uIHdpdGggc29tZXRoaW5nIGVsc2UgXHUyMDE0IHlvdSB3aWxsIGJlIG5vdGlmaWVkIHdoZW4gaXQgaXMgcmVhZHkuIiwiVFJfRVhQT1JUX0pTT05fSElOVCI6IkV2ZXJ5IGxhbmd1YWdlIHlvdSBoYXZlIHRyYW5zbGF0ZWQgdGhpcyB0ZW1wbGF0ZSBpbnRvLiBDb3B5IGl0LCBvciBkb3dubG9hZCBpdCBhcyBhIGZpbGUuIiwiVFJfSU1QT1JUX0pTT05fSElOVCI6IlBhc3RlIHRoZSBleHBvcnRlZCBKU09OLCBvciBwaWNrIGEgZmlsZS4gT25seSB0aGUgbGFuZ3VhZ2VzIGl0IG5hbWVzIGFyZSByZXBsYWNlZC4iLCJUUl9QQVNURV9KU09OX0hFUkUiOiJQYXN0ZSBKU09OIGhlcmUiLCJUUl9JTVBPUlRfSlNPTl9GUk9NX0ZJTEUiOiJPciBjaG9vc2UgYSBmaWxlIiwiVFJfRVhQT1JUX1RSQU5TTEFUSU9OUyI6IkV4cG9ydCB0cmFuc2xhdGlvbnMiLCJUUl9JTVBPUlRfVFJBTlNMQVRJT05TIjoiSW1wb3J0IHRyYW5zbGF0aW9ucyIsIklNUE9SVCI6IkltcG9ydCIsIlRSX0lNUE9SVF9KU09OX0VNUFRZIjoiUGFzdGUgdGhlIEpTT04gb3IgY2hvb3NlIGEgZmlsZSBmaXJzdC4iLCJUUl9MQU5HVUFHRV9TUEVDSUZJQ19DT05URU5UIjoiTGFuZ3VhZ2Utc3BlY2lmaWMgY29udGVudCIsIlRSX0VOR0xJU0hfT1JJR0lOQUwiOiJFbmdsaXNoIG9yaWdpbmFsIiwiVFJfRVhQT1JUX0pTT04iOiJFeHBvcnQgSlNPTiIsIlRSX0lNUE9SVF9KU09OIjoiSW1wb3J0IEpTT04iLCJBSV9MT09LT1VUX1RSWV9ERUxJVkVSU19OT1RISU5HIjoiTm90aGluZyB3YXMgc2VudCB0byBhbnlvbmUuIiwiQUlfQUNUSVZJVFlfTE9BRF9NT1JFIjoiTG9hZCB7Q09VTlR9IG1vcmUiLCJBSV9BQ1RJVklUWV9TSE9XSU5HIjoie1NIT1dOfSBvZiB7VE9UQUx9IiwiQUlfQUNUSVZJVFlfTk9fTUFUQ0hfTk9URSI6Ik5vIEFnZW50IGlzIGNhbGxlZCBcdTIwMWN7UVVFUll9XHUyMDFkLiIsIkFJX1dPUktTUEFDRV9DT05URVhUX0NIQVJBQ1RFUlNfUkVNQUlOSU5HIjoie0NPVU5UfSBjaGFyYWN0ZXJzIHJlbWFpbmluZyIsIkNSRUFURV9GSUxFX1JFUVVFU1QiOiJDcmVhdGUgZmlsZSByZXF1ZXN0IiwiQ0xJRU5UX0ZJTEVfUkVRVUVTVFNfRklMRVMiOiJGaWxlIFJlcXVlc3RzIiwiQkFDSyI6IkJhY2siLCJDT1BZIjoiQ29weSIsIkNPUFlfUFJPVEVDVEVEX0xJTksiOiJDb3B5IFByb3RlY3RlZCBMaW5rIiwiQ09QWV9QVUJMSUNfTElOSyI6IkNvcHkgUHVibGljIExpbmsiLCJSRVNUT1JFIjoiUmVzdG9yZSIsIkRFTEVURV9QRVJNQU5FTlRMWSI6IkRlbGV0ZSBQZXJtYW5lbnRseSIsIkNBTl9OT1RfQ09QWV9QVUJMSUNfTElOSyI6IlRoZSBQdWJsaWMgTGluayBpcyBub3QgYXZhaWxhYmxlIGluIGEgRnJlZSBUcmlhbC4iLCJBUkVfWU9VX1NVUkVfWU9VX1dBTlRfVE9fREVMRVRFX0ZST01fWU9VUl9GSUxFUyI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUge1dIQVR9IGZyb20geW91ciBmaWxlcz8iLCJBUkVfWU9VX1NVUkVfWU9VX1dBTlRfVE9fUkVTVE9SRV9XSEFUIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlc3RvcmUge1dIQVR9PyIsIkVESVRfRklMRV9SRVFVRVNUIjoiRWRpdCBGaWxlIFJlcXVlc3QiLCJQUkVWSUVXX0ZJTEVfUkVRVUVTVCI6IlByZXZpZXcgRmlsZSBSZXF1ZXN0IiwiREVMRVRFX0ZJTEVfUkVRVUVTVCI6IkRlbGV0ZSBGaWxlIFJlcXVlc3QiLCJTRU5EX0ZJTEVfUkVRVUVTVF9SRU1JTkRFUiI6IlNlbmQgRmlsZSBSZXF1ZXN0IFJlbWluZGVyIiwiU0hBUkVfT1BUSU9OUyI6IlNoYXJlIE9wdGlvbnMiLCJERVRBSUxTIjoiRGV0YWlscyIsIlVQTE9BRF9GSUxFU19MRUZUIjoie0NPVU5UfSBmaWxlKHMpIGxlZnQiLCJEUk9QX0ZJTEVTIjoiRHJvcCBGaWxlcyIsIlVQTE9BRF9NT1JFX0ZJTEVTIjoiVXBsb2FkIE1vcmUgRmlsZXMiLCJISURFIjoiSGlkZSIsIlVQTE9BRElORyI6IlVwbG9hZGluZyIsIlVQTE9BRF9DT01QTEVURSI6IlVwbG9hZCBDb21wbGV0ZSIsIlVQTE9BRF9TT01FX0ZJTEVTX0ZBSUxFRF9USVRMRSI6IlNvbWUgZmlsZXMgZGlkIG5vdCB1cGxvYWQiLCJQTEVBU0VfU0VMRUNUX0FfUERGX0ZJTEVfVE9fVVBMT0FEIjoiUGxlYXNlIHNlbGVjdCBhIFBERiBmaWxlIHRvIHVwbG9hZC4iLCJGQUlMVVJFX1RPX1NUQVJUX1VQTE9BRCI6IkZhaWx1cmUgdG8gU3RhcnQgdGhlIFVwbG9hZCIsIkZPTERFUl9DT1VMRF9OT1RfQkVfT1BFTkVEIjoiVGhpcyBmb2xkZXIgY291bGQgbm90IGJlIG9wZW5lZC4gSWYgaXQga2VlcHMgaGFwcGVuaW5nLCBjb250YWN0IHN1cHBvcnQuIiwiTU9WRV9IQVNfRklOSVNIRUQiOiJNb3ZlIGhhcyBmaW5pc2hlZCIsIkNPUFlfSEFTX0ZJTklTSEVEIjoiQ29weSBoYXMgZmluaXNoZWQiLCJVUExPQURfU09NRV9GSUxFU19GQUlMRURfVEVYVCI6IlRoZXNlIGZpbGVzIGRpZCBub3QgdXBsb2FkOiB7RklMRVN9IiwiQ1JNX0NPTlRBQ1QiOiJDUk0gQ29udGFjdCIsIkNSTV9DT01QQU5ZIjoiQ1JNIENvbXBhbnkiLCJORVdfRk9MREVSIjoiTmV3IEZvbGRlciIsIk5FV19GT0xERVJfR0VORVJBVE9SIjoiTmV3IEZvbGRlciBHZW5lcmF0b3IiLCJERUxFVEVfR0VORVJBVE9SIjoiRGVsZXRlIEdlbmVyYXRvciIsIkNSRUFURV9GT0xERVJfR0VORVJBVE9SIjoiQ3JlYXRlIEZvbGRlciBHZW5lcmF0b3IiLCJBTExfR0VORVJBVE9SX0RFTEVURU
188QiOiJBbGwgR2VuZXJhdG9ycyBEZWxldGVkIiwiTUFOQUdFX1dPUkxEUyI6Ik1hbmFnZSBXT1JMRHMiLCJVUERBVEVfRk9MREVSX0dFTkVSQVRPUiI6IlVwZGF0ZSBGb2xkZXIgR2VuZXJhdG9yIiwiR0VORVJBVE9SX0RFTEVURUQiOiJHZW5lcmF0b3IgRGVsZXRlZCIsIlNQQUNFX1FVT1RBX0VYQ0VFREVEX0ZPUl9GSUxFX1NUT1JBR0UiOiJGaWxlIHN0b3JhZ2UgaXMgZnVsbC4gUGxlYXNlIGNvbnRhY3QgeW91ciBhY2NvdW50IGFkbWluaXN0cmF0b3IgdG8gdXBsb2FkIG5ldyBmaWxlcy4iLCJTRUxFQ1RfUFJPSkVDVF9GSVJTVCI6IlNlbGVjdCBwcm9qZWN0IGZpcnN0Li4uIiwiVVBMT0FEX0ZBSUxFRF9BRlRFUl9TRVZFUkFMX0FUVEVNUFRTIjoiVXBsb2FkIGZhaWxlZCBhZnRlciBzZXZlcmFsIGF0dGVtcHRzLiBQbGVhc2UgY2hlY2sgeW91ciBjb25uZWN0aW9uIGFuZCB0cnkgYWdhaW4uIiwiVVBMT0FEX1NFUlZFUl9VTkFWQUlMQUJMRSI6IlRoZSBzZXJ2ZXIgaXMgbm90IHJlc3BvbmRpbmcgcmlnaHQgbm93LCBzbyB0aGlzIGZpbGUgd2FzIG5vdCBzYXZlZC4gUGxlYXNlIHRyeSBhZ2FpbiBpbiBhIGZldyBtaW51dGVzLiIsIlVQTE9BRF9SRUZVU0VEX0JZX1NFUlZFUiI6IlRoZSBzZXJ2ZXIgZGlkIG5vdCBhY2NlcHQgdGhpcyBmaWxlLCBzbyBpdCB3YXMgbm90IHNhdmVkLiBQbGVhc2UgdXBsb2FkIGl0IGFnYWluLiIsIlVQTE9BRF9JTkNPTVBMRVRFX09OX1NFUlZFUiI6Ik5vdCBhbGwgb2YgdGhpcyBmaWxlIHJlYWNoZWQgdGhlIHNlcnZlciwgc28gaXQgd2FzIG5vdCBzYXZlZC4gUGxlYXNlIHVwbG9hZCBpdCBhZ2Fpbi4iLCJVUExPQURfU1ZHX1VOUkVBREFCTEUiOiJUaGlzIFNWRyBmaWxlIGNvdWxkIG5vdCBiZSByZWFkLCBzbyBpdCB3YXMgbm90IHNhdmVkLiBSZS1leHBvcnQgaXQgZnJvbSB5b3VyIGRlc2lnbiB0b29sIGFuZCB1cGxvYWQgaXQgYWdhaW4uIiwiRklMRV9ERUxJVkVSWV9JU1NVRURfRlJPTSI6Iklzc3VlZCBGcm9tOiB7TkFNRX0iLCJGSUxFX0RFTElWRVJZX0FVVE9NQVRJT05fQkFER0UiOiJBdXRvbWF0aW9uOiB7TkFNRX0iLCJGSUxFX0RFTElWRVJZX1JFQ0lQSUVOVF9DT1VOVF9PTkUiOiIxIHJlY2lwaWVudCIsIkZJTEVfREVMSVZFUllfUkVDSVBJRU5UX0NPVU5UIjoie0NPVU5UfSByZWNpcGllbnRzIiwiRklMRV9ERUxJVkVSWV9TRU5UX09OIjoiU2VudCB7REFURX0iLCJGSUxFX0RFTElWRVJZX0RPV05MT0FEX1BST0dSRVNTIjoie0RPTkV9XC97VE9UQUx9IGRvd25sb2FkZWQiLCJGSUxFX0RFTElWRVJZX05PVF9ET1dOTE9BREVEX1lFVCI6Ik5vdCBkb3dubG9hZGVkIHlldCIsIkZJTEVfREVMSVZFUllfRklMRV9DT1VOVF9PTkUiOiIxIEZpbGUiLCJXT1JLX1JFUVVFU1RfRklMRVNfQ09VTlQiOiJ7Q09VTlR9IEZpbGVzIiwiRklMRV9ERUxJVkVSWV9VTkxJTUlURURfRE9XTkxPQURTIjoiVW5saW1pdGVkIGRvd25sb2FkcyIsIkZJTEVfREVMSVZFUllfRE9XTkxPQURTX0VBQ0hfT05FIjoiMSBkb3dubG9hZCBlYWNoIiwiRklMRV9ERUxJVkVSWV9ET1dOTE9BRFNfRUFDSCI6IntDT1VOVH0gZG93bmxvYWRzIGVhY2giLCJGSUxFX0RFTElWRVJZX05PX0VYUElSWSI6Ik5vIGV4cGlyeSIsIkZJTEVfREVMSVZFUllfRVhQSVJFU19BRlRFUl9PTkVfREFZIjoiRXhwaXJlcyBhZnRlciAxIGRheSIsIkZJTEVfREVMSVZFUllfRVhQSVJFU19BRlRFUl9EQVlTIjoiRXhwaXJlcyBhZnRlciB7Q09VTlR9IGRheXMiLCJGSUxFX0RFTElWRVJZX05PX0FVVE9NQVRJT05TX1lFVCI6Ik5vIEF1dG9tYXRpb25zIFlldCIsIkZJTEVfREVMSVZFUllfQVVUT01BVElPTl9DT1VOVF9PTkUiOiIxIEF1dG9tYXRpb24iLCJBVVRPTUFUSU9OU19DT1VOVCI6InthdXRvbWF0aW9uc0NvdW50fSBBdXRvbWF0aW9ucyIsIkZJTEVfREVMSVZFUllfTkVWRVJfSVNTVUVEIjoiTmV2ZXIgSXNzdWVkIiwiRklMRV9ERUxJVkVSWV9JU1NVRURfT05DRSI6Iklzc3VlZCAxIFRpbWUiLCJGSUxFX0RFTElWRVJZX0lTU1VFRF9DT1VOVCI6Iklzc3VlZCB7Q09VTlR9IFRpbWVzIiwiU1dJVENIX09GRl9ERUZJTklUSU9OX1NUQVlTX0xJU1RFRCI6Ikl0IHN0YXlzIGluIHlvdXIgbGlzdCwgbWFya2VkIFN3aXRjaGVkIE9mZiwgYW5kIHlvdSBjYW4gc3dpdGNoIGl0IGJhY2sgb24gYXQgYW55IHRpbWUuIiwiU1dJVENIX09GRl9ERUZJTklUSU9OX0FVVE9NQVRJT05TX1JFRlVTRUQiOiJBdXRvbWF0aW9ucyB0aGF0IHJlYWNoIGl0IGFyZSByZWZ1c2VkIGFuZCBzYXkgc28gaW4gdGhlaXIgbG9nLiIsIlNXSVRDSF9PRkZfREVGSU5JVElPTl9TRU5UX1VOQUZGRUNURUQiOiJMaW5rcyBhbHJlYWR5IHNlbnQga2VlcCB3b3JraW5nIHVudGlsIHRoZXkgZXhwaXJlLCBhbmQgZG93bmxvYWRzIHVuZGVyIHdheSBzdGlsbCBmaW5pc2guIiwiU1dJVENIX09GRiI6IlN3aXRjaCBPZmYiLCJORVdfUkVVU0FCTEVfREVMSVZFUlkiOiJOZXcgUmV1c2FibGUgVHJhbnNmZXIiLCJESVNDQVJEX1lPVVJfQ0hBTkdFUyI6IkRpc2NhcmQgWW91ciBDaGFuZ2VzPyIsIkRJU0NBUkRfREVGSU5JVElPTl9DSEFOR0VTX0xFQUQiOiJZb3UgY2hhbmdlZCB7TkFNRX0gYW5kIGhhdmUgbm90IHNhdmVkIGl0LiBMZWF2aW5nIG5vdyBsb3NlcyB0aG9zZSBjaGFuZ2VzLiIsIkRJU0NBUkRfREVGSU5JVElPTl9DSEFOR0VTX1NBRkUiOiJOb3RoaW5nIGhhcyBiZWVuIHNlbnQgdG8gYW55b25lLCBhbmQgZmlsZXMgeW91IHVwbG9hZGVkIHN0YXkgaW4geW91ciBwb3J0YWwuIiwiRElTQ0FSRF9DSEFOR0VTIjoiRGlzY2FyZCBDaGFuZ2VzIiwiRklMRV9UUkFOU0ZFUl9SRVZPS0VfQUNDRVNTIjoiUmV2b2tlIEFjY2VzcyIsIkZJTEVfVFJBTlNGRVJfQ09ORklSTV9SRVZPS0VfQUNDRVNTIjoiUmV2b2tlIGFjY2VzcyBmb3Ige05BTUV9PyBUaGVpciBsaW5rIHN0b3BzIHdvcmtpbmcgaW1tZWRpYXRlbHksIGFuZCB0aGlzIGNhbm5vdCBiZSB1bmRvbmUuIFRvIGxldCB0aGVtIGJhY2sgaW4geW91IHdvdWxkIGFkZCB0aGVtIHRvIHRoaXMgZGVsaXZlcnkgYWdhaW4sIHdoaWNoIGdpdmVzIHRoZW0gYSBuZXcgbGluay4iLCJGSUxFX1RSQU5TRkVSX0FERF9BR0FJTiI6IkFkZCBBZ2FpbiIsIkZJTEVfVFJBTlNGRVJfQ09ORklSTV9BRERfQUdBSU4iOiJBZGQge05BTUV9IHRvIHRoaXMgZGVsaXZlcnkgYWdhaW4/IFRoZXkgZ2V0IGEgYnJhbmQgbmV3IGxpbmsgYW5kIGFjY2VzcyBjb2RlLiBUaGUgbGluayB5b3UgcmV2b2tlZCBzdGF5cyBjbG9zZWQgZm9yIGdvb2QuIiwiRklMRV9UUkFOU0ZFUl9SRVZPS0VfREVMSVZFUlkiOiJSZXZva2UgRGVsaXZlcnkiLCJGSUxFX1RSQU5TRkVSX0NPTkZJUk1fUkVWT0tFX0RFTElWRVJZIjoiUmV2b2tlIHRoaXMgZGVsaXZlcnkgZm9yIGV2ZXJ5b25lPyBBbGwgdGhlIGxpbmtzIHN0b3Agd29ya2luZyBpbW1lZGlhdGVseSwgYW5kIHR
188oaXMgY2Fubm90IGJlIHVuZG9uZS4gVGhlIGRlbGl2ZXJ5IHN0YXlzIG9uIHlvdXIgbGlzdCBzbyB5b3UgY2FuIHN0aWxsIHNlZSB3aG8gb3BlbmVkIGl0LiIsIlRSQU5TRkVSX0ZJTEVTIjoiVHJhbnNmZXIgRmlsZXMiLCJDQU5fRURJVCI6IkNhbiBlZGl0IiwiQ0FOX1ZJRVciOiJDYW4gdmlldyIsIlNIQVJFIjoiU2hhcmUiLCJTSEFSRURfRk9MREVSX05BTUUiOiJTaGFyZWQgRm9sZGVyIE5hbWUiLCJOT1RJRllfTkVXX1VTRVJTX09GX1NIQVJFRF9GT0xERVIiOiJOb3RpZnkgbmV3IHVzZXJzIG9mIHNoYXJlZCBmb2xkZXIiLCJDUkVBVEUiOiJDcmVhdGUiLCJGSUxFU19PUEVSQVRJT05fTkVXX1NIQVJFRF9GT0xERVIiOiJOZXcgU2hhcmVkIEZvbGRlciIsIkNSRUFURV9ORVdfU0hBUkVEX0ZPTERFUiI6IkNyZWF0ZSBhIG5ldyBTaGFyZWQgRm9sZGVyIiwiU0hPV19NRSI6IlNob3cgbWUiLCJPTkVfRVJST1JfTkVFRFNfVE9fQkVfRklYRUQiOiIxIGVycm9yIG5lZWRzIHRvIGJlIGZpeGVkIiwiTl9FUlJPUlNfTkVFRF9UT19CRV9GSVhFRCI6IntOfSBlcnJvcnMgbmVlZCB0byBiZSBmaXhlZCIsIkNMSUNLX09LX1RPX0NPTlRJTlVFIjoiQ2xpY2sgT0sgdG8gQ29udGludWUiLCJQTEVBU0VfU0VMRUNUX0FfQ09OVEFDVCI6IlBsZWFzZSBzZWxlY3QgYSBUYXJnZXQiLCJTRVRfTkVXX0FQUE9JTlRNRU5UIjoiU2V0IG5ldyBBcHBvaW50bWVudCIsIkFQUE9JTlRNRU5UX1NVQ0NFU1NGVUxMWV9TRVQiOiJBcHBvaW50bWVudCBzdWNjZXNzZnVsbHkgc2V0IiwiREVMRVRFX01FTlVfSVRFTSI6IkRlbGV0ZSBtZW51IGl0ZW0iLCJIQVZFX0FUX0xFQVNUX09ORV9TVUJTQ1JJUFRJT05fQ0FSRCI6IkF0IGxlYXN0IG9uZSBwYXltZW50IG1ldGhvZCBuZWVkcyB0byBiZSBzZWxlY3RlZCIsIkVSUk9SX0lOSVRJQUxJWklOR19QQVlNRU5UIjoiVGhpcyBwYXltZW50IG1ldGhvZCBjb3VsZCBub3QgYmUgbG9hZGVkLiBQbGVhc2UgY2hvb3NlIGFub3RoZXIgb25lLCBvciByZWxvYWQgdGhlIHBhZ2UgYW5kIHRyeSBhZ2Fpbi4iLCJQQVlNRU5UX01FVEhPRF9WRU5NTyI6IlZlbm1vIiwiUExFQVNFX0FDQ0VQVF9BQ0hfTUFOREFURSI6IlBsZWFzZSBhY2NlcHQgdGhlIEFDSCBhdXRob3JpemF0aW9uIHRvIHByb2NlZWQiLCJBQ0NPVU5UX0hPTERFUl9UWVBFX0xBQkVMIjoiQWNjb3VudCBIb2xkZXIgVHlwZSIsIkhPTERFUl9UWVBFX0lORElWSURVQUwiOiJJbmRpdmlkdWFsIiwiSE9MREVSX1RZUEVfQ09NUEFOWSI6IkNvbXBhbnkiLCJGSVJTVF9OQU1FIjoiRmlyc3QgTmFtZSIsIkxBU1RfTkFNRSI6Ikxhc3QgTmFtZSIsIkFDQ09VTlRfSE9MREVSX05BTUVfTEFCRUwiOiJDb21wYW55IE5hbWUiLCJST1VUSU5HX05VTUJFUl9MQUJFTCI6IlJvdXRpbmcgTnVtYmVyIiwiQUNDT1VOVF9OVU1CRVJfTEFCRUwiOiJBY2NvdW50IE51bWJlciIsIkFDQ09VTlRfVFlQRV9MQUJFTCI6IkFjY291bnQgVHlwZSIsIkFDQ09VTlRfVFlQRV9DSEVDS0lORyI6IkNoZWNraW5nIiwiQUNDT1VOVF9UWVBFX1NBVklOR1MiOiJTYXZpbmdzIiwiQUREUkVTUyI6IkFkZHJl
188c3MiLCJDSVRZIjoiQ2l0eSIsIlNUQVRFIjoiU3RhdGUiLCJQT1NUQUxfWklQIjoiUG9zdGFsXC9aaXAgQ29kZSIsIk5PX1NBVkVEX1BBWU1FTlRfTUVUSE9EUyI6Ik5vIHNhdmVkIHBheW1lbnQgbWV0aG9kcyIsIkJBTkNLX0FDQ09VTlRfVkFMSURBVElPTl9BTEVSVCI6IkJhbmsgYWNjb3VudHMgY2Fubm90IGJlIHVzZWQgdG8gcGF5IGludm9pY2VzIHVudGlsIHRoZXkgYXJlIHZlcmlmaWVkLiBQbGVhc2UgY2xpY2sgVkVSSUZZIGJlbG93IHRvIGNvbXBsZXRlIHZlcmlmaWNhdGlvbi4iLCJDUkVESVRfQ0FSRFMiOiJDcmVkaXQgQ2FyZHMiLCJCQU5LX0FDQ09VTlRTIjoiQmFuayBBY2NvdW50cyIsIkVYUElSRVMiOiJFeHBpcmVzIiwiQkFOQ0tfQUNDT1VOVF9NT0RBTF9USVRMRSI6IlZlcmlmeSBtaWNyby1kZXBvc2l0IGFtb3VudHMiLCJTVFJJUEVfQUNIX1ZFUklGWSI6IlZlcmlmeSIsIlBBWU1FTlRfRk9STV9OT1RfUkVBRFkiOiJUaGUgcGF5bWVudCBmb3JtIGlzIHN0aWxsIGxvYWRpbmcuIFBsZWFzZSB3YWl0IGEgbW9tZW50IGFuZCB0cnkgYWdhaW4uIiwiQ0hFQ0tPVVRfUEFZX1JFTE9BRF9GSVJTVCI6IlJlbG9hZCB0aGUgcGFnZSB0byBjb250aW51ZSIsIkdPT0dMRV9QQVlfU1RPUkVEX0NBUkRfT05MWV9OT1RFIjoiVGhpcyBwYXltZW50IHdpbGwgYmUga2VwdCBvbiBmaWxlIHRvIHBheSBmdXR1cmUgaW52b2ljZXMsIHNvIEdvb2dsZSBQYXkgY2FuIG9ubHkgb2ZmZXIgY2FyZHMgaXQgaXMgYWJsZSB0byBzdG9yZS4gWW91IG1heSBzZWUgZmV3ZXIgY2FyZHMgaGVyZSB0aGFuIHVzdWFsLiIsIkdPT0dMRV9QQVlfTk9fQklMTElOR19BRERSRVNTIjoiR29vZ2xlIFBheSBkaWQgbm90IHJldHVybiBhIGJpbGxpbmcgYWRkcmVzcywgYW5kIHRoaXMgcGF5bWVudCByZXF1aXJlcyBvbmUuIFBsZWFzZSBwYXkgd2l0aCBhIGNhcmQgaW5zdGVhZC4iLCJQQVlQQUxfQlVUVE9OX1BBWU1FTlRfTUVUSE9EX0hFTFBfVEVYVCI6IldoZW4geW91IGNsaWNrIHRoZSBidXR0b24gYmVsb3csIHlvdSB3aWxsIGJlIHRha2VuIG9mZi1zaXRlIHRvIHRoZSBQYXlQYWwgd2Vic2l0ZSwgYW5kIHlvdSB3aWxsIGNvbXBsZXRlIHlvdXIgcGF5bWVudCB0aGVyZS4gUGF5UGFsIHdpbGwgY29tbXVuaWNhdGUgd2l0aCB0aGlzIHBsYXRmb3JtIFx1MDAyNiBpZiB5b3VyIHBheW1lbnQgaXMgc3VjY2Vzc2Z1bCwgeW91ciBJbnZvaWNlIHdpbGwgYmUgdXBkYXRlZCBhcyBQYWlkIiwiUFJPQ0VFRF9UT19QQVlQQUxfVE9fTUFLRV9QQVlNRU5UIjoiUHJvY2VlZCB0byBQYXlQYWwgdG8gbWFrZSBQYXltZW50IiwiUEFZTUVOVF9TRVNTSU9OX0VYUElSRURfUkVMT0FEIjoiVGhpcyBjaGVja291dCBzZXNzaW9uIGV4cGlyZWQgYmVmb3JlIHlvdXIgcGF5bWVudCBjb3VsZCBiZSBjb21wbGV0ZWQuIE5vdGhpbmcgd2FzIGNoYXJnZWQuIFBsZWFzZSByZWxvYWQgdGhlIHBhZ2UgYW5kIHRyeSBhZ2Fpbi4iLCJQQVlNRU5UX0dBVEVXQVlfQ09ORklHX0VSUk9SIjoiVGhpcyBwYXltZW50IGNvdWxkIG5vdCBiZSBwcm9jZXNzZWQgXHUyMDE0IHRoZSBwYXltZW50IGdhdGV3YXkgY29ubmVjdGlvbiBmb3IgdGhpcyBhY2NvdW50IG5lZWRzIHRvIGJlIHJlY29ubmVjdGVkLiBZb3VyIGNhcmQgd2FzIG5vdCBjaGFyZ2VkIGFuZCB0aGVyZSBpcyBub3RoaW5nIHdyb25nIHdpdGggaXQuIFBsZWFzZSBjb250YWN0IHRoZSBidXNpbmVzcyB5b3UgYXJlIHBheWluZy4iLCJQQVlNRU5UX0ZPUk1fRVhQSVJFRF9SRU9QRU4iOiJUaGlzIHBheW1lbnQgZm9ybSBpcyBubyBsb25nZXIgdmFsaWQuIFBsZWFzZSBjbG9zZSBpdCBhbmQgb3BlbiBpdCBhZ2FpbiB0byBzYXZlIHlvdXIgcGF5bWVudCBtZXRob2QuIiwiTkFNRV9PTl9BQ0NPVU5UX0xBQkVMIjoiTmFtZSBvbiBBY2NvdW50IiwiRklMTF9BTExfUkVRVUlSRURfRklFTERTIjoiUGxlYXNlLCBmaWxsIGFsbCByZXF1aXJlZCBmaWVsZHMiLCJCQU5LX1JPVVRJTkdfTlVNQkVSX0lOVkFMSUQiOiJQbGVhc2UgZW50ZXIgYSB2YWxpZCA5LWRpZ2l0IGJhbmsgcm91dGluZyBudW1iZXIuIiwiQUNDT1VOVF9UWVBFX0JVU0lORVNTX0NIRUNLSU5HIjoiQnVzaW5lc3MgQ2hlY2tpbmciLCJTQVZFX0NBUkRfRk9SX0xBVEVSIjoiU2F2ZSBwYXltZW50IG1ldGhvZCBmb3IgZnV0dXJlIHVzZT8iLCJDQVJESE9MREVSX05BTUUiOiJDYXJkaG9sZGVyIE5hbWUiLCJaSVBfUE9TVEFMX0NPREUiOiJaSVAgXC8gUG9zdGFsIENvZGUiLCJDQVJEX0ZJRUxEU19JTlZBTElEIjoiUGxlYXNlIGNoZWNrIHlvdXIgY2FyZCBkZXRhaWxzOiB7RklFTERTfS4iLCJDT1VOVFJZIjoiQ291bnRyeSIsIlBIT05FX05VTUJFUiI6IlBob25lIE51bWJlciIsIkxPR19JTVBPUlRfQ09NUExFVEVEX1NVTU1BUlkiOiJJbXBvcnQgY29tcGxldGU6IHtBRERFRH0gYWRkZWQsIHtTS0lQUEVEfSBza2lwcGVkLCB7RkFJTEVEfSBmYWlsZWQiLCJDUk1fVEFSR0VUX0lNUE9SVF9DT01QTEVURURfTk9USUZJQ0FUSU9OX1BBTkVMX1NVQkpFQ1QiOiJDUk0gVGFyZ2V0IEltcG9ydCBDb21wbGV0ZSIsIkdSSURfUkVQT1JUU19DU1ZfU1VDQ0VTU0ZVTExZX0NSRUFURUQiOiJBIENTViBmaWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjcmVhdGVkIGFuZCBjYW4gbm93IGJlIGRvd25sb2FkZWQiLCJMT0dfSU1QT1JUX0NPTVBBTllfQ09NUExFVEVEIjoiQ29tcGFueSBJbXBvcnQgcHJvY2VzcyBpcyBjb21wbGV0ZSEiLCJHUklEX1JFUE9SVFNfRVhQT1JUX0VYUElSRUQiOiJUaGlzIGV4cG9ydCBpcyBubyBsb25nZXIgYXZhaWxhYmxlLiBDbG9zZSB0aGlzIHBhbmVsLCB0aGVuIHN0YXJ0IHRoZSBleHBvcnQgYWdhaW4uIiwiR1JJRF9SRVBPUlRTX0VYUE9SVF9QUkVQQVJFX0ZBSUxFRCI6IldlIGNvdWxkIG5vdCBwcmVwYXJlIHRoaXMgZXhwb3J0LiBQbGVhc2UgdHJ5IGFnYWluLiIsIlVOQ0hFQ0tfQUxMIjoiVW5jaGVjayBBbGwiLCJDSEVDS19BTEwiOiJDaGVjayBBbGwiLCJQQVNTX1ZBTElEQVRPUl9URVhUX0NPTVBBUkVfUEFTU1dPUkRfQ09ORklSTSI6IlBhc3N3b3JkcyBzaG91bGQgbWF0Y2giLCJQQVNTX1ZBTElEQVRPUl9URVhUX1NVQ0NFU1MiOiJHUkVBVCIsIkdDQUxfRVZFTlRfRk9STV9VUERBVEVfU1VDQ0VTUyI6IkV2ZW50IHN1Y2Nlc3NmdWxseSB1cGRhdGVkIiwiR0NBTF9FVkVOVF9GT1JNX0RFTEVURV9TVUNDRVNTIjoiRXZlbnQgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQiLCJBWlVSRV9FVkVOVF9GT1JNX1VQREFURV9TVUNDRVNTIjoiRXZlbnQgc3VjY2Vzc2Z1bGx5IHVwZGF0ZWQiLCJBWlVSRV9FVkVOVF9GT1JNX0RFTEVURV9TVUNDRVNTIjoiRXZlbnQgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQiLCJDTElDS19UT1VDSF9BTllXSEVSRSI6IkNsaWNrXC9UYXAgYW55
188d2hlcmUgaW4gdGhpcyBhcmVhIHRvIHNhdmUiLCJDT1BZX0xJTktTIjoiUHJvZmlsZSBQYWdlIExpbmtzIiwiVU5USVRMRUQiOiJVbnRpdGxlZCIsIlNUWUxJTkdfT1BUSU9OUyI6IlN0eWxpbmcgT3B0aW9ucyIsIlBBR0VfVVBEQVRFRCI6IlBhZ2UgaGFzIGJlZW4gdXBkYXRlZCIsIlVOQUJMRV9UT19DT1BZX0xJTksiOiJVbmFibGUgdG8gY29weSBsaW5rIiwiRklMRV9QUkVWSUVXX1VOQVZBSUxBQkxFIjoiRmlsZSBQcmV2aWV3IGlzIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlISIsIkZJTEVfUFJFVklFV19VUEdSQURFIjoiQSBuZXcgUHJldmlldyBleHBlcmllbmNlIGlzIG9uIHRoZSB3YXkhIiwiUFJFVklFV19GSUxFIjoiRmlsZSBQcmV2aWV3IiwiVVBMT0FEX1RBUkdFVF9VTkFWQUlMQUJMRSI6IkZpbGVzIGNhbm5vdCBiZSBhdHRhY2hlZCByaWdodCBub3cuIFBsZWFzZSByZWxvYWQgdGhlIHBhZ2UgYW5kIHRyeSBhZ2Fpbi4iLCJTRUxFQ1RfRklMRSI6IlNlbGVjdCBGaWxlIiwiUFJPRklMRV9QSUNUVVJFX05PX0lNQUdFIjoiTk8gSU1BR0UiLCJQUk9GSUxFX1BJQ1RVUkVfRFJPUF9PUl9CUk9XU0UiOiJEcm9wIGFuIGltYWdlLCBvciBicm93c2UiLCJQUk9GSUxFX1BJQ1RVUkVfRk9STUFUX0hJTlQiOiJKUEcsIFBORyBvciBHSUYgXHUyMDE0IDMwMFx1MDBkNzMwMCBweCByZWNvbW1lbmRlZC4iLCJVUExPQUQiOiJVcGxvYWQiLCJQUk9GSUxFX1BJQ1RVUkVfUkVQT1NJVElPTl9aT09NIjoiUkVQT1NJVElPTiBcdTAwMjYgWk9PTSIsIlBST0ZJTEVfUElDVFVSRV9DUk9QX0hFTFBFUiI6IkRyYWcgdGhlIGltYWdlIHRvIHJlcG9zaXRpb24uIFNjcm9sbCBvciBwaW5jaCB0byB6b29tLiIsIlJFU0VUIjoiUmVzZXQiLCJQUk9GSUxFX1BJQ1RVUkVfWU9VUl9QSE9UTyI6IllvdXIgcGhvdG8iLCJQUk9GSUxFX1BJQ1RVUkVfU0FWRURfSEVMUEVSIjoiTG9va3MgZ3JlYXQuIFlvdSBjYW4gcmVwbGFjZSBvciByZW1vdmUgaXQgYW55IHRpbWUuIiwiUkVQTEFDRSI6IlJlcGxhY2UiLCJEQVNIQk9BUkRfU0VUVElOR1MiOiJEYXNoYm9hcmQgU2V0dGluZ3MiLCJTRUxFQ1RfTkVXX0lDT04iOiJTZWxlY3QgTmV3IEljb24iLCJET01BSU5fTkFNRV9DQU5OT1RfQ09OVEFJTl9TVUlURURBU0giOiJUaGUgZG9tYWluIG5hbWUgY2Fubm90IGNvbnRhaW4gXHUwMDIyc3VpdGVkYXNoXHUwMDIyLiBQbGVhc2UgZW50ZXIgeW91ciBjdXN0b20gZG9tYWluIG5hbWUuIiwiU1lTVEVNIjoiU3lzdGVtIiwiRlJPTV9VU0VSX1NZU1RFTSI6IkZyb20gVXNlclwvU3lzdGVtIiwiU0VMRUNUX1NFTkRFUlMiOiJTZWxlY3Qgc2VuZGVyc1x1MjAyNiIsIlNFTEVDVF9OT1RJRklDQVRJT05fVFlQRVMiOiJTZWxlY3QgdHlwZXNcdTIwMjYiLCJDT05GSUdVUkVfSVRFTV9BVVRPTUFUSU9OUyI6IkNvbmZpZ3VyZSBJdGVtIEF1dG9tYXRpb25zIiwiVFJJR0dFUl9BVVRPTUFUSU9OU19XSEVOX0lURU1fU1RBUlRFRCI6IlRyaWdnZXIgQXV0b21hdGlvbnMgd2hlbiB0aGlzIEl0ZW0gaXMgc3RhcnRlZCIsIlRSSUdHRVJfQVVUT01BVElPTlNfV0hFTl9JVEVNX0NPTVBMRVRFRCI6IlRyaWdnZXIgQXV0b21hdGlvbnMgd2hlbiB0aGlzIEl0ZW0gaXMgY29tcGxldGVkIiwiVFJJR0dFUl9BVVRPTUFUSU9OU19XSEVOX0lURU1fTUFSS0VEX1NUVUNLIjoiVHJpZ2dlciBBdXRvbWF0aW9ucyB3aGVuIHRoaXMgSXRlbSBtYXJrZWQgYXMgU3R1Y2siLCJDSEVDS0xJU1RfTk9fSVRFTVNfRVJST1IiOiJDaGVja2xpc3QgbXVzdCBoYXZlIGF0IGxlYXN0IG9uZSBpdGVtLiBQbGVhc2UgYWRkIGFuIGl0ZW0uIiwiQ0hFQ0tMSVNUX0hBU19CRUVOX1NBVkVEIjoiQ2hlY2tsaXN0IGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBzYXZlZCIsIkNIRUNLTElTVF9FTUFJTF9URU1QTEFURV9IQVNfQkVFTl9SRVNFVCI6IkNoZWNrbGlzdCBlbWFpbCB0ZW1wbGF0ZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgcmVzZXQiLCJGTE9XX0hBU19CRUVOX1NBVkVEIjoiRkxPVyBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgc2F2ZWQiLCJQT1BPVkVSX0ZMT1dTX1NLSVBfU1RFUCI6IldoZW4gZW5hYmxlZCwgdGhlIFRhcmdldCB3aWxsIGJlIGFibGUgdG8gc2tpcCB0aGlzIEZMT1cgU3RlcC4gSWYgc2tpcHBlZCwgYW55IEF1dG9tYXRpb25zIGFzc29jaWF0ZWQgd2l0aCB0aGUgRkxPVyBTdGVwIHdpbGwgYmUgdHJpZ2dlcmVkLCBhbmQgdGhlIFRhcmdldCB3aWxsIGJlIG1vdmVkIHRvIHRoZSBuZXh0IEZMT1cgU3RlcC4gVGhlIEZMT1cgY2FuIHN0aWxsIGJlIGNvbXBsZXRlZCBub3JtYWxseSBpZiB0aGUgRkxPVyBTdGVwIGlzIHNraXBwZWQuIiwiU0tJUF9TVEVQX0NPTVBMRVRFIjoiU2tpcCB0aGlzIHN0ZXAgYW5kIGNvbXBsZXRlIiwiU0tJUF9TVEVQIjoiU2tpcCB0aGlzIHN0ZXAiLCJDT05UUkFDVF9IQU5EX0RSQVdOX1NJR05BVFVSRSI6IlJlcXVpcmUgYSBIYW5kLURyYXduIFNpZ25hdHVyZSBvbiB0aGUgU2lnbmF0dXJlIFBhZCIsIkZMT1dfU0VUVElOR1NfSEFWRV9CRUVOX1JFU0VUIjoiRkxPVyBTZXR0aW5ncyBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHJlc2V0IiwiSEVBREVSX0FORF9GT09URVIiOiJIZWFkZXIgXHUwMDI2IEZvb3RlciIsIkhFQURFUl9BTkRfRk9PVEVSX0RFU0NSSVBUSU9OIjoiQWRkIEhUTUwgY29udGVudCBhdCB0aGUgdG9wIGFzIGEgaGVhZGVyIGFuZCBhdCB0aGUgYm90dG9tIGFzIGEgZm9vdGVyLiIsIkVESVRfQ09OVEVOVCI6IkVkaXQgQ29udGVudCIsIkNVU1RPTV9PUFRJT05TIjoiQ3VzdG9tIE9wdGlvbnMiLCJDVVNUT01fT1BUSU9OU19DU1NfQ0xBU1MiOiJDU1MgQ2xhc3MgKFNlcGFyYXRlIG11bHRpcGxlIHdpdGggYSBjb21tYSkiLCJDVVNUT01fT1BUSU9OU19DU1NfSUQiOiJDU1MgSUQiLCJGT09URVIiOiJGb290ZXIiLCJTRUxFQ1RfQVBQT0lOVE1FTlRfVFlQRSI6IlNlbGVjdCBBcHBvaW50bWVudCBHZW5lcmF0b3IiLCJQUk9WSURFX0hFTFBfSV9BTV9TVFVDS19CVVRUT04iOiJQcm92aWRlIGEgXHUwMDI2cXVvdDtIZWxwLCBJXHUwMDI2YXBvczttIHN0dWNrXHUwMDI2cXVvdDsgYnV0dG9uIHRoYXQgd2lsbCBub3RpZnkgb25lIG9yIG1vcmUgb2YgeW91ciBTdGFmZiIsIkxBQkVMX1FVRVNUSU9OX0FTS0VEIjoiUHJvbXB0XC9RdWVzdGlvbiIsIlZJRVdfUFJPR1JFU1MiOiJWaWV3IFByb2dyZXNzIiwiQUREX05FV19GTE9XX1NURVAiOiJBZGQgbmV3IEZMT1cgU3RlcCIsIlJFT1BFTiI6IlJlb3BlbiIsIlBSSU1BUllfQ09MT1IiOiJQcmltYXJ5IENvbG9yIiwiQVBQX0hJR0hMSUdIVF9DT0xPUiI6IkhpZ2hsaWdodCBDb2xvciIsIkFQUF9DSEFSVF9QUklNQVJZX0NPTE9SIjoiQ2hhcnQgUHJpbWFyeSBDb2xvciIsIkJBQ0tHUk9VTkRfQ09MT1IiOiJCYWNrZ3JvdW5kIENvbG9yIiwiTE9HT19BREFQVEFUSU9OX1dJWkFSRF9USVRMRSI6IlVwbG9hZCB5b3VyIGxvZ28gb25jZSIsIkxPR09fQURBUFRBVElPTl9XSVpBUkRfVVBMT0FEX0NUQSI6IlVwbG9hZCB5b3VyIGJlc3QgbG9nbyIsIkxPR09fQURBUFRBVElPTl9BSV9ESVNDTE9TVVJFIjoiWW91ciBsb2dvIGlzIHByb2Nlc3NlZCBieSBhIHRoaXJkLXBhcnR5IEEuSS4gcHJvdmlkZXIgdG8gZ2VuZXJhdGUgYnJhbmRpbmcgdmFyaWF0aW9ucy4iLCJHRU5FUkFUSU5HIjoiR2VuZXJhdGluZyIsIkxPR09fQURBUFRBVElPTl9XSVpBUkRfR0VORVJBVElORyI6IldlXHUwMDI3cmUgZ2VuZXJhdGluZyBldmVyeSBzaXplIHlvdXIgcGxhdGZvcm0gbmVlZHMgZnJvbSB5b3VyIGxvZ28uIFRoaXMgY2FuIHRha2UgYSBmZXcgbWludXRlcy4iLCJMT0dPX0FEQVBUQVRJT05fVElNRU9VVCI6IlN0aWxsIHdvcmtpbmcgb24gaXQuIEtlZXAgd2FpdGluZywgb3IgY2xvc2UgYW5kIHdlXHUwMDI3bG
188wgbm90aWZ5IHlvdSB3aGVuIGl0XHUwMDI3cyBkb25lLiIsIkxPR09fQURBUFRBVElPTl9BUFBMSUVEIjoiWW91ciBicmFuZGluZyBoYXMgYmVlbiBhcHBsaWVkIGFuZCBzYXZlZC4gU2VlIHlvdXIgcmVzdWx0cyB0byB2aWV3IGl0IGxpdmUgb24geW91ciBwb3J0YWwuIEV2ZXJ5dGhpbmcgcmVtYWlucyBlZGl0YWJsZSBpbiB0aGUgc2V0dGluZ3MgYmVsb3cuIiwiQVBQTFkiOiJBcHBseSIsIkxPR09fQURBUFRBVElPTl9SRVJVTl9ISU5UIjoiUmUtcnVubmluZyByZWdlbmVyYXRlcyB0aGlzIGltYWdlIGZyb20geW91ciB1cGxvYWRlZCBsb2dvIGFuZCByZXBsYWNlcyBhbnkgbWFudWFsIHVwbG9hZCBmb3IgdGhpcyBzbG90LiIsIkxPR09fQURBUFRBVElPTl9SRVJVTiI6IlJlLXJ1biIsIkxPR09fQURBUFRBVElPTl9DT0xPUlNfSEVBRElORyI6IkJyYW5kIGNvbG9ycyIsIkxPR09fQURBUFRBVElPTl9BUFBMWV9DT0xPUlMiOiJBcHBseSB0aGVzZSBicmFuZCBjb2xvcnMgdG8geW91ciBwb3J0YWwiLCJMT0dPX0FEQVBUQVRJT05fQVBQTFlfV0FSTklORyI6IkFwcGx5aW5nIHdpbGwgcmVwbGFjZSB5b3VyIGV4aXN0aW5nIGJyYW5kaW5nIGltYWdlcyB3aXRoIHRoZSBnZW5lcmF0ZWQgc2V0LiBZb3VyIGN1cnJlbnQgaW1hZ2VzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uIENvbnRpbnVlPyIsIkNIRUNLTElTVF9BU0tfRk9SX0hFTFAiOiJBc2sgRm9yIEhlbHAiLCJDT01QTEVURURfQ0FURUdPUlkiOiJDb21wbGV0ZWQiLCJPUEVOX0NBVEVHT1JZIjoiT3BlbiIsIkdFTkVSQUxfQ0FUIjoiR2VuZXJhbCIsIlBMQUNFSE9MREVSX0NBVEVHT1JZX1RJVExFUyI6IlBsYWNlaG9sZG
188VycyBmb3Ige0NBVEVHT1JZX05BTUV9IiwiTk9fQVZBSUxBQkxFX1BMQUNFSE9MREVSU19GT1JfQ0FURUdPUlkiOiJObyBBdmFpbGFibGUgUGxhY2Vob2xkZXJzIGZvciB0aGlzIENhdGVnb3J5IiwiQlVJTFRJTl9QUkVWSUVXX0xBQkVMIjoiT3BlbiBsaW5rIHdpdGggQnVpbHQtaW4gUHJldmlldyIsIkFMSUFTIjoiQWxpYXMiLCJBTElBU19NVVNUX0NPTlRBSU4iOiJBbGlhcyBtdXN0IG9ubHkgY29udGFpbiBudW1iZXJzLCBsb3dlcmNhc2UgY2hhcmFjdGVycyBhbmQgaHlwaGVucyIsIkNSRUFURV9VUkxfQUxJQVMiOiJDcmVhdGUgVVJMIEFsaWFzIiwiQUxJQVNfVVJMIjoiQWxpYXMgVVJMIiwiVVBEQVRFX1VSTF9BTElBUyI6IlVwZGF0ZSBVUkwgQWxpYXMiLCJSRU1PVkVfVVJMX0FMSUFTIjoiUmVtb3ZlIFVSTCBBbGlhcyIsIkNPUFlfVE9fQ0xJUEJPQVJEIjoiQ29weSB0byB5b3VyIENsaXBib2FyZCIsIkRJU1BMQVlfUVJfQ09ERV9GT1JfVEhJU19GT1JNIjoiRGlzcGxheSBRUiBDb2RlIGZvciB0aGlzIEZvcm0iLCJEUk9QX0ZJTEUiOiJEcm9wIEZpbGUiLCJET1dOTE9BRF9BTEwiOiJEb3dubG9hZCBBbGwiLCJXQVJOX0ZJTEVfVVBMT0FEX0lOX1BST0dSRVNTIjoiWW91IGhhdmUgZmlsZXMgdXBsb2FkaW5nLCBwbGVhc2Ugd2FpdCBmb3IgdGhlbSB0byBmaW5pc2ggYmVmb3JlIHN1Ym1pdHRpbmcgdGhlIGZvcm0iLCJERUxFVEVEX0ZJTEUiOiJEZWxldGVkIEZpbGUiLCJOT19GSUxFU19VUExPQURFRCI6Ik5vIGZpbGVzIHdlcmUgdXBsb2FkZWQiLCJGSUxFU19VUExPQURFRF9TVUNDRVNTRlVMTFkiOiJGaWxlKHMpIFVwbG9hZGVkIFN1Y2Nlc3NmdWxseSIsIkZJTEVTX0ZST01fVEVNUExBVEUiOiJHZW5lcmF0b3IgQXR0YWNoZWQgRmlsZXMiLCJDT1VSU0VfREVUQUlMUyI6IkNvdXJzZSBEZXRhaWxzIiwiQlVORExFX0RFVEFJTFMiOiJCdW5kbGUgRGV0YWlscyIsIlBST0RVQ1RfREVUQUlMUyI6IlByb2R1Y3QgRGV0YWlscyIsIkxBTkRJTkdfUEFHRV9BVkFJTEFCTEVfRU1CRURfVEVYVCI6IkF2YWlsYWJsZSBhZnRlciB0aGUgTE1TIFByb2R1Y3QgaXMgYWN0aXZhdGVkIGFuZCB0aGUgTGFuZGluZyBQYWdlIGlzIHB1Ymxpc2hlZCIsIkFERF9NT0RVTEUiOiJBZGQgTW9kdWxlIiwiRURJVF9NT0RVTEUiOiJFZGl0IE1vZHVsZSIsIkNPVVJTRV9NQVRFUklBTFMiOiJDb3Vyc2UgTWF0ZXJpYWxzIiwiWU9VX0NBTl9PTkxZX0hBVkVfT05FX1ZJREVPX0JMT0NLX1BFUl9MRVNTT04iOiJZb3UgY2FuIG9ubHkgaGF2ZSBvbmUgVmlkZW8gQmxvY2sgcGVyIExlc3Nvbi4gUGxlYXNlIHJlbW92ZSBvdGhlciBWaWRlbyBCbG9ja3MgYmVmb3JlIGFkZGluZyBhIG5ldyBvbmUuIiwiTEVTU09OX01BVEVSSUFMUyI6Ikxlc3NvbiBNYXRlcmlhbHMiLCJQUkVWSUVXX0xFU1NPTl9USVRMRSI6IlByZXZpZXcgXHUwMDIyOnRpdGxlXHUwMDIyIiwiQ09VUlNFX0NPTVBMRVRFRCI6IkNvdXJzZSBDb21wbGV0ZWQiLCJQUk9EVUNUUyI6IlByb2R1Y3RzIiwiQ09VUlNFUyI6IkNvdXJzZXMiLCJZT1VSX0NPVVJTRVMiOiJZb3VyIENvdXJzZXMiLCJRVUlaWkVTIjoiUXVpenplcyIsIk1BTkFHRV9QUk9EVUNUIjoiTWFuYWdlIFByb2R1Y3QiLCJNQU5BR0VfUFJPRFVDVF9USVRMRSI6Ik1hbmFnZSBcdTAwMjI6dGl0bGVcdTAwMjIiLCJMQU5ESU5HX1BBR0UiOiJTYWxlcyBGdW5uZWwiLCJNQU5BR0VfQ09VUlNFIjoiTWFuYWdlIENvdXJzZSIsIlVQREFURV9MRVNTT04iOiJVcGRhdGUgTGVzc29uIiwiTk9fUFJFVklFV19BVkFJTEFCTEUiOiJObyBwcmV2aWV3IGF2YWlsYWJsZSIsIlBSRVZJRVdfTEVTU09OIjoiUHJldmlldyBMZXNzb24iLCJFSVRIRVJfRU5DT1VOVEVSRURfRVJST1JfUEVSTUlTU0lPTiI6IkVpdGhlciB5b3VcdTAwMjd2ZSBlbmNvdW50ZXJlZCBhbiBlcnJvciwgb3IgeW91IGRvblx1MDAyN3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGJlIGhlcmUiLCJBRERfUFJPRFVDVCI6IkFkZCBQcm9kdWN0IiwiQUREX0NPVVJTRSI6IkFkZCBhIFNpbmdsZS1Db3Vyc2UgUHJvZHVjdCIsIkNMSUNLX1RPX1JFTU9WRSI6IkNsaWNrIHRvIFJlbW92ZSIsIkZPTExPV0VSUyI6IkZvbGxvd2VycyIsIkZST00iOiJGcm9tIiwiVE8iOiJUbyIsIkNMRUFSX0FMTF9GSUxURVJTIjoiQ2xlYXIgQWxsIEZpbHRlcnMiLCJBVkFJTEFCTEVfUExBQ0VIT0xERVJTIjoiQXZhaWxhYmxlIHBsYWNlaG9sZGVycyIsIlNFTEVDVF9JQ09OIjoiU2VsZWN0IEljb24iLCJTQ1JPTExfVElUTEUiOiJTY3JvbGwgdG8gaW5jcmVtZW50IiwiVE9HR0xFX1RJVExFIjoiQ2xpY2sgdG8gdG9nZ2xlIiwiWUVBUiI6IlllYXIocykiLCJTRUxFQ1RFRF9JQ09OIjoiU2VsZWN0ZWQgaWNvbiIsIkNIT09TRV9GUk9NX0lDT05fTElCUkFSWSI6IkNob29zZSBmcm9tIHRoZSBpY29uIGxpYnJhcnkiLCJDSEFOR0UiOiJDaGFuZ2UiLCJBREQiOiJBZGQiLCJOT1RISU5HX1RPX1NFRV9IRVJFIjoiUmVhZHkgdG8gZ2V0IHN0YXJ0ZWQ/IiwiV0hFTl9JVEVNX0FEREVEX0RJU1BMQVlFRF9IRVJFIjoiV2hlbiBhbiBpdGVtIGlzIGFkZGVkLCB5b3Ugd2lsbCBzZWUgaXQgZGlzcGxheWVkIGhlcmUiLCJBU1NJR05FRF9UTyI6IkFzc2lnbmVkIHRvIiwiQVJFX1lPVV9TVVJFX1lPVV9XQU5UX1RPX0RFTEVURSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUiLCJTVFJJUEVfQUNIX01JR1JBVElPTl9USVRMRSI6Ik1pZ3JhdGUgdG8gU3RyaXBlPyIsIlNUUklQRV9BQ0hfTUlHUkFUSU9OX1NBTUVfQk9EWSI6IllvdXIgU3RyaXBlIGFuZCBTdHJpcGUgQUNIIGdhdGV3YXlzIHVzZSB0aGUgc2FtZSBTdHJpcGUgYWNjb3VudCwgc28gZXZlcnl0aGluZyBtb3ZlcyBhdXRvbWF0aWNhbGx5LiBBbGwgdW5wYWlkIGludm9pY2VzLCB5b3VyIGNsaWVudHNcdTAwMjcgc2F2ZWQgYmFuayBhY2NvdW50cywgYW5kIHlvdXIgc3Vic2NyaXB0aW9ucyBtb3ZlIHRvIHlvdXIgU3RyaXBlIGdhdGV3YXkuIENsaWVudHMga2VlcCBwYXlpbmcgd2l0aCB0aGUgc2FtZSBiYW5rIGFjY291bnRzIFx1MjAxNCBub3RoaW5nIGZvciB0aGVtIHRvIGRvLiBUaGlzIGlzIGEgb25lLXdheSBtb3ZlOiBvbmNlIGNvbmZpcm1lZCwgU3RyaXBlIEFDSCBjYW4gbm8gbG9uZ2VyIGJlIHNlbGVjdGVkIG9uIG5ldyBpbnZvaWNlcywgZXN0aW1hdGVzLCBvciBiaWxsaW5nIHByb2ZpbGVzLiIsIlNUUklQRV9BQ0hfTUlHUkFUSU9OX0RJRkZfQk9EWSI6IllvdXIgU3RyaXBlIGFuZCBTdHJpcGUgQUNIIGdhdGV3YXlzIHVzZSBkaWZmZXJlbnQgU3RyaXBlIGFjY291bnRzLCBzbyBzYXZlZCBiYW5rIGFjY291bnRzIGNhblx1MDAyN3QgYmUgY2FycmllZCBvdmVyLiBZb3VyIHVucGFpZCBpbnZvaWNlcyBtb3ZlIHRvIHlvdXIgU3RyaXBlIGdhdGV3YXkgYXV0b21hdGljYWxseS4gRWFjaCBiYW5rLXBheWluZyBzdWJzY3JpcHRpb24gaXMgcGF1c2VkIHdpdGggYSBcdTAwMjJuZWVkcyBwYXltZW50IG1ldGhvZCBjaGFuZ2VcdTAwMjIgc3RhdHVzLCBhbmQgaXRzIGNsaWVudCBpcyBlbWFpbGVkIG9uY2UgdG8gYWRkIHRoZWlyIGJhbmsgZGV0YWlscyBvb
188iB0aGUgbmV3IGFjY291bnQuIFRoaXMgaXMgYSBvbmUtd2F5IG1vdmU6IG9uY2UgY29uZmlybWVkLCBTdHJpcGUgQUNIIGNhbiBubyBsb25nZXIgYmUgc2VsZWN0ZWQgb24gbmV3IGludm9pY2VzLCBlc3RpbWF0ZXMsIG9yIGJpbGxpbmcgcHJvZmlsZXMuIiwiU1RSSVBFX0FDSF9NSUdSQVRJT05fQ09ORklSTSI6Ik1pZ3JhdGUiLCJTVFJJUEVfQUNIX01JR1JBVElPTl9TVEFSVEVEIjoiTWlncmF0aW9uIHN0YXJ0ZWQuIFlvdXIgYmlsbGluZyBpcyBtb3ZpbmcgdG8gU3RyaXBlIGluIHRoZSBiYWNrZ3JvdW5kIFx1MjAxNCB0aGlzIGNhbiB0YWtlIGEgd2hpbGUgZm9yIGxhcmdlIGFtb3VudHMgb2YgYmlsbGluZyBkYXRhLiIsIlNUUklQRV9MSU5LX1JFUVVJUkVTX0NBUkQiOiJFbmFibGUgQ2FyZCBhbG9uZ3NpZGUgTGluayBcdTIwMTQgTGluayBpcyBhIFN0cmlwZSB3YWxsZXQgdGhhdCBydW5zIG9uIHRvcCBvZiBhIGNhcmQgYW5kIGNhbm5vdCBwcm9jZXNzIHBheW1lbnRzIG9uIGl0cyBvd24uIiwiUEFZTUVOVF9NRVRIT0RTX0dBVEVXQVlfUE9QVVBfVElUTEUiOiJBYm91dCB0aGVzZSBQYXltZW50IE1ldGhvZHMiLCJQQVlNRU5UX01FVEhPRFNfR0FURVdBWV9QT1BVUF9CT0RZIjoiVG9nZ2xlIHdoaWNoIHBheW1lbnQgbWV0aG9kcyB5b3Ugd2FudCB0byBvZmZlciB5b3VyIGN1c3RvbWVycy4gT25lLWNsaWNrIHdhbGxldHMgd29yayBvbiB0b3Agb2YgYSBjYXJkIG9yIGJhbmsgYWNjb3VudCwgc28gYXQgbGVhc3Qgb25lIHN0YW5kYXJkIG1ldGhvZCBtdXN0IHN0YXkgZW5hYmxlZC4gV2hhdCB5b3UgY2hvb3NlIGhlcmUgaXMgdGhlIGRlZmF1bHQgZm9yIGV2ZXJ5IGludm9pY2UsIGVzdGltYXRlLCBhbmQgcmVjdXJyaW5nIHByb2ZpbGUgaW4geW91ciBhY2NvdW50LCBhbmQgZWFjaCBvbmUgY2FuIG92ZXJyaWRlIHRoYXQgZGVmYXVsdCBpbiBpdHMgb3duIFBheW1lbnQgTWV0aG9kcyBwYW5lbC4iLCJQQVlNRU5UX01FVEhPRFNfUE9QVVBfQUNLIjoiR290IGl0IiwiUEFZTUVOVF9NRVRIT0RTX0VOVElUWV9QT1BVUF9USVRMRSI6IkFib3V0IFBheW1lbnQgTWV0aG9kcyIsIlBBWU1FTlRfTUVUSE9EU19FTlRJVFlfUE9QVVBfQk9EWSI6IlRoZSBjaG9pY2VzIHlvdSBtYWtlIG9ubHkgYXBwbHkgaGVyZS4gVGhleSBvdmVycmlkZSB0aGUgZ2xvYmFsIFBheW1lbnQgTWV0aG9kIGRlZmF1bHRzIGhlcmUgd2l0aG91dCBjaGFuZ2luZyB0aGVtIGFueXdoZXJlIGVsc2UuIFJlc2V0IHJlc3RvcmVzIHRoZSBnbG9iYWwgZGVmYXVsdHMuIiwiQUREX1RJTUVSIjoiQWRkIFRpbWVyIiwiQ09OVFJBQ1RfRV9TSUdOX0FVVE9NQVRJT05TX1RBUkdFVF9UWVBFX1dBUk5JTkciOiJVc2luZyBhIERvY3VtZW50IFRhcmdldCB0aGF0IGRvZXMgbm90IG1hdGNoIEF1dG9tYXRpb24gVHlwZSB3aWxsIHJlc3VsdCBpbiB0aG9zZSBBdXRvbWF0aW9ucyB0byBub3QgcnVuLiIsIkFUVEFDSF9GSUxFU19GUk9NX1RFTVBMQVRFIjoiQXR0YWNoIEZpbGVzIGZyb20gQWxsIFNvdXJjZXMiLCJHRU5FUkFURV9DT05UUkFDVCI6IkdlbmVyYXRlIERvY3VtZW50IiwiQ09OVFJBQ1RfU0FWRV9BU19URU1QTEFURSI6IlNhdmUgYXMgR2VuZXJhdG9yIiwiOGRhZGRhZTgtYjY0Mi00YWYyLWEwOGUtNDY1YTljZTE2N2UyIjoiR2VuZXJhdG9yIGhhcyBiZWVuIHNhdmVkIiwiQ09OVFJBQ1RfUFJFVklFVyI6IkRvY3VtZW50IFByZXZpZXciLCJDVVNUT01fQ1NTX0pTIjoiQ3VzdG9tIENTU1wvSlMiLCJTSUdOQVRVUkVfTkFNRSI6IlNpZ25hdHVyZSBOYW1lIiwiU0lHTl9IRVJFIjoiU2lnbiBIZXJlIiwiU01TX1BIT05FX0lOVkFMSUQiOiJQaG9uZSBudW1iZXIgaXMgaW52YWxpZCIsIlNIT1dfTEVTUyI6IlNob3cgTGVzcyIsIkFWQUlMQUJMRV9QTEFDRUhPTERFUlNfRk9SX1NVQkpFQ1RfSVMiOiJBdmFpbGFibGUgcGxhY2Vob2xkZXIgZm9yIFN1YmplY3QgaXMiLCJBVkFJTEFCTEVfUExBQ0VIT0xERVJTX0ZPUl9CT0RZX0FSRSI6IkF2YWlsYWJsZSBwbGFjZWhvbGRlcnMgZm9yIEJvZHkgYXJlIiwiQk9EWSI6IkJvZHkiLCJUSVRMRSI6IlRpdGxlIiwiU0lHTiI6IlNpZ24iLCJBUFBST1ZFX0RPQ1VNRU5UX01FU1NBR0UiOiJUbyBhcHByb3ZlIHRoaXMgZG9jdW1lbnQsIHR5cGUgeW91ciBuYW1lIGJlbG93IiwiRU5URVJfU0lHTkFUVVJFX0hFUkUiOiJFbnRlciB5b3VyIHNpZ25hdHVyZSBoZXJlIiwiWU9VUl9ERVRBSUxTIjoiWW91ciBEZXRhaWxzIiwiUEFZTUVOVF9ERVRBSUxTIjoiUGF5bWVudCBEZXRhaWxzIiwiQ0hPT1NFX0lURU1TX0VSUk9SXzQiOiJQbGVhc2Ugc2VsZWN0IGEgUGFja2FnZSB0byBjb250aW51ZSIsIkNIT09TRV9JVEVNU19FUlJPUl8yIjoiUGxlYXNlIHNlbGVjdCBhbiBJdGVtIG9yIFBhY2thZ2Ugd2l0aCBhIHZhbHVlIiwiU0VMRUNUX1RJTUVfQU5EX0RBVEVfRVJST1IiOiJQbGVhc2Ugc2VsZWN0IFRpbWUgXHUwMDI2IERhdGUiLCJDT05GSVJNX0RFVEFJTFMiOiJDb25maXJtIERldGFpbHMiLCJBTkQiOiJhbmQiLCJQQVkiOiJQYXkiLCJGT1JNX1BSSUNJTkdfQ0hBTkdFRCI6IlRoZSBwcm9kdWN0IHByaWNpbmcgaGFzIGJlZW4gdXBkYXRlZC4gWW91ciBjaGVja291dCBmb3JtIGhhcyBiZWVuIHJlZnJlc2hlZCB0byBzaG93IHRoZSBsYXRlc3QgcHJpY2UuIFBsZWFzZSByZXZpZXcgdGhlIGRldGFpbHMgYmVmb3JlIHByb2NlZWRpbmcuIiwiUFJJQ0VfQVZBSUxBQklMSVRZX0NIQU5HRUQiOiJBdmFpbGFiaWxpdHkgb3IgUHJpY2UgaGFzIGNoYW5nZWQuIFRoZSBGb3JtIHdpbGwgcmVmcmVzaCB0byBzaG93IHRoZSBsYXRlc3QgZGV0YWlscy4gUGxlYXNlIHJldmlldyB0aGUgZGV0YWlscyBiZWZvcmUgcHJvY2VlZGluZy4iLCJTVUJNSVQiOiJTdWJtaXQiLCJQQUdFX1NUWUxJTkdfT1BUSU9OUyI6IlBhZ2UgU3R5bGluZyBPcHRpb25zIiwiQVBQT0lOVE1FTlRfQkxPQ0tFRF9JTlRFUlZBTF9XSU5ET1dfR1JPVVBfTiI6IldpbmRvdyBHcm91cCAjIiwiQUxMX1NFVFRJTkdTX0ZPUl9USElTX1NFTkRJTkdfTUVUSE9EX1dJTExfQkVfUkVNT1ZFRCI6IkFsbCBzZXR0aW5ncyBmb3IgdGhpcyBzZW5kaW5nIG1ldGhvZCB3aWxsIGJlIHJlbW92ZWQiLCJDT05GSUdVUkVfQ09NUEFOWV9OQU1FX0ZJRUxEX1NFVFRJTkdTIjoiUGxlYXNlIGNvbmZpZ3VyZSBDb21wYW55IE5hbWUgZmllbGQgc2V0dGluZ3MiLCJQUk9KRUNUX1BST0ZJTEVfUkVRVUlSRUQiOiJDYXNlIEdlbmVyYXRvciBpcyByZXF1aXJlZCIsIkZPUk1fSEFTX0JFRU5fU0FWRUQiOiJGb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBzYXZlZCIsIkNPTkZJR1VSRV9BU1NJR05NRU5UU19BVVRPTUFUSU9OUyI6IkNvbmZpZ3VyZSBBc3NpZ25tZW50cyBcdTAwMjYgQXV0b21hdGlvbnMiLCJQT1BPVkVSX0dMT0JBTF9BU1NJR05NRU5UUyI6IlRoZSBGb3JtXHUyMDE5cyBBc3NpZ25tZW50cyBcdTAwMjYgQXV0b21hdGlvbnMgd2lsbCBiZSBTaGFyZWQuIFRoaXMgbWVhbnMgeW91IHdpbGwgY29uZmlndXJlIG9uZSBzZXQgb2YgQXNzaWdubWVudHMgXHUwMDI2IEF1dG9tYXRpb25zIGZvciBLbm93biBhbmQgVW5rbm93biBUYXJnZXRzLCBhbmQgdGhhdCB3aWxsIGJlIHRoZSBTaGFyZWQgc3RhbmRhcmQgcmVnYXJkbGVzcyBvZiB3aGljaCBBcHBvaW50bWVudCBHZW5lcmF0b3IgaXMgc2VsZWN0ZWQuIiwiUE9QT1ZFUl9JTkRJVklEVUFMX0FTU0lHTk1FTlRTIjoiVGhlIEZvcm1cdTIwMTlzIEFzc2lnbm1lbnRzIFx1MDAyNiBBdXRvbWF0aW9ucyB3aWxsIGJlIGhhbmRsZWQgb24gYW4gSW5kaXZpZHVhbCBsZXZlbC4gVGhpcyBtZWFucyB0aGF0IGZvciBlYWNoIEFwcG9pbnRtZW50IEdlbmVyYXRvciwgeW91IHdpbGwgY29uZmlndXJlIGEgdW5pcXVlIHNldCBvZiBBc3NpZ25tZW50cyBcdTAwMjYgQXV0b21hdGlvbnMgZm9yIEtub3duIGFuZCBVbmtub3duIFRhcmdldHMuIFRoaXMgaXMgdXNlZnVsIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSB1bmlxdWUgd29ya2Zsb3dzIGZvciBlYWNoIEFwcG9pbnRtZW50IEdlbmVyYXRvciB5b3VyIFRhcmdldHMgbWF5IHNlbGVjdC4iLCJGT1JNX1BPUlRBTF9BQ0NFU1NfSU5WSVRBVElPTl9IQVNfQkVFTl9SRVNFVCI6IlBvcnRhbCBBY2Nlc3MgSW52aXRhdGlvbiB
188oYXMgYmVlbiBzdWNjZXNzZnVsbHkgcmVzZXQiLCJBTExfU0VUVElOR1NfT0ZfVEhJU19GT1JNX1JFU0VUIjoiQWxsIHNldHRpbmdzIG9mIHRoaXMgZm9ybSB3aWxsIGJlIHJlc2V0IiwiUFJPSkVDVF9HRU5FUkFUT1JfSURFTlRJRklFRF9JTl9GT1JNIjoiQ2FzZSBHZW5lcmF0b3IgaWRlbnRpZmllZCBpbiB0aGlzIEZvcm0iLCJDT05UQUNUU19NT1NUX1JFQ0VOVF9QUk9KRUNUIjoiQ29udGFjdFx1MDAyN3MgbW9zdCByZWNlbnQgUHJvamVjdCIsIlBST0pFQ1RfVElUTEVfU1RBUlRJTkdfRlJPTV9GT0xMT1dJTkciOiJQcm9qZWN0IFRpdGxlIGNvbnRhaW5zIHRoZSBmb2xsb3dpbmcuLi4iLCJTRUFSQ0hfVEVYVF9SRUNFTlRfUFJPSkVDVF9XQVJOSU5HIjoiSU1QT1JUQU5UOiBUaGlzIE1hdGNoaW5nIExvZ2ljIHdpbGwgY2hlY2sgYWdhaW5zdCB0aGUgbGVhZGluZ1wvZmlyc3QgY2hhcmFjdGVycyBvZiB0aGUgQ2FzZSBUaXRsZS4gVGhlIGZpcnN0IGNoYXJhY3RlcnMgaW4gdGhlIENhc2UgVGl0bGUgbXVzdCBiZSBhIDEwMCUgbWF0Y2ggd2l0aCB3aGF0IHlvdSBlbnRlciBpbnRvIHRoaXMgc2V0dGluZywgc28geW91IHdpbGwgd2FudCB0byBkZXNpZ24geW91ciBDYXNlIFRpdGxlcyB3aXRoIHlvdXIgQXV0b21hdGlvbiBzdHJhdGVneSBpbiBtaW5kLiBGb3IgZXhhbXBsZSwgaWYgeW91IHdhbnQgdG8gYXBwbHkgdGhlIFRhc2sgVGVtcGxhdGUgdG8gdGhlIFRhcmdldFx1MDAyN3MgQ2FzZSB0aXRsZWQgXHUwMDIyV0VCQkxEIHwgV2Vic2l0ZSBCdWlsZCB8IEpvaG4gRG9lXHUwMDIyLCB5b3Ugd291bGQgZW50ZXIgdGhlIGZvbGxvd2luZyBpbiB0aGlzIGZpZWxkOiBXRUJCTEQgSWYgbW9yZSB0aGFuIG9uZSBDYXNlIGFzc2lnbmVkIHRvIHRoZSBUYXJnZXQgaXMgaWRlbnRpZmllZCBieSB0aGUgbWF0Y2hpbmcgbG9naWMsIHRoZSBBdXRvbWF0aW9uIHdpbGwgY2hvb3NlIHRoZSBtb3N0IHJlY2VudCBvZiB0aGUgVGFyZ2V0XHUwMDI3cyBpZGVudGlmaWVkIENhc2VzIiwiVVBEQVRFX0NVU1RPTV9GSUVMRCI6IlVwZGF0ZSBDdXN0b20gRmllbGQiLCJGT1JNX0ZJRUxEX0FDVElPTlMiOiJGb3JtIEZpZWxkIEFjdGlvbnMiLCJTRVRfQUNUSU9OU19GT1JfQ0hFQ0tFRCI6IlNldCBBY3Rpb25zIGZvciBDaGVja2VkIiwiU0VUX0FDVElPTlNfRk9SX1VOQ0hFQ0tFRCI6IlNldCBBY3Rpb25zIGZvciBVbmNoZWNrZWQiLCJWSVNJQklMSVRZX09QVElPTlMiOiJWaXNpYmlsaXR5IE9wdGlvbnMiLCJISURFX1dIRU5fRU1CRURERUQiOiJIaWRlIHdoZW4gZW1iZWRkZWQiLCJTSE9XX09OTFlfRk9SX1NUQUZGX1NVQk1JVCI6IlNob3cgb25seSBmb3IgU3RhZmYgU3VibWl0IiwiQ09OVFJBQ1RfU0lHTkFUVVJFX1NUQVRFTUVOVF9QT1BPVkVSIjoiVGhpcyBzdGF0ZW1lbnQgd2lsbCBhcHBlYXIgb3ZlciB0aGUgdG9wIG9mIHRoZSBTaWduYXR1cmUgQmxvY2siLCJGT1JNX0ZJRUxEX1NNU19DT05TRU5UX0JVSUxERVJfTk9URSI6IlRoaXMgcmVuZGVycyB5b3VyIGNvbXBhbnlcdTAwMjdzIFNNUyBjb25zZW50IGRpc2Nsb3N1cmUgYWJvdmUgYSByZXF1aXJlZCBvcHQtaW4gdG9nZ2xlLCB3aXRoIHRoZSBzYW1lIHdvcmRpbmcgY2FycmllcnMgc2VlIGluIHlvdXIgb3B0LWluIHByb29mLiBXaGVuIGEgY29udGFjdCBzdWJtaXRzIHRoZSBmb3JtIHdpdGggdGhpcyB0dXJuZWQgb24sIHRoZWlyIG9wdC1pbiBpcyByZWNvcmRlZCBmb3IgdGhlIHBob25lIG51bWJlciBvbiB0aGUgZm9ybS4iLCJBTExPV19PUEVOX0VOREVEX0lOUFVUX09GX0NPTVBBTllfTkFNRV9QT1BVUCI6IkVuYWJsaW5nIHRoaXMgb3B0aW9uIGFsbG93cyB0aGUgVGFyZ2V0IHRvIGVudGVyIGEgQ29tcGFueSBuYW1lIGludG8gYSBibGFuayBzaW5nbGUtbGluZSB0ZXh0IGZpZWxkLiBJZiBkaXNhYmxlZCwgeW91IHdpbGwgbmVlZCB0byBjaG9vc2UgYSBzaW5nbGUgQ29tcGFueSwgYW5kIGFsbCBUYXJnZXRzIHdobyBzdWJtaXQgdGhpcyBmb3JtIHdpbGwgYmUgYXV0by1hc3NvY2lhdGVkIHdpdGggdGhhdCBvbmUgcGFydGljdWxhciBDb21wYW55IChmb3IgY2FzZXMgd2hlcmUgeW91IG1heSBiZSBjcmVhdGluZyBhIENvbXBhbnktc3BlY2lmaWMgb25ib2FyZGluZyB3b3JrZmxvdykuIFVuZGVyc3RhbmQgdGhhdCBiZWNhdXNlIHRoaXMgaXMgYSBwdWJsaWNseSBhdmFpbGFibGUgZm9ybSwgaXQgaXMgbmV2ZXIgcG9zc2libGUgdG8gb2ZmZXIgYSBkcm9wLWRvd24gbWVudSBvZiBjb21wYW5pZXMgdG8gY2hvb3NlIGZyb20gYXMgdGhpcyB3b3VsZCBleHBvc2UgeW91ciBDUk0gdG8gdGhlIHB1YmxpYy4iLCJHSVZFX1RBUkdFVF9USEVfT1BUSU9OX1RPX1RPR0dMRV9JX0FNX05PVF9DT01QQU5ZX1BPUFVQIjoiRW5hYmxlIHRoaXMgb3B0aW9uIHRvIGdpdmUgdGhlIFRhcmdldCBhbiBvcHRpb24gdG8gZW50ZXIgYXMgYW4gSW5kaXZpZHVhbCB3aXRoIG5vIENvbXBhbnkgYWZmaWxpYXRpb24uIFRoaXMgY2FuIGJlIG9mZmVyZWQgaW4gY2FzZXMgd2hlcmUgeW91ciBUYXJnZXRzIG1heSBvciBtYXkgbm90IGJlIG9wZXJhdGluZyBhcywgb3IgYWZmaWxpYXRlZCB3aXRoLCBhIENvbXBhbnkuIiwiQ1JFQVRFX0NPTVBBTllfSUZfTk9fTUFUQ0hfQ0FOX0JFX01BREVfUE9QVVAiOiJJbiB0aGUgY2FzZSB3aGVyZSB0aGUgQ29tcGFueSBuYW1lIGVudGVyZWQgZG9lcyBub3QgbWF0Y2ggYW55IGV4aXN0aW5nIENvbXBhbnkgd2hlbiBtZWFzdXJlZCBhZ2FpbnN0IHRoZSBDb21wYW55IE1hdGNoICUgc2V0IGluIENSTSBcdTAwM0UgU2V0dGluZ3MsIHRoZW4gYSBuZXcgQ29tcGFueSB3aWxsIGJlIGNyZWF0ZWQgYW5kIHRoZSBUYXJnZXQgKGlmIGF2YWlsYWJsZSkgd2lsbCBiZSBzZXQgYXMgdGhhdCBDb21wYW55XHUwMDI2YXBvcztzIFByaW1hcnkgQ29udGFjdC4iLCJVU0VfVEhFX0NPTVBBTllfQVNfVEhFX1RBUkdFVF9GT1JfQVVUT01BVElPTlNfUE9QVVAiOiJXaGVuIGEgbmV3IENvbXBhbnkgaXMgY3JlYXRlZCwgZW5hYmxpbmcgdGhpcyBvcHRpb24gd2lsbCBkZXNpZ25hdGUgdGhhdCB0aGUgQ29tcGFueSB3aWxsIGJlIHRoZSBUYXJnZXQgb2YgYW55XC9hbGwgQXNzaWdubWVudHMgYW5kXC9vciBBdXRvbWF0aW9ucy4gSWYgeW91IGFyZSB3b3JraW5nIHdpdGggdGhlIENvbXBhbnkgZGlyZWN0bHksIHlvdSB3aWxsIHdhbnQgdG8gbGVhdmUgdGhpcyBlbmFibGVkLiIsIkNSRUFURV9OT1RFX1BPUFVQIjoiV2hlbiBlbmFibGVkLCB0aGUgZGF0YSBzdWJtaXR0ZWQgaW4gdGhpcyBmaWVsZCB3aWxsIGNyZWF0ZSBhIENSTSBOb3RlIGZvciB0aGUgVGFyZ2V0LiIsIlBSRVZFTlRfVEhJU19QUklNQVJZX0NPTlRBQ1RfRlJPTV9TV0lUQ0hJTkdfSU5UT19JTkRJVklEVUFMX01PREVfUE9QVVAiOiJFbmFibGluZyB0aGlzIG9wdGlvbiB3aWxsIHByZXZlbnQgdGhlIFByaW1hcnkgQ29udGFjdCBmcm9tIHN3aXRjaGluZyBpbnRvIEluZGl2aWR1YWwgTW9kZS4gVGhpcyBtZWFucyB0aGF0IHR
188oZXkgd2lsbCBhbHdheXMgZW50ZXIgdGhlIFBvcnRhbCBhcyB0aGUgcmVwcmVzZW50YXRpdmUgb2YgYSBDb21wYW55LCBhbmQgdGhleSB3aWxsIG5vdCBiZSBhYmxlIHRvIHN3aXRjaCB0byB0aGVpciBJbmRpdmlkdWFsIG1vZGUgaW4gdGhlIEZseW91dCBNZW51LiBUaGV5IHdpbGwgaG93ZXZlciwgYmUgYWJsZSB0byBzd2l0Y2ggdG8gb3RoZXIgQ29tcGFueSBQb3J0YWxzXC9wcm9maWxlcyBpZiB0aGV5IGhhdmUgYmVlbiBsaXN0ZWQgYXMgdGhlIFByaW1hcnkgQ29udGFjdCBmb3IgbXVsdGlwbGUgY29tcGFuaWVzLiIsIkNSRUFURV9OT1RFIjoiQ3JlYXRlIE5vdGUiLCJUT0dHTEVfTk9UX0NPTVBBTllfU1VCVEVYVFNfRU5BQkxFRCI6IkFyZSB5b3UgcmVwcmVzZW50aW5nIGEgY29tcGFueT8gSWYgeWVzLCBjb21wbGV0ZSB0aGlzIGZpZWxkIHdpdGggeW91ciBvZmZpY2lhbCBDb21wYW55IE5hbWUuIElmIHlvdSBhcmUgbm90IHJlcHJlc2VudGluZyBhIGNvbXBhbnksIHRoZW4gcGxlYXNlIGVuYWJsZSB0aGUgc3dpdGNoIGJlbG93IGxhYmVsZWQgXHUwMDI2cXVvdDtJXHUwMDI2YXBvczttIG5vdCByZXByZXNlbnRpbmcgYSBDb21wYW55XHUwMDI2cXVvdDsuIiwiVE9HR0xFX05PVF9DT01QQU5ZX1NVQlRFWFRTX0RJU0FCTEVEIjoiQXJlIHlvdSByZXByZXNlbnRpbmcgYSBjb21wYW55PyBJZiB5ZXMsIGNvbXBsZXRlIHRoaXMgZmllbGQgd2l0aCB5b3VyIG9mZmljaWFsIGNvbXBhbnkgbmFtZS4gSWYgeW91IGFyZSBub3QgcmVwcmVzZW50aW5nIGEgY29tcGFueSwgdGhlbiBqdXN0IGxlYXZlIHRoZSBjb21wYW55IGZpZWxkIGJsYW5rLiIsIlBPU0lUSU9OIjoiUG9zaXRpb24iLCJHTyI6IkdvIiwiQ1VSUkVOVF9QT1NJVElPTiI6ImN1cnJlbnQiLCJQUk9KRUNUX0FTU0lHTkVEX0JZX1BST0pFQ1RfU0VMRUNUSU9OX0ZJRUxEIjoiUHJvamVjdCBBc3NpZ25lZCBieSBQcm9qZWN0IFNlbGVjdGlvbiBGaWVsZCIsIkFEVkFOQ0VEX0JMT0NLUyI6IkFkdmFuY2VkIEJsb2NrcyIsIkFEVkFOQ0VEX0JMT0NLU19UT09MVElQIjoiQWR2YW5jZWQgQmxvY2tzIGFyZSBzcGVjaWFsdHkgQmxvY2tzIGRlc2lnbmVkIHRvIGVuaGFuY2UgRm9ybSBsYXlvdXRzIGFuZCBpbnRlcmFjdGl2aXR5IGZvciBib3RoIENSTSBcdTAwMjYgU3RhZmYgVGFyZ2V0cy4gVXNpbmcgdGhlIEFkdmFuY2VkIEJsb2NrcyBkcm9wZG93biwgeW91IGNhbiBpbnNlcnQgZWxlbWVudHMgbGlrZSBIVE1MIENvbnRlbnQsIEFwcG9pbnRtZW50IEJsb2NrcywgU2lnbmF0dXJlIEJsb2NrcywgYW5kIENob2ljZSBCbG9ja3MgYmVmb3JlLCBhZnRlciwgb3IgYmV0d2VlbiBzdGFuZGFyZCBmaWVsZHMgZm9yIENSTSBUYXJnZXRzLiBGb3IgU3RhZmYgVGFyZ2V0cywgdGhlIGF2YWlsYWJsZSBvcHRpb25zIGluY2x1ZGUgSFRNTCBDb250ZW50LCBTaWduYXR1cmUgQmxvY2tzLCBhbmQgQ2hvaWNlIEJsb2Nrcy4gVGhlc2UgZmllbGRzIGFyZSBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciBjcmVhdGluZyBzdHJ1Y3R1cmVkLCBpbnRlcmFjdGl2ZSwgb3IgaW5mb3JtYXRpdmUgbGF5b3V0cyB0aGF0IGdvIGJleW9uZCBiYXNpYyBkYXRhIGNvbGxlY3Rpb24uIiwiQ1JNX0NPTlRBQ1RfRklFTERTIjoiQ1JNIENvbnRhY3QgRmllbGRzIiwiQ1JNX0NPTlRBQ1RfRklFTERTX1RPT0xUSVAiOiJDUk0gQ29udGFjdCBDdXN0b20gRmllbGRzIGFyZSBkZWRpY2F0ZWQgdG8gSW5kaXZpZHVhbCB1c2VycyBhbmQgYXJlIG9ubHkgdmlzaWJsZSB3aGVuIGEgQ29udGFjdCBsb2dzIGluIHJlcHJlc2VudGluZyB0aGVtc2VsdmVzXHUyMDE0bm90IGFzIGEgY29tcGFueSByZXByZXNlbnRhdGl2ZS4gVGhlc2UgZmllbGRzIGFyZSBpZGVhbCBmb3Igc3RvcmluZyBwZXJzb25hbCBvciBpbmRpdmlkdWFsaXplZCBkYXRhIHRoYXQgaXMgdW5pcXVlIHRvIGVhY2ggQ29udGFjdCwgc3VwcG9ydGluZyB1c2UgY2FzZXMgdGhhdCByZXF1aXJlIHVzZXItc3BlY2lmaWMgaW5mb3JtYXRpb24uIiwiU1RBRkZfRklFTERTIjoiU3RhZmYgRmllbGRzIiwiU1RBRkZfRklFTERTX1RPT0xUSVAiOiJTdGFmZiBDdXN0b20gRmllbGRzIGFyZSBhc3NvY2lhdGVkIHdpdGggaW5kaXZpZHVhbCBTdGFmZiB1c2VycyBhbmQgYWxsb3cgeW91IHRvIGNvbGxlY3QgYW5kIHN0b3JlIGRhdGEgdGhhdCBpcyBzcGVjaWZpYyB0byBlYWNoIFN0YWZmIG1lbWJlci4gV2hlbiB0aGVzZSBGaWVsZHMgYXJlIGZpbGxlZCBvdXQsIHRoZSBpbmZvcm1hdGlvbiBpcyBzYXZlZCB0byB0aGUgU3RhZmYgdXNlclx1MjAxOXMgcHJvZmlsZSBhbmQgY2FuIGJlIHJlZmVyZW5jZWQgb3IgZGlzcGxheWVkIGFzIG5lZWRlZC4gVGhlc2UgRmllbGRzIGFyZSBwZXJmZWN0IGZvciB0cmFja2luZyBpbnRlcm5hbCBkZXRhaWxzLCBwcmVmZXJlbmNlcywgb3IgY3JlZGVudGlhbHMgdGllZCB0byBTdGFmZiBtZW1iZXJzLiIsIlNVUFBPUlRfRklFTERTIjoiU3VwcG9ydCBGaWVsZHMiLCJTVVBQT1JUX0ZJRUxEU19UT09MVElQIjoiU3VwcG9ydCBDdXN0b20gRmllbGRzIGFyZSBhc3NvY2lhdGVkIGRpcmVjdGx5IHdpdGggU3VwcG9ydCBUaWNrZXRzLiBXaGVuIGEgU3VwcG9ydCBGb3JtIGlzIHN1Ym1pdHRlZCBjb250YWluaW5nIGFueSBTdXBwb3J0IEN1c3RvbSBGaWVsZHMsIHRoZSBkYXRhIHdpbGwgYmUgc2F2ZWQgYW5kIGRpc3BsYXllZCBpbiB0aGUgQ3VzdG9tZXIgRGF0YSBzaWRlYmFyIGZvciB0aGF0IFRpY2tldC4iLCJQUk9KRUNUX0NVU1RPTV9GSUVMRFMiOiJQcm9qZWN0IEN1c3RvbSBGaWVsZHMiLCJQUk9KRUNUX0NVU1RPTV9GSUVMRFNfVE9PTFRJUCI6IlByb2plY3QgQ3VzdG9tIEZpZWxkcyBhcmUgZGVzaWduZWQgc3BlY2lmaWNhbGx5IGZvciBQcm9qZWN0cyBhbmQgYXJlIHVuaXF1ZSB0byBlYWNoIG9uZS4gV2hlbiBhIEZvcm0gY29udGFpbmluZyB0aGVzZSBGaWVsZHMgaXMgc3VibWl0dGVkLCB0aGUgY29sbGVjdGVkIGRhdGEgaXMgdGllZCBkaXJlY3RseSB0byB0aGUgUHJvamVjdCBpZGVudGlmaWVkIGluIHRoZSBGaWVsZCBvciB0aHJvdWdoIGEgc2VsZWN0ZWQgUHJvamVjdCBHZW5lcmF0b3IuIFRoZXNlIEZpZWxkcyBhcmUgaWRlYWwgZm9yIGNhcHR1cmluZyBwcm9qZWN0LXNwZWNpZmljIGRldGFpbHMsIGVuc3VyaW5nIHRoYXQgYWxsIHJlbGV2YW50IGluZm9ybWF0aW9uIHN0YXlzIG9yZ2FuaXplZCBhbmQgY29ubmVjdGVkIHRvIHRoZSBhcHByb3ByaWF0ZSBQcm9qZWN0LiIsIkNSTV9DT01QQU5ZX0ZJRUxEUyI6IkNSTSBDb21wYW55IEZpZWxkcyIsIkNSTV9DT01QQU5ZX0ZJRUxEU19UT09MVElQIjoiUHVibGljIENvbXBhbnkgQ3VzdG9tIEZpZWxkcyBhcmUgYXNzb2NpYXRlZCB3aXRoIENvbXBhbmllcyBidXQgYXJlIG1vcmUgYnJvYWRseSBhY2Nlc3NpYmxlLiBBbnkgQ29udGFjdCBsaW5rZWQgdG8gdGhlIENvbXBhbnkgY2FuIHZpZXcgdGhlIGRhdGEgaW4gdGhlc2UgRmllbGRzLiBUaGV5IGFyZSB3ZWxsLXN1aXRlZCBmb3IgZ2VuZXJhbCBjb21wYW5
1885IGluZm9ybWF0aW9uIHRoYXQgZG9lc25cdTAwMjd0IHJlcXVpcmUgcmVzdHJpY3RlZCBhY2Nlc3MgYW5kIGNhbiBiZSBzaGFyZWQgYWNyb3NzIGFsbCBhc3NvY2lhdGVkIHVzZXJzLiBQcml2YXRlIENvbXBhbnkgQ3VzdG9tIEZpZWxkcyBhcmUgc3BlY2lmaWNhbGx5IHRpZWQgdG8gQ29tcGFuaWVzIGFuZCBhcmUgb25seSB2aXNpYmxlIHdoZW4gYSBQcmltYXJ5IENvbnRhY3QgbG9ncyBpbiBvbiBiZWhhbGYgb2YgdGhhdCBDb21wYW55LiBUaGlzIG1ha2VzIHRoZW0gdXNlZnVsIGZvciBzdG9yaW5nIHNlbnNpdGl2ZSBvciBpbnRlcm5hbCBjb21wYW55IGRhdGEgdGhhdCBzaG91bGQgb25seSBiZSBhY2Nlc3NlZCB1bmRlciBzcGVjaWZpYyBjb25kaXRpb25zLCBlbnN1cmluZyBkYXRhIHByaXZhY3kgYW5kIHJvbGUtYmFzZWQgYWNjZXNzLiIsIkNSTV9UQVJHRVRfRklFTERTIjoiQ1JNIFRhcmdldCBGaWVsZHMiLCJDUk1fVEFSR0VUX0ZJRUxEU19UT09MVElQIjoiVGFyZ2V0IEN1c3RvbSBGaWVsZHMgYXJlIGRlc2lnbmVkIHRvIHdvcmsgc2VhbWxlc3NseSBmb3IgYm90aCBDb21wYW5pZXMgYW5kIEluZGl2aWR1YWwgQ29udGFjdHMuIFRoZXNlIGZpZWxkcyBzdG9yZSBkYXRhIHRoYXQgaXMgYWNjZXNzaWJsZSByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHVzZXIgaXMgYSBDb21wYW55IG9yIGFuIEluZGl2aWR1YWwsIG1ha2luZyB0aGVtIGlkZWFsIGZvciBzaGFyZWQgd29ya2Zsb3dzIGFuZCBkYXNoYm9hcmRzLiBXaGVuIGEgdXNlciBsb2dzIGluIHRoZSByZWxldmFudCBkYXRhIGluIHRoZXNlIEZpZWxkcyB3aWxsIGJlIGRpc3BsYXllZCBkeW5hbWljYWxseSBhbmQgdW5pcXVlbHkgZm9yIHRoZW0uIiwiQ1JFQVRFX05FV19GSUVMRCI6IkNyZWF0ZSBhIG5ldyBmaWVsZCIsIkZPUk1fRklFTERfU01TX0NPTlNFTlRfTk9fUEhPTkVfV0FSTklORyI6IkFkZCBhIHBob25lIGZpZWxkIHRvIHRoaXMgZm9ybSBzbyBTTVMgY29uc2VudCBjYW4gYmUgcmVjb3JkZWQuIiwiQ1VTVE9NX1RIRU1FUyI6IkN1c3RvbSBUaGVtZXMiLCJTRU5EX1RPX0ZPUk1fVVNFUiI6IlNlbmQgZW1haWwgdG8gdGhlIFRhcmdldCBvZiB0aGUgRm9ybSIsIlNFTkRfVE9fRk9STV9VU0VSX1RPT0xUSVAiOiJXaGVuIGVuYWJsZWQsIHRoZSBlbWFpbCBub3RpZmljYXRpb24gd2lsbCBiZSBzZW50IHRvIHRoZSBUYXJnZXQgdGhhdCBzdWJtaXR0ZWQgdGhlIEZvcm0gb3IgdGhlIFRhcmdldCB0aGUgRm9ybSB3YXMgc3VibWl0dGVkIG9uIGJlaGFsZiBvZiAoU3RhZmYgU3VibWl0KSIsIkFUVEFDSF9GT1JNX1NVQk1JU1NJT05fUERGIjoiQXR0YWNoIEZvcm0gU3VibWlzc2lvbiBQREYiLCJGT1JNUyI6IkZvcm1zIiwiU0VORF9UT19DT0xMRUNUX1VTRVJfRVJST1IiOiJUbyB1c2UgdGhpcyBmZWF0dXJlLCB5b3Ugc2hvdWxkIGhhdmUgb25seSBvbmUgRW1haWwgQWRkcmVzcyBmaWVsZCBpbiB0aGUgRm9ybS4iLCJSRVNFTExFUl9QUk9fUE9SVEFMX0lOVklUQVRJT05fTk9URSI6Ikludml0ZXMgdGhlIGN1c3RvbWVyIHRvIGxvZyBpbnRvIHlvdXIgQVVUT1AxTE9UIHBvcnRhbCBhcyBhIGNsaWVudC4gWW91IGNhbiBjdXN0b21pemUgdGhlIGNvbnRlbnQgb2YgdGhpcyBlbWFpbCBmb3IgdGhpcyBmb3JtIHVuaXF1ZWx5IGJ5IGNsaWNraW5nIHRoZSBTaWRlYmFyIFRhYiB3aXRoIHRoZSBFbnZlbG9wZSBpY29uLiIsIlJFU0VMTEVSX1BST19QT1JUQUxfSU5WSVRBVElPTl9ERUxBWV9OT1RFIjoiVXNlIGEgZGVsYXkgdG8gc3BhY2UgdGhpcyBpbnZpdGF0aW9uIGFwYXJ0IGZyb20gdGhlIG5ldyBhY2NvdW50IHdlbGNvbWUgZW1haWwsIHdoaWNoIGZpcmVzIGltbWVkaWF0ZWx5IGF0IGNoZWNrb3V0LiIsIk5PX0RFTEFZIjoiTm8gZGVsYXkiLCJNSU5VVEVTIjoiTWludXRlcyIsIlNFTkRfUE9SVEFMX0FDQ0VTU19JTlZJVEFUSU9OIjoiU2VuZCBQb3J0YWwgQWNjZXNzIEludml0YXRpb24iLCJQT1BPVkVSX0ZPUk1fUEFJRF9TVUJTQ1JJUFRJT04iOiJJZiBlbmFibGVkLCB0aGUgdXNlciB3aWxsIG5vIGxvbmdlciBoYXZlIGFjY2VzcyBpZiB0aGUgU3Vic2NyaXB0aW9uIGlzIGNhbmNlbGVkIG9yIGV4cGlyZXNcL2NvbXBsZXRlcyBhbGwgdGhlIGJpbGxpbmcgY3ljbGVzLiIsIlBPUE9WRVJfRk9STV9FWFRFUk5BTF9ST0xFIjoiVGhlc2Ugcm9sZXMgYXJlIG1lYW50IHRvIGJlIHVzZWQgaW4gdGhlIGNvbnRleHQgb2YgYSBTYWxlcyBGdW5uZWwuIEEgXHUwMDIyTEVBRF9ST0xFU1x1MDAyMiBpcyBhIFRhcmdldCB0aGF0IHlvdSBoYXZlIGp1c3QgYmVjb21lIGF3YXJlIG9mLiBZb3UgaGF2ZSB2ZXJ5IGxpdHRsZSBpbmZvcm1hdGlvbiBvciBoaXN0b3J5LCBidXQgeW91IHdhbnQgdG8gZ2V0IHRoZW0gaW50byB5b3VyIENSTSBhcyBhIFx1MDAyMnBvdGVudGlhbFx1MDAyMiBQUk9TUEVDVF9ST0xFUy4gQSBMRUFEX1JPTEVTIGRvZXMgbm90IHJlY2VpdmUgYW4gaW52aXRhdGlvbiB0byBjcmVhdGUgYSBsb2dpbiB0byB5b3VyIFBvcnRhbC4gQSBQUk9TUEVDVF9ST0xFUyBpcyBhIFRhcmdldCB0aGF0IGhhcyBwcm9ncmVzc2VkIHRvIHRoZSBuZXh0IGxldmVsIGluIHRoZSBTYWxlcyBGdW5uZWwuIFlvdSBXSUxMIGhhdmUgdGhlIG9wdGlvbiBvZiBpbnZpdGluZyB0aGVtIHRvIHlvdXIgUG9ydGFsLCBidXQgdGhleSBhcmUgb25seSBhYmxlIHRvIHZpZXcgXHUwMDI2IGJlIGFzc2lnbmVkIGFwcHJvcHJpYXRlIGl0ZW1zLiBDTElFTlRfUk9MRVMgaXMgdGhlIGhpZ2hlc3QgZXh0ZXJuYWwgcm9sZSAtIHRoZXNlIGFyZSBUYXJnZXRzIHRoYXQgeW91IGFyZSBhY3RpdmVseSB3b3JraW5nIHdpdGggaW4gZXhjaGFuZ2UgZm9yIGNvbXBlbnNhdGlvbiIsIkxFQURfUk9MRV9BVFRFTlRJT04iOiJcdTAwM0NiXHUwMDNFQVRUTlx1MDAzQ1wvYlx1MDAzRTogV2hlbiB5b3UgY2hvb3NlIExlYWQsIGFuIGVtYWlsIGFkZHJlc3Mgd2lsbCBiZSByZXF1aXJlZC4gQnV0LCBiZSBhd2FyZSB0aGF0IGV2ZW4gdGhvdWdoIGFuIGVtYWlsIGFkZHJlc3MgaXMgY29sbGVjdGVkLCB0aGUgTGVhZCBjYW5ub3QgcmVjZWl2ZSBhIFBvcnRhbCBBY2Nlc3MgSW52aXRhdGlvbiBmcm9tIHRoZSBwbGF0Zm9ybSBhbmQgd29uXHUyMDE5dCBiZSBhYmxlIHRvIGxvZ2luIHRvIHlvdXIgUG9ydGFsLiAgTGF0ZXIsIHlvdSBjYW4gXHUwMDI3Q29udmVydFx1MDAyNyB0aGUgTGVhZCB0byBhIFByb3NwZWN0IG9yIENsaWVudCwgYW5kIHR
188oYXQgYWN0aW9uIHdpbGwgZ2l2ZSB5b3UgdGhlIG9wdGlvbiBvZiBpbnZpdGluZyB0aGVtIHRvIGxvZ2luIHRvIHlvdXIgUG9ydGFsLiBJZiB5b3UgRE8gd2FudCB0aGlzIFRhcmdldCB0byBsb2dpbiB0byB5b3VyIFBvcnRhbCwgdGhlbiB5b3Ugc2hvdWxkIGFkZCB0aGVtIGFzIGEgUHJvc3BlY3Qgb3IgQ2xpZW50LiIsIlBPUE9WRVJfRk9STV9DT09SRElOQVRPUiI6IkEgQ29vcmRpbmF0b3IgaXMgYSBwZXJzb24gZnJvbSB5b3VyIFN0YWZmIHRoYXQgaXMgc3BlY2lmaWNhbGx5IGFzc2lnbmVkIGFzIHRoZSBcdTAwMjJQb2ludCBvZiBDb250YWN0XHUwMDIyIGZvciBhIFBST1NQRUNUX1JPTEVTIG9yIENMSUVOVF9ST0xFUy4gVGhlIENvb3JkaW5hdG9yIGlzIHRoZSBkZXNpZ25hdGVkIFN0YWZmIE1lbWJlciB0byByZWNlaXZlIGVtYWlsIG5vdGlmaWNhdGlvbnMgd2hlbiB0aGUgQ29udGFjdCBwZXJmb3JtcyBjZXJ0YWluIGFjdGlvbnMsIHVwbG9hZHMgZmlsZXMsIGV0Yy4sIHdpdGhpbiB0aGUgcGxhdGZvcm0uIFlvdSBjYW4gc2V0IHRoZSBDb29yZGluYXRvciB0byByZWNlaXZlIGVtYWlscyBpbiByZWxhdGlvbiB0byBGaWxlcywgQ2FzZXMsIGFuZCBUYXNrcy4iLCJTRUxFQ1RfQV9DT09SRElOQVRPUiI6IlNlbGVjdCBhIENvb3JkaW5hdG9yIiwiUE9QT1ZFUl9GT1JNX1NBTEVTUEVSU09OIjoiVGhlIFNhbGVzcGVyc29uIFJvbGUgaXMgdW5pcXVlIGluIHRoYXQgdmlzaWJpbGl0eSByZXN0cmljdGlvbnMgcmVnYXJkaW5nIENSTSBUYXJnZXRzIGNhbiBiZSBhcHBsaWVkIHRvIHRoZXNlIHVzZXJzLCBlaXRoZXIgbWFudWFsbHkgb3IgYXV0b21hdGljYWxseS4gVGhpcyBpcyBjYWxsZWQgXHUwMDIyY2xhaW1pbmdcdTAwMjIgYSBUYXJnZXQsIHdoaWNoIHdpbGwgaGlkZSB0aGF0IFRhcmdldCBmcm9tIGFueW9uZSBlbHNlIGluIHRoZSBTYWxlc3BlcnNvbiBSb2xlLiBUaGlzIGlzIGlkZWFsIGlmIHlvdXIgYnVzaW5lc3Mgb3BlcmF0ZXMgd2l0aCBhIHNhbGVzIHRlYW0gdGhhdCByZXF1aXJlcyBpbnN1bGF0aW9uIGZyb20gZWFjaCBvdGhlciAoZS5nLiB0aGV5IHdvcmsgb24gY29tbWlzc2lvbikuIiwiQ0xBSU1FRF9CWSI6IkNsYWltZWQgYnkiLCJQT1BPVkVSX0ZPUk1fQ0lSQ0xFUyI6IkEgQ2lyY2xlIGlzIHRoZSBncm91cCBwZXJtaXNzaW9uaW5nIFx1MDAyNiBhc3NpZ25tZW50IHN0cnVjdHVyZSBmb3IgIENMSUVOVF9ST0xFU3MgYW5kIFBST1NQRUNUX1JPTEVTcy4gQXNzaWduaW5nIHJlc291cmNlcyBsaWtlIFBvcnRhbCBQYWdlcyBhbmQgRmlsZXMgdG8gbXVsdGlwbGUgQ0xJRU5UX1JPTEVTc1wvUFJPU1BFQ1RfUk9MRVNzIGlzIG11Y2ggZWFzaWVyIHVzaW5nIENpcmNsZXMgYmVjYXVzZSB5b3UgY2FuIGFzc2lnbiByZXNvdXJjZXMgZGlyZWN0bHkgdG8gYSBDaXJjbGUsIGFuZCB0aGUgcmVzdWx0IHdpbGwgYmUgdGhhdCBhbnkgQ1JNIFRhcmdldHMgaW5zaWRlIHRoYXQgQ2lyY2xlIHdpbGwgYXV0b21hdGljYWxseSBnYWluIGFjY2VzcyB0byBhbnkgb2YgdGhvc2UgcmVzb3VyY2VzLiIsIklOTElORV9QTEFDRUhPTERFUl9TVUJUSVRMRSI6IkNsaWNrIHRoZSB7eH0gaWNvbiB0byBpbnNlcnQgZHluYW1pYyBwbGFjZWhvbGRlcnMiLCJERUFMX0dFTkVSQVRPUl9ERVNDUklQVElPTiI6IkEgRGVhbCBHZW5lcmF0b3IgaXMgYSBwcmUtY29uZmlndXJlZCBEZWFsIHRoYXQgeW91IGNhbiBhcHBseSB0byBhIFRhcmdldC4gQSBEZWFsIGlzIGEgbWVjaGFuaXNtIHRvIGhlbHAgeW91IHRyYWNrIGluY29tZSBvcHBvcnR1bml0aWVzIHdpdGhpbiBhIHZpc3VhbCBwaXBlbGluZS4gSXQgcHJvZ3Jlc3NlcyB0aHJvdWdoIHN0YWdlcyB1bnRpbCBpdCBpcyBlaXRoZXIgdWx0aW1hdGVseSBXb24gb3IgTG9zdC4iLCJQT1BPVkVSX0ZPUk1fRVZFTlRfR0VORVJBVE9SIjoiQSBGb2xsb3ctVXAgR2VuZXJhdG9yIGlzIGEgcHJlLWNvbmZpZ3VyZWQgc2VyaWVzIChvciBzZXF1ZW5jZSkgb2YgRm9sbG93LXVwcyB5b3UgY2FuIHByZS1jcmVhdGUgYW5kIHRoZW4gdXNlIGluIGFuIEF1dG9tYXRpb24gdG8gaW5zdGFudGx5IGdlbmVyYXRlIHRob3NlIEZvbGxvdy1VcHMgb24geW91ciBDYWxlbmRhciwgdXN1YWxseSBhcyBhIHN0cmF0ZWd5IHRvIGNvbm5lY3Qgd2l0aCBhIHBvdGVudGlhbCBDTElFTlRfUk9MRVMgZHVyaW5nIHRoZSBzYWxlcyBjeWNsZS4gVGhpcyBhbGxvd3MgeW91IHRvIGNyZWF0ZSBtdWx0aXBsZSBGb2xsb3ctVXAgR2VuZXJhdG9ycywgYW5kIGFwcGx5IHRoZSBjb3JyZWN0IG9uZSB0byB0aGUgYXBwcm9wcmlhdGUgc2NlbmFyaW8sIGRlcGVuZGluZyBvbiB5b3VyIG5lZWRzLiIsIlBPUE9WRVJfRk9STV9TQ0hFRFVMRVMiOiJBc3NpZ24gdGhlIFRhcmdldCB0byBvbmUgb3IgbW9yZSBTY2hlZHVsZXMuIEVhY2ggU2NoZWR1bGUgaXMgYXNzb2NpYXRlZCB3aXRoIGEgc2VyaWVzIG9mIEF1dG9tYXRpb25zIHRoYXQgYXJlIHNjaGVkdWxlZCBhcm91bmQgdGhlIGNvbmZpZ3VyZWQgQmFzZWQgb24gRGF0ZS4iLCJQT1BPVkVSX0ZPUk1fQ0hFQ0tMSVNUIjoiQ2hlY2tsaXN0cyBhcmUgY29udmVuaWVudCB0by1kbyBsaXN0cyB0aGF0IHdhbGsgeW91ciBDUk0gb3IgU3RhZmYgVGFyZ2V0cyB0aHJvdWdoIGEgc3RydWN0dXJlZCBsaXN0IG9mIGl0ZW1zLiBFYWNoIGl0ZW0gb24gdGhlIENoZWNrbGlzdCBoYXMgYW4gYWNjb21wYW55aW5nIGN1c3RvbSBhY3Rpb24gb3IgbGluayBmb3IgdGhlIENSTSBUYXJnZXQgb3IgU3RhZmYgVGFyZ2V0IHRvIGNvbXBsZXRlLiBDUk0gb3IgU3RhZmYgVGFyZ2V0cyBjYW4gbWFudWFsbHkgbWFyayBlYWNoIHRhc2sgYXMgY29tcGxldGUuIiwiUE9QT1ZFUl9GT1JNX0FVRElFTkNFIjoiQW4gQXVkaWVuY2UgaXMgYSBjb2xsZWN0aW9uIG9mIG5hbWVzIGFuZCBlbWFpbHMgdGhhdCB5b3VyIEVtYWlsIENhbXBhaWducyB3aWxsIGJlIHNlbnQgdG8uIFlvdSBjYW4gYWRkIHRoZXNlIFRhcmdldHMgbWFudWFsbHksIGltcG9ydCB0aGVtIGZyb20gYSBDUk0gb3IgQ1NWIGZpbGUsIG9yIHlvdSBjYW4gaGF2ZSB0aGVtIGFkZGVkIGF1dG9tYXRpY2FsbHkgZWl0aGVyIGJ5IGF1dG9tYXRpb24gZnVuY3Rpb25hbGl0eSBvciBzZWxmLXN1YnNjcmlwdGlvbi4iLCJQT1BPVkVSX0ZPUk1fUkVNT1ZFX0ZST01fQVVESUVOQ0UiOiJBbiBBdWRpZW5jZSBpcyBhIGdyb3VwIG9mIG5hbWVzIGFuZCBlbWFpbHMgZGVzaWduYXRlZCB0byByZWNlaXZlIHlvdXIgRW1haWwgQ2FtcGFpZ25zLiBCeSByZW1vdmluZyBvciBleGNsdWRpbmcgVGFyZ2V0cywgdGhleSB3aWxsIG5vIGxvbmdlciBiZSBwYXJ0IG9mIHRoZSBBdWRpZW5jZSBvciByZWNlaXZlIGZ1dHVyZSBDYW1wYWlnbnMuIiwiUE9QT1ZFUl9GT1JNX1BST1BPU0FMX0dFTkVSQVRPUiI6IlByb3Bvc2FsIEdlbmVyYXRvcnMgYXJlIG5vdCBhc3NpZ25lZCB0byBhbnlvbmUsIGJ1dCByYXRoZXIgdGhleSBleGlzdCBhcyBhIFx1MDAyMnByZS1jcmVhdGVkXHUwMDIyIFByb3Bvc2FsIHRoYXQgY2FuIGJlIHJlZmVyZW5jZWQgaW4gYW4gQXV0b21hdGlvbiwgYW5kIGFzc2lnbmVkIG9uIHRoZSBmbHkgYXMgYSBwYXJ0IG9mIHRoYXQgQXV0b21hdGlvbi4gV2hlbiwgaW4gYW4gQXV0b21hdGlvbiBhIFByb3Bvc2FsIEdlbmVyYXRvciBpcyB1c2VkLCB0aGUgcmVzdWx0IGlzIHRoYXQgaXQgZ2VuZXJhdGVzIGEgRGlyZWN0IFByb3Bvc2FsIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIFRhcmdldC4iLCJQT1BPVkVSX0ZPUk1fRk9MREVSX0dFTkVSQVRPUiI6IkEgRm9sZGVyIEdlbmVyYXRvciBpcyBhIHByZWRlZmluZWQgZm9sZGVyXC9maWxlIHN0cnVjdHVyZSB0aGF0IHlvdSBjYW4gcHJlLWNyZWF0ZSBhbmQgdGhlbiBhcHBseSBiYXNlZCBvbiB5b3VyIG5lZWRzLiBZb3UgY2FuIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgdGhpcyBmb2xkZXJcL2ZpbGUgc3RydWN0dXJlIGluc2lkZSB0aGUgU2hhcmVkIEZvbGRlciBmb3IgdGhpcyBUYXJnZXQuIFRoaXMgc3RydWN0dXJlIGNhbiBpbmNsdWRlIGFueSBudW1iZXJcL2xldmVsIG9mIGZvbGRlcnMgYW5kIGZpbGVzIiwiUE9QT1ZFUl9GT1JNX0ZMT1dfT05CT0FSRElORyI6IkZMT1dzIGFyZSBhdXRvbWF0ZWQgc2VxdWVuY2VzIHlvdSBjYW4gc2V0IHVwIGZvciB5b3VyIFRhcmdldHMgdG8gY29tcGxldGUgZm9ybXMsIHVwbG9hZFwvZG93bmxvYWQgZmlsZXMsIGFuZCBlU2lnbiBkb2N1bWVudHMuIEFuIE9uLUJvYXJkaW5nIEZMT1cgaXMgYSBtYW5kYXRvcnkgc2V0IG9mIFN0ZXBzIGEgbmV3IFBST1NQRUNUX1JPTEVTIG9y
188IENMSUVOVF9ST0xFUyBtdXN0IGNvbXBsZXRlIGJlZm9yZSB0aGV5IGFyZSBwZXJtaXR0ZWQgdG8gY29udGludWUgaW4gdGhlIHBsYXRmb3JtLiIsIlNFTkRfQ0FOTk9OX0FDVElPTiI6IkZpcmUge0VOVElUWX0gQ2Fubm9uKHMpIiwiRU1BSUwiOiJFbWFpbCIsIlBPUE9WRVJfRk9STV9FTUFJTF9DQU5OT05TIjoiQW4gRW1haWwgQ2Fubm9uIGlzIGFuIGVtYWlsIHRoYXQgeW91IGNhbiBzZW5kIG91dCBhIHNpbmdsZSByZWNpcGllbnQuIFRoaXMgaXMgbm90IHNpbXBseSBhbiBlbWFpbCBub3RpZmljYXRpb24gLSBpdCBpcyBhIHJpY2hseS1mb3JtYXR0ZWQgZW1haWwsIHNpbWlsYXIgdG8gd2hhdCB5b3UgY2FuIGNyZWF0ZSBpbiBhbiBFbWFpbCBDYW1wYWlnbi4gWW91IGNhbiBmaXJlIGFuIEVtYWlsIENhbm5vbiB0byBQUk9TUEVDVF9ST0xFU3MgYW5kIENMSUVOVF9ST0xFU3MsIGluIGVpdGhlciBcdTAwMjJJbnZpdGVkXHUwMDIyIG9yIFx1MDAyMlVuaW52aXRlZFx1MDAyMiBTdGF0dXMuIiwiUE9QT1ZFUl9GT1JNX0ZPUk1fQ0FOTk9OUyI6IkEgRm9ybSBDYW5ub24gYWxsb3dzIHlvdSB0byBmaXJlIGEgZGlyZWN0IGxpbmsgdG8gYW4gVXBkYXRlIEZvcm0sIEdlbmVyYWwgRm9ybSBvciBLaWNrb2ZmIEZvcm0gZm9yIHlvdXIgVGFyZ2V0cyB0byBjb21wbGV0ZS4gVGFyZ2V0cyB3aWxsIHJlY2VpdmUgYW4gZW1haWwgd2l0aCB0aGUgbGluayB0byB0aGUgcHJlLXNlbGVjdGVkIGZvcm0uIFRhcmdldHMgd2lsbCBub3QgYmUgcmVxdWlyZWQgdG8gbG9naW4gdG8gY29tcGxldGUgdGhlIGZvcm0uIiwiRkxPVyI6IkZMT1ciLCJQT1BPVkVSX0ZPUk1fRkxPV19DQU5OT05TIjoiQSBGTE9XIENhbm5vbiBhbGxvd3MgeW91IHRvIGZpcmUgYSBkaXJlY3QgbGluayB0byBhbiBPbiBEZW1hbmQgRkxPVyBmb3IgeW91ciBUYXJnZXRzIHRvIGNvbXBsZXRlLiBUYXJnZXRzIHdpbGwgcmVjZWl2ZSBhbiBlbWFpbCB3aXRoIHRoZSBsaW5rIHRvIHRoZSBwcmUtc2VsZWN0ZWQgRkxPVy4gVGFyZ2V0cyB3aWxsIG5vdCBiZSByZXF1aXJlZCB0byBsb2dpbiB0byBjb21wbGV0ZSB0aGUgRkxPVy4iLCJBRERfVE8iOiJBZGQgdG8iLCJXT1JMRF9TIjoiV09STEQocykiLCJXT1JMRF9ERUZJTklUSU9OIjoiQSBXT1JMRCBpcyBhIHByaXZhdGUsIHNlbGYtY29udGFpbmVkIGVudmlyb25tZW50IGluc2lkZSB5b3VyIHBvcnRhbFx1MjAxNHBlcmZlY3QgZm9yIHNlcGFyYXRpbmcgb2ZmaWNlcywgZGVwYXJ0bWVudHMsIG9yIHRlYW1zLiBXT1JMRHMgbGV0IHlvdSB3YWxsIG9mZiBhc3NldHMgbGlrZSBGb3JtcywgR2VuZXJhdG9ycywgYW5kIFRlbXBsYXRlcyBzbyBvbmx5IHRoZSByaWdodCBUYXJnZXRzIGhhdmUgYWNjZXNzLiIsIlBPUE9WRVJfRk9STV9PRF9FU1RfR0VORVJBVE9SIjoiQW4gT24tRGVtYW5kIEVzdGltYXRlIEdlbmVyYXRvciBjcmVhdGVzIEVzdGltYXRlcyBvbiBkZW1hbmQuIFlvdSBjYW4gY3JlYXRlIFx1MDAyNiBjb25maWd1cmUgbWFueSBkaWZmZXJlbnQgT0QgRXN0aW1hdGUgR2VuZXJhdG9ycywgZWFjaCBvbmUgZGVzaWduZWQgdG8gYmUgdXNlZCBpbiBhIHNwZWNpZmljIHNjZW5hcmlvLiBZb3UgcHJlLWRlZmluZSB0aGUgbGluZSBpdGVtcywgdGhlIGFtb3VudHMsIGV0Yy4uIGFuZCBhbGwgaXQgbmVlZHMgYWZ0ZXIgaXQgaGFzIGJlZW4gYWN0aXZhdGVkIGlzIHRvIGJlIHRyaWdnZXJlZCBhbmQgdG9sZCB3aGljaCBDbGllbnQgKHRoZSB0YXJnZXQpIHNob3VsZCBiZSBhc3NpZ25lZCB0byB0aGUgZ2VuZXJhdGVkIEVzdGltYXRlLiBZb3UgY2FuIHRyaWdnZXIgdGhlIE9EIEVzdGltYXRlIEdlbmVyYXRvciB2aWEgYSBLaWNrb2ZmIEZvcm0sIGFuIEF1dG9tYXRpb25zIG9yIG1hbnVhbGx5IHdpdGgganVzdCBhIGZldyBjbGlja3MuIiwiUE9QT1ZFUl9GT1JNX09EX0lOVl9HRU5FUkFUT1IiOiJBbiBPbi1EZW1hbmQgSW52b2ljZSBHZW5lcmF0b3IgY3JlYXRlcyBJbnZvaWNlcyBvbiBkZW1hbmQuIFlvdSBjYW4gY3JlYXRlIFx1MDAyNiBjb25maWd1cmUgbWFueSBkaWZmZXJlbnQgT0QgSW52b2ljZSBHZW5lcmF0b3JzLCBlYWNoIG9uZSBkZXNpZ25lZCB0byBiZSB1c2VkIGluIGEgc3BlY2lmaWMgc2NlbmFyaW8uIFlvdSBwcmUtZGVmaW5lIHRoZSBsaW5lIGl0ZW1zLCB0aGUgYW1vdW50cywgdGhlIHBheW1lbnQgb3B0aW9ucywgcGF5bWVudCBnYXRld2F5cywgZXRjLi4gYW5kIGFsbCBpdCBuZWVkcyBhZnRlciBpdCBoYXMgYmVlbiBhY3RpdmF0ZWQgaXMgdG8gYmUgdHJpZ2dlcmVkIGFuZCB0b2xkIHdoaWNoIENMSUVOVF9ST0xFUyAodGhlIHRhcmdldCkgc2hvdWxkIGJlIGFzc2lnbmVkIHRvIHRoZSBnZW5lcmF0ZWQgSW52b2ljZS4gWW91IGNhbiB0cmlnZ2VyIHRoZSBPRCBJbnZvaWNlIEdlbmVyYXRvciB2aWEgYSBLaWNrb2ZmIEZvcm0sIGFuIEF1dG9tYXRpb25zIG9yIG1hbnVhbGx5IHdpdGgganVzdCBhIGZldyBjbGlja3MuIiwiSU5WT0lDRV9QUk9GSUxFX1NFTEVDVCI6IlNlbGVjdCBJbnZvaWNlIEdlbmVyYXRvciIsIlBPUE9WRVJfRk9STV9SRUNVUl9JTlZfR0VORVJBVE9SIjoiQSBSZWN1cnJpbmcgSW52b2ljZSBHZW5lcmF0b3IgbGV0cyB5b3UgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBJbnZvaWNlcyBvbiBhIHNjaGVkdWxlIGFuZCBmcmVxdWVuY3kgdGhhdCB5b3Ugc3BlY2lmeS4gVGhlc2UgR2VuZXJhdG9ycyB5b3Ugd2lsbCBkaXJlY3RseSBhc3NpZ24gdG8gYSBzaW5nbGUgQ0xJRU5UX1JPTEVTIG9yIG11bHRpcGxlIENMSUVOVF9ST0xFU3Mgb3IgQ2lyY2xlKHMpLCBhbmQgZWFjaCB0aW1lIH
188RoZSBnZW5lcmF0aW9uIGN5Y2xlIGhhcHBlbnMsIHRoZSByZXN1bHRpbmcgSW52b2ljZSB3aWxsIGJlIGRpcmVjdGx5IGFzc2lnbmVkIHRvIHRoYXQgb25lIENMSUVOVF9ST0xFUyBvciB0aG9zZSBwYXJ0aWN1bGFyIENMSUVOVF9ST0xFUyhzKSBvciBDaXJjbGUocykuIFlvdSBwcmUtZGVmaW5lIHRoZSBsaW5lIGl0ZW1zLCB0aGUgYW1vdW50cywgdGhlIHBheW1lbnQgb3B0aW9ucywgcGF5bWVudCBnYXRld2F5cywgZXRjLi4gYW5kIGVhY2ggSW52b2ljZSB0aGF0IGlzIGdlbmVyYXRlZCB3aWxsIGNvbnRhaW4gdGhlIHNhbWUgaXRlbXNcL29wdGlvbnMgYXMgd2VyZSBjb25maWd1cmVkIGluIHRoZSBSZWN1cnJpbmcgR2VuZXJhdG9yLiIsIlBPUE9WRVJfRk9STV9BQ0NVTV9JTlZfR0VORVJBVE9SIjoiQW4gQWNjdW11bGF0aW5nIEludm9pY2UgR2VuZXJhdG9yIGlzIGEgbWVjaGFuaXNtIHRoYXQgeW91IGNhbiBjb25maWd1cmUgdG8gZ2VuZXJhdGUgYW4gSW52b2ljZSBmb3IgeW91ciBDTElFTlRfUk9MRVMocykgb24gYSByZWd1bGFyIHNjaGVkdWxlIChzdWNoIGFzIGV2ZXJ5IG1vbnRoKS4gSXQgaXMgYmFzaWNhbGx5IGEgXHUwMDIycnVubmluZyB0YWJcdTAwMjIgZm9yIHlvdXIgQ0xJRU5UX1JPTEVTLiBZb3UgY2FuIGFkZCBJdGVtcyB0byB0aGUgQWNjdW11bGF0aW5nIEdlbmVyYXRvciBhcyB5b3Ugd29yay4gV2hlbiB0aGUgR2VuZXJhdG9yIGlzIHRyaWdnZXJlZCBieSB0aGUgY29uZmlndXJlZCBzY2hlZHVsZSwgaXQgdGFrZXMgYWxsIHRoZSBJdGVtcyB0aGF0IHdlcmUgYWRkZWQgdG8gdGhlIEdlbmVyYXRvciwgYW5kIGdlbmVyYXRlcyBhbiBJbnZvaWNlLiBUaGUgR2VuZXJhdG9yIHRoZW4gY2xlYXJzIGFsbCB0aGUgSXRlbXMgdGhhdCB3ZXJlIG9uIHRoYXQgSW52b2ljZSBhbmQgaXMgXHUwMDIycmVzZXRcdTAwMjIgZm9yIHlvdSB0byBcdTAwMjJhY2N1bXVsYXRlXHUwMDIyIGFkZGl0aW9uYWwgSXRlbXMgYnkgYWRkaW5nIHRoZW0gdG8gdGhlIEdlbmVyYXRvciBhcyBuZWVkZWQgd2hpbGUgeW91IHdvcmsuIiwiUE9QT1ZFUl9GT1JNX1RBR1MiOiJUYWdzIGdpdmUgeW91IGFuIGFkZGl0aW9uYWwgXHUwMDI2IG9wdGlvbmFsIGxheWVyIG9mIG9yZ2FuaXphdGlvbiB0aGF0IGNhbiBoZWxwIHlvdSB0cmFjayBsZWFkIHNvdXJjZXMsIHJlZmVycmFsIHNvdXJjZXMsIG9yIHNpbWlsYXIuIFRoZXkgaGF2ZSBubyByZWFsIGZ1bmN0aW9uYWxpdHkgaW4gdGhlIHBsYXRmb3JtIG90aGVyIHRoYW4gdGhlIGFiaWxpdHkgdG8gZmlsdGVyIGxpc3RzIGZvciBvcmdhbml6YXRpb24gXHUwMDI2IHJlcG9ydGluZy4iLCJJRl9MRUFEX1RIRU5fQ0hBTkdFX1RPIjoiSWYgXHUwMDNDYlx1MDAzRUxlYWRcdTAwM0NcL2JcdTAwM0UsIHRoZW4gY2hhbmdlIHRvLi4uIiwiSUZfUFJPU1BFQ1RfVEhFTl9DSEFOR0VfVE9fQ0xJRU5UIjoiSWYgXHUwMDNDYlx1MDAzRVByb3NwZWN0XHUwMDNDXC9iXHUwMDNFLCB0aGVuIGNoYW5nZSB0byBcdTAwM0NiXHUwMDNFQ2xpZW50XHUwMDNDXC9iXHUwMDNFIiwiTk9fQ0hBTkdFUyI6Ik5vIGNoYW5nZXMiLCJQT1BPVkVSX0ZPUk1fUkVNT1ZFX0ZST01fQ0lSQ0xFUyI6IkEgQ2lyY2xlIGlzIHRoZSBncm91cCBwZXJtaXNzaW9uaW5nIFx1MDAyNiBhc3NpZ25tZW50IHN0cnVjdHVyZSBmb3IgQ0xJRU5UX1JPTEVTcyBhbmQgUFJPU1BFQ1RfUk9MRVNzLiBCeSBhc3NpZ25pbmcgcmVzb3VyY2VzIGxpa2UgUG9ydGFsIFBhZ2VzIGFuZCBGaWxlcyB0byBtdWx0aXBsZSBDbGllbnRzXC9Qcm9zcGVjdHMgdXNpbmcgQ2lyY2xlcywgeW91IGNhbiB0aGVuIHJlbW92ZSB0aGUgQ2lyY2xlIGFuZCB0aGUgcmVzdWx0IHdpbGwgYmUgdGhhdCBhbnkgQ1JNIFRhcmdldHMgaW5zaWRlIHRoYXQgQ2lyY2xlIHdpbGwgYXV0b21hdGljYWxseSBsb3NlIGFjY2VzcyB0byBhbnkgb2YgdGhvc2UgcmVzb3VyY2VzLiIsIlBPUE9WRVJfRk9STV9GTE9XX09ERU1BTkQiOiJGTE9XcyBhcmUgYXV0b21hdGVkIHNlcXVlbmNlcyB5b3UgY2FuIHNldCB1cCBmb3IgeW91ciBUYXJnZXRzIHRvIGNvbXBsZXRlIGZvcm1zLCB1cGxvYWRcL2Rvd25sb2FkIGZpbGVzLCBhbmQgZVNpZ24gZG9jdW1lbnRzLiBBbiBPbi1EZW1hbmQgRkxPVyBpcyBhIHNldCBvZiBTdGVwcyBhIFByb3NwZWN0IG9yIENsaWVudCBpcyByZXF1ZXN0ZWQgdG8gY29tcGxldGUuIiwiUE9QT1ZFUl9GT1JNX0xNU19QUk9EVUNUIjoiWW91IGNhbiBhc3NpZ24gb25lIG9yIG1vcmUgTE1TIFByb2R1Y3RzIHRvIHRoZSBUYXJnZXQuIFRoZXkgd2lsbCBiZWNvbWUgT3duZXJzIG9mIHRoZSBQcm9kdWN0LCBhbmQgaGF2ZSBhY2Nlc3MgdG8gdGhlIENvdXJzZShzKSB0aGF0IGFyZSBhIHBhcnQgb2YgdGhhdCBQcm9kdWN0LiIsIlJFTU9WRV9GUk9NX0VOVElUWSI6IlJlbW92ZSBmcm9tIHtFTlRJVFl9IiwiUE9SVEFMX0lOVklUQVRJT04iOiJQb3J0YWwgSW52aXRhdGlvbiIsIkNPTU1VTklDQVRJT04iOiJDb21tdW5pY2F0aW9uIiwiTUxfU1VCVFlQRV9FTkFCTEVfT1BUX0lOIjoiRW5hYmxlIEVtYWlsIERvdWJsZSBPcHQtSW4iLCJNTF9TVUJUWVBFX0VOQUJMRV9PUFRfSU5fVE9PTFRJUCI6IlJlcXVpcmUgU3Vic2NyaWJlcnMgdG8gY29uZmlybSB0aGVpciBlbWFpbCBhZGRyZXNzIGJlZm9yZSBiZWluZyBhZGRlZCB0byB0aGUgc2VsZWN0ZWQgQXVkaWVuY2UuIFdoZW4gZW5hYmxlZCwgdGhlIHBsYXRmb3JtIHdpbGwgYXV0b21hdGljYWxseSBzZW5kIGEgY3VzdG9taXphYmxlIGNvbmZpcm1hdGlvbiBlbWFpbCBjb250YWluaW5nIGEgdW5pcXVlIGNvbmZpcm1hdGlvbiBsaW5rLiBUaGUgc3Vic2NyaWJlciBtdXN0IGNsaWNrIHRoaXMgbGluayB0byB2ZXJpZnkgb3duZXJzaGlwIG9mIHRoZSBlbWFpbCBhZGRyZXNzIGFuZCBjb21wbGV0ZSB0aGUgcHJvY2Vzcy4gVGhpcyBleHRyYSBzdGVwIGhlbHBzIGVuc3VyZSBsaXN0IGFjY3VyYWN5LCBwcmV2ZW50cyBzcGFtIHN1Ym1pc3Npb25zLCBhbmQgaW1wcm92ZXMgZGVsaXZlcmFiaWxpdHkgYnkgY29uZmlybWluZyB0aGF0IG9ubHkgdmFsaWQsIGVuZ2FnZWQgU3Vic2NyaWJlcnMgYXJlIGFkZGVkIHRvIHlvdXIgQXVkaWVuY2UuIiwiU0VUX1RPUF9QUklPUklUWS
188I6IlNldCBhcyBEZWZhdWx0IGZvciBUaGlzIEF1ZGllbmNlIiwiVElNRV9aT05FX1NFVFRJTkdTIjoiVGltZSBab25lIFNldHRpbmdzIiwiREVGQVVMVF9USU1FX1pPTkUiOiJEZWZhdWx0IFRpbWUgWm9uZSIsIklGX1RBUkdFVF9VTktOT1dOX1VTRV9USElTX1RJTUVfWk9ORV9BU19ERUZBVUxUIjoiSWYgVGFyZ2V0IGlzIFVua25vd24gdXNlIHRoaXMgVGltZSBab25lIGFzIHRoZSBkZWZhdWx0IiwiQUREX05FV19DSE9JQ0UiOiJBZGQgTmV3IENob2ljZSIsIkNPTlRSQUNUX0RJU1BMQVlfU1VCX1RJVExFIjoiRGlzcGxheSBTdWItVGl0bGUiLCJDT05UUkFDVF9MQUJFTF9URVhUX0ZPUl9DTElDS19UT19TSUdOX0JVVFRPTiI6IkxhYmVsIHRleHQgZm9yIFx1MDAyMkNsaWNrIHRvIFNpZ25cdTAwMjIgYnV0dG9uIiwiQ09OVFJBQ1RfU0lHTkFUVVJFX1NUQVRFTUVOVCI6IlNpZ25hdHVyZSBTdGF0ZW1lbnQiLCJGSUVMRF9TVFlMSU5HX09QVElPTlMiOiJGaWVsZCBTdHlsaW5nIFx1MDAyNiBMYXlvdXQgQ2xhc3NlcyIsIlNFTEVDVElPTl9BQ1RJT05TX1NFQ1RJT04iOiJTZWxlY3Rpb24gQWN0aW9ucyIsIlNVQlRFWFRfU0VDVElPTiI6IlN1YnRleHQiLCJTRUxFQ1RfQ09NUEFOWSI6IlNlbGVjdCBDb21wYW55IiwiNDczODBmZWYtOGYzMC00YTI0LWJlNTYtNDJjNDAxMzFmZTRkIjoiQ2hvb3NlIGFuIGV4aXN0aW5nIENvbXBhbnkgdG8gYmUgYXNzb2NpYXRlZCB3aXRoIGV2ZXJ5IENvbnRhY3QgdGhhdCBjb21wbGV0ZXMgdGhpcyBGb3JtIiwiQUxMT1dfT1BFTl9FTkRFRF9JTlBVVF9PRl9DT01QQU5ZX05BTUUiOiJBbGxvdyBvcGVuLWVuZGVkIGlucHV0IG9mIENvbXBhbnkgbmFtZSIsIkdJVkVfVEFSR0VUX1RIRV9PUFRJT05fVE9fVE9HR0xFX0lfQU1fTk9UX0NPTVBBTlkiOiJHaXZlIFRhcmdldCB0aGUgb3B0aW9uIHRvIHRvZ2dsZSBcdTAwMjZxdW90O0lcdTAwMjZhcG9zO20gbm90IHJlcHJlc2VudGluZyBhIENvbXBhbnlcdTAwMjZxdW90OyIsIkNSRUFURV9DT01QQU5ZX0lGX05PX01BVENIX0NBTl9CRV9NQURFIjoiQ3JlYXRlIENvbXBhbnkgaWYgbm8gbWF0Y2ggY2FuIGJlIG1hZGUiLCJVU0VfVEhFX0NPTVBBTllfQVNfVEhFX1RBUkdFVF9GT1JfQVVUT01BVElPTlMiOiJVc2UgdGhlIENvbXBhbnkgYXMgdGhlIFx1MDAyNnF1b3Q7VGFyZ2V0XHUwMDI2cXVvdDsgZm9yIGFueSBBc3NpZ25tZW50cyBhbmRcL29yIEF1dG9tYXRpb25zIiwiUFJFVkVOVF9USElTX1BSSU1BUllfQ09OVEFDVF9GUk9NX1NXSVRDSElOR19JTlRPX0lORElWSURVQUxfTU9ERSI6IlByZXZlbnQgdGhpcyBQcmltYXJ5IENvbnRhY3QgZnJvbSBzd2l0Y2hpbmcgaW50byBcdTAwMjZxdW90O0luZGl2aWR1YWwgTW9kZVx1MDAyNnF1b3Q7IiwiQVBQTFlfVE8iOiJBcHBseSB0byIsIlNFQVJDSF9URVhUIjoiQ2FzZSBUaXRsZSBzdGFydGluZyB3aXRoLi4uIiwiUFBBX0hFTFBfVEVYVF9PTkUiOiJJZiBlbmFibGVkLCB0aGUgVGFyZ2V0IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYW4gSW52b2ljZSB0byBwYXkgd2hlbiB0aGV5IGZpcnN0IGFjY2VzcyB0aGUgUG9ydGFsLCBhbmQgd2lsbCBiZSBwcmV2ZW50ZWQgZnJvbSBuYXZpZ2F0aW5nIGFueXdoZXJlIG9yIGFjY2Vzc2luZyBhbnkgcmVzb3VyY2VzIHVudGlsIHBheW1lbnQgaGFzIGJlZW4gY29tcGxldGVkLiIsIlBMQUNFSE9MREVSU19GT1JfSU5WT0lDRV9USVRMRSI6IlBsYWNlaG9sZG
188VycyBmb3IgSW52b2ljZSBUaXRsZSIsIlNFVFRJTkdTX1VOUkVDT0dOSVpFRCI6IlNldHRpbmdzIGZvciBcdTAwMjJVbmtub3duXHUwMDIyIFRhcmdldHMiLCJHRU5FUkFURV9QUk9KRUNUX05PVEUiOiJBbGwgQ2FzZSBkYXRhIGNvbGxlY3RlZCBmcm9tIFVua25vd24gVGFyZ2V0cyB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIENhc2UgR2VuZXJhdG9yIHNlbGVjdGVkLiIsIlNFVFRJTkdTX1JFQ09HTklaRUQiOiJTZXR0aW5ncyBmb3IgXHUwMDIyS25vd25cdTAwMjIgVGFyZ2V0cyIsIk1BUktFVElOR19MSVNUIjoiTWFya2V0aW5nIEF1ZGllbmNlIiwiTUxfU1VCVFlQRV9FTUFJTF9DT05GX0xJTktfUkVRVUlSRUQiOiJUaGUge3tjb25maXJtYXRpb25MaW5rfX0gcGxhY2Vob2xkZXIgaXMgcmVxdWlyZWQiLCJTRU5EIjoiU2VuZCIsIkFDVElWQVRFIjoiQWN0aXZhdGUiLCJDQU5OT05fU0VORF9TVUNDRVNTIjoiVGhlIHtFTlRJVFl9IENhbm5vbiBoYXMgYmVlbiBmaXJlZCEiLCJOQVZfVE9fVVJMIjoiTmF2aWdhdGUgdG8gRGlyZWN0IG9yIFJlbGF0aXZlIFVSTCIsIk5BVl9UT19DVVNUT01fRklFTEQiOiJOYXZpZ2F0ZSB0byBVUkwgZnJvbSBDdXN0b20gRmllbGQiLCJOQVZfVE9fQ09PUkRJTkFUT1JfUFJPRklMRV9QQUdFIjoiTmF2aWdhdGUgdG8gQ29vcmRpbmF0b3IgUHJvZmlsZSBQYWdlIiwiTkFWX1RPX1NBTEVTUEVSU09OX1BST0ZJTEVfUEFHRSI6Ik5hdmlnYXRlIHRvIFNhbGVzcGVyc29uIFByb2ZpbGUgUGFnZSIsIk5BVl9UT19TVEFGRl9QUk9GSUxFX1BBR0UiOiJOYXZpZ2F0ZSB0byBTdGFmZiBQcm9maWxlIFBhZ2UiLCJOQVZfVE9fU1RBUlRfUEFHRSI6Ik5hdmlnYXRlIHRvIFN0YXJ0IFBhZ2UiLCJOQVZfVE9fUE9SVEFMX1BBR0UiOiJOYXZpZ2F0ZSB0byBQb3J0YWwgUGFnZSIsIk5BVl9UT19QUk9KRUNUIjoiTmF2aWdhdGUgdG8gQ2FzZSIsIk5BVl9UT19DQUxFTkRBUiI6Ik5hdmlnYXRlIHRvIENhbGVuZGFyIiwiT1BFTl9BUFBPSU5UTUVOVF9TQ0hFRFVMSU5HIjoiT3BlbiBBcHBvaW50bWVudCBTY2hlZHVsaW5nIFBvcC11cCIsIk5BVl9UT19ORVdfTUVTU0FHRSI6Ik5hdmlnYXRlIHRvIFNlbmQgTmV3IE1lc3NhZ2UiLCJOQVZfVE9fTkVXX1dPUktfUkVRVUVTVCI6Ik5hdmlnYXRlIHRvIENyZWF0ZSBuZXcgSW50ZXJwcmV0YXRpb24gUmVxdWVzdCIsIk5BVl9UT19GSUxFU19TSEFSRURfTUUiOiJOYXZpZ2F0ZSB0byBDbGllbnRcdTAwMjdzIFx1MDAyMlNoYXJlZCB3aXRoIG1lXHUwMDIyIGZvbGRlciIsIk5BVl9UT19NWV9CSUxMSU5HX0RBU0hCT0FSRCI6Ik5hdmlnYXRlIHRvIENsaWVudFx1MDAyN3MgXHUwMDIyTXkgQmlsbGluZyBEYXNoYm9hcmRcdTAwMjIiLCJOQVZfVE9fT1BFTl9JTlZPSUNFUyI6Ik5hdmlnYXRlIHRvIFx1MDAyMk9wZW4gSW52b2ljZXNcdTAwMjIiLCJOQVZfVE9fT1BFTl9FU1RJTUFURVMiOiJOYXZpZ2F0ZSB0byBcdTAwMjJPcGVuIEVzdGltYXRlc1x1MDAyMiIsIk5BVl9UT19PUEVOX1BST1BPU0FMUyI6Ik5hdmlnYXRlIHRvIFx1MDAyMk9wZW4gUHJvcG9zYWxzXHUwMDIyIiwiTkFWX1RPX0NPTlRSQUNUU19BV0FJVElOR19NRSI6Ik5hdmlnYXRlIHRvIERvY3VtZW50cyBcdTAwMjJBd2FpdGluZyBteSBTaWduYXR1cmVcdTAwMjIiLCJOQVZfVE9fU1VCU0NSSVBUSU9OU19MSVNUIjoiTmF2aWdhdGUgdG8gTGlzdCBvZiBTdWJzY3JpcHRpb25zIiwiTkFWX1RPX1BBWU1FTlRTX0hJU1RPUlkiOiJOYXZpZ2F0ZSB0byBIaXN0b3J5IG9mIFBheW1lbnRzIiwiTkFWX1RPX1BST0pFQ1RfQ0xJRU5UX1RBTEsiOiJOYXZpZ2F0ZSB0byBDbGllbnQgVGFsayIsIk5BVl9UT19QUk9KRUNUX0ZJTEVTIjoiTmF2aWdhdGUgdG8gQ2FzZSBGaWxlcyIsIk5BVl9GT1JNX1NUQUZGX1NVQk1JVCI6IkZvcm0gXHUwMDNFIFN0YWZmIFN1Ym1pdCIsIk1JU1NJTkdfUkVRVUlSRURfUEFSQU1FVEVSUyI6IlRoaXMgdGVtcGxhdGUgY2Fubm90IGJlIG9wZW5lZCBiZWNhdXNlIHJlcXVpcmVkIGluZm9ybWF0aW9uIGlzIG1pc3NpbmcuIiwiUExFQVNFX1NFTEVDVF9URU1QTEFURSI6IlNlbGVjdCBhIHRlbXBsYXRlIGJlZm9yZSBhcHBseWluZyBpdC4iLCJURU1QTEFURV9IQVNfQkVFTl9MT0FERUQiOiJUZW1wbGF0ZSBoYXMgYmVlbiBsb2FkZWQiLCJGT1JNX1NBVkVfRFJBRlQiOiJTYXZlIERyYWZ0IiwiRk9STV9JTkFDVElWRV9OT1RJQ0UiOiJUaGlzIEZvcm0gaXMgbm90IHlldCBDcmVhdGVkIG9yIG5vdCBBY3RpdmUiLCJDTElDS19UT19TQ0hFRFVMRV9BTl9BUFBPSU5UTUVOVCI6IkNsaWNrIHRvIHNjaGVkdWxlIGFuIEFwcG9pbnRtZW50IiwiQVBQT0lOVE1FTlRfSU5UQUtFX1NVQ0NFU1NfMSI6IkdSRUFUISBZb3VyIGFwcG9pbnRtZW50IHdpdGgiLCJBUFBPSU5UTUVOVF9JTlRBS0VfU1VDQ0VTU18yIjoiaXMgc2NoZWR1bGVkISIsIk1PRElGWV9ZT1VSX0FQUE9JTlRNRU5UIjoiTW9kaWZ5IHlvdXIgQXBwb2ludG1lbnQiLCJOT19GSUxFU19BVkFJTEFCTEUiOiJObyBGaWxlcyBBdmFpbGFibGUiLCJDVVNUT01fRklFTERTIjoiQ3VzdG9tIEZpZWxkcyIsIlBJTl9BU19ERUZBVUxUIjoiUGluIGFzIGRlZmF1bHQiLCJTQVZFRF9GSUxURVJfUEFSVExZX0FQUExJRUQiOiJTb21lIGZpbHRlcnMgc2F2ZWQgaW4gXHUwMDIye05BTUV9XHUwMDIyIG5vIGxvbmdlciBleGlzdCBvbiB0aGlzIGxpc3QgYW5kIHdlcmUgbm90IGFwcGxpZWQsIHNvIHlvdSBhcmUgc2VlaW5nIG1vcmUgcmVzdWx0cyB0aGFuIHRoYXQgZmlsdGVyIHNldCBhc2tlZCBmb3IiLCJDT1VMRF9OT1RfVVBEQVRFX0ZJTFRFUiI6IkNvdWxkIG5vdCB1cGRhdGUgdGhlIHNhdmVkIGZpbHRlciIsIlJFTkFNRSI6IlJlbmFtZSIsIkRBWVMiOiJEYXlzIiwiU0FWRURfRklMVEVSUyI6IlNhdmVkIEZpbHRlcnMiLCJTQVZFX0NIQU5HRVMiOiJTYXZlIGNoYW5nZXMiLCJVUExPQURfQkFUQ0hfUEFSVElBTExZX1FVRVVFRCI6Ik9ubHkge0FDQ0VQVEVEfSBvZiB7UkVRVUVTVEVEfSBmaWxlcyBjb3VsZCBiZSBxdWV1ZWQgZm9yIHVwbG9hZC4gVGhlIHJlc3Qgd2VyZSBub3QgdXBsb2FkZWQgXHUyMDE0IHBsZWFzZSBhZGQgdGhlbSBpbiBhIHNtYWxsZXIgYmF0Y2guIiwiTUVFVElOR19TSUdOVVBfQ0FQVENIQV9GQUlMRUQiOiJXZSBjb3VsZG5cdTAwMjd0IGNvbmZpcm0geW91XHUwMDI3cmUgbm90IGEgcm9ib3QuIFBsZWFzZSB0cnkgYWdhaW4uIiwiRk9STV9TVUJNSVNTSU9OX05PVF9QUk9DRVNTRUQiOiJZb3VyIHN1Ym1pc3Npb24gY291bGQgbm90IGJlIHByb2Nlc3NlZC4gUGxlYXNlIHRyeSBhZ2Fpbiwgb3IgY29udGFjdCB1cyBkaXJlY3RseS4iLCJWSUVXX0pPVVJORVlfTUFQIjoiVmlldyBKb3VybmV5IE1hcCIsIkpPVVJORVlfTUFQIjoiSm91cm5leSBNYXAiLCJZT1VSX0VTVElNQVRFRF9UT1RBTFMiOiJZb3VyIEVzdGltYXRlZCBUb3RhbHMiLCJXUl9JVEVNX0FOU1dFUl9SRVFVSVJFRCI6IntpdGVtfTogcGxlYXNlIGFuc3dlciB7ZmllbGRzfS4iLCJXUl9JVEVNIjoiV29yayBSZXF1ZXN0IEl0ZW0iLCJXUl9DVVNUT01fSVRFTVNfUkVRVUlSRUQiOiJQbGVhc2UgYWRkIGF0IGxlYXN0IG9uZSBpdGVtIHRvIHlvdXIgcmVxdWVzdCIsIldSX0lURU1fVElUTEVfUkVRVUlSRUQiOiJFYWNoIGl0ZW0gbXVzdCBoYXZlIGEgdGl0bGUiLCJXUl9ERVNDUklQVElPTl9SRVFVSVJFRCI6IlBsZWFzZSBkZXNjcmliZSB5b3VyIHJlcXVlc3QiLCJDT05GSVJNX0FORF9TVUJNSVQiOiJDb25maXJtIFx1MDAyNiBTdWJtaXQiLCJJTlRFTlRfU0lHTkFUVVJFX1JFUVVJUkVEIjoiVGhpcyBmb3JtIHJlcXVpcmVzIGEgc2lnbmF0dXJlLiBQbGVhc2UgdHlwZSB5b3VyIG5hbW
188UgYW5kIHNpZ24gYmVmb3JlIHN1Ym1pdHRpbmcuIiwiV1JfRk9STV9TRVRUSU5HU19DSEFOR0VEIjoiVGhpcyBmb3JtIGhhcyBiZWVuIHVwZGF0ZWQuIFRoZSBwYWdlIHdpbGwgcmVmcmVzaCB0byBzaG93IHRoZSBsYXRlc3QgdmVyc2lvbi4iLCJRVUlaX0ZPUk1fUkVTVEFSVEVEX05PVElDRSI6IlRoaXMgcXVpeiBoYXMgYmVlbiB1cGRhdGVkLiBUaGUgcGFnZSB3aWxsIHJlZnJlc2ggc28geW91IGNhbiBzdGFydCBvbiB0aGUgbGF0ZXN0IHZlcnNpb24uIiwiUVVJWl9QUkVWSUVXX1NVQk1JVF9CTE9DS0VEIjoiTm90aGluZyBpcyBzdWJtaXR0ZWQgZnJvbSB0aGUgcHJldmlldy4iLCJQQVlNRU5UX1JFUVVJUkVTX0FERElUSU9OQUxfQVVUSEVOVElDQVRJT04iOiJQYXltZW50IHJlcXVpcmVzIGFkZGl0aW9uYWwgYXV0aGVudGljYXRpb24hIiwiU0NIRURVTElOR19PUFRJT04iOiJTY2hlZHVsaW5nIE9wdGlvbiIsIlFVSVpfUFJFVklFV19QT1BVUF9CTE9DS0VEIjoiWW91ciBicm93c2VyIGJsb2NrZWQgdGhlIHByZXZpZXcgdGFiLiBBbGxvdyBwb3AtdXBzIGZvciB0aGlzIHNpdGUsIHRoZW4gdHJ5IGFnYWluLiIsIkFUX0xFQVNUX09ORV9TSE9VTERfQkVfU0VMRUNURUQiOiJBdCBsZWFzdCBvbmUge2F0dHJpYnV0ZX0gc2hvdWxkIGJlIHNlbGVjdGVkLiIsIkNPTkZJR1VSRV9TRVJWSUNFX1JFQUNUSU9OUyI6IlJlYWN0aW9ucyBmb3Ige1NFUlZJQ0V9IiwiR09PR0xFX1JFQ0FQVENIQV9WMyI6Ikdvb2dsZSByZUNBUFRDSEEgdjMiLCJGT1JNX1JFQ0FQVENIQV9WM19DVVNUT01fRE9NQUlOX0xJTksiOiJTaGFyZSB0aGUgRm9ybSBsaW5rIG9uIHlvdXIgY3VzdG9tIGRvbWFpbi4gQ0FQVENIQSBkb2VzIG5vdCBydW4gb24gdGhlIHNoYXJlZCBwbGF0Zm9ybSBsaW5rLiIsIkRFRkFVTFRfVkFMVUUiOiJEZWZhdWx0IFZhbHVlIiwiUVVJWl9GT1JNX1FVSVpfUkVRVUlSRUQiOiJBIHB1Ymxpc2hlZCBRdWl6IGlzIHJlcXVpcmVkIGJlZm9yZSB0aGlzIGZvcm0gY2FuIGJlIHB1Ymxpc2hlZC4iLCJRVUlaX0ZPUk1fUVVJWl9OT1RfQVRUQUNIQUJMRSI6IlRoYXQgUXVpeiBjYW4gbm8gbG9uZ2VyIGJlIGF0dGFjaGVkLiBDaG9vc2UgYSBwdWJsaXNoZWQgUXVpeiBmcm9tIHRoaXMgYWNjb3VudC4iLCJRVUlaX0ZPUk1fV0VMQ09NRV9TQ1JFRU5fRU1QVFlfU1VNTUFSWSI6Ik5vIGhlYWRsaW5lIHlldCIsIlFVSVpfRk9STV9FUlJPUlNfT05FIjoiMSByZXF1aXJlZCBmaWVsZCBuZWVkcyBhdHRlbnRpb24iLCJRVUlaX0ZPUk1fRVJST1JTX01BTlkiOiJ7Y291bnR9IHJlcXVpcmVkIGZpZWxkcyBuZWVkIGF0dGVudGlvbiIsIldSX0ZJRUxEUyI6IldvcmsgUmVxdWVzdCBGaWVsZHMiLCJXUl9GSUVMRFNfVE9PTFRJUCI6IldvcmsgUmVxdWVzdCBGaWVsZHMgYXJlIHN5c3RlbSBmaWVsZHMgYXNzb2NpYXRlZCB3aXRoIFdvcmsgUmVxdWVzdHMuIFdoZW4gYSBXb3JrIFJlcXVlc3QgRm9ybSBpcyBzdWJtaXR0ZWQgY29udGFpbmluZyB0aGVzZSBmaWVsZHMsIHRoZSBkYXRhIHdpbGwgYmUgc2F2ZWQgYW5kIGxpbmtlZCB0byB0aGUgY3JlYXRlZCBXb3JrIFJlcXVlc3QuIiwiUkVRVUlSRVNfTUFSS0VUSU5HX0NPTlNFTlQiOiJSZXF1aXJlcyBtYXJrZXRpbmcgY29uc2VudCBcdTIwMTQgdHVybiBpdCBvbiBpbiB0aGlzIEZvcm1cdTAwMjdzIEludGVudCBPcHRpb25zIiwiRk9STV9JTlRBS0VfU0NIRURVTEVfVU5BVkFJTEFCTEUiOiJBIFNjaGVkdWxlIHNlbGVjdGVkIGhlcmUgd2FzIGRlbGV0ZWQgb3Igc3dpdGNoZWQgb2ZmLCBzbyBub2JvZHkgaXMgYWRkZWQgdG8gaXQuIENob29zZSBhbm90aGVyIFNjaGVkdWxlIG9yIHJlbW92ZSBpdCwgdGhlbiBzYXZlIHRoZSBmb3JtLiIsIkZMT1dfQ0hBSU5fTElOS19RVUlaX1VOQVZBSUxBQkxFIjoiVGhpcyBTdGVwIGlzIGN1cnJlbnRseSB1bmF2YWlsYWJsZS4gQ2hlY2sgYmFjayBsYXRlciBvciBjb250YWN0IHRoZSBjb21wYW55LiIsIkNIRUNLTElTVF9GTE9XX1JFU09MVVRJT05fTEFCRUwiOiJXaGljaCBDaGVja2xpc3QgdG8gU2hvdyIsIkNIRUNLTElTVF9GTE9XX1JFU09MVVRJT05fSEVMUCI6Ilx1MDAyMk1vc3QgcmVjZW50XHUwMDIyIGFsd2F5cyBzaG93cyB0aGUgbmV3ZXN0IGFzc2lnbm1lbnQsIGV2ZW4gd2hlbiBpdCBpcyBjb21wbGV0ZWQgXHUyMDE0IGEgc3RhdHVzIHZpZXcgdGhhdCBuZXZlciBjcmVhdGVzIGEgbmV3IGNoZWNrbGlzdCB3aGlsZSBhbnkgYXNzaWdubWVudCBleGlzdHMuIFx1MDAyMkVhcmxpZXN0IG9wZW5cdTAwMjIgc2hvd3MgdGhlIG9sZGVzdCB1bmZpbmlzaGVkIGFzc2lnbm1lbnQgYW5kIGNyZWF0ZXMgYSBmcmVzaCBvbmUgb25jZSBhbGwgYXJlIGNvbXBsZXRlIFx1MjAxNCBpdCBhbHdheXMgcG9pbnRzIGF0IG91dHN0YW5kaW5nIHdvcmsuIiwiQ0hFQ0tMSVNUX0ZMT1dfRklMVEVSX0hFTFAiOiJOYXJyb3dzIHdoaWNoIGFzc2lnbm1lbnRzIHRoaXMgc3RlcCBjb25zaWRlcnMsIG1hdGNoaW5nIGFnYWluc3QgZWFjaCBjaGVja2xpc3RcdTIwMTlzIHJlc29sdmVkIHRpdGxlLiBXaGVuIG5vdGhpbmcgbWF0Y2hlcywgdGhlIHN0ZXAgY3JlYXRlcyBhIG5ldyBjaGVja2xpc3QuIiwiRklMVEVSX0JZX05BTUUiOiJGaWx0ZXIgYnkgTmFtZSIsIlJUX09QRVJBVE9SX1NUQVJUU19XSVRIIjoiU3RhcnRzIFdpdGgiLCJSVF9PUEVSQVRPUl9DT05UQUlOUyI6IkNvbnRhaW5zIiwiQ0hFQ0tMSVNUX0JMT0NLX01PREVfTU9TVF9SRUNFTlQiOiJNb3N0IFJlY2VudCIsIkNIRUNLTElTVF9CTE9DS19NT0RFX0VBUkxJRVNUX09QRU4iOiJFYXJsaWVzdCBPcGVuIiwiSEVBREVSX0NPTlRFTlQiOiJIZWFkZXIgQ29udGVudCIsIkZPT1RFUl9DT05URU5UIjoiRm9vdGVyIENvbnRlbnQiLCJTRUxFQ1RfQV9RVUlaIjoiU2VsZWN0IGEgUXVpeiIsIkZMT1dfQ0hBSU5fTElOS19RVUlaX1VOQVZBSUxBQkxFX0FETUlOIjoiVGhlIFF1aXogXHUyMDFje1RJVExFfVx1MjAxZCBpcyBubyBsb25nZXIgcHVibGlzaGVkLiBQaWNrIGEgcmVwbGFjZW1lbnQgdG8ga2VlcCB0aGlzIFN0ZXAgd29ya2luZy4iLCJGTE9XX0NIQUlOX0xJTktfUVVJWl9NSVNTSU5HX0FETUlOIjoiVGhlIFF1aXogY2hvc2VuIGZvciB0aGlzIFN0ZXAgaXMgbm8gbG9uZ2VyIGF2YWlsYWJsZS4gUGljayBhIHJlcGxhY2VtZW50IHRvIGtlZXAgdGhpcyBTdGVwIHdvcmtpbmcuIiwiUVpfTVJfVklFV19SRVNVTFRTIjoiVmlldyByZXN1bHRzIiwiU1RBUlRJTkdfUE9JTlRfRVhBTVBMRV9DQVBUSU9OIjoiU3VnZ2VzdGVkIFN0YXJ0aW5nIFBvaW50IiwiVVNFX0FTX1NUQVJUSU5HX1BPSU5UIjoiSW5zZXJ0IGFzIFN0YXJ0aW5nIFBvaW50IiwiU1RBUlRJTkdfUE9JTlRfTk9UX1NBVkVEX05PVEUiOiJZb3Ugd2lsbCBiZSBhYmxlIHRvIGVkaXQgYmVmb3JlIHNhdmluZy4iLCJTVEFSVElOR19QT0lOVF9OT19USEFOS1MiOiJObyBUaGFua3MiLCJVU0VfQUxMX1NUQVJUSU5HX1BPSU5UUyI6IlVzZSBBbGwgU3RhcnRpbmcgUG9pbnRzIiwiQ0FOTk9OUyI6IntFTlRJVFl9IENhbm5vbnMiLCJOT19ERVNDUklQVElPTiI6Ik5vIGRlc2NyaXB0aW9uIiwiQUREX0xFU1NPTl9UT19USElTX01PRFVMRSI6IkFkZCBMZXNzb24gdG8gdGhpcyBNb2R1bGUiLCJJTlZPSUNFX1NBVkVfRkFJTEVEIjoiVGhhdCBjaGFuZ2UgY291bGQgbm90IGJlIHNhdmVkLiBQbGVhc2UgcmVsb2FkIGFuZCB0cnkgYWdhaW4iLCJTTVNfUEhPTkVfU0VMRUNUX0NPVU5UUllfRklSU1QiOiJTZWxlY3QgdGhlIGNvdW50cnkgZm9yIHRoaXMgcGhvbmUgbnVtYmVyIiwiUEFZTUVOVF9NRVRIT0RfQU1PVU5UX1JBTkdFX0lOVkFMSUQiOiJFbnRlciBhIHZhbGlkIG1pbmltdW0gYW5kIG1heGltdW0gYW1vdW50IGZvciB0aGlzIHBheW1lbnQgbWV0aG9kICh0aGUgbWluaW11bSBjYW5ub3QgZXhjZWVkIHRoZSBtYXhpbXVtKS4iLCJhYmU0ZDhlMy1kNWQ1LTRhZTUtODUwNS1mNTBlZDhhOTYxNzgiOiJQbGFjZWhvbGRlciBjb3BpZWQhIiwiSU5TRVJUX1BMQUNFSE9MREVSIjoiSW5zZXJ0IFBsYWNlaG9sZG
188VyIiwiU0VBUkNIX01JTl9DSEFSU19ISU5UIjoiVHlwZSBhdCBsZWFzdCB7e0NPVU5UfX0gY2hhcmFjdGVycyB0byBzZWFyY2giLCJCWU9fVFdPX1dBWV9GQUlMRUQiOiJDb3VsZCBub3QgdXBkYXRlIHJlcGx5IGhhbmRsaW5nLiBQbGVhc2UgdHJ5IGFnYWluLiIsIkJZT19UV09fV0FZX1NVQ0NFU1MiOiJSZXBsaWVzIHdpbGwgbm93IGFycml2ZSBpbiB5b3VyIFN1aXRlRGFzaCBpbmJveC4iLCJCWU9fVEFLRU9WRVJfVElUTEUiOiJUaGlzIG51bWJlciBhbHJlYWR5IGhhbmRsZXMgcmVwbGllcyBlbHNld2hlcmUiLCJCWU9fVEFLRU9WRVJfQk9EWSI6IlJlcGxpZXMgdG8gdGhpcyBudW1iZXIgY3VycmVudGx5IGdvIHRvIHtVUkx9LiBTd2l0Y2hpbmcgd2lsbCByZWRpcmVjdCB0aGVtIHRvIHlvdXIgU3VpdGVEYXNoIGluYm94LiBDb250aW51ZT8iLCJNQU5BR0VEX1NNU19ESVNDTE9TVVJFX1NBVkVEIjoiQ29uc2VudCBkaXNjbG9zdXJlIHNhdmVkLiIsIk1BTkFHRURfU01TX0RJU0NMT1NVUkVfU0FWRV9GQUlMRUQiOiJDb3VsZCBub3Qgc2F2ZSB0aGUgY29uc2VudCBkaXNjbG9zdXJlLiIsIkNPTlRSQUNUX1ZPSURFRCI6IkRvY3VtZW50IGhhcyBiZWVuIHZvaWRlZCIsIkFSRV9ZT1VfU1VSRV9ZT1VfV0FOVF9UT19NQVJLX1RIRV9BQ1RJT05fQVNfQ09NUExFVEUiOiJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gbWFyayB0aGUgYWN0aW9uIGFzIGNvbXBsZXRlPyIsIkRFTEVURV9JTlRBWlVSRU1BSUxfU0VUVElOR1MiOiJEaXNhYmxlIiwiRU5BQkxFX0lOVEFaVVJFTUFJTF9TRVRUSU5HUyI6IkVuYWJsZSIsIk5BTUVfSVNfUkVRVUlSRUQiOiJOYW1lIGlzIHJlcXVpcmVkIiwiRU5USVRZX0RFTEVURUQiOiJ7RU5USVRZfSBoYXMgYmVlbiBkZWxldGVkIiwiVEVNUExBVEUiOiJUZW1wbGF0ZSIsIldFQkhPT0tTX0VORFBPSU5UX1JFU1VNRUQiOiJEZWxpdmVyaWVzIHJlLWVuYWJsZWQiLCJFTlRJVFlfSEFTX0JFRU5fRFVQTElDQVRFRCI6IntFTlRJVFl9IGhhcyBiZWVuIGR1cGxpY2F0ZWQiLCJXRUJIT09LU19ERUxFVEVfVEVNUExBVEVfQ09ORklSTSI6IlRoaXMgd2ViaG9vayB0ZW1wbGF0ZSB3aWxsIGJlIHBlcm1hbmVudGx5IGRlbGV0ZWQuIEF1dG9tYXRpb25zIHVzaW5nIGl0IHdpbGwgc2lsZW50bHkgZmFsbCBiYWNrIHRvIGRlZmF1bHQgZmllbGQgc2V0dGluZ3MuIiwiV0VCSE9PS1NfRVJST1JfU0VMRUNUX09ORV9GSUVMRCI6IlNlbGVjdCBhdCBsZWFzdCBvbmUgZmllbGQiLCJHRU5FUkFUT1JTX01JTklNVU1fQU1PVU5UX1RJVExFX01PREFMIjoiVGhpcyB3aWxsIG92ZXJyaWRlIGFsbCBjdXJyZW50IEFjY3VtdWxhdGluZyBJbnZvaWNlIEdlbmVyYXRvciBzZXR0aW5ncy4gQXJlIHlvdSBzdXJlPyIsIkdFTkVSQVRJT05fU0VUVElOR1NfQVBQTElFRCI6IlRoZSBzZXR0aW5ncyBzdWNjZXNzZnVsbHkgYXBwbGllZC4iLCJUUkFOU0xBVElPTl9ESVNBQkxFX1BJQ0tFUl9USVRMRSI6IlR1cm4gT2ZmIFRyYW5zbGF0aW9ucyIsIlRSQU5TTEFUSU9OX0xBTkdVQUdFU19PUEVOX0hJTlQiOiJDbGljayBhIGxhbmd1YWdlIHRvIG9wZW4gaXQgZm9yIGVkaXRpbmcsIG9yIGRyYWcgaXQgdG8gcmVvcmRlci4iLCJUUkFOU0xBVElPTl9BRERfTEFOR1VBR0UiOiJBZGQgbGFuZ3VhZ2UiLCJMT0FEIjoiTG9hZCIsIlRSQU5TTEFUSU9OX01BS0VfTUFJTl9USVRMRSI6Ik1ha2UgdGhpcyB0aGUgbWFpbiBsYW5ndWFnZSIsIlRSQU5TTEFUSU9OX0lTX01BSU5fVElUTEUiOiJNYWluIGxhbmd1YWdlIiwiVFJBTlNMQVRJT05fTEFOR1VBR0VfQUxXQVlTX09GRkVSRUQiOiJZb3VyIG1haW4gbGFuZ3VhZ2UgaXMgYWx3YXlzIG9mZmVyZWQgdG8geW91ciB1c2VycyIsIlRSQU5TTEFUSU9OX0xBTkdVQUdFX1NUQVJUX09GRkVSSU5HIjoiTm90IG9mZmVyZWQgdG8geW91ciB1c2VycyBcdTIwMTQgY2xpY2sgdG8gc3RhcnQgb2ZmZXJpbmcgaXQiLCJUUkFOU0xBVElPTl9MQU5HVUFHRV9TVE9QX09GRkVSSU5HIjoiT2ZmZXJlZCB0byB5b3VyIHVzZXJzIFx1MjAxNCBjbGljayB0byBzdG9wIG9mZmVyaW5nIGl0IiwiVFJBTlNMQVRJT05fUkVOQU1FX0xBTkdVQUdFX1RJVExFIjoiUmVuYW1lIExhbmd1YWdlIiwiVFJBTlNMQVRJT05fUkVOQU1FX0xBTkdVQUdFX0hJTlQiOiJUaGlzIGlzIHRoZSBuYW1lIHlvdXIgdXNlcnMgc2VlLiBMZWF2ZSBpdCBlbXB0eSB0byB1c2UgdGhlIG9mZmljaWFsIG5hbWUuIiwiVFJBTlNMQVRJT05fQUREX0xBTkdVQUdFX1RJVExFIjoiQWRkIExhbmd1YWdlIiwiVFJBTlNMQVRJT05fQUREX0xBTkdVQUdFX0VNUFRZIjoiRXZlcnkgbGFuZ3VhZ2Ugd2UgaGF2ZSBhIHRyYW5zbGF0aW9uIHNldCBmb3IgaXMgYWxyZWFkeSBpbiB5b3VyIGFjY291bnQuIiwiVFJBTlNMQVRJT05fREVMRVRFX0xBTkdVQUdFX1RZUEVfVE9fQ09ORklSTSI6IlR5cGUgREVMRVRFIHRvIGNvbmZpcm0iLCJUUkFOU0xBVElPTl9ERUxFVEVfQ09ORklSTV9XT1JEIjoiREVMRVRFIiwiVFJBTlNMQVRJT05fREVMRVRFX0xBTkdVQUdFX0RJU0FCTEVfSU5TVEVBRCI6IkRpc2FibGUgaW5zdGVhZCIsIlRSQU5TTEFUSU9OX0xBTkdVQUdFX0VOQUJMRV9DT05GSVJNIjoiU3RhcnQgb2ZmZXJpbmcge0xBTkdVQUdFfSB0byB5b3VyIHVzZXJzPyBBbnlvbmUgaW4geW91ciBhY2NvdW50IHdpbGwgYmUgYWJsZSB0byBjaG9vc2UgaXQuIiwiVFJBTlNMQVRJT05fTEFOR1VBR0VfRElTQUJMRV9DT05GSVJNIjoiU3RvcCBvZmZlcmluZyB7TEFOR1VBR0V9IHRvIHlvdXIgdXNlcnM/IEV2ZXJ5IHRyYW5zbGF0aW9uIGluIGl0IGlzIGtlcHQsIGFuZCBhbnlvbmUgY3VycmVudGx5IHNldCB0byBpdCBnb2VzIGJhY2sgdG8geW91ciBtYWluIGxhbmd1YWdlLiIsIlRSQU5TTEFUSU9OX0xPQURfTEFOR1VBR0VfVElUTEUiOiJBZGQge0xBTkdVQUdFfSB0byB5b3VyIGFjY291bnQ/IiwiVFJBTlNMQVRJT05fTE9BRF9NT0RBTF9BRERJVElPTkFMXzFfMSI6IlRoaXMgYWRkcyBhbm90aGVyIGxhbmd1YWdlIGFsb25nc2lkZSB0aGUgb25lcyB5b3UgYWxyZWFkeSBoYXZlIGxvYWRlZC4gVGhpcyB0cmFuc2xhdGlvbiBzZXQgaXMgcHJvdmlkZWQgYnkgb3VyIGNvbW11bml0eSBvZiBPZmZpY2lhbCBUcmFuc2xhdG9ycy4gSXQgd2lsbCBjb2V4aXN0IHdpdGggeW91ciBleGlzdGluZyBsYW5ndWFnZXMgXHUyMDE0IG5vbmUgb2YgeW91ciBjdXJyZW50IHRyYW5zbGF0aW9ucyB3aWxsIGJlIG92ZXJ3cml0dGVuIG9yIHJlbW92ZWQuIFlvdSBjYW4gZWRpdCBhbnkgd29yZCBvciBwaHJhc2UgYWZ0ZXIgdGhlIHNldCBpcyBsb2FkZWQuIiwiVFJBTlNMQVRJT05fREVMRVRFX0xBTkdVQUdFX1RFWFQiOiJEZWxldGluZyB7TEFOR1VBR0V9IHRha2VzIGl0IG91dCBvZiB5b3VyIGFjY291bnQgZm9yIGdvb2QgYW5kIGRlc3Ryb3lzIHRoZSB7Q09VTlR9IHdvcmRzIGFuZCBwaHJhc2VzIHRyYW5zbGF0ZWQgaW50byBpdC4gVGhlcmUgaXMgbm8gd2F5IHRvIGdldCB0aGVtIGJhY2
188suIiwiVFJBTlNMQVRJT05fREVMRVRFX0xBTkdVQUdFX1RFWFRfRU1QVFkiOiJEZWxldGluZyB7TEFOR1VBR0V9IHRha2VzIGl0IG91dCBvZiB5b3VyIGFjY291bnQgZm9yIGdvb2QuIE5vdGhpbmcgaGFzIGJlZW4gdHJhbnNsYXRlZCBpbnRvIGl0IHlldCwgc28gbm8gd29yZGluZyBpcyBsb3N0LiIsIlRSQU5TTEFUSU9OX0RFTEVURV9MQU5HVUFHRV9USVRMRSI6IkRlbGV0ZSB7TEFOR1VBR0V9IiwiVFJBTlNMQVRJT05fREVMRVRFX0xBTkdVQUdFX0RJU0FCTEVfSElOVCI6IklmIHlvdSBvbmx5IHdhbnQgeW91ciB1c2VycyB0byBzdG9wIHNlZWluZyB0aGlzIGxhbmd1YWdlLCBkaXNhYmxlIGl0IGluc3RlYWQgXHUyMDE0IHRoYXQga2VlcHMgZXZlcnkgdHJhbnNsYXRpb24gZXhhY3RseSBhcyBpdCBpcy4iLCJUUkFOU0xBVElPTl9NQUtFX01BSU5fQ09ORklSTSI6Ik1ha2Uge0xBTkdVQUdFfSB0aGUgbWFpbiBsYW5ndWFnZSBmb3IgdGhpcyBhY2NvdW50PyBVc2VycyB3aXRob3V0IGFuIGV4cGxpY2l0IGxhbmd1YWdlIGFzc2lnbm1lbnQgd2lsbCBzZWUgaXQuIn0=";window.TranslationsCurrentDate="";</script>
188<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/ngTagsInput.min.css?ver=a3b691509ead230e8008e4e67f10284177597b14" /> 189<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.oscar.upload.min.css?ver=c1fe39096f8a8abe5df4ec178a565c2d777689a5" /> 190<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/ui.select.min.css?ver=2c2cb66dc794b30a97124f423e810085edd5d09a" /> 191<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.app.Theme.Components.min.css?ver=1acd6f7b94ad15e38eff39eb965b2738f0262c37" /> 192<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.app.Theme.min.css?ver=9a5201cc7b7ac40fdf765a548fe53a98426899e0" /> 193<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.app.Redactor.min.css?ver=b9108c3c1b2b7a5b20da8fc27b0aa0c8bbcac878" /> 194<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.app.min.css?ver=ef27c7e34336fbdadea7aa89a2f5050b88ae4eda" /> 195<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.app.Article.min.css?ver=89cc5c07f7756c35e6869999bb428514143b8717" /> 196<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.styles.external.pack.min.css?ver=7790f5755f42cc1d1cf0f030fbd7195f215dd26e" /> 197<link rel="stylesheet" type="text/css" href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/bundles/sd.styles.old.pack.min.css?ver=1fc063521e661d95ac7bc1d632741eca5bff573f" />
198<script type="text/javascript" src="/assets/b577820b/jquery.cookie.js"></script>
vendor: 1 bytes, line 198
198
199<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/sdApp/components/translation/dist/bundle.min.js?51e9a6df22d" crossorigin="anonymous"></script>
vendor: 1 bytes, line 199
199
200<script type="text/javascript" src="/themes/mpa/assets/js/custom/sdErrorReporter.js?51e9a6df22d"></script>
vendor: 1 bytes, line 200
200
201<script type="text/javascript" src="/themes/mpa/assets/js/custom/sdBootstrapWatchdog.js?51e9a6df22d"></script>
vendor: 1 bytes, line 201
201
202<script type="text/javascript" src="https://js.stripe.com/v3/"></script>
vendor: 1 bytes, line 202
202
203<script type="text/javascript"> 204/*<![CDATA[*/ 205window.ICONS_SPRITE_URL = "/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc"; 206/* 207* Version: 1 208* 209* Note: change version after edit and update it on include code 210*/ 211 212/** 213 * Render svg from sprite 214 * 215 * @param {string} [icon='edit'] - The ID of the icon in the SVG sprite. 216 * @param {string} [text=''] - The text to display alongside the icon. 217 * @param {object} [htmlOptions={}] - An object containing HTML attributes for the SVG element. 218 * 219 * @returns {string} The HTML string representing the SVG icon and label. 220 */ 221window._getSvgIconLabel = function(icon = 'edit', text = '', htmlOptions = {}){ 222 const ICONS_SPRITE_URL = window.ICONS_SPRITE_URL || ''; 223 const iconURL = `${ICONS_SPRITE_URL}#${icon}`; 224 225 // Mirrors getSvgIconLabel(): the icon-name class enables per-glyph optical sizing. 226 htmlOptions = Object.assign({}, htmlOptions); 227 htmlOptions['class'] = (String(htmlOptions['class'] || '') + ' svg-icon--' + icon).trim(); 228 229 let html = `<svg`; 230 231 // Add HTML attributes from the htmlOptions object 232 for (const key in htmlOptions) { 233 if (htmlOptions.hasOwnProperty(key)) { 234 html += ` ${key}="${htmlOptions[key]}"`; 235 } 236 } 237 238 html += `>`; 239 html += '<use href="' + iconURL + '" xlink:href="' + iconURL + '"></use>'; 240 html += `</svg>`; 241 html += text; 242 243 return html; 244} 245window.sdBootstrapWatchdogConfig = {"enabled":true,"autoRetry":true,"title":"Something went wrong","message":"This page did n
245ot load correctly. Refresh to try again, or contact support if it keeps happening.","refreshLabel":"Refresh"}; 246/*]]>*/ 247</script>
247 248<title>Maxillopixel Diagnostics - Maxillopixel Diagnostics - Client Registration Form</title> 249 250 <link href="https://fonts.googleapis.com/css?family=Nunito+Sans:400,600,700" rel="stylesheet" type="text/css"> 251 <link href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,500,700" rel="stylesheet" type="text/css"> 252 <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600" rel="stylesheet" type="text/css"> 253 <link href="https://fonts.googleapis.com/css?family=Inconsolata:400,700" rel="stylesheet"> 254 <link href="https://fonts.googleapis.com/css2?family=Dancing+Script&display=swap" rel="stylesheet"> 255 256 <!-- CUSTOM INCLUDES FOR SPECIAL PAGE --> 257 258<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min.css" rel="stylesheet" type="text/css"> 259 260 <link href="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/css/mpa-style.css?51e9a6df22d" rel="stylesheet" type="text/css"> 261 262 <!-- FontAwesome Kit — DO NOT replace with vendored CSS (breaks custom icon families) --> 263
263<script defer src="https://kit.fontawesome.com/e2932acea5.js" crossorigin="anonymous"></script>
263 264 265
265<script type="text/javascript"> 266 window.DATEPICKER_DATE_FORMAT = 'mm/dd/yy'; 267 window.NG_DATE_FORMAT = 'MM/dd/yyyy'; 268 window.NG_DATE_PLACEHOLDER = 'MM/DD/YYYY'; 269 window.NG_DATE_UI_MASK = '99/99/9999'; 270 window.MOMENT_FORMAT = 'MM/DD/YYYY'; 271 272 // Theme 273 window.THEME_NAME = 'mpa'; 274 </script>
274 275</head> 276 277<body 278 ng-cloak 279 sd-modal 280 sd-oscar-custom-theme 281 class=" 282 internal-user pace-custom-loader pace-bg-NO_ANIMATION pace-image-drawing-frame pace-custom-image branding-theme-harvest_moon internal-user pace-custom-loader pace-bg-NO_ANIMATION pace-image-drawing-frame pace-custom-image branding-theme-harvest_moon sidebar-collapse role-guest " 283> 284 285<div ng-cloak class="main-wrapper column1-form"> 286 <div class="container sd-error-banner__wrapper--iframe"> 287 <div class="app-form-embed app-form-type-intake" 288 id="FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope" 289 data-scopevar="FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h" 290> 291 292<style type="text/css" FormCss id="n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h"> 293 body::-webkit-scrollbar { 294 {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripScrollBar ? 'display: none;' : ''}} 295 } 296 html.intake-form body, 297 html.intake-form body:not(.sd-dark-mode).glass-background-effect .main-wrapper { 298 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$backgroundColor}} !important; 299 } 300 html.intake-form { 301 {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripScrollBar ? '-ms-overflow-style: none; scrollbar-width: none;' : ''}} 302 } 303 304 305 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope { 306 {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripScrollBar ? '-ms-overflow-style: none; scrollbar-width: none;' : ''}} 307 } 308 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope:not(.book-me-form) { 309 width: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneWidth.includes('%') ? FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneWidth : FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneWidth + 'px' }}; 310 max-width: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneMaxWidth.includes('%') ? FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneMaxWidth : FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneMaxWidth + 'px' }}; 311 } 312 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .card { 313 box-shadow: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripBorder ? 'none' : ''}}!important; 314 border: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripBorder ? '0 none' : ''}}!important; 315 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackgroun
315d ? 'transparent' : ''}}!important; 316 } 317 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .card .card-block { 318 padding: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripPadding ? '0' : ''}}!important; 319 } 320 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .card-header { 321 display: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripTitle ? 'none' : 'block'}}; 322 padding-left: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripPadding ? '0' : ''}}!important; 323 padding-right: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripPadding ? '0' : ''}}!important; 324 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackground ? 'transparent' : ''}}!important; 325 } 326 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope #requiredMessage { 327 display: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripRequiredMessage ? 'none' : 'block'}}; 328 } 329 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .file-upload-field-input:not(.view-only) { 330 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackgroun
330d ? 'transparent' : ''}}!important; 331 } 332 .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope p, .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope h1, .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope h2, .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope h3, .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope h4, .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope h5, .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope h6 { 333 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackground ? 'transparent' : ''}}!important; 334 } 335 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .appointment-card { 336 border-color: var(--sd-bg-offwhite-accent); 337 } 338 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .btn.btn-primary, 339 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .default-user-avatar, 340 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .book-me__background-top, 341 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .book-me-calendar.calendar table tr:first-child th button.uib-right::before, 342 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .book-me-calendar.calendar table tr:first-child th button.uib-left::before, 343 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .book-me-calendar.calendar table tr:first-child th, 344 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .book-me-calendar.calendar table tr:first-child th button { 345 background-color: var(--sd-bg-offwhite-accent) !important; 346 } 347 348 body.sd-dark-mode .app-form-embed#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-scope .book-me-calendar.calendar table tr:first-child th { 349 border-color: transparent !important; 350 } 351 352 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form { 353 {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripScrollBar ? '-ms-overflow-style: none; scrollbar-width: none;' : ''}} 354 } 355 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form:not(.book-me-form) { 356 width: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneWidth.includes('%') ? FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneWidth : FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneWidth + 'px' }}; 357 max-width: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneMaxWidth.includes('%') ? FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneMaxWidth : FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$standaloneMaxWidth + 'px' }}; 358 } 359 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .card { 360 box-shadow: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripBorder ? 'none' : ''}}!important; 361 border: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripBorder ? '0 none' : ''}}!important; 362 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackgroun
362d ? 'transparent' : ''}}!important; 363 } 364 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .card .card-block { 365 padding: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripPadding ? '0' : ''}}!important; 366 } 367 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .card-header { 368 display: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripTitle ? 'none' : 'block'}}; 369 padding-left: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripPadding ? '0' : ''}}!important; 370 padding-right: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripPadding ? '0' : ''}}!important; 371 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackground ? 'transparent' : ''}}!important; 372 } 373 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form #requiredMessage { 374 display: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripRequiredMessage ? 'none' : 'block'}}; 375 } 376 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .file-upload-field-input:not(.view-only) { 377 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackgroun
377d ? 'transparent' : ''}}!important; 378 } 379 .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form p, .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form h1, .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form h2, .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form h3, .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form h4, .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form h5, .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form h6 { 380 background-color: {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$stripFormBackground ? 'transparent' : ''}}!important; 381 } 382 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .appointment-card { 383 border-color: var(--sd-bg-offwhite-accent); 384 } 385 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .btn.btn-primary, 386 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .default-user-avatar, 387 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .book-me__background-top, 388 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .book-me-calendar.calendar table tr:first-child th button.uib-right::before, 389 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .book-me-calendar.calendar table tr:first-child th button.uib-left::before, 390 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .book-me-calendar.calendar table tr:first-child th, 391 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .book-me-calendar.calendar table tr:first-child th button { 392 background-color: var(--sd-bg-offwhite-accent) !important; 393 } 394 395 body.sd-dark-mode .extended-form-wrapper#FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h-extended-form .book-me-calendar.calendar table tr:first-child th { 396 border-color: transparent !important; 397 } 398 /* Custom CSS */ 399 {{FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h.$customCSS}} 400</style>
401<script id="FormEmbed_n1Uqh6y2EyL1nC8j1vXuG1AL4a4kjzyD1shvqDidRQR2fw73h" type="text/json64-template" use-current-scope="1">eyIkYmFja2dyb3VuZENvbG9yIjoicmdiKDI1NSwgMjU1LCAyNTUpIiwiJGxhYmVsQ29sb3IiOiIjNTU1NTU1IiwiJGJ1dHRvbkJhY2tncm91bmRDb2xvciI6IiM1NTU1NTUiLCIkYnV0dG9uVGV4dENvbG9yIjoiI0ZGRkZGRiIsIiR0aXRsZUNvbG9yIjoiIzU1NTU1NSIsIiRzdWNjZXNzTWVzc2FnZSI6IjxwPjxhIGhyZWY9XCJodHRwczpcL1wvXCI+PGltZyBzcmM9XCJcL2ltYWdlc1wvc3Znc1wvZm9ybV9zdWJtaXNzaW9uX2NoZWNrLnN2Z1wiIHN0eWxlPVwiZGlzcGxheTpibG9jazsgbWFyZ2luOjAgYXV0bzsgd2lkdGg6IDEyNXB4OyBtYXgtd2lkdGg6IDEyNXB4OyBoZWlnaHQ6IDEyNXB4O1wiIGRhdGEtaW1hZ2U9XCJvbjM3NzIydXhsa3hcIj48XC9hPjxcL3A+XG48aDQgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7bWFyZ2luOjEwcHggMCAxNXB4IDAgIWltcG9ydGFudFwiPjxzcGFuIHN0eWxlPVwiY29sb3I6IHJnYig2MywgNjMsIDYzKTtcIj5TdWJtaXNzaW9uIFJlY2VpdmVkITxcL3NwYW4+PFwvaDQ+XG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5QbGVhc2UgY2hlY2sgeW91ciBlbWFpbC48c2QtdHIgdWlkPVwiXC9cIj48XC9zZC10cj48XC9wPiIsIiRlbmFibGVDdXN0b21DU1MiOnRydWUsIiRhcHBseUFjY2VudENvbG9ycyI6ZmFsc2UsIiRjdXN0b21DU1MiOiJcLyogdmlldG5hbWVzZSAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZwdG5zQlh3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbiAgfVxuICBcLyogbGF0aW4tZXh0ICpcL1xuIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3RyZXRjaDogMTAwJTtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoaHR0cHM6XC9cL2ZvbnRzLmdzdGF0aWMuY29tXC9zXC9jYWJpblwvdjI2XC91LTRpMHFXbGpSdy1QZlU4MXhDS0NwZHBiZ1pKbDZYdnA5bnNCWHcud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xuICB9XG4gIFwvKiBsYXRpbiAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZxZG5zLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbiAgfVxuICBcLyogdmlldG5hbWVzZSAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZwdG5zQlh3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbiAgfVxuICBcLyogbGF0aW4tZXh0ICpcL1xuIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3RyZXRjaDogMTAwJTtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoaHR0cHM6XC9cL2ZvbnRzLmdzdGF0aWMuY29tXC9zXC9jYWJpblwvdjI2XC91LTRpMHFXbGpSdy1QZlU4MXhDS0NwZHBiZ1pKbDZYdnA5bnNCWHcud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xuICB9XG4gIFwvKiBsYXRpbiAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZxZG5zLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbiAgfVxuICBcLyogdmlldG5hbWVzZSAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZwdG5zQlh3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbiAgfVxuICBcLyogbGF0aW4tZXh0ICpcL1xuIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3RyZXRjaDogMTAwJTtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoaHR0cHM6XC9cL2ZvbnRzLmdzdGF0aWMuY29tXC9zXC9jYWJpblwvdjI2XC91LTRpMHFXbGpSdy1QZlU4MXhDS0NwZHBiZ1pKbDZYdnA5bnNCWHcud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xuICB9XG4gIFwvKiBsYXRpbiAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZxZG5zLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbiAgfVxuICBcLyogdmlldG5hbWVzZSAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZwdG5zQlh3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbiAgfVxuICBcLyogbGF0aW4tZXh0ICpcL1xuIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3RyZXRjaDogMTAwJTtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoaHR0cHM6XC9cL2ZvbnRzLmdzdGF0aWMuY29tXC9zXC9jYWJpblwvdjI2XC91LTRpMHFXbGpSdy1QZlU4MXhDS0NwZHBiZ1pKbDZYdnA5bnNCWHcud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xuICB9XG4gIFwvKiBsYXRpbiAqXC9cbiBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXN0cmV0Y2g6IDEwMCU7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKGh0dHBzOlwvXC9mb250cy5nc3RhdGljLmNvbVwvc1wvY2FiaW5cL3YyNlwvdS00aTBxV2xqUnctUGZVODF4Q0tDcGRwYmdaSmw2WHZxZG5zLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbiAgfVxuICA6cm9vdCB7XG4gICAgLS1mcm0tY29sb3ItcHJpbWFyeTogI0RBREFEQTtcbiAgICAtLWZybS1jb2xvci1zZWNvbmRhcnk6ICMwMTAwMDE7XG4gIH1cbiAgYm9keSwgLmNvdW50ZXIsIC5kYXRhVGFibGUudmVydFRhYmxlIHRoLCAuZGlzcGxheUZvbGRlciBoMiwgLmVycm9yUGFnZSAuZXJyb3JDb250ZW50LCAuZm9udC1ib2xkLCAubk5vdGUgcCwgLnByb2dyZXNzLWxldmVsLCAudExpZ2h0IHRoZWFkIHRkLCAudWktZGF0ZXBpY2tlci51aS13aWRnZXQgLnVpLWRhdGVwaWNrZXItaGVhZGVyLCAudWktZGF0ZXBpY2tlci51aS13aWRnZXQgdGgsIGIsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHN0cm9uZyB7XG4gICAgZm9udC1mYW1pbHk6ICdDYWJpbicgIWltcG9ydGFudDtcbiAgfVxuICAjZm9ybXMtZm9ybS13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1mcm0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgZGl2I2Zvcm1GaWVsZHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgfVxuICAuZm9ybS1vc2NhciAuZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICAjZm9ybUZpZWxkcyA+IC5mb3JtLWdyb3VwLm5nLXNjb3BlIHtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgfVxuICAjZm9ybUZpZWxkcyA+IC5hcHBvaW50bWVudC1pbnRha2UtZm9ybS13cmFwcGVyLm5nLXNjb3BlICsgLmZvcm0tZ3JvdXAubmctc2NvcGUge1xuICAgIHBhZGRpbmc6IDBweDtcbiAgfVxuICAuY2FyZC1oZWFkZXIuZm9ybXMtZm9ybS1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4O1xuICAgIG1hcmdpbjogMjBweCAyMHB4IDEwcHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIC5jYXJkIC5jYXJkLWhlYWRlci5mb3Jtcy1mb3JtLWhlYWRlciBoNiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmZvcm0tZ3JvdXAubmctc2NvcGUgPiBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW46IDBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEwcHggMHB4IDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmZvcm0tZ3JvdXAubmctc2NvcGUuYW5pbWF0ZWQtZm9ybS1sYWJlbCA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuZm9ybS1ncm91cC5uZy1zY29wZS5hbmltYXRlZC1mb3JtLWxhYmVsLmFjdGl2ZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgfVxuICAuZm9ybS1ncm91cC5hbmltYXRlZC1mb3JtLWxhYmVsLmFjdGl2ZSA+IGxhYmVsLCAuZm9ybS1ncm91cC5hbmltYXRlZC1mb3JtLWxhYmVsOmZvY3VzID4gbGFiZWwsIC5mb3JtLWdyb3VwLmFuaW1hdGVkLWZvcm0tbGFiZWw6Zm9jdXMtd2l0aGluID4gbGFiZWwge1xuICAgIHBhZGRpbmc6IDBweCA1cHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tZnJtLWNvbG9yLXByaW
4011hcnkpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZnJtLWNvbG9yLXNlY29uZGFyeSkgIWltcG9ydGFudDtcbiAgfVxuICAuZm9ybS1ncm91cC5uZy1zY29wZSA+IC5sYWJlbC1zdWJ0ZXh0IHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luOiAwcHg7XG4gIH1cbiAgLmxhYmVsLXN1YnRleHQge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBtYXJnaW46IDBweDtcbiAgfVxuICAuZm9ybS1ncm91cC5uZy1zY29wZSA+IC5sYWJlbC1zdWJ0ZXh0ID4gcCB7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmxhYmVsLXN1YnRleHQgPiBwIHtcbiAgICBtYXJnaW46IDBweDtcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAuZm9ybS1ncm91cC5uZy1zY29wZSA+IGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLmZvcm0tZ3JvdXAubmctc2NvcGUgPiB0ZXh0YXJlYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmZmYgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC5mb3JtLWdyb3VwLm5nLXNjb3BlID4gdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICB9XG4gIC5mb3JtLWdyb3VwLm5nLXNjb3BlID4gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICB9XG4gIC5mb3JtLWdyb3VwLm5nLXNjb3BlID4gaW5wdXQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mb3JtLWdyb3VwLm5nLXNjb3BlID4gdGV4dGFyZWE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5yZWRhY3Rvci1ib3gucmVkYWN0b3Itc3R5bGVzLW9uLnJlZGFjdG9yLXRvb2xiYXItb24ucmVkYWN0b3ItYmx1ciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJlZGFjdG9yLWJveC5yZWRhY3Rvci1zdHlsZXMtb24ucmVkYWN0b3ItdG9vbGJhci1vbi5yZWRhY3Rvci1mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJlLWJ1dHRvbi5yZS1idXR0b24taWNvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZnJtLWNvbG9yLXByaW1hcnkpO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIH1cbiAgLnJlLWJ1dHRvbi5yZS1idXR0b24taWNvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tZnJtLWNvbG9yLXByaW1hcnkpO1xuICB9XG4gIC5yZS1idXR0b24ucmUtYnV0dG9uLWljb24gPiBpIHtcbiAgICBmaWxsOiB2YXIoLS1mcm0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICBjb2xvcjogdmFyKC0tZnJtLWNvbG9yLXNlY29uZGFyeSk7XG4gIH1cbiAgLnJlLWJ1dHRvbi5yZS1idXR0b24taWNvbjpob3ZlciA+IGkge1xuICAgIGZpbGw6IHZhcigtLWZybS1jb2xvci1wcmltYXJ5KTtcbiAgICBjb2xvcjogdmFyKC0tZnJtLWNvbG9yLXByaW1hcnkpO1xuICB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCBzcGFuLnNlbGVjdDItc2VsZWN0aW9uLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmZmYgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAuZmlsZS11cGxvYWQtZmllbGQtaW5wdXQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbiAgLmZpbGUtdXBsb2FkLWZpZWxkLWlucHV0Om5vdCgudmlldy1vbmx5KSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgfVxuICAuZmlsZS11cGxvYWQtZmllbGQtaW5wdXQ6bm90KC52aWV3LW9ubHkpIC5maWxlLWRyb3Age1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDNweCBkYXNoZWQ7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmJ0bi1saXN0ID4gLmJ0bi1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZybS1jb2xvci1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1mcm0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tZnJtLWNvbG9yLXByaW1hcnkpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgfVxuICAuYnRuLWxpc3QgPiAuYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1mcm0tY29sb3ItcHJpbWFyeSk7XG4gICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tZnJtLWNvbG9yLXByaW1hcnkpO1xuICB9XG4gIC5hcHBvaW50bWVudC1pbnRha2UtZm9ybS13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3B
401hcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAyMHB4IDBweDtcbiAgICBib3JkZXI6IDNweCBkYXNoZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICB9XG4gIC5hcHBvaW50bWVudC1pbnRha2UtZm9ybS13cmFwcGVyID4gLnJvdyB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmFwcG9pbnRtZW50LWludGFrZS1mb3JtLWZpZWxkLWJsb2NrIC5idG4uYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZybS1jb2xvci1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1mcm0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1mcm0tY29sb3ItcHJpbWFyeSk7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweCAhaW1wb3J0YW50O1xuICB9XG4gIC5hcHBvaW50bWVudC1pbnRha2UtZm9ybS1maWVsZC1ibG9jayAuYnRuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWZybS1jb2xvci1wcmltYXJ5KTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1mcm0tY29sb3ItcHJpbWFyeSk7XG4gIH1cbiAgLmFwcG9pbnRtZW50LWludGFrZS1mb3JtLWZpZWxkLWJsb2NrIGg0IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAuYXBwb2ludG1lbnQtaW50YWtlLWZvcm0tZmllbGQtYmxvY2sgaDUubmctYmluZGluZyB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLmZvcm0tYWN0aW9ucy5idG4tbGlzdCA+IC5idG4uYnRuLXByaW1hcnksIC5mb3JtLWFjdGlvbnMuYnRuLWxpc3Qgc3Bhbi50b29sdGlwQmxvY2sgLmJ0bi5idG4tcHJpbWFyeSB7XG4gICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMHB4IDIwcHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZybS1jb2xvci1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1mcm0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1mcm0tY29sb3ItcHJpbWFyeSk7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweCAhaW1wb3J0YW50O1xuICB9XG4gIC5mb3JtLWFjdGlvbnMuYnRuLWxpc3QgPiAuYnRuLmJ0bi1wcmltYXJ5LCAuZm9ybS1hY3Rpb25zLmJ0bi1saXN0IHNwYW4udG9vbHRpcEJsb2NrIC5idG4uYnRuLXByaW1hcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tZnJtLWNvbG9yLXByaW1hcnkpO1xuICB9XG4gIC5idG4taW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZnJtLWNvbG9yLXNlY29uZGFyeSkgIWltcG9ydGFudDtcbiAgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZnJtLWNvbG9yLXNlY29uZGFyeSk7XG4gIH1cbiAgLmNoZWNrYm94ID4gbGFiZWwgPiBzcGFuLmxhYmVsLXRleHQge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5jaGVja2JveCA+IGxhYmVsID4gc3Bhbi5sYWJlbC10ZXh0ID4gbGFiZWwge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5yYWRpb2JveCA+IGxhYmVsID4gc3Bhbi5sYWJlbC10ZXh0ID4gbGFiZWwge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5jaGVja2JveCBzcGFuLmxhYmVsLXRleHQ6YWZ0ZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIH1cbiAgLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBzcGFuLmxhYmVsLXRleHQ6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIH1cbiAgLnJhZGlvYm94IHNwYW4ubGFiZWwtdGV4dDpiZWZvcmUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIH1cbiAgLnJhZGlvYm94IGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBzcGFuLmxhYmVsLXRleHQ6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gIH1cbiAgLnJhZGlvYm94IHNwYW4ubGFiZWwtdGV4dDphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICAjcmVxdWlyZWRNZXNzYWdlID4gLnJvdy5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgI3JlcXVpcmVkTWVzc2FnZSAudGV4dC1tdXRlZC5yZXF1aXJlZCB7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC5jYXJkLWJsb2NrLmZvcm1zLWZvcm0tYmxvY2sge1xuICAgIHBhZGRpbmc6IDE1cHggNDBweCAyMHB4O1xuICB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZG
401VyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdzo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gIH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIgc3Bhbjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHNwYW46OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgXG4gIGRpdiNmb3Jtcy1mb3JtLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxNywgMTcsIDE3LCAxKSAwJSwgcmdiYSgxMDcsIDEwNywgMTA3LCAxKSAxMDAlKTtcbiAgICBtYXJnaW46IDUlO1xufVxuICAiLCIkYnV0dG9uSG92ZXJGaWx0ZXIiOiIxIiwiJGJ1dHRvbkhvdmVyRmlsdGVyQW1vdW50IjoiMjUiLCIkc3RyaXBCb3JkZXIiOnRydWUsIiRzdHJpcFRpdGxlIjpmYWxzZSwiJHN0cmlwUGFkZGluZyI6ZmFsc2UsIiRzdHJpcFJlcXVpcmVkTWVzc2FnZSI6ZmFsc2UsIiRlbmFibGVBbmltYXRlZExhYmVscyI6ZmFsc2UsIiRzdHJpcEZvcm1CYWNrZ3JvdW5kIjpmYWxzZSwiJHN0cmlwU2Nyb2xsQmFyIjpmYWxzZSwiJGVuYWJsZVJlZGlyZWN0IjpmYWxzZSwiJHJlZGlyZWN0VVJMIjoiIiwiJHJlZGlyZWN0TmV3VGFiIjpmYWxzZSwiJHN1Ym1pdEJ1dHRvblRleHQiOiJTdWJtaXQiLCIkZW1iZWRXaWR0aCI6IjY0MCIsIiRlbWJlZEhlaWdodCI6IjYwMCIsIiRzdGFuZGFsb25lV2lkdGgiOiIxMjAwIiwiJHN0YW5kYWxvbmVNYXhXaWR0aCI6IjEwMCUiLCIkcGFnZVRpdGxlIjpudWxsLCIkY2FyZEJvcmRlclJhZGl1c1R5cGUiOiJzbWFsbCIsIiRjYXJkQm9yZGVyUmFkaXVzVG9wTGVmdCI6IiIsIiRjYXJkQm9yZGVyUmFkaXVzVG9wTGVmdERpbWVuc2lvbiI6InB4IiwiJGNhcmRCb3JkZXJSYWRpdXNUb3BSaWdodCI6IiIsIiRjYXJkQm9yZGVyUmFkaXVzVG9wUmlnaHREaW1lbnNpb24iOiJweCIsIiRjYXJkQm9yZGVyUmFkaXVzQm90dG9tUmlnaHQiOiIiLCIkY2FyZEJvcmRlclJhZGl1c0JvdHRvbVJpZ2h0RGltZW5zaW9uIjoicHgiLCIkY2FyZEJvcmRlclJhZGl1c0JvdHRvbUxlZnQiOiIiLCIkY2FyZEJvcmRlclJhZGl1c0JvdHRvbUxlZnREaW1lbnNpb24iOiJweCIsIiRpdGVtQ2FyZEJvcmRlclJhZGl1cyI6IiIsIiRzdWJ0ZXh0Q29sb3IiOiIjODQ4NDg0IiwiJHNlbGVjdGlvblRleHRDb2xvciI6IiM1NTU1NTUiLCIkc2VsZWN0aW9uQmFja2dyb3VuZENvbG9yIjoiI2Y2ZjZmNiIsIiRzZWxlY3Rpb25Cb3JkZXJDb2xvciI6IiNGMkYyRjIiLCIkc2VsZWN0aW9uVGV4dEhvdmVyQ29sb3IiOiIjNTU1NTU1IiwiJHNlbGVjdGlvbkJhY2tncm91bmRIb3ZlckNvbG9yIjoiI0ZGRkZGRiIsIiRzZWxlY3Rpb25Cb3JkZXJIb3ZlckNvbG9yIjoiI0YyRjJGMiIsIiRxdWFudGl0eVRleHRDb2xvciI6IiM1NTU1NTUiLCIkcXVhbnRpdHlCYWNrZ3JvdW5kQ29sb3IiOiIjRjJGMkYyIiwiJHRvdGFsc1ByaW1hcnlUZXh0Q29sb3IiOiIjMDEwMDAxIiwiJHRvdGFsc1NlY29uZGFyeVRleHRDb2xvciI6IiM1NTU1NTUiLCIkdG90YWxzQmFja2dyb3VuZENvbG9yIjoicmdiYSg0NiwgNDUsIDQ2LCAwLjEwKSIsIiRzZWxlY3Rpb25IaWdobGlnaHRCb3JkZXJDb2xvciI6IiMwMTAwMDEiLCIkaGlnaGxpZ2h0TGFiZWxUZXh0Q29sb3IiOiIjQ0RDRENEIiwiJGhpZ2hsaWdodExhYmVsQmFja2dyb3VuZENvbG9yIjoiIzAxMDAwMSIsIiRjaGVja0JhY2tncm91bmRDb2xvciI6IiMwMTAwMDEiLCIkY2hlY2tNYXJrQ29sb3IiOiIjQ0NDQ0NDIiwiJGNob2ljZVN0ZXBCYWNrZ3JvdW5kQ29sb3IiOiIjODY4RTk2IiwiJGNob2ljZVN0ZXBUZXh0Q29sb3IiOiIjRkZGRkZGIiwiJGNob2ljZVN0ZXBCYWNrZ3JvdW5kSG92ZXJDb2xvciI6IiM3MjdCODQiLCIkY2hvaWNlU3RlcFRleHRIb3ZlckNvbG9yIjoiI0ZGRkZGRiIsIiRjaG9pY2VTdGVwQnV0dG9uQmFja2dyb3VuZENvbG9yIjoiIzAxMDAwMSIsIiRjaG9pY2VTdGVwQnV0dG9uVGV4dENvbG9yIjoiI0ZGRkZGRiIsIiRjaG9pY2VTdGVwQnV0dG9uQmFja2dyb3VuZEhvdmVyQ29sb3IiOiIjMDEwMDAxIiwiJGNob2ljZVN0ZXBCdXR0b25UZXh0SG92ZXJDb2xvciI6IiNGRkZGRkYiLCIkdGhlbWUiOiI0MDUxIiwiJGFjY2VudENvbG9yT25lIjoiI0RBREFEQSIsIiRhY2NlbnRDb2xvclR3byI6IiMwMTAwMDEifQ==</script>
401 402 <div class="card" id="forms-form-wrapper"> 403 <div class="card-header forms-form-header"> 404 <h6>Maxillopixel Diagnostics - Client Registration Form</h6> 405 </div> 406 407 <div class="card-block forms-form-block"> 408 <div class="form form-oscar"> 409 <form class="sd-form-submit sd-conditional-logic-applying form-oscar" conditions="null" custom-view="" uuid="6af5eab4-c8b8-4811-a00f-dc5f9e482e4d" company-token="eyJjb21wYW55SUQiOiI2NjEwNCIsInRpbWVzdGFtcCI6MTc5MTM0NjEwOX0=.0d90ee1780adda78ecbc994bc9f1b2ce70de15ec9d8f706dc8a148963333ca5f" id="yw0" sd-oscar-form="yw0" action="https://secure.maxillopixel.com/frm/z9ydpeBPRs8nLJd5" method="post"> 410 411 <div aria-hidden="true" style="position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden"><input type="text" name="subject_ref_a6ab5784" value="" tabindex="-1" autocomplete="off"></div> 412 <div id="requiredMessage"> 413 <div class="row form-group"> 414 <div class="col"> 415 <div class="text-muted form-required-text"><span><sd-tr uid="FIELDS_WITH" /></span> <span class="required">*</span> <span><sd-tr uid="ARE_REQUIRED" /></span></div> 416 </div> 417 </div> 418 </div> 419 420 <div id="formFields" class="form-fields-container clearfix"> 421 <div sd-form-group="d264914b-a235-4565-93a2-a64e6c09e5ca" class="form-group " id="" ng-if="[true, undefined].includes(entitiesDataVisibility["66336bd0-498b-5b78-9d33-42047c5385f2"])"><label for="field_bc618f6b-aed4-4067-bbe1-39af1abfbc45">Email (All correspondence will be sent here)<span class="required">*</span></label><input id="field_bc618f6b-aed4-4067-bbe1-39af1abfbc45" provideDefault="" ng-model="entitiesData["66336bd0-498b-5b78-9d33-42047c5385f2"]" class="form-control" type="email" name="d264914b-a235-4565-93a2-a64e6c09e5ca" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="aeac7f99-0381-43e9-9de9-fd1b521b0c45" class="form-group field_first field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["b16e6c73-2639-5066-9b26-4d2cbafa8b9e"])"><label for="field_b16e6c73-2639-5066-9b26-4d2cbafa8b9e">First Name<span class="required">*</span></label><input id="field_b16e6c73-2639-5066-9b26-4d2cbafa8b9e" provideDefault="" ng-model="entitiesData["b16e6c73-2639-5066-9b26-4d2cbafa8b9e"]" class="form-control" type="text" name="aeac7f99-0381-43e9-9de9-fd1b521b0c45" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="1f50766d-2ff4-43f0-b5af-b76c4f01a4c1" class="form-group field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["037fb0a1-778e-5289-989b-168301d9d986"])"><label for="field_037fb0a1-778e-5289-989b-168301d9d986">Last Name<span class="required">*</span></label><input id="field_037fb0a1-778e-5289-989b-168301d9d986" provideDefault="" ng-model="entitiesData["037fb0a1-778e-5289-989b-168301d9d986"]" class="form-control" type="text" name="1f50766d-2ff4-43f0-b5af-b76c4f01a4c1" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="b099b916-44c6-4e1b-a460-e18c4006c933" class="form-group " id="" ng-if="[true, undefined].includes(entitiesDataVisibility["f9b31f69-5179-4db1-ac3b-f89bfb6d4570"])"><label for="field_f9b31f69-5179-4db1-ac3b-f89bfb6d4570">Office Name<span class="required">*</span></label><input id="field_f9b31f69-5179-4db1-ac3b-f89bfb6d4570" provideDefault="" ng-model="entitiesData["f9b31f69-5179-4db1-ac3b-f89bfb6d4570"]" class="form-control" type="text" name="b099b916-44c6-4e1b-a460-e18c4006c933" /><sd-form-errors></sd-form-errors></div> <div class="html-content-wrapper form-group " id="" ng-show="[true, undefined].includes(entitiesDataVisibility['8dd63322-f173-4711-8678-7ca4a96ddf59'])"><div ng-non-bindable><div><p><br><span style="font-size: 18px;"><span style="color: rgb(242, 242, 242); font-size: 18px;"><strong>Office Address:</strong></span></span></p></div></div></div> <div sd-form-group="9542d8c1-64c7-42d5-8fd0-633c363fc2d7" class="form-group field_first field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["40ff2800-a911-5183-b0b9-1f9c7bef1af3"])"><label for="field_40ff2800-a911-5183-b0b9-1f9c7bef1af3">Street Address<span class="required">*</span></label><input id="field_40ff2800-a911-5183-b0b9-1f9c7bef1af3" provideDefault="" ng-model="entitiesData["40ff2800-a911-5183-b0b9-1f9c7bef1af3"]" class="form-control" type="text" name="9542d8c1-64c7-42d5-8fd0-633c363fc2d7" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="b5e49b6b-2399-49d9-a626-3f3b249b4f09" class="form-group field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["30fee921-9e5e-4ad9-b1a1-ddcdd1652bcb"])"><label for="field_30fee921-9e5e-4ad9-b1a1-ddcdd1652bcb">Suite #<span class="required">*</span></label><input id="field_30fee921-9e5e-4ad9-b1a1-ddcdd1652bcb" provideDefault="" ng-model="entitiesData["30fee921-9e5e-4ad9-b1a1-ddcdd1652bcb"]" class="form-control" type="text" name="b5e49b6b-2399-49d9-a626-3f3b249b4f09" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="a73e6285-7987-401c-a346-0873eb1482a0" class="form-group field_first field_third" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["e37b22e6-b69e-5c3c-bbfb-3ba4c8f8a372"])"><label for="field_e37b22e6-b69e-5c3c-bbfb-3ba4c8f8a372">City<span class="required">*</span></label><input id="field_e37b22e6-b69e-5c3c-bbfb-3ba4c8f8a372" provideDefault="" ng-model="entitiesData["e37b22e6-b69e-5c3c-bbfb-3ba4c8f8a372"]" class="form-control" type="text" name="a73e6285-7987-401c-a346-0873eb1482a0" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="fc098ea8-7a4b-46b6-a64e-09e14541d9ed" class="form-group field_third" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["6dd0b950-4308-5d1a-90f2-68208dfc6215"])"><label for="field_6dd0b950-4308-5d1a-90f2-68208dfc6215">State / Province<span class="required">*</span></label><input id="field_6dd0b950-4308-5d1a-90f2-68208dfc6215" provideDefault="" ng-model="entitiesData["6dd0b950-4308-5d1a-90f2-68208dfc6215"]" class="form-control" type="text" name="fc098ea8-7a4b-46b6-a64e-09e14541d9ed" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="9491e3a8-7088-4cd2-9726-c46aeb4494e4" class="form-group field_third" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["a10ed0c0-ebb1-5369-a876-7b96385c805b"])"><label for="field_a10ed0c0-ebb1-5369-a876-7b96385c805b">ZIP / Postal Code<span class="required">*</span></label><input id="field_a10ed0c0-ebb1-5369-a876-7b96385c805b" provideDefault="" ng-model="entitiesData["a10ed0c0-ebb1-5369-a876-7b96385c805b"]" class="form-control" type="text" name="9491e3a8-7088-4cd2-9726-c46aeb4494e4" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="018b06ef-ee83-40a5-8f7c-84639e035445" class="form-group field_first field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["573dd4ae-64c0-5a58-b0ff-de237148da40"])"><label for="field_573dd4ae-64c0-5a58-b0ff-de237148da40">Office Phone Number</label><input id="field_573dd4ae-64c0-5a58-b0ff-de237148da40" provideDefault="" ng-model="entitiesData["573dd4ae-64c0-5a58-b0ff-de237148da40"]" class="form-control" sd-phone-input="true" type="text" name="018b06ef-ee83-40a5-8f7c-84639e035445" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="7a6ef75a-5a96-4b51-908c-d8508099cb9a" class="form-group field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["2044129f-a7ca-5888-8f1b-fdfa69f2f31d"])"><label for="field_2044129f-a7ca-5888-8f1b-fdfa69f2f31d">Title</label><input id="field_2044129f-a7ca-5888-8f1b-fdfa69f2f31d" provideDefault="" ng-model="entitiesData["2044129f-a7ca-5888-8f1b-fdfa69f2f31d"]" class="form-control" type="text" name="7a6ef75a-5a96-4b51-908c-d8508099cb9a" /><sd-form-errors></sd-form-errors></div> <div sd-form-group="ccc5e6c4-0abe-4f19-bc18-7d658ec46560" class="form-group " id="" ng-if="[true, undefined].includes(entitiesDataVisibility["70d7b2dd-f0bb-43c3-9457-94f01d7af11b"])"><label for="field_9bd11eda-88ec-4d48-9eb1-97a3d4133bb9">Office Specialty</label><input type="hidden" value="" name="ccc5e6c4-0abe-4f19-bc18-7d658ec46560" id="ccc5e6c4-0abe-4f19-bc18-7d658ec46560" /><select id="field_9bd11eda-88ec-4d48-9eb1-97a3d4133bb9" label="Office Specialty" provideDefault="" ng-model="entitiesData["70d7b2dd-f0bb-43c3-9457-94f01d7af11b"]" multiple="multiple" prevent-default="entitiesData["70d7b2dd-f0bb-43c3-9457-94f01d7af11b"] != null && entitiesData["70d7b2dd-f0bb-43c3-9457-94f01d7af11b"] !== ''" class="form-control" sd-oscar-theme-select="select2" name="ccc5e6c4-0abe-4f19-bc18-7d658ec46560[]"> 422<option value="">Make a selection</option> 423<option value="General Dentistry">General Dentistry</option> 424<option value="Dental Anesthesiology">Dental Anesthesiology</option> 425<option value="Dental Public Health">Dental Public Health</option> 426<option value="Endodontics">Endodontics</option> 427<option value="Oral and Maxillofacial Pathology">Oral and Maxillofacial Pathology</option> 428<option value="Oral and Maxillofacial Surgery">Oral and Maxillofacial Surgery</option> 429<option value="Oral Medicine">Oral Medicine</option> 430<option value="Orofacial Pain">Orofacial Pain</option> 431<option value="Orthodontics">Orthodontics</option> 432<option value="Pediatric Dentistry">
432Pediatric Dentistry</option> 433<option value="Periodontics">Periodontics</option> 434<option value="Prosthodontics">Prosthodontics</option> 435</select><sd-form-errors></sd-form-errors></div> <div sd-form-group="bd6ffc2b-0e17-445c-a82c-e167a9249c21" class="form-group field_first field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["28828560-d933-4e63-ada4-f1c3f62b1893"])"><label for="field_3ca2c04d-9b3c-4903-b77a-8d9f1bb12053">Role<span class="required">*</span></label><input type="hidden" value="" name="bd6ffc2b-0e17-445c-a82c-e167a9249c21" id="bd6ffc2b-0e17-445c-a82c-e167a9249c21" /><select id="field_3ca2c04d-9b3c-4903-b77a-8d9f1bb12053" label="Role<span class="required">*</span>" provideDefault="" ng-model="entitiesData["28828560-d933-4e63-ada4-f1c3f62b1893"]" prevent-default="entitiesData["28828560-d933-4e63-ada4-f1c3f62b1893"] != null && entitiesData["28828560-d933-4e63-ada4-f1c3f62b1893"] !== ''" class="form-control" sd-oscar-theme-select="select2" name="bd6ffc2b-0e17-445c-a82c-e167a9249c21"> 436<option value="">Make a selection</option> 437<option value="Doctor - Owner">Doctor - Owner</option> 438<option value="Doctor - Associate">Doctor - Associate</option> 439<option value="Office Manager">Office Manager</option> 440<option value="Secretary">Secretary</option> 441<option value="Dental Assistant">Dental Assistant</option> 442<option value="Dental Hygienist">Dental Hygienist</option> 443<option value="Other">Other</option> 444</select><sd-form-errors></sd-form-errors></div> <div sd-form-group="3772a01c-4f34-47f3-9e0b-6128a3072d6a" class="form-group field_first field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["ad83ea48-ea5e-41d8-bbc5-e556163457b0"])"><label for="field_ea606019-890a-4571-85c7-0f3dc60fa630">CBCT Manufacturer</label><input type="hidden" value="" name="3772a01c-4f34-47f3-9e0b-6128a3072d6a" id="3772a01c-4f34-47f3-9e0b-6128a3072d6a" /><select id="field_ea606019-890a-4571-85c7-0f3dc60fa630" label="CBCT Manufacturer" provideDefault="" ng-model="entitiesData["ad83ea48-ea5e-41d8-bbc5-e556163457b0"]" multiple="multiple" prevent-default="entitiesData["ad83ea48-ea5e-41d8-bbc5-e556163457b0"] != null && entitiesData["ad83ea48-ea5e-41d8-bbc5-e556163457b0"] !== ''" class="form-control" sd-oscar-theme-select="select2" name="3772a01c-4f34-47f3-9e0b-6128a3072d6a[]"> 445<option value="">Make a selection</option> 446<option value="None/Don't Know">None/Don't Know</option> 447<option value="Other">Other</option> 448<option value="Acteon">Acteon</option> 449<option value="Carestream">Carestream</option> 450<option value="Gendex">Gendex</option> 451<option value="i-CAT">i-CAT</option> 452<option value="Instrumentarium">Instrumentarium</option> 453<option value="KaVo">KaVo</option> 454<option value="J. Morita - Accuitomo">J. Morita - Accuitomo</option> 455<option value="J. Morita - Veraview X800">J. Morita - Veraview X800</option> 456<option value="NewTom">NewTom</option> 457<option value="Planmeca">Planmeca</option> 458<option value="PreXion">PreXion</option> 459<option value="Rayscan">Rayscan</option> 460<option value="Sirona - Galileos">Sirona - Galileos</option> 461<option value="Sirona - Orthophos/Axeos">Sirona - Orthophos/Axeos</option> 462<option value="Vatech">Vatech</option> 463</select><sd-form-errors></sd-form-errors></div> <div sd-form-group="324e8722-837f-4e9a-becd-feb2a1f5dfeb" class="form-group field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["1e9814b4-e004-4f6f-b209-123102827633"])"><label for="field_2ae0617d-fe50-4898-94e2-e511acc859cb">Imaging Software</label><input type="hidden" value="" name="324e8722-837f-4e9a-becd-feb2a1f5dfeb" id="324e8722-837f-4e9a-becd-feb2a1f5dfeb" /><select id="field_2ae0617d-fe50-4898-94e2-e511acc859cb" label="Imaging Software" provideDefault="" ng-model="entitiesData["1e9814b4-e004-4f6f-b209-123102827633"]" multiple="multiple" prevent-default="entitiesData["1e9814b4-e004-4f6f-b209-123102827633"] != null && entitiesData["1e9814b4-e004-4f6f-b209-123102827633"] !== ''" class="form-control" sd-oscar-theme-select="select2" name="324e8722-837f-4e9a-becd-feb2a1f5dfeb[]"> 464<option value="">Make a selection</option> 465<option value="None/Don't Know">None/Don't Know</option> 466<option value="Other">Other</option> 467<option value="Acteon">Acteon</option> 468<option value="Anatomage - Invivo/Tx Studio">Anatomage - Invivo/Tx Studio</option> 469<option value="Carestream">Carestream</option> 470<option value="DEXIS (2D imaging)">DEXIS (2D imaging)</option> 471<option value="i-CAT Vision">i-CAT Vision</option> 472<option value="i-Dixel">i-Dixel</option> 473<option value="NewTom">NewTom</option> 474<option value="Planmeca Romexis">Planmeca Romexis</option> 475<option value="PreXion">PreXion</option> 476<option value="Rayscan">Rayscan</option> 477<option value="Sidexis XG">Sidexis XG</option> 478<option value="Sidexis 4">Sidexis 4</option> 479<option value="Vatech Ez3D-i">Vatech Ez3D-i</option> 480<option value="Vatech EzDent-i">Vatech EzDent-i</option> 481</select><sd-form-errors></sd-form-errors></div> <div sd-form-group="ab7c21fe-0d07-4adb-aee4-7dc61ec1a4ea" class="form-group field_half" id="" ng-if="[true, undefined].includes(entitiesDataVisibility["128a5ade-667d-4ea9-8b18-81e35d65449e"])"><label for="field_128a5ade-667d-4ea9-8b18-81e35d65449e">How did you hear about our practice?</label><input id="field_128a5ade-667d-4ea9-8b18-81e35d65449e" provideDefault="" ng-model="entitiesData["128a5ade-667d-4ea9-8b18-81e35d65449e"]" class="form-control" type="text" name="ab7c21fe-0d07-4adb-aee4-7dc61ec1a4ea" /><sd-form-errors></sd-form-errors></div> <div class="form-group"><div class="g-recaptcha" data-sitekey="6LdZxzEsAAAAAGxM3aT__XJ0xcI0ZMvpbuRJ6ja3" data-theme="light" data-size="normal"></div><input type="hidden" value="recaptcha" name="captchaType" id="captchaType" /></div><div sd-form-group="e2441867-32ed-4508-8807-1df271524d09" class="form-group " id="" ng-if="[true, undefined].includes(entitiesDataVisibility["ffec18c2-afed-46cb-8203-d5c44e904a28"])"><sd-form-errors></sd-form-errors></div> 482 <input ng-model="entitiesWithAppliedConditions" type="hidden" value="" name="entitiesWithAppliedConditions" id="entitiesWithAppliedConditions" /> 483 </div> 484 <div class="form-actions btn-list formActionsWithTooltip">
485 <span class="d-inline-block tooltipBlock" tabindex="0" 486 > 487 <button 488 type="submit" 489 id="submit" 490 class="btn btn-primary btn-sm form-submit-button" 491 ng-click="FormSubmit.submitClicked = "6af5eab4-c8b8-4811-a00f-dc5f9e482e4d"" 492 name="FormSubmitUUID" 493 value="6af5eab4-c8b8-4811-a00f-dc5f9e482e4d" 494 > 495 Submit </button> 496 </span> 497 </div> 498 </form> </div> 499 </div> 500 </div> 501 </div> </div> 502</div> 503 504<!--FOOTER SIMPLE--> 505 506 <!-- CUSTOM INCLUDES FOR SPECIAL PAGE --> 507 508 <!-- App Libs --> 509
509<script src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/angular-sanitize/angular-sanitize.min.js?f3c62abeec216e94" crossorigin="anonymous"></script>
509
509<script src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/angular-animate/angular-animate.min.js?5d2d0f42bb7e1b55" crossorigin="anonymous"></script>
509
509<script src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/angular-cookies/angular-cookies.js?e17187aea1f0e6db" crossorigin="anonymous"></script>
509
509<script src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/underscore/underscore-min.js?1b48e129b7c00aa1" crossorigin="anonymous"></script>
509
509<script src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/tinycolor2/dist/tinycolor-min.js?5b79a83b26977a7a" crossorigin="anonymous"></script>
509
509<script src="https://d3rplhd9p4snt0.cloudfront.net/js/underscore-ext.js?51e9a6df22d" crossorigin="anonymous"></script>
509 510
510<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/libs.bundle.min.js?51e9a6df22d" crossorigin="anonymous"></script>
510
510<script src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/custom/common.js?51e9a6df22d" crossorigin="anonymous"></script>
510 511
511<script src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bootstrap.min.js?51e9a6df22d" crossorigin="anonymous"></script>
511 512 513 514
514<script type="text/ng-template" id="defaultAvatar.html" role="1" assign-to-window="0"><svg class="userAvatar" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"> 515 <path class="contact-avatar-path contact-avatar-light" d="M336 128a112 112 0 1 0 -224 0 112 112 0 1 0 224 0zM96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM16 516 482.3c0 7.6 6.1 13.7 13.7 13.7H418.3c7.6 0 13.7-6.1 13.7-13.7C432 392.7 359.3 320 269.7 320H178.3C88.7 320 16 517 392.7 16 482.3zm-16 0C0 383.8 79.8 304 178.3 304h91.4C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 518 29.7H29.7C13.3 512 0 498.7 0 482.3z"/> 519</svg> 520</script>
vendor: 1 bytes, line 520
520
521<script type="text/ng-template" id="companyAvatar.html" role="1" assign-to-window="0"><svg class="svg-icon--buildings"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#buildings"></use></svg></script>
vendor: 1 bytes, line 521
521
522<script type="text/ng-template" id="ribbonNotificationsTpl.html" role="1" assign-to-window="0"><div class="ribbon-notify" ng-class="{'ribbon-notify__block-shown' : showRibbonContent}"> 523 <div class="ribbon-notify__inner-wrap" 524 > 525 <div class="ribbon-notify__title" ng-click="showRibbonContent = !showRibbonContent"> 526 <div class="ribbon-notify__title-content"> 527 <sd-tr uid="NEEDS_ATTENTION"></sd-tr> 528 </div> 529 <span class="ribbon-notify__icon ribbon-notify__icon--exclamation">!</span> 530 <span class="ribbon-notify__icon ribbon-notify__icon--down-arrow"></span> 531 </div> 532 </div> 533</div> 534<div class="ribbon-notify__list-block"> 535 <div class="ribbon-notify__item-progress"> 536 <span><sd-tr uid="NEEDS_ATTENTION"></sd-tr></span> 537 <!--<span class="ribbon-notify__item-progress-bar" style="width:30%;"></span>--> 538 </div> 539 <ul class="ribbon-notify__list d-flex flex-column"> 540 <li class="ribbon-notify__item" ng-repeat="(key, notification) in ribbonNotifications"> 541 <a class="ribbon-notify__link d-flex justify-content-between align-items-center" ng-href="{{notification.link}}" target="{{notification.newTab ? '_blank' : '_self'}}"> 542 <span class="ribbon-notify__link-icon ribbon-notify__link-icon-left"> 543 <i ng-class="notification.iconClass"></i> 544 </span> 545 <div class="d-flex flex-column mr-auto"> 546 <span class="ribbon-notify__link-title">{{notification.subject}}</span> 547 <div class="ribbon-notify__link-next">{{notification.text}}</div> 548 </div> 549 <span class="ribbon-notify__link-icon ribbon-notify__link-icon-right"></span> 550 </a> 551 </li> 552 </ul> 553 <span class="ribbon-notify__icon ribbon-notify__icon--down-arrow" 554 ng-click="showRibbonContent = !showRibbonContent"></span> 555</div> 556</script>
vendor: 1 bytes, line 556
556
557<script type="text/ng-template" id="ngIncludeModal.html" role="1" assign-to-window="0"><div class="modal-header" ng-class="[$modal.headerClass]" ng-show="$modal.title"> 558 <h3 class="modal-title" id="modal-title" ng-bind-html="$modal.title | trustSvg"></h3> 559 <div ng-bind-html="$modal.headerContent" class="modal-header-content"></div> 560 <button type="button" class="btn btn-icon btn-icon--nude expand-shrink" ng-click="$toggleFullWidth($event)" ng-if="$modal.showFullscreen"> 561 <span class="expand-modal"><svg class="svg-icon--maximize-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#maximize-2"></use></svg></span> 562 <span class="shrink-modal"><svg class="svg-icon--minimize-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#minimize-2"></use></svg></span> 563 </button> 564 <button class="modal-close-btn btn-link" ng-click="$close()" ng-hide="$modal.hideCloseButton"> 565 <span class="btn-close-element"></span> 566 </button> 567</div> 568<div class="modal-include-wrapper ng-class: $modal.bodyClass;" ng-class="{'include-loading':ngIncludeLoading}"> 569 <inline-loader-block ng-if="ngIncludeLoading" class="inline-loading-block__center"></inline-loader-block> 570 <div ng-if="ngIncludeError" class="alert alert-danger m-3" ng-bind="ngIncludeError"></div> 571 <ng-include src="ngIncludeSrc" onload="ngIncludeLoading = false"></ng-include> 572</div> 573</script>
vendor: 1 bytes, line 573
573
574<script type="text/ng-template" id="attachmentsModal.html" role="1" assign-to-window="0"><div class="modal-header" ng-class="[$modal.headerClass]" ng-show="$modal.title" sd-attachment-modal> 575 <h3 class="modal-title" id="modal-title" ng-bind-html="$modal.title | trustSvg"></h3> 576 <div class="modal-header-content"> 577 <span class="button button-sm button-px button-icon-bold download-all" ng-click="downloadAllEventDispatch()" 578 ng-show="enableDownloadAll && (value.length + uploads.length) > 1"> 579 <svg class="svg-icon--archive"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#archive"></use></svg>Download All </span> 580 </div> 581 <button class="modal-close-btn btn-link" ng-click="$close()" ng-hide="$modal.hideCloseButton"> 582 <span class="btn-close-element"></span> 583 </button> 584</div> 585<div class="modal-include-wrapper ng-class: $modal.bodyClass;" ng-class="{'include-loading':ngIncludeLoading}"> 586 <inline-loader-block ng-if="ngIncludeLoading" class="inline-loading-block__center"></inline-loader-block> 587 <div ng-if="ngIncludeError" class="alert alert-danger m-3" ng-bind="ngIncludeError"></div> 588 <ng-include src="ngIncludeSrc" onload="ngIncludeLoading = false"></ng-include> 589</div> 590</script>
vendor: 1 bytes, line 590
590
591<script type="text/ng-template" id="ngNewModal.html" role="1" assign-to-window="0"><div class="new-modal-header new-modal-size" ng-class="[$modal.headerClass]" ng-show="$modal.title"> 592 <h3 class="modal-title" id="modal-title" ng-bind-html="$modal.title | trustSvg"></h3> 593 <button class="modal-close-btn btn-link" ng-click="$close()" ng-hide="$modal.hideCloseButton"> 594 <i class="material-icons">close</i> 595 </button> 596</div> 597<div class="new-modal-include-wrapper new-modal-size ng-class: $modal.bodyClass;" ng-class="{'include-loading':ngIncludeLoading}"> 598 <inline-loader-block ng-if="ngIncludeLoading" class="inline-loading-block__center"></inline-loader-block> 599 <div ng-if="ngIncludeError" class="alert alert-danger m-3" ng-bind="ngIncludeError"></div> 600 <ng-include src="ngIncludeSrc" onload="ngIncludeLoading = false"></ng-include> 601</div> 602</script>
vendor: 1 bytes, line 602
602
603<script type="text/ng-template" id="ngNewModal2.html" role="1" assign-to-window="0"><div class="new-modal-header new-modal-size" ng-class="[$modal.headerClass]"> 604 <ng-include src="$modal.headerTemplate"></ng-include> 605</div> 606<div class="new-modal-include-wrapper new-modal-size ng-class: $modal.bodyClass;" ng-class="{'include-loading':ngIncludeLoading}"> 607 <inline-loader-block ng-if="ngIncludeLoading" class="inline-loading-block__center"></inline-loader-block> 608 <div ng-if="ngIncludeError" class="alert alert-danger m-3" ng-bind="ngIncludeError"></div> 609 <ng-include src="ngIncludeSrc" onload="ngIncludeLoading = false"></ng-include> 610</div> 611</script>
vendor: 1 bytes, line 611
611
612<script type="text/ng-template" id="sdSidebarTemplate.html" role="1" assign-to-window="0"><div class="RightBar"> 613 <!--BEGIN of sidebar header || FIXED ON TOP--> 614 <div class="RightBar__header" ng-hide="$sidebar.hideHeader"> 615 <button class="back" ng-click="$close()" ng-show="$sidebar.showBackButton"> 616 <svg class="svg-icon--chevron-left"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#chevron-left"></use></svg> </button> 617 <h2 class="RightBar__title" id="modal-title" ng-show="$sidebar.title" ng-bind-html="$sidebar.title | trustSvg" ng-class="{'with-back' : $sidebar.showBackButton}"></h2> 618 <div class="sidebar-header-additional-content" ng-bind-html="$sidebar.headerContent | trustSvg"></div> 619 <div ng-if="$sidebar.activeHeaderContent" cbe-compile="$sidebar.activeHeaderContent"></div> 620 <div class="sidebar-header-compiled" ng-if="$sidebar.compiledHeaderContent" sd-compile-bind-html="$sidebar.compiledHeaderContent | trustSvg"></div> 621 <button class="close" ng-click="$close()" ng-hide="$sidebar.hideCloseButton"> 622<!-- <span class="close__icon"></span>--> 623 <svg class="svg-icon--xmark"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#xmark"></use></svg> </button> 624 </div> 625 <!--END of sidebar header || FIXED ON TOP--> 626 627 <!--BEGIN of sidebar BODY--> 628 <div class="RightBar__body ng-class: $sidebar.bodyClass;" ng-class="{'include-loading':ngIncludeLoading}"> 629 <!--BEGIN of sidebar form || form--modificator - dynamic class, by this we can modify form if needs only for current part--> 630 <form class="RightBar__form form form--modificator d-none" action="" > 631 632 <!--BEGIN of sidebar Save Message || FIXED ON TOP--> 633 <div class="save-message"> 634 <i class="fa-light fa-floppy-disk"></i> 635 <span>Click/Tap anywhere in this area to save</span> 636 </div> 637 <!--End of sidebar Save Message --> 638 639 <!--BEGIN of sidebar content --> 640 <div class="RightBar__content"> 641 <!--BEGIN dynamic content start--> 642 <div class="form-group row mb-4"> 643 <div class="col-12"> 644 <label for="Course_title" class="required">Title <span class="required">*</span></label> 645 </div> 646 <div class="col-12"> 647 <input type="text" class="form-control" placeholder="Placeholder"> 648 </div> 649 </div> 650 <div class="form-group row mb-4"> 651 <div class="col-12"> 652 <label for="Course_title" class="required">Title <span class="required">*</span></label> 653 </div> 654 <div class="col-12"> 655 <input type="text" class="form-control" placeholder="Placeholder"> 656 </div> 657 </div> 658 <div class="form-group row mb-4"> 659 <div class="col-12"> 660 <label for="Course_title" class="required">Title <span class="required">*</span></label> 661 </div> 662 <div class="col-12"> 663 <input type="text" class="form-control" placeholder="Placeholder"> 664 </div> 665 </div> 666 <!-- END dynamic content start--> 667 </div> 668 <!--End of sidebar content --> 669 670 <!--BEGIN of sidebar form footer || FIXED ON BOTTOM --> 671 <div class="RightBar__footer"> 672 <div class="RightBar__footer-bar"> 673 <button type="submit" class="btn btn btn-primary">Save</button> 674 <button type="submit" class="btn btn-outline-default ml-auto">Cancel</button> 675 </div> 676 </div> 677 <!--END of sidebar form footer --> 678 </form> 679 <!--End of sidebar form --> 680 <inline-loader-block ng-if="ngIncludeLoading" class="inline-loading-block__center"></inline-loader-block> 681 <ng-include src="ngIncludeSrc" onload="ngIncludeLoading = false" style="height: 100%"></ng-include> 682 </div> 683 <!--END of sidebar BODY--> 684</div> 685</script>
vendor: 1 bytes, line 685
685
686<script type="text/ng-template" id="attachmentsSidebarTemplate.html" role="1" assign-to-window="0"><div class="modal-bottom-bar-wrap" sd-attachment-modal> 687 <!--BEGIN of sidebar header || FIXED ON TOP--> 688 <div class="modal-header" ng-hide="$sidebar.hideHeader"> 689 <h3 class="modal-title" id="modal-title" ng-show="$sidebar.title" ng-bind-html="$sidebar.title | trustSvg" ng-class="{'with-back' : $sidebar.showBackButton}"></h3> 690 <div class="modal-header-additional-content"> 691 <button type="button" class="btn btn-icon" ng-click="downloadAllEventDispatch()" ng-show="enableDownloadAll && (value.length + uploads.length) > 1"> 692 <svg class="svg-icon--archive"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#archive"></use></svg>Download All </button> 693 <button type="button" class="btn btn-icon btn-icon--nude expand-shrink" ng-click="$toggleFullWidth()" ng-hide="$sidebar.hideFullscreen"> 694 <span class="expand-modal"><svg class="svg-icon--maximize-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#maximize-2"></use></svg></span> 695 <span class="shrink-modal"><svg class="svg-icon--minimize-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#minimize-2"></use></svg></span> 696 </button> 697 </div> 698 <button class="btn btn-icon modal-close-btn" ng-click="$close()" ng-hide="$sidebar.hideCloseButton"> 699 <svg class="svg-icon--xmark"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#xmark"></use></svg> </button> 700 </div> 701 <!--END of sidebar header || FIXED ON TOP--> 702 703 <!--BEGIN of sidebar BODY--> 704 <div class="modal-include-wrapper modal-sticky-footer ng-class: $sidebar.bodyClass;" ng-class="{'include-loading':ngIncludeLoading}"> 705 <!--BEGIN of sidebar form || form--modificator - dynamic class, by this we can modify form if needs only for current part--> 706 <form class="d-none" action="" > 707 708 <!--BEGIN of sidebar Save Message || FIXED ON TOP--> 709 <div class="save-message"> 710 <i class="fa-light fa-floppy-disk"></i> 711 <span>Click/Tap anywhere in this area to save</span> 712 </div> 713 <!--End of sidebar Save Message --> 714 715 <!--BEGIN of sidebar content --> 716 <div class="RightBar__content"> 717 <!--BEGIN dynamic content start--> 718 <div class="form-group row mb-4"> 719 <div class="col-12"> 720 <label for="Course_title" class="required">Title <span class="required">*</span></label> 721 </div> 722 <div class="col-12"> 723 <input type="text" class="form-control" placeholder="Placeholder"> 724 </div> 725 </div> 726 <div class="form-group row mb-4"> 727 <div class="col-12"> 728 <label for="Course_title" class="required">Title <span class="required">*</span></label> 729 </div> 730 <div class="col-12"> 731 <input type="text" class="form-control" placeholder="Placeholder"> 732 </div> 733 </div> 734 <div class="form-group row mb-4"> 735 <div class="col-12"> 736 <label for="Course_title" class="required">Title <span class="required">*</span></label> 737 </div> 738 <div class="col-12"> 739 <input type="text" class="form-control" placeholder="Placeholder"> 740 </div> 741 </div> 742 <!-- END dynamic content start--> 743 </div> 744 <!--End of sidebar content --> 745 746 <!--BEGIN of sidebar form footer || FIXED ON BOTTOM --> 747 <div class="RightBar__footer"> 748 <div class="RightBar__footer-bar"> 749 <button type="submit" class="btn btn btn-primary">Save</button> 750 <button type="submit" class="btn btn-outline-default ml-auto">Cancel</button> 751 </div> 752 </div> 753 <!--END of sidebar form footer --> 754 </form> 755 <!--End of sidebar form --> 756 <inline-loader-block ng-if="ngIncludeLoading" class="inline-loading-block__center"></inline-loader-block> 757 <ng-include src="ngIncludeSrc" onload="ngIncludeLoading = false" style="height: 100%"></ng-include> 758 </div> 759 <!--END of sidebar BODY--> 760</div> 761</script>
vendor: 1 bytes, line 761
761
762<script type="text/ng-template" id="tombstoneTemplate.html" role="1" assign-to-window="0"><div class="modal-bottom-bar-wrap" sd-attachment-modal> 763 <!--BEGIN of sidebar header || FIXED ON TOP--> 764 <div class="modal-header" ng-hide="$sidebar.hideHeader"> 765 <h3 class="modal-title" id="modal-title" ng-show="$sidebar.title" ng-bind-html="$sidebar.title | trustSvg" ng-class="{'with-back' : $sidebar.showBackButton}"></h3> 766 <div class="modal-header-additional-content"> 767 <button type="button" class="btn btn-icon btn-icon--nude expand-shrink" ng-click="$toggleFullWidth()" ng-hide="$sidebar.hideFullscreen"> 768 <span class="expand-modal"><svg class="svg-icon--maximize-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#maximize-2"></use></svg></span> 769 <span class="shrink-modal"><svg class="svg-icon--minimize-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#minimize-2"></use></svg></span> 770 </button> 771 </div> 772 <button class="btn btn-icon modal-close-btn" ng-click="$close()" ng-hide="$sidebar.hideCloseButton"> 773 <svg class="svg-icon--xmark"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#xmark"></use></svg> </button> 774 </div> 775 <!--END of sidebar header || FIXED ON TOP--> 776 777 <!--BEGIN of sidebar BODY--> 778 <div class="modal-include-wrapper modal-sticky-footer ng-class: $sidebar.bodyClass;" ng-class="{'include-loading':ngIncludeLoading}"> 779 <!--BEGIN of sidebar form || form--modificator - dynamic class, by this we can modify form if needs only for current part--> 780 <form class="d-none" action="" > 781 782 <!--BEGIN of sidebar Save Message || FIXED ON TOP--> 783 <div class="save-message"> 784 <i class="fa-light fa-floppy-disk"></i> 785 <span>Click/Tap anywhere in this area to save</span> 786 </div> 787 <!--End of sidebar Save Message --> 788 789 <!--BEGIN of sidebar content --> 790 <div class="RightBar__content"> 791 <!--BEGIN dynamic content start--> 792 <div class="form-group mb-4"> 793 <label for="Course_title" class="required">Title <span class="required">*</span></label> 794 <input type="text" class="form-control" placeholder="Placeholder"> 795 </div> 796 <div class="form-group mb-4"> 797 <label for="Course_title" class="required">Title <span class="required">*</span></label> 798 <input type="text" class="form-control" placeholder="Placeholder"> 799 </div> 800 <div class="form-group mb-4"> 801 <label for="Course_title" class="required">Title <span class="required">*</span></label> 802 <input type="text" class="form-control" placeholder="Placeholder"> 803 </div> 804 <!-- END dynamic content start--> 805 </div> 806 <!--End of sidebar content --> 807 808 <!--BEGIN of sidebar form footer || FIXED ON BOTTOM --> 809 <div class="modal-sticky-footer__footer"> 810 <button type="submit" class="modal-sticky-footer__btn--primary"> 811 <svg class="modal-sticky-footer__icon svg-icon--floppy-disk"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#floppy-disk"></use></svg>Save </button> 812 <button type="submit" class="modal-sticky-footer__btn--default"> 813 <svg class="modal-sticky-footer__icon svg-icon--xmark"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#xmark"></use></svg>Cancel </button> 814 </div> 815 <!--END of sidebar form footer --> 816 </form> 817 <!--End of sidebar form --> 818 <inline-loader-block ng-if="ngIncludeLoading" class="inline-loading-block__center"></inline-loader-block> 819 <ng-include src="ngIncludeSrc" onload="ngIncludeLoading = false"></ng-include> 820 </div> 821 <!--END of sidebar BODY--> 822</div> 823</script>
vendor: 1 bytes, line 823
823
824<script type="text/ng-template" id="/fa/template/fileBrowser" role="1" assign-to-window="0"><div 825 class="sd-file-browser" 826 ngf-multiple="true" 827 ngf-drop="Files.processUploads()" 828 sdf-folder-drop 829 ng-model="Files.uploads" 830 ngf-keep="'distinct'" 831 ngf-fix-orientation="true" 832 ng-class="{ 833 'no-select': !Files.$canSelect 834 }"> 835 836 <sdf-include src="/fa/template/browser/toolbar"></sdf-include> 837 <sdf-include src="/fa/template/browser/space_quota"></sdf-include> 838 <sdf-include src="/fa/template/browser/main"></sdf-include> 839</div> 840</script>
vendor: 1 bytes, line 840
840
841<script type="text/ng-template" id="/fa/template/browser/main" role="1" assign-to-window="0"><div class="browser-wrap" ng-switch="Files.status"> 842 <sdf-include src="/fa/template/browser/header"></sdf-include> 843 <div class="text-muted px-3 py-2" ng-switch-when="1" ng-if="Files.listTruncated"> 844 Showing {{Files.listShown}} of {{Files.listTotal}} Results <a href="" class="ml-2" ng-click="Files.loadNextPage()" ng-disabled="Files.loadingNextPage">Load more</a> 845 </div> 846 <!-- The grid is this same list wearing a different class, never a second template. That is 847 what makes every row type — files, aliases, specials — and folders-as-tiles (BR7) come 848 along, and it keeps one place where a row is defined. A row is tracked by its id AND its 849 picture address: the address is bound once per row at the size the current view displays, 850 and a flip re-lists the folder at the other size, so a row whose address changed has to be 851 rebuilt for the new picture to reach the screen at all. Keyed on the address rather than 852 the view, because the view flips optimistically before the re-list answers. --> 853 <ul class="browser-list" ng-class="{'browser-list--grid': Files.viewMode === 'grid'}" ng-switch-when="1"> 854 <li file-entity="alias" class="entity-wrap" uuid="{{Entity.uuid}}" ng-repeat="Entity in Files.aliasedFiles | filter:Files.$aliasSearch | orderBy:'$sort' | limitTo:Files.visibleCount track by (Entity.tid + (Entity.item.preview || ''))"></li> 855 <li file-entity="alias" class="entity-wrap" uuid="{{Entity.uuid}}" ng-repeat="Entity in Files.currentFiles | filter:Files.$aliasSearch | filter:Files.$defaultFolders | orderBy:Files.$sort | limitTo:Files.visibleCount as $filesOrdered track by (Entity.tid + (Entity.item.preview || ''))"></li> 856 <li file-entity="special" class="entity-wrap" uuid="{{Entity.uuid}}" ng-repeat="Entity in Files.specialFiles | limitTo:Files.visibleCount track by (Entity.tid + (Entity.item.preview || ''))"></li> 857 <li file-entity class="entity-wrap" uuid="{{Entity.uuid}}" ng-repeat="Entity in Files.currentFiles | filter:Files.$search | filter:Files.$generalFolders | orderBy:Files.$sort | limitTo:Files.visibleCount as $filesOrdered track by (Entity.tid + (Entity.item.preview || ''))"></li> 858 <li empty-entity class="entity-wrap empty-wrap" ng-if="Files.emptyList || !(Files.currentFiles.length || $filesOrdered.length || Files.aliasedFiles.length || Files.specialFiles.length)" ng-repeat="empty in Files.emptyEntities"></li> 859 </ul> 860 <div sd-infinite-scroll visible-items-count="Files.visibleCount" visible-items-step="50" ng-switch-when="1"></div> 861 <div class="browser-error d-flex justify-content-center" ng-switch-when="2"> 862 <file-icon icon="file-not-exist" size="{w:250}" class="mt-4" ></file-icon> 863 </div> 864</div> 865</script>
vendor: 1 bytes, line 865
865
866<script type="text/ng-template" id="/fa/template/browser/toolbar" role="1" assign-to-window="0"><div class="toolbar-wrap"> 867 <div class="toolbar"> 868 <sdf-include src="/fa/template/browser/navigation"></sdf-include> 869 <sdf-include src="/fa/template/browser/operations"></sdf-include> 870 </div> 871</div> 872</script>
vendor: 1 bytes, line 872
872
873<script type="text/ng-template" id="/fa/template/browser/space_quota" role="1" assign-to-window="0"><div class="space-quota-exceeded" ng-if="Files.spaceQuotaExceeded"> 874 File storage is full. Please contact your account administrator to upload new files.</div> 875</script>
vendor: 1 bytes, line 875
875
876<script type="text/ng-template" id="/fa/template/aliasedEntity" role="1" assign-to-window="0"><div class="entity"> 877 878 <div class="select"></div> 879 880 <div class="icon" ng-init="ict = !Entity.item.svg ? 1 : 2" ng-switch="::ict" ng-click="Entity.click()"> 881 <!-- The row's own picture. Sits over the type symbol and stays invisible until it has 882 actually arrived, so a file with no preview — not rendered yet, unrenderable, or a 883 store that is not configured — simply keeps the symbol it already had. `loading="lazy"` 884 is what keeps a folder of three hundred files from fetching three hundred pictures: 885 only the rows someone scrolls to are ever requested. One-time binding, because a row's 886 preview address cannot change without the row itself being rebuilt. --> 887 <div class="entity-thumb" ng-if="::Entity.item.preview"> 888 <img sd-preview-thumb ng-src="{{::Entity.item.preview}}" alt="" loading="lazy" decoding="async"> 889 </div> 890 <div class="icon-wrapper"> 891 <i class="folder-fa-icon" ng-class="[Entity.item.icon || '']" ng-switch-when="1"></i> 892 <file-icon ng-switch-when="2" icon="{{Entity.item.svg}}" shortcut="{{Entity.item.isShortcut}}"></file-icon> 893 </div> 894 </div> 895 896 <div class="title" ng-click="Entity.click()"> 897 <div class="inner-title d-flex justify-content-between w-100" ng-class="{meta:Entity.item.meta || !Entity.item.isDirectory}"> 898 <span class="title-label flex-1" ng-hide="Entity.$renaming">{{Entity.name}}</span> 899 <span class="entity-meta" ng-if="Entity.item.meta"> 900 <entity-meta meta="Entity.item.meta"></entity-meta> 901 </span> 902 <span class="entity-meta" ng-if="!Entity.item.isDirectory"> 903 <ul> 904 <li> 905 <span> <sd-tr uid="FILE_SIZE"></sd-tr>: {{formatBytes(Entity.item.size)}}</span> 906 </li> 907 <li ng-if="Entity.item.modified"> 908 <span> <sd-tr uid="LAST_MODIFIED" ></sd-tr>: {{Entity.item.formattedModified}}</span> 909 </li> 910 <li ng-if="!Entity.item.modified"> 911 <span> <sd-tr uid="CREATED" ></sd-tr>: {{Entity.item.formattedCreated}}</span> 912 </li> 913 </ul> 914 </span> 915 </div> 916 </div> 917 <div class="dropdown"></div> 918</div> 919</script>
vendor: 1 bytes, line 919
919
920<script type="text/ng-template" id="/fa/template/entity" role="1" assign-to-window="0"><div class="entity"> 921 922 <div class="select" ng-class="{selection:Files.selectedItems.length}" ng-show="::Files.$canSelect"> 923 <input type="checkbox" ng-model="Entity.selected" ng-change="Files.toggleSelected(Entity)"/> 924 </div> 925 926 <div class="icon" ng-init="icon = Entity.item.svg ? 1 : (Entity.isDirectory ? 2 : 3)" 927 ng-switch="::icon" ng-click="Entity.click()"> 928 <!-- The row's own picture. Sits over the type symbol and stays invisible until it has 929 actually arrived, so a file with no preview — not rendered yet, unrenderable, or a 930 store that is not configured — simply keeps the symbol it already had. `loading="lazy"` 931 is what keeps a folder of three hundred files from fetching three hundred pictures: 932 only the rows someone scrolls to are ever requested. One-time binding, because a row's 933 preview address cannot change without the row itself being rebuilt. --> 934 <div class="entity-thumb" ng-if="::Entity.item.preview"> 935 <img sd-preview-thumb ng-src="{{::Entity.item.preview}}" alt="" loading="lazy" decoding="async"> 936 </div> 937 <div class="icon-wrapper pl-2" ng-switch-when="1"> 938 <file-icon icon="{{Entity.item.svg}}"></file-icon> 939 </div> 940 <div class="icon-wrapper" ng-switch-when="2"> 941 <i class="folder-fa-icon" ng-if="!Entity.item.icon2" ng-class="[Entity.item.icon || '']"></i> 942 <i class="folder-fa-icon" ng-if="Entity.item.icon2" ng-class="[Entity.item.icon2]"></i> 943 </div> 944 <div class="icon-wrapper" ng-switch-when="3"> 945 <i class="material-icons" 946 ng-if="!Entity.item.extension">{{Entity.item.icon || 'description'}}</i> 947 <file-icon ng-if="Entity.item.extension" versioned="Entity.item.versions.length > 0" 948 file-type="{{Entity.item.extension}}" shortcut="{{Entity.item.isShortcut}}"></file-icon> 949 </div> 950 </div> 951 952 <div class="title" ng-click="Entity.click()"> 953 <div class="inner-title d-flex justify-content-between w-100" ng-class="{meta:Entity.item.meta || !Entity.item.isDirectory || Entity.item.active == 2 || Entity.item.active == 3}"> 954 <span class="title-label flex-1" ng-hide="Entity.$renaming">{{Entity.name}}</span> 955 <span class="entity-meta" ng-if="::Entity.item.meta"> 956 <entity-meta meta="::Entity.item.meta"></entity-meta> 957 </span> 958 <span class="entity-meta" ng-if="!Entity.item.isDirectory || Entity.item.active == 2 || Entity.item.active == 3"> 959 <ul> 960 <li ng-if="!Entity.item.isDirectory"> 961 <span> <sd-tr uid="FILE_SIZE"></sd-tr>: {{formatBytes(Entity.item.size)}}</span> 962 </li> 963 <li ng-if="Entity.item.modified && Entity.item.active == 1"> 964 <span> <sd-tr uid="LAST_MODIFIED" ></sd-tr>: {{Entity.item.formattedModified}}</span> 965 </li> 966 <li ng-if="Entity.item.active == 2 || Entity.item.active == 3"> 967 <span> <sd-tr uid="DELETED" ></sd-tr>: {{Entity.item.deleted ? Entity.item.formattedDeleted : Entity.item.formattedModified}}</span> 968 </li> 969 <li ng-if="!Entity.item.modified && Entity.item.active == 1"> 970 <span> <sd-tr uid="CREATED" ></sd-tr>: {{Entity.item.formattedCreated}}</span> 971 </li> 972 </ul> 973 </span> 974 </div> 975 </div> 976 977 <div class="statistics" ng-if="Entity.item.statistics"> 978 <div ng-repeat="statistics in Entity.item.statistics"> 979 <div class="file-transfer-stats-value">{{statistics.value}}</div> 980 <div class="file-transfer-stats-label">{{statistics.title}}</div> 981 </div> 982 </div> 983 984 <div class="dropdown" entity-dropdown> 985 <button class="sd-btn sd-btn-wide-primary-32px" data-toggle="dropdown"> 986 <i class="material-icons pr-0">more_vert</i> 987 </button> 988 <div class="dropdown-menu dropdown-left dropdown-menu-with-icons file-entity-dropdown"> 989 <button class="dropdown-item" ng-show="::Entity.$canRename" ng-click="Entity.rename()"> 990 <svg class="svg-icon--edit"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#edit"></use></svg> <sd-tr uid="FILES_OPERATION_RENAME_FILE"></sd-tr> 991 </button> 992 <button class="dropdown-item" ng-show="::Entity.$canShare && Entity.isDirectory" ng-click="Entity.createShare()"> 993 <svg class="svg-icon--share-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#share-2"></use></svg> <span ng-if="::!Entity.item.share"><sd-tr uid="SHARE_FOLDER"></sd-tr></span><span ng-if="::Entity.item.share"><sd-tr uid="MANAGE_SHARING"></sd-tr></span> 994 </button> 995 <button class="dropdown-item" ng-show="::Entity.$canDownload" ng-click="Entity.download()"> 996 <svg class="svg-icon--download"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#download"></use></svg> <sd-tr uid="DOWNLOAD"></sd-tr> 997 </button> 998 999 <a class="dropdown-item" ng-show="Entity.item.originalLink" ng-href="{{Entity.item.originalLink}}" target="_blank"> 1000 <svg class="svg-icon--download"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#download"></use></svg> <sd-tr uid="OPEN_ORIGINAL_DIRECTORY"></sd-tr> 1001 </a> 1002 1003 <button 1004 type="button" 1005 class="dropdown-item" 1006 ngf-select="Entity.uploadVersion($file)" 1007 ngf-pattern="'{{'.' + Entity.extension}}'" 1008 ngf-model-options="{allowInvalid: true}" 1009 ngf-fix-orientation="true" 1010 ngf-multiple="false" 1011 ng-show="::!Entity.isDirectory && Entity.item.isShortcut != 1 && Files.$canUpload"><svg class="svg-icon--upload"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#upload"></use></svg><span> <sd-tr uid="NEW_VERSION"></sd-tr></span></button> 1012 1013 <button 1014 type="button" 1015 class="dropdown-item" 1016 ng-click="Entity.viewVersions()" 1017 ng-show="!Entity.isDirectory && Entity.item.active == 1 && Entity.item.isShortcut != 1 && Entity.item.versions.length"><svg class="svg-icon--git-branch"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#git-branch"></use></svg> <span> <sd-tr uid="VIEW_VERSIONS"></sd-tr></span></button> 1018 1019 <entity-action 1020 type="button" 1021 class="dropdown-item" 1022 ng-repeat="action in ::Entity.actions"> 1023 </entity-action> 1024 1025 1026 </div> 1027 </div> 1028</div> 1029</script>
vendor: 1 bytes, line 1029
1029
1030<script type="text/ng-template" id="/fa/template/browser/operations" role="1" assign-to-window="0"><div class="toolbar-operations operations-panel" ng-class="{noop:Files.noOps && Files.noOpsText}"> 1031 <div class="noop-text"><span>{{Files.noOpsText}}</span></div> 1032 <div class="operations folder-operations" 1033 ng-hide="Files.selectedItems.length || Files.noOps || 1034 (!Files.$canUpload && !Files.$canMkdir && !Files.$canMkdir2 && !Files.$canShare && !Files.$canRequest && !Files.spaceQuotaExceeded && !Files.$canTransfer)"> 1035 1036 <button 1037 type="button" 1038 class="sd-btn sd-btn-wide-primary-32px no-animate" 1039 ngf-select="Files.processUploads()" 1040 ngf-multiple="true" 1041 ngf-keep="'distinct'" 1042 ng-show="Files.$canUpload" 1043 ng-model="Files.uploads" 1044 ng-disabled="Files.spaceQuotaExceeded" 1045 ng-class="{disabled: Files.spaceQuotaExceeded}" 1046 ngf-fix-orientation="true"> 1047 <i class="fa-light fa-cloud-arrow-up fal-icon-without-text"></i> 1048 <span class="link-embed-edit-button-text">{{Files.$ATTRS('upload') || "Upload Files"}}</span> 1049 </button> 1050 <button 1051 type="button" 1052 class="sd-btn sd-btn-wide-primary-32px no-animate" 1053 ng-show="Files.$canMkdir" 1054 ng-click="Files.createNewFolder()"> 1055 <i class="fa-light fa-folder-tree fal-icon-without-text"></i> 1056 <span class="link-embed-edit-button-text">{{Files.$ATTRS('mkdir') || "New Folder"}}</span> 1057 </button> 1058 <button 1059 type="button" 1060 class="sd-btn sd-btn-wide-primary-32px no-animate" 1061 ng-show="Files.$canMkdir2" 1062 ng-click="Files.createNewFolder(true)"> 1063 <i class="fal-icon-without-text" ng-class="Files.$newFolderPresentation.icon || 'fa-light fa-folder-tree'"></i> 1064 <span class="link-embed-edit-button-text">{{Files.$ATTRS('mkdir2') || Files.$newFolderPresentation.label || "New Folder"}}</span> 1065 </button> 1066 <button 1067 type="button" 1068 class="sd-btn sd-btn-wide-primary-32px file-icon no-animate" 1069 ng-show="Files.$canShare" 1070 ng-click="Files.newShare()"> 1071 <i class="fa-light fa-screen-users fal-icon-without-text"></i> 1072 <span class="link-embed-edit-button-text">{{Files.$ATTRS('share') || "New Shared Folder"}}</span> 1073 </button> 1074 <button 1075 type="button" 1076 class="sd-btn sd-btn-wide-primary-32px no-animate" 1077 ng-disabled="Files.spaceQuotaExceeded" 1078 ng-class="{disabled: Files.spaceQuotaExceeded}" 1079 ng-show="Files.$canRequest" 1080 ng-click="Files.createFileRequest()"> 1081 <i class="fa-light fa-envelopes-bulk fal-icon-without-text"></i> 1082 <span class="link-embed-edit-button-text">{{Files.$ATTRS('request') || "Request Files"}}</span> 1083 </button> 1084 <button 1085 type="button" 1086 class="sd-btn sd-btn-wide-primary-32px no-animate" 1087 ng-show="Files.$canTransfer" 1088 ng-click="Files.createFileTransfer()"> 1089 <i class="fa-light fa-paper-plane fal-icon-without-text"></i> 1090 <span class="link-embed-edit-button-text">{{Files.$ATTRS('transfer') || "Transfer Files"}}</span> 1091 </button> 1092 </div> 1093 <div class="operations selected-operations" ng-show="!Files.noOps && Files.selectedItems.length"> 1094 <button 1095 type="button" 1096 class="sd-btn sd-btn-wide-primary-32px no-animate" 1097 ng-show="Files.$canMove && Files.$canMoveSelected" 1098 ng-click="Files.move()"> 1099 <i class="fa-light fa-arrow-right-arrow-left fal-icon-without-text"></i> 1100 <span class="link-embed-edit-button-text">{{Files.$ATTRS('move') || "Move"}}</span> 1101 </button> 1102 <button 1103 type="button" 1104 class="sd-btn sd-btn-wide-primary-32px no-animate" 1105 ng-show="Files.$canCopy && Files.$canCopySelected" 1106 ng-click="Files.copy()"> 1107 <i class="fa-light fa-copy fal-icon-without-text"></i> 1108 <span class="link-embed-edit-button-text">{{Files.$ATTRS('copy') || "Copy"}}</span> 1109 </button> 1110 <button 1111 type="button" 1112 class="sd-btn sd-btn-wide-primary-32px no-animate" 1113 ng-if="Files.$canRename && Files.$canRenameSelected" 1114 ng-show="Files.selectedItems.length === 1" 1115 ng-click="Files.renameSelected()"> 1116 <i class="fa-light fa-pen-to-square fal-icon-without-text"></i>
1117 <span class="link-embed-edit-button-text">{{Files.$ATTRS('rename') || "Rename"}}</span> 1118 </button> 1119 <button 1120 type="button" 1121 class="sd-btn sd-btn-wide-primary-32px no-animate" 1122 ng-show="Files.$canDelete && Files.$canDeleteSelected" 1123 ng-click="Files.delete()"> 1124 <i class="fa-light fa-trash-can fal-icon-without-text"></i> 1125 <span class="link-embed-edit-button-text">{{Files.$ATTRS('delete') || "Delete"}}</span> 1126 </button> 1127 <button 1128 type="button" 1129 class="sd-btn sd-btn-wide-primary-32px no-animate" 1130 ng-show="Files.$canDownload && Files.$canDownloadSelected" 1131 ng-click="Files.download()"> 1132 <i class="fa-light fa-download fal-icon-without-text"></i> 1133 <span class="link-embed-edit-button-text">{{Files.$ATTRS('download') || "Download"}}</span> 1134 </button> 1135 </div> 1136 <div class="view-bar"> 1137 <div class="search form-oscar form-control" ng-class="{focus:$searchFocus,input:Files.$search.name}"> 1138 <input type="search" placeholder="Search" ng-focus="$searchFocus = true" ng-blur="$searchFocus = false" ng-model="Files.$search.name"> 1139 <i class="material-icons delete" ng-click="Files.$search.name = ''">cancel</i> 1140 </div> 1141 <div class="sort" Tooltip="{placement:'top'}" 1142 data-title="Sort"> 1143 <div class="dropdown dropleft"> 1144 <button class="sd-btn sd-btn-wide-primary-32px" type="button" data-toggle="dropdown" aria-haspopup="true"> 1145 <i class="fa-light fa-arrow-down-wide-short pr-0"></i> 1146 </button> 1147 <div class="dropdown-menu dropdown-menu-right dropdown-menu-with-icons"> 1148 <button class="dropdown-item" ng-class="{active:Files.selectedSort==='name'}" ng-click="Files.changeSort('name')"><svg class="svg-icon--arrow-down-a-z"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#arrow-down-a-z"></use></svg>Name</button> 1149 <button class="dropdown-item" ng-class="{active:'isDirectory'.indexOf('isD')}" ng-click="Files.changeSort('-isDirectory')"><svg class="svg-icon--folder"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#folder"></use></svg>Type</button> 1150 </div> 1151 </div> 1152 </div> 1153 <div class="close-modal" ng-if="$dismiss"> 1154 <button class="sd-btn sd-btn-wide-primary-32px mr-0" ng-click="$dismiss()"> 1155 <i class="material-icons pr-0">clear</i> 1156 </button> 1157 </div> 1158 </div> 1159</div> 1160</script>
vendor: 1 bytes, line 1160
1160
1161<script type="text/ng-template" id="/fa/template/browser/navigation" role="1" assign-to-window="0"><nav class="toolbar-nav"> 1162 <ul> 1163 <li 1164 class="nav-back" 1165 ng-click="Files.navigateBack()" 1166 ng-show="Files.canNavigateBack"> 1167 <span class="iconContainer"><svg class="svg-icon--arrow-left"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#arrow-left"></use></svg></span> 1168 </li> 1169 <li 1170 class="nav-home" 1171 ng-click="Files.navigateToPath(-1)"> 1172 <span class="iconContainer home"><svg class="svg-icon--home"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#home"></use></svg></span> 1173 <span ng-hide="Files.canNavigateBack"><sd-tr uid="HOME" /></span> 1174 <span class="iconContainer navigateRight"><svg class="svg-icon--chevron-right"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#chevron-right"></use></svg></span> 1175 </li> 1176 </ul> 1177 <ul> 1178 <li 1179 class="nav-to" 1180 ng-click="Files.navigateToPath($index)" 1181 ng-class="{last:$last}" 1182 ng-hide="path.hide" 1183 ng-repeat="path in Files.currentPathObjects"> 1184 <span class="text-truncate" title="{{path.name}}">{{path.name}}</span> 1185 <span ng-show="!$last" class="iconContainer navigateRight"><svg class="svg-icon--chevron-right"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#chevron-right"></use></svg></span> 1186 </li> 1187 </ul> 1188</nav> 1189</script>
vendor: 1 bytes, line 1189
1189
1190<script type="text/ng-template" id="/fa/template/browser/header" role="1" assign-to-window="0"><div class="browser-list-header"> 1191 <div class="select"> 1192 <div class="checkbox"> 1193 <label> 1194 <input type="checkbox" ng-model="Files.selectAll" ng-change="Files.toggleSelectAll()" /> 1195 <span class="label-text"></span> 1196 </label> 1197 </div> 1198 </div> 1199 <div class="icon"></div> 1200 <div class="title" ng-click="Files.changeSort('name')"> 1201 <sd-tr uid="NAME" /> 1202 </div> 1203 1204 <!-- List / grid. Hidden entirely when previews are off: a grid would be a wall of type symbols, 1205 so BR28 puts those people back on the list rather than offering a choice that makes things 1206 worse. The icon and the label name the view you would switch TO. One button per state 1207 rather than one with a conditional label: the label is translated wording, and wording is 1208 tenant-editable, so composing it inside the binding expression would let whatever is typed 1209 there be evaluated rather than shown. --> 1210 <button class="sd-btn sd-btn-wide-primary-32px browser-view-toggle" 1211 data-hint="file_view_toggle_intro" 1212 ng-if="Files.previewsEnabled && Files.viewMode === 'grid'" 1213 ng-click="Files.toggleViewMode()" 1214 ng-disabled="Files.savingViewMode" 1215 title="List" 1216 aria-label="List"> 1217 <i class="material-icons pr-0">view_list</i> 1218 </button> 1219 <button class="sd-btn sd-btn-wide-primary-32px browser-view-toggle" 1220 data-hint="file_view_toggle_intro" 1221 ng-if="Files.previewsEnabled && Files.viewMode !== 'grid'" 1222 ng-click="Files.toggleViewMode()" 1223 ng-disabled="Files.savingViewMode" 1224 title="Grid" 1225 aria-label="Grid"> 1226 <i class="material-icons pr-0">grid_view</i> 1227 </button> 1228 1229 <div class="dropdown"> 1230 <button class="sd-btn sd-btn-wide-primary-32px" data-toggle="dropdown"> 1231 <i class="material-icons pr-0">more_vert</i> 1232 </button> 1233 1234 <div class="dropdown-menu dropdown-left"> 1235 <button class="dropdown-item" ng-click="Files.toggleSelectAll(true)"> 1236 <i class="fa-light fa-earth-asia mr-2"></i> 1237 <sd-tr uid="ALL" /> 1238 </button> 1239 1240 <button class="dropdown-item" ng-click="Files.toggleSelectAll('folder')"> 1241 <i class="fa-light fa-folder-open mr-2"></i> 1242 <sd-tr uid="FOLDERS" /> 1243 </button> 1244 1245 <button class="dropdown-item" ng-click="Files.toggleSelectAll('file')"> 1246 <i class="fa-light fa-file-magnifying-glass mr-2"></i> 1247 <sd-tr uid="FILES" /> 1248 </button> 1249 1250 <button class="dropdown-item" ng-click="Files.toggleSelectAll(false)"> 1251 <i class="fa-light fa-ban mr-2"></i> 1252 <sd-tr uid="NONE" /> 1253 </button> 1254 </div> 1255 </div> 1256</div> 1257</script>
vendor: 1 bytes, line 1257
1257
1258<script type="text/ng-template" id="bootstrap/match-multiple.tpl.html" role="1" assign-to-window="0"><span class="ui-select-match"> 1259 <span ng-repeat="$item in $select.selected track by $index"> 1260 <span 1261 class="ui-select-match-item btn btn-default btn-xs" 1262 tabindex="-1" 1263 ng-disabled="$select.disabled" 1264 ng-click="$selectMultiple.activeMatchIndex = $index;" 1265 ng-class="{'btn-primary':$selectMultiple.activeMatchIndex === $index, 'select-locked':$select.isLocked(this, $index)}" ui-select-sort="$select.selected"> 1266 <span class="match-text" uis-transclude-append=""></span> 1267 <i 1268 class="remove-match material-icons" 1269 ng-hide="$select.disabled" 1270 ng-click="$selectMultiple.removeChoice($index)"> 1271 clear 1272 </i> 1273 </span> 1274 </span> 1275</span> 1276</script>
vendor: 1 bytes, line 1276
1276
1277<script type="text/ng-template" id="bootstrap/select-multiple.tpl.html" role="1" assign-to-window="0"><div class="ui-select-container ui-select-multiple ui-select-bootstrap dropdown form-control" ng-class="{open: $select.open}"> 1278 <div> 1279 <div class="ui-select-match"></div> 1280 <input 1281 id="userSelectSearchInput" 1282 type="search" 1283 autocomplete="off" 1284 autocorrect="off" 1285 autocapitalize="off" 1286 spellcheck="false" 1287 class="ui-select-search input-xs" 1288 placeholder="{{::$selectMultiple.getPlaceholder()}}" 1289 ng-disabled="$select.disabled" 1290 ng-click="$select.activate()" 1291 ng-model="$select.search" 1292 role="combobox" 1293 aria-expanded="{{$select.open}}" 1294 aria-label="{{::$select.baseTitle}}" 1295 ng-class="{'spinner': $select.refreshing}" 1296 ondrop="return false;"> 1297 </div> 1298 <div class="ui-select-choices"></div> 1299 <div class="ui-select-no-choice"></div> 1300</div> 1301 1302</script>
vendor: 1 bytes, line 1302
1302
1303<script type="text/ng-template" id="fileUploader.html" role="1" assign-to-window="0"><div class="file-upload-widget sd-oscar-file-upload-wrapper"> 1304 <div class="mr-b-10" ng-if="OscarFileUpload.showPreview && ((OscarFileUpload.isImage && OscarFileUpload.file) || ${tAttrs.modelAttribute})"> 1305 <div class="image-preview" ng-show="${tAttrs.modelAttribute} || OscarFileUpload.file"> 1306 <img ngf-thumbnail="OscarFileUpload.preview" ng-if="OscarFileUpload.file && OscarFileUpload.cropEnabled"> 1307 <img ng-src="${tAttrs.path}{{${tAttrs.modelAttribute}}}" ng-if="${tAttrs.modelAttribute} && (OscarFileUpload.showCropPreview || !OscarFileUpload.file)" /> 1308 </div> 1309 <div class="crop-area" ng-show="OscarFileUpload.cropEnabled && OscarFileUpload.isImage && OscarFileUpload.cropImage"> 1310 <div class="row"> 1311 <div ng-class="{'col-6': OscarFileUpload.cropView == 'horizontal', 'col-12': OscarFileUpload.cropView == 'vertical'}" class="crop-block"> 1312 <img-crop 1313 area-type="${tAttrs.areaType}" 1314 aspect-ratio="${tAttrs.aspectRatio}" 1315 image="OscarFileUpload.cropImage" 1316 result-image="OscarFileUpload.croppedImage" 1317 result-image-size="${tAttrs.resultImageSize}" 1318 init-max-area="true"> 1319 </img-crop> 1320 </div> 1321 <div class="d-flex justify-content-center align-items-center" ng-class="{'col-6': OscarFileUpload.cropView == 'horizontal', 'col-12': OscarFileUpload.cropView == 'vertical'}"> 1322 <img ngf-thumbnail="OscarFileUpload.croppedImage"> 1323 </div> 1324 </div> 1325 </div> 1326 </div> 1327 <div class="mr-b-10"> 1328 <div 1329 class="drop-box" 1330 ng-model="OscarFileUpload.file" 1331 ngf-multiple="false" 1332 ngf-pattern="'${filePattern}'" 1333 ngf-drag-over-class="'dragover'" 1334 ngf-fix-orientation="true" 1335 ngf-drop="OscarFileUpload.prepareFile(OscarFileUpload.file)" 1336 ngf-select="OscarFileUpload.prepareFile(OscarFileUpload.file)" 1337 ng-if="!${tAttrs.modelAttribute} && !OscarFileUpload.file && !OscarFileUpload.showKeepBtn">Select or Drop Files</div> 1338 <div ngf-no-file-drop>File Drag/Drop is not supported for this browser</div> 1339 </div> 1340 <div class="mr-b-10" ng-if="!OscarFileUpload.isImage"> 1341 <span ng-if="OscarFileUpload.file">{{OscarFileUpload.file.name}}</span> 1342 </div> 1343 <div class="btn-list"> 1344 <button 1345 type="button" 1346 ng-if="!${tAttrs.modelAttribute} && !OscarFileUpload.file && !OscarFileUpload.showKeepBtn" 1347 ng-model="OscarFileUpload.file" 1348 class="btn btn-primary btn-sm" 1349 ngf-pattern="'${filePattern}'" 1350 ngf-fix-orientation="true" 1351 ngf-select="OscarFileUpload.prepareFile(OscarFileUpload.file)"> 1352 {{OscarFileUpload.buttonText}} 1353 </button> 1354 <button 1355 type="button" 1356 ng-if="${tAttrs.modelAttribute} && !OscarFileUpload.showKeepBtn" 1357 ng-model="OscarFileUpload.file" 1358 class="btn btn-primary btn-sm" 1359 ngf-pattern="'${filePattern}'" 1360 ngf-fix-orientation="true" 1361 ngf-select="OscarFileUpload.replaceFile(OscarFileUpload.file)"> 1362 {{OscarFileUpload.buttonReplaceText}} 1363 </button> 1364 <button 1365 type="button" 1366 ng-if="OscarFileUpload.showKeepBtn && OscarFileUpload.cropEnabled" 1367 class="btn btn-primary btn-sm" 1368 ng-click="OscarFileUpload.keepPreppedFile()"> 1369 {{OscarFileUpload.buttonAcceptCropText}} 1370 </button> 1371 <button 1372 type="button" 1373 ng-if="OscarFileUpload.showKeepBtn || OscarFileUpload.uploadErrorMessage" 1374 class="btn btn-danger btn-sm" 1375 ng-click="OscarFileUpload.cancel()"> 1376 {{OscarFileUpload.buttonCancelText}} 1377 </button> 1378 <button 1379 type="button" 1380 ng-if="${tAttrs.modelAttribute} && !OscarFileUpload.showKeepBtn" 1381 class="btn btn-primary btn-sm" 1382 ng-click="OscarFileUpload.deleteFile()"> 1383 {{OscarFileUpload.buttonDeleteText}} 1384 </button> 1385 </div> 1386 <div class="text-muted">${tAttrs.info || ''}</div> 1387</div></script>
vendor: 1 bytes, line 1387
1387
1388<script type="text/ng-template" id="multiFileUploader.html" role="1" assign-to-window="0"><div class="file-upload-widget sd-oscar-file-upload-wrapper multiple-files"> 1389 <div> 1390 <div class="mr-b-10" ng-if="config.dropZone"> 1391 <div 1392 class="drop-box w-100" 1393 ngf-drop="Uploader.uploadSelected($newFiles, $invalidFiles)" 1394 ngf-multiple="true" 1395 ngf-keep="'distinct'" 1396 ngf-fix-orientation="true" 1397 ngf-drag-over-class="'dragover'" 1398 ng-class="{'has-files':files.length}"> 1399 <p 1400 ngf-select="Uploader.uploadSelected($newFiles, $invalidFiles)" 1401 ngf-multiple="true" 1402 ngf-allow-dir="true" 1403 ngf-keep="'distinct'" 1404 ngf-fix-orientation="true" 1405 ng-if="!files.length"><sd-tr uid="SELECT_OR_DROP_FILES" /></p> 1406 <div ng-if="files.length" class="file-list"> 1407 <ul> 1408 <li class="file" ng-repeat="file in files"> 1409 <div class="info"> 1410 <span class="fileName">{{file.fileName}}</span> 1411 1412 <uib-progressbar 1413 class="progress-lg" 1414 value="file.progress || 0" 1415 type="{{file.cancelled ? 'danger' : (file.uploaded ? 'success' : 'info')}}"> 1416 <span ng-if="!file.cancelled">{{file.progress ? (file.progress < 100 ? file.progress + '%' : 'Done') : '0%'}}</span> 1417 <span ng-if="file.cancelled">{{file.aborted ? 'Cancelled' : 'Error'}}</span> 1418 </uib-progressbar> 1419 1420 <button ng-if="!file.aborted && !file.uploaded" class="btn btn-xs btn-danger" ng-click="file.abort()"> 1421 <i class="material-icons list-icon">clear</i> 1422 </button> 1423 </div> 1424 <div class="error" ng-if="file.error">{{file.errorMessage}}</div> 1425 </li> 1426 </ul> 1427 </div> 1428 </div> 1429 <div ngf-no-file-drop><sd-tr uid="FILE_DRAG_DROP_NOT_SUPPORTED" /></div> 1430 </div> 1431 <div class="btn-list"> 1432 <button 1433 type="button" 1434 class="btn btn-primary btn-sm" 1435 ngf-select="Uploader.uploadSelected($newFiles, $invalidFiles)" 1436 ngf-multiple="true" 1437 ngf-fix-orientation="true" 1438 ngf-keep="'distinct'" 1439 ng-class="{'btn-block':!files.length}"> 1440 <sd-tr uid="SELECT_FILES" /> 1441 </button> 1442 <div class="d-inline-block" ng-if="files.length"> 1443 <button 1444 ng-if="!config.autoUpload" 1445 type="button" 1446 class="btn btn-success btn-sm" 1447 ng-disabled="OscarFileUpload.uploadInProgress || !OscarFileUpload.files.length" 1448 ng-click="OscarFileUpload.uploadAll()"> 1449 <ng-pluralize 1450 ng-hide="OscarFileUpload.uploadInProgress" 1451 count="OscarFileUpload.files.length" 1452 when="{ 1453 'one' : 'Upload File', 1454 'other' : 'Upload {} Files' 1455 }"> 1456 </ng-pluralize> 1457 <span ng-show="OscarFileUpload.uploadInProgress"><sd-tr uid="UPLOADING_ELLIPSES" /></span> 1458 </button> 1459 <button 1460 type="button" 1461 class="btn btn-danger btn-sm" 1462 ng-click="OscarFileUpload.clearAll()"> 1463 <sd-tr uid="REMOVE_CANCEL_ALL" /> 1464 </button> 1465 </div> 1466 </div> 1467 </div> 1468</div> 1469</script>
vendor: 1 bytes, line 1469
1469
1470<script type="text/ng-template" id="filesList.html" role="1" assign-to-window="0"><ul class="file-list list-unstyled flex-column-fill gap-2" ng-show="files.length"> 1471 <li ng-repeat="file in files | orderBy:'+created' track by file.id" class="d-flex justify-content-between align-items-center gap-2"> 1472 <a href="#" ng-click="download(file)" class="name flex-1 truncate"> 1473 {{file.title || file.name}} 1474 </a> 1475 <div class="d-flex btns-wrap flex-none"> 1476 <button 1477 type="button" 1478 class="btn btn-secondary btn-xs" 1479 ng-click="download(file)" 1480 g-show="config.canDownload"> 1481 <svg class="inCourse-file-icon icon-download svg-icon--download"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#download"></use></svg> </button> 1482 <button 1483 type="button" 1484 class="btn btn-secondary btn-xs" 1485 ng-click="preview(file)" 1486 ng-show="canPreview(file)"> 1487 <svg class="inCourse-file-icon svg-icon--eye"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#eye"></use></svg> </button> 1488 <button 1489 class="btn btn-xs btn-secondary sd-file-task-upload-btn-delete" 1490 sd-modal-confirm 1491 ng-if="config.canDelete" 1492 action-url="/file/delete?id={{file.id}}" 1493 action-method="post" 1494 success="ctrl.removeFile(file)"> 1495 <svg class="inCourse-file-icon svg-icon--trash-can"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#trash-can"></use></svg> </button> 1496 <!--<button class="btn btn-xs btn-default" ng-click="$fileInfo = !$fileInfo">Toggle Info</button>--> 1497 <!--<pre ng-show="$fileInfo">{{file | json:2}}</pre>--> 1498 </div> 1499 </li> 1500</ul> 1501<div class="no-files-message py-3" ng-hide="files.length"> 1502 No Files Added</div> 1503</script>
vendor: 1 bytes, line 1503
1503
1504<script type="text/ng-template" id="fileUploaderV2.html" role="1" assign-to-window="0"><div class="file-upload-widget sd-oscar-file-upload-wrapper multiple-files"> 1505 <div> 1506 <div class="mr-b-10" ng-if="uploadReady"> 1507 <div 1508 class="drop-box w-100" 1509 ngf-drop="UploaderV2.uploadSelected($newFiles, $invalidFiles)" 1510 ngf-multiple="false" 1511 ngf-allow-dir="false" 1512 ngf-keep="false" 1513 ngf-fix-orientation="true" 1514 ngf-drag-over-class="'dragover'" 1515 > 1516 <p 1517 ngf-select="UploaderV2.uploadSelected($newFiles, $invalidFiles)" 1518 ngf-multiple="false" 1519 ngf-allow-dir="false" 1520 ngf-keep="false" 1521 ngf-fix-orientation="true" 1522 style="margin:0; padding:0; flex-grow:1; line-height:196px;" 1523 > 1524 <sd-tr uid="SELECT_OR_DROP_PDF_FILE"/> 1525 </p> 1526 </div> 1527 <div ngf-no-file-drop> 1528 <sd-tr uid="FILE_DRAG_DROP_NOT_SUPPORTED"/> 1529 </div> 1530 </div> 1531 <div class="mr-b-10" ng-if="uploadProgress && !uploadReady"> 1532 <div class="drop-box w-100 has-files"> 1533 <div class="file-list"> 1534 <ul> 1535 <li class="file" ng-repeat="file in filesUploaderV2"> 1536 <div class="info"> 1537 <span class="fileName">{{file.fileName}}</span> 1538 1539 <uib-progressbar 1540 class="progress-lg" 1541 value="file.progress || 0" 1542 type="{{file.cancelled ? 'danger' : (file.uploaded ? 'success' : 'info')}}"> 1543 <span ng-if="!file.cancelled">{{file.progress ? (file.progress < 100 ? file.progress + '%' : 'Done') : '0%'}}</span> 1544 <span ng-if="file.cancelled">{{file.aborted ? 'Cancelled' : 'Error'}}</span> 1545 </uib-progressbar> 1546 1547 <button ng-if="!file.aborted && !file.uploaded" class="btn btn-xs btn-danger" ng-click="file.abort()"> 1548 <i class="material-icons list-icon">clear</i> 1549 </button> 1550 </div> 1551 <div class="error" ng-if="file.error">{{file.errorMessage}}</div> 1552 </li> 1553 </ul> 1554 </div> 1555 </div> 1556 </div> 1557 </div> 1558</div> 1559</script>
vendor: 1 bytes, line 1559
1559
1560<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdEntityTimerAdmin" role="1" assign-to-window="0"><div class="entity-timers"> 1561 <a 1562 class="toggle-entity-timer-list" 1563 ng-if="!EntityTimerAdmin.showByDefault" 1564 ng-click="EntityTimerAdmin.toggleTimerList()"> 1565 <span class="icon-clock"></span> <sd-tr uid="START_SHOW_TIMERS"></sd-tr> ({{EntityTimerAdmin.timerCount}}) 1566 </a> 1567 <div 1568 class="entity-timers-wrap" 1569 ng-show="EntityTimerAdmin.showTimerList" 1570 ng-class="{'timer-shadow':EntityTimerAdmin.showTimerList}"> 1571 <sd-entity-timer-add></sd-entity-timer-add> 1572 <sd-entity-timer-list></sd-entity-timer-list> 1573 </div> 1574 <div id="invoiceTimes-dialog"></div> 1575 <a href="" id="ajaxRedirectPage"></a> 1576</div> 1577</script>
vendor: 1 bytes, line 1577
1577
1578<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdEntityTimerAdd" role="1" assign-to-window="0"><div 1579 class="entity-timer-add" 1580 ng-class="{'empty-list':EntityTimerAdmin.emptyList}"> 1581 <form name="TimerAddForm"> 1582 <div class="entity-add-wrap"> 1583 <div class="entity-form-wrap"> 1584 <input 1585 tabindex="1" 1586 type="text" 1587 placeholder="Title" 1588 class="entity-timer-input entity-timer-title" 1589 ng-class="{'error': EntityTimerAdd.errors.title}" 1590 ng-model="EntityTimerAdd.timerTitle"> 1591 <div 1592 class="entity-timer-input entity-timer-rate-wrap" 1593 currency="{{EntityTimerAdmin.currency}}" 1594 ng-if="EntityTimerAdmin.displayRate" 1595 ng-class="{'error': EntityTimerAdd.errors.rate}" 1596 ng-style="EntityTimerAdd.rateWrapStyle"> 1597 <span>{{EntityTimerAdmin.currency}}</span> 1598 <input 1599 size="6" 1600 type="text" 1601 tabindex="1" 1602 placeholder="0.00" 1603 class="entity-timer-rate" 1604 ng-model="EntityTimerAdd.timerRateInput" 1605 > 1606 <span>/hr</span> 1607 </div> 1608 <div 1609 class="entity-timer-input entity-timer-manual-wrap" 1610 ng-class="{'is-manual-timer':EntityTimerAdd.manualTimer}"> 1611 <div class="d-flex align-items-center"> 1612 <button 1613 tabindex="1" 1614 type="button" 1615 title="Manual Mode" 1616 class="set-manual-timer d-flex" 1617 ng-class="{active:EntityTimerAdd.manualTimer}" 1618 ng-click="EntityTimerAdd.toggleManual()" 1619 > 1620 <svg class="svg-icon--clock-2"><use href="/cachedStatic/iconUrl1?file=%2Fthemes%2Fmpa%2Fassets%2Fsvg%2Fcommon-svg%2Ficons-sprite.svg&hash=wxdugf7f-kMW5gEb9nTc#clock-2"></use></svg> </button> 1621 </div> 1622 <timer-input 1623 tabindex="1" 1624 ng-show="EntityTimerAdd.manualTimer"> 1625 </timer-input> 1626 </div> 1627 </div> 1628 <div class="entity-button-wrap"> 1629 <button 1630 tabindex="1" 1631 type="submit" 1632 class="entity-timer-add-button" 1633 ng-click="EntityTimerAdd.addTimer()" 1634 ng-class="{'is-manual-timer':EntityTimerAdd.manualTimer}"> 1635 Add 1636 </button> 1637 </div> 1638 </div> 1639 </form> 1640</div> 1641</script>
vendor: 1 bytes, line 1641
1641
1642<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdEntityTimerList" role="1" assign-to-window="0"><div 1643 class="entity-timer-list-wrap" 1644 ng-class="{overflow:EntityTimerAdmin.listScroll}"> 1645 <ul class="entity-timer-list"> 1646 <sd-entity-timer 1647 ng-repeat="timer in EntityTimerAdmin.timers | orderBy:'-id'"> 1648 <sd-timer-counter 1649 timer="timer" 1650 timer-id="timer.id" 1651 entity-id="timer.entityID" 1652 show-billable="EntityTimerAdmin.displayRate" 1653 show-control="!timer.disabled"> 1654 <timer-title>{{timer.title}}</timer-title> 1655 <timer-billable ng-if="EntityTimerAdmin.displayRate" class="billable-amount">({{timer.billableAmount | currency:EntityTimerAdmin.currency}})</timer-billable> 1656 <timer-after-counter ng-if="timer.disabled"> 1657 <button 1658 tabindex="1" 1659 title="Invoice" 1660 class="entity-timer-invoice" 1661 ng-if="EntityTimerAdmin.invoicing && timer.completed" 1662 ng-click="EntityTimerAdmin.invoice(timer)"> 1663 <sd-tr uid="INVOICE"></sd-tr> 1664 </button> 1665 <button 1666 tabindex="1" 1667 title="Delete" 1668 class="entity-timer-delete" 1669 ng-if="!EntityTimerAdmin.invoicing && timer.completed" 1670 ng-click="EntityTimerAdmin.delete(timer)"> 1671 </button> 1672 <div 1673 title="Invoiced" 1674 class="entity-timer-billed" 1675 ng-if="EntityTimerAdmin.invoicing && timer.billed"> 1676 <sd-tr uid="INVOICED"></sd-tr> 1677 </div> 1678 </timer-after-counter> 1679 <timer-after-control> 1680 <sd-menu> 1681 <sd-menu-item 1682 click="EntityTimerAdmin.pause(timer)" 1683 ng-if="!timer.disabled && !timer.paused"> 1684 <sd-tr uid="PAUSE"></sd-tr> 1685 </sd-menu-item> 1686 <sd-menu-item 1687 click="EntityTimerAdmin.resume(timer)" 1688 ng-if="!timer.disabled && timer.paused"> 1689 <sd-tr uid="RESUME"></sd-tr> 1690 </sd-menu-item> 1691 <sd-menu-item 1692 click="EntityTimerAdmin.complete(timer)" 1693 ng-if="!timer.disabled && timer.paused"> 1694 <sd-tr uid="COMPLETE"></sd-tr> 1695 </sd-menu-item> 1696 <sd-menu-item 1697 click="EntityTimerAdmin.invoice(timer)" 1698 ng-if="EntityTimerAdmin.invoicing && timer.completed"> 1699 <sd-tr uid="INVOICE"></sd-tr> 1700 </sd-menu-item> 1701 <sd-menu-item 1702 click="EntityTimerAdmin.delete(timer)" 1703 ng-if="timer.disabled"> 1704 <sd-tr uid="DELETE"></sd-tr> 1705 </sd-menu-item> 1706 <sd-menu-item 1707 click="EntityTimerAdmin.note(timer)"> 1708 <sd-tr uid="NOTES" /> 1709 </sd-menu-item> 1710 </sd-menu> 1711 </timer-after-control> 1712 </sd-timer-counter> 1713 </sd-entity-timer> 1714 </ul> 1715</div> 1716<sd-entity-timer-totals ng-if="EntityTimerAdmin.timers.length > 1"></sd-entity-timer-totals> 1717</script>
vendor: 1 bytes, line 1717
1717
1718<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdTimerInput" role="1" assign-to-window="0"><span 1719 tabindex="{{$ctrl.Timer.disabled ? '-1' : '1'}}" 1720 class="timer-input counting-time-input" 1721 contenteditable="true" 1722 ng-model="inputTime"> 1723</span> 1724</script>
vendor: 1 bytes, line 1724
1724
1725<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdEntityTimerTotals" role="1" assign-to-window="0"><div class="entity-timer-list-totals"> 1726 <div class="entity-totals-wrap"> 1727 <div class="total-title"><sd-tr uid="TOTAL_TIME"></sd-tr>:</div> 1728 <div class="total-amount"> 1729 {{EntityTimerAdmin.totalEntityTime}} 1730 <span ng-if="EntityTimerAdmin.displayRate"> 1731 ({{EntityTimerAdmin.totalEntityBillable | currency:EntityTimerAdmin.currency}}) 1732 </span> 1733 </div> 1734 <sd-menu 1735 class="totals-menu left" 1736 ng-class="{'list-scroll':EntityTimerAdmin.listScroll}"> 1737 <sd-menu-item 1738 click="EntityTimerAdmin.pauseAll()"> 1739 <sd-tr uid="PAUSE_RUNNING"></sd-tr> 1740 </sd-menu-item> 1741 <sd-menu-item 1742 click="EntityTimerAdmin.resumeAll()"> 1743 <sd-tr uid="RESUME_PAUSED"></sd-tr> 1744 </sd-menu-item> 1745 <sd-menu-item 1746 ng-if="EntityTimerAdmin.displayRate" 1747 click="EntityTimerAdmin.invoiceAll()"> 1748 <sd-tr uid="INVOICE_COMPLETED"></sd-tr> 1749 </sd-menu-item> 1750 <sd-menu-item 1751 click="EntityTimerAdmin.completeAll()"> 1752 <sd-tr uid="COMPLETE_PAUSED"></sd-tr> 1753 </sd-menu-item> 1754 <sd-menu-item 1755 click="EntityTimerAdmin.deleteAll()"> 1756 <sd-tr uid="DELETE_COMPLETED_INVOICED"></sd-tr> 1757 </sd-menu-item> 1758 </sd-menu> 1759 </div> 1760</div> 1761</script>
vendor: 1 bytes, line 1761
1761
1762<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdTimerControl" role="1" assign-to-window="0"><div 1763 class="timer-control" 1764 ng-if="!$ctrl.Timer.disabled"> 1765 <button 1766 tabindex="1" 1767 type="button" 1768 class="control-button" 1769 ng-click="$ctrl.controlClick()" 1770 ng-class="{ 1771 active:$ctrl.Timer.running, 1772 commit:$ctrl.Timer.manualCommit 1773 }"></button> 1774</div> 1775</script>
vendor: 1 bytes, line 1775
1775
1776<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdTimerCounter" role="1" assign-to-window="0"><div class="sd-timer-counter"> 1777 <div 1778 class="timer-title" 1779 ng-if="$ctrl.showTitle" 1780 ng-transclude="title"> 1781 </div> 1782 <ng-transclude ng-transclude-slot="beforeCounter"></ng-transclude> 1783 <div class="counter-wrap"> 1784 <timer-input disable-if="$ctrl.Timer.disabled"></timer-input> 1785 <ng-transclude 1786 ng-if="$ctrl.showBillable" 1787 ng-transclude-slot="billable"> 1788 <billable></billable> 1789 </ng-transclude> 1790 <ng-transclude 1791 ng-if="$ctrl.showMoneyCounter" 1792 ng-transclude-slot="moneyCounter"> 1793 <money-counter></money-counter> 1794 </ng-transclude> 1795 </div> 1796 <ng-transclude 1797 class="after-counter-slot" 1798 ng-class="{'hidden-control':!$ctrl.showControl}" 1799 ng-transclude-slot="afterCounter"> 1800 </ng-transclude> 1801 <timer-control ng-if="$ctrl.showControl"></timer-control> 1802 <ng-transclude 1803 class="after-control-slot" 1804 ng-transclude-slot="afterControl"> 1805 </ng-transclude> 1806</div> 1807</script>
vendor: 1 bytes, line 1807
1807
1808<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdBillableAmount" role="1" assign-to-window="0"><span class="billable-amount mt-3">× {{$ctrl.Timer.rate | currency:$ctrl.currencySymbol}} / hr = {{$ctrl.Timer.billableAmount | currency:$ctrl.currencySymbol}}</span> 1809</script>
vendor: 1 bytes, line 1809
1809
1810<script type="text/ng-template" id="/pm/pmEstimateTime/template/sdMoneyCounter" role="1" assign-to-window="0"><span class="timer-input timer-input-moneycounting"> 1811 <span ng-bind-html="inputMoney"></span> 1812</span> 1813</script>
vendor: 1 bytes, line 1813
1813
1814<script type="text/ng-template" id="optionsButton.html" role="1" assign-to-window="0"><!-- Trigger Button --> 1815<div class="crm-actions-trigger"> 1816 <button class="btn btn-link dropdown-toggle dropdown-toggle-ui" ng-class="{point:buttonType == 'point'}" ng-click="openDropdown()"> 1817 <span> 1818 <i ng-if="!loading" class="material-icons">more_vert</i> 1819 <span ng-if="loading"><i class="fa-regular fa-spinner-third fa-spin fa-spin-reverse menu-loading"></i></span> 1820 </span> 1821 </button> 1822</div> 1823 1824<!-- Backdrop --> 1825<div ng-if="optionsButton.openCrmContactOptionsModal" 1826 class="crm-actions-backdrop" 1827 ng-click="closePanel()"> 1828</div> 1829 1830<!-- Bottom Sheet Panel --> 1831<div ng-if="optionsButton.openCrmContactOptionsModal" 1832 class="crm-actions-panel" 1833 ng-keydown="handleKeydown($event)"> 1834 1835 <!-- Header --> 1836 <div class="crm-actions-panel__header"> 1837 <div class="crm-actions-panel__header-actions"> 1838 <!-- Header icon buttons (Copy Link, Claim, Copy UUID, Edit, etc.) --> 1839 <ng-container ng-repeat="item in headerItems"> 1840 <!-- Link type --> 1841 <a ng-if="item.type == 'link' && item.visible !== false" 1842 ng-href="{{item.url}}" 1843 class="crm-actions-panel__header-btn" 1844 ng-click="closePanel()"> 1845 <i ng-class="item.iconClass"></i> 1846 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 1847 </a> 1848 <!-- Modal type --> 1849 <a ng-if="item.type == 'modal' && item.visible !== false" 1850 href="#" 1851 class="crm-actions-panel__header-btn" 1852 ng-click="openModal(item)"> 1853 <i ng-class="item.iconClass"></i> 1854 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 1855 </a> 1856 <!-- Confirm button type --> 1857 <button ng-if="item.type == 'confirmButton' && item.visible !== false" 1858 class="crm-actions-panel__header-btn" 1859 sd-modal-confirm 1860 ng-attr-action-url="{{item.url}}" 1861 config="{title: '{{item.buttonOptions.confirmText}}', text: ''}" 1862 type="button"> 1863 <i ng-class="item.iconClass"></i> 1864 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 1865 </button> 1866 <!-- Copy text type --> 1867 <button ng-if="item.type == 'copyTextButton' && item.visible !== false" 1868 class="crm-actions-panel__header-btn" 1869 auto-select="{copy:true,copySuccess:'{{item.buttonOptions.copySuccess}}',copyFailure:'{{item.buttonOptions.copyFailure}}'}" 1870 copy-text="{{item.buttonOptions.copyText}}" 1871 type="button"> 1872 <i ng-class="item.iconClass"></i> 1873 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 1874 </button> 1875 </ng-container> 1876 1877 </div> 1878 <div class="crm-actions-panel__header-right"> 1879 <!-- Impersonate / Message buttons --> 1880 <ng-container ng-repeat="item in headerDividerItems"> 1881 <!-- Link type --> 1882 <a ng-if="item.type == 'link' && item.visible !== false" 1883 ng-href="{{item.url}}" 1884 class="crm-actions-panel__header-btn" 1885 ng-click="closePanel()"> 1886 <i ng-class="item.iconClass"></i> 1887 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 1888 </a> 1889 <!-- Modal type --> 1890 <a ng-if="item.type == 'modal' && item.visible !== false" 1891 href="#" 1892 class="crm-actions-panel__header-btn" 1893 ng-click="openModal(item)"> 1894 <i ng-class="item.iconClass"></i> 1895 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 1896 </a> 1897 </ng-container>
1898 <span ng-if="headerDividerItems.length" class="crm-actions-panel__header-divider"></span> 1899 <a ng-if="dashboardUrl" 1900 class="crm-actions-panel__dashboard-btn" 1901 ng-href="{{dashboardUrl}}" 1902 ng-click="closePanel()"> 1903 <i class="material-icons crm-actions-panel__dashboard-btn-icon">grid_view</i> 1904 <span class="crm-actions-panel__dashboard-btn-label">{{dashboardLabel}}</span> 1905 </a> 1906 <button class="crm-actions-panel__close-btn" ng-click="closePanel()" type="button"> 1907 <i class="material-icons">close</i> 1908 </button> 1909 </div> 1910 </div> 1911 1912 <!-- Search --> 1913 <div class="crm-actions-panel__search"> 1914 <i class="material-icons crm-actions-panel__search-icon">search</i> 1915 <input type="text" 1916 class="crm-actions-panel__search-input" 1917 ng-model="search.query" 1918 ng-change="onSearchChange()" 1919 placeholder="Search actions..." 1920 > 1921 </div> 1922 1923 <!-- Category Tabs --> 1924 <div class="crm-actions-panel__tabs"> 1925 <button class="crm-actions-panel__tab" 1926 ng-class="{'crm-actions-panel__tab--active': activeTab === 'all'}" 1927 ng-click="setActiveTab('all')" 1928 type="button"> 1929 All <span class="crm-actions-panel__tab-count">{{totalVisibleCount}}</span> 1930 </button> 1931 <button ng-repeat="cat in orderedCategories" 1932 class="crm-actions-panel__tab" 1933 ng-class="{'crm-actions-panel__tab--active': activeTab === cat.key}" 1934 ng-click="setActiveTab(cat.key)" 1935 ng-if="cat.totalCount > 0" 1936 type="button"> 1937 <i class="crm-actions-panel__tab-icon" ng-class="cat.tabIconClass"></i> 1938 {{cat.label}} <span class="crm-actions-panel__tab-count">{{cat.visibleCount}}</span> 1939 </button> 1940 </div> 1941 1942 <!-- Scrollable Content Area --> 1943 <div class="crm-actions-panel__content"> 1944 1945 <!-- "All" view: grouped by category with section headers --> 1946 <div ng-if="activeTab === 'all'"> 1947 <div ng-repeat="cat in orderedCategories" 1948 ng-if="cat.visibleCount > 0" 1949 class="crm-actions-panel__section"> 1950 1951 <!-- Section header: colored dot + label --> 1952 <div class="crm-actions-panel__section-header"> 1953 <span class="crm-actions-panel__section-dot"></span> 1954 {{cat.label}} 1955 </div> 1956 1957 <!-- Card grid for this section --> 1958 <div class="crm-actions-panel__grid"> 1959 <ng-container ng-repeat="item in cat.visibleItems track by item.key"> 1960 <!-- Action Card: renders a single action item in the card grid --> 1961<!-- Expects `item` from ng-repeat scope with: type, visible, url, iconClass, label, modalOptions, buttonOptions, key --> 1962 1963<!-- Link type --> 1964<a ng-if="item.type == 'link' && item.visible !== false" 1965 ng-href="{{item.url}}" 1966 class="crm-actions-panel__card" 1967 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 1968 ng-mouseenter="setFocusedItem(item.key)" 1969 ng-mouseleave="clearFocusedItem()" 1970 ng-click="closePanel()"> 1971 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 1972 <span class="crm-actions-panel__card-label">{{item.label}}</span> 1973</a> 1974 1975<!-- Modal type --> 1976<a ng-if="item.type == 'modal' && item.visible !== false" 1977 href="#" 1978 class="crm-actions-panel__card" 1979 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 1980 ng-mouseenter="setFocusedItem(item.key)" 1981 ng-mouseleave="clearFocusedItem()" 1982 ng-click="openModal(item)"> 1983 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 1984 <span class="crm-actions-panel__card-label">{{item.label}}</span> 1985</a> 1986 1987<!-- Confirm button type --> 1988<button ng-if="item.type == 'confirmButton' && item.visible !== false" 1989 class="crm-actions-panel__card" 1990 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 1991 ng-mouseenter="setFocusedItem(item.key)" 1992 ng-mouseleave="clearFocusedItem()" 1993 sd-modal-confirm 1994 ng-attr-action-url="{{item.url}}" 1995 config="{title: item.buttonOptions.confirmText, text: item.buttonOptions.consequence || '', method: item.buttonOptions.method}" 1996 type="button" 1997 aria-label="{{item.label}}"> 1998 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 1999 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2000</button> 2001 2002<!-- Copy text type -->
2003<button ng-if="item.type == 'copyTextButton' && item.visible !== false" 2004 class="crm-actions-panel__card" 2005 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2006 ng-mouseenter="setFocusedItem(item.key)" 2007 ng-mouseleave="clearFocusedItem()" 2008 auto-select="{copy:true,copySuccess:'{{item.buttonOptions.copySuccess}}',copyFailure:'{{item.buttonOptions.copyFailure}}'}" 2009 copy-text="{{item.buttonOptions.copyText}}" 2010 type="button" 2011 aria-label="{{item.label}}"> 2012 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2013 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2014</button> 2015 </ng-container> 2016 </div> 2017 </div> 2018 </div> 2019 2020 <!-- Single category view: flat grid, no headers --> 2021 <div ng-if="activeTab !== 'all'" class="crm-actions-panel__grid"> 2022 <ng-container ng-repeat="cat in orderedCategories"> 2023 <ng-container ng-if="activeTab === cat.key"> 2024 <ng-container ng-repeat="item in cat.visibleItems track by item.key"> 2025 <!-- Action Card: renders a single action item in the card grid --> 2026<!-- Expects `item` from ng-repeat scope with: type, visible, url, iconClass, label, modalOptions, buttonOptions, key --> 2027 2028<!-- Link type --> 2029<a ng-if="item.type == 'link' && item.visible !== false" 2030 ng-href="{{item.url}}" 2031 class="crm-actions-panel__card" 2032 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2033 ng-mouseenter="setFocusedItem(item.key)" 2034 ng-mouseleave="clearFocusedItem()" 2035 ng-click="closePanel()"> 2036 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2037 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2038</a> 2039 2040<!-- Modal type --> 2041<a ng-if="item.type == 'modal' && item.visible !== false" 2042 href="#" 2043 class="crm-actions-panel__card" 2044 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2045 ng-mouseenter="setFocusedItem(item.key)" 2046 ng-mouseleave="clearFocusedItem()" 2047 ng-click="openModal(item)"> 2048 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2049 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2050</a> 2051 2052<!-- Confirm button type --> 2053<button ng-if="item.type == 'confirmButton' && item.visible !== false" 2054 class="crm-actions-panel__card" 2055 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2056 ng-mouseenter="setFocusedItem(item.key)" 2057 ng-mouseleave="clearFocusedItem()" 2058 sd-modal-confirm 2059 ng-attr-action-url="{{item.url}}" 2060 config="{title: item.buttonOptions.confirmText, text: item.buttonOptions.consequence || '', method: item.buttonOptions.method}" 2061 type="button" 2062 aria-label="{{item.label}}"> 2063 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2064 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2065</button> 2066 2067<!-- Copy text type --> 2068<button ng-if="item.type == 'copyTextButton' && item.visible !== false" 2069 class="crm-actions-panel__card" 2070 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2071 ng-mouseenter="setFocusedItem(item.key)" 2072 ng-mouseleave="clearFocusedItem()" 2073 auto-select="{copy:true,copySuccess:'{{item.buttonOptions.copySuccess}}',copyFailure:'{{item.buttonOptions.copyFailure}}'}" 2074 copy-text="{{item.buttonOptions.copyText}}" 2075 type="button" 2076 aria-label="{{item.label}}"> 2077 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2078 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2079</button> 2080 </ng-container> 2081 </ng-container> 2082 </ng-container> 2083 </div> 2084 2085 <!-- Empty state --> 2086 <div ng-if="totalVisibleCount === 0" class="crm-actions-panel__empty"> 2087 No actions found </div> 2088 </div> 2089 2090 <!-- Footer --> 2091 <div class="crm-actions-panel__footer">
2092 <span class="crm-actions-panel__footer-count"> 2093 <span class="crm-actions-panel__footer-badge">{{totalVisibleCount}}</span> actions available </span> 2094 <div class="crm-actions-panel__footer-shortcuts"> 2095 <span><kbd>esc</kbd> close</span> 2096 </div> 2097 </div> 2098</div> 2099</script>
vendor: 1 bytes, line 2099
2099
2100<script type="text/ng-template" id="optionsCompanyButton.html" role="1" assign-to-window="0"><!-- Trigger Button --> 2101<div class="crm-actions-trigger"> 2102 <button class="btn btn-link dropdown-toggle dropdown-toggle-ui" ng-class="{point:buttonType == 'point'}" ng-click="openCrmCompanyOptionsDropdown()"> 2103 <span> 2104 <i ng-if="!loading" class="material-icons">more_vert</i> 2105 <span ng-if="loading"><i class="fa-regular fa-spinner-third fa-spin fa-spin-reverse menu-loading"></i></span> 2106 </span> 2107 </button> 2108</div> 2109 2110<!-- Backdrop --> 2111<div ng-if="optionsCompanyButton.openCrmCompanyOptionsModal" 2112 class="crm-actions-backdrop" 2113 ng-click="closePanel()"> 2114</div> 2115 2116<!-- Bottom Sheet Panel --> 2117<div ng-if="optionsCompanyButton.openCrmCompanyOptionsModal" 2118 class="crm-actions-panel" 2119 ng-keydown="handleKeydown($event)"> 2120 2121 <!-- Header --> 2122 <div class="crm-actions-panel__header"> 2123 <div class="crm-actions-panel__header-actions"> 2124 <!-- Header icon buttons (Copy Link, Claim, Copy UUID, Edit, etc.) --> 2125 <ng-container ng-repeat="item in headerItems"> 2126 <!-- Link type --> 2127 <a ng-if="item.type == 'link' && item.visible !== false" 2128 ng-href="{{item.url}}" 2129 class="crm-actions-panel__header-btn" 2130 ng-click="closePanel()"> 2131 <i ng-class="item.iconClass"></i> 2132 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 2133 </a> 2134 <!-- Modal type --> 2135 <a ng-if="item.type == 'modal' && item.visible !== false" 2136 href="#" 2137 class="crm-actions-panel__header-btn" 2138 ng-click="openModal(item)"> 2139 <i ng-class="item.iconClass"></i> 2140 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 2141 </a> 2142 <!-- Confirm button type --> 2143 <button ng-if="item.type == 'confirmButton' && item.visible !== false" 2144 class="crm-actions-panel__header-btn" 2145 sd-modal-confirm 2146 ng-attr-action-url="{{item.url}}" 2147 config="{title: '{{item.buttonOptions.confirmText}}', text: ''}" 2148 type="button"> 2149 <i ng-class="item.iconClass"></i> 2150 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 2151 </button> 2152 <!-- Copy text type --> 2153 <button ng-if="item.type == 'copyTextButton' && item.visible !== false" 2154 class="crm-actions-panel__header-btn" 2155 auto-select="{copy:true,copySuccess:'{{item.buttonOptions.copySuccess}}',copyFailure:'{{item.buttonOptions.copyFailure}}'}" 2156 copy-text="{{item.buttonOptions.copyText}}" 2157 type="button"> 2158 <i ng-class="item.iconClass"></i> 2159 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 2160 </button> 2161 </ng-container> 2162 2163 </div> 2164 <div class="crm-actions-panel__header-right"> 2165 <!-- Impersonate / Message buttons --> 2166 <ng-container ng-repeat="item in headerDividerItems"> 2167 <!-- Link type --> 2168 <a ng-if="item.type == 'link' && item.visible !== false" 2169 ng-href="{{item.url}}" 2170 class="crm-actions-panel__header-btn" 2171 ng-click="closePanel()"> 2172 <i ng-class="item.iconClass"></i> 2173 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 2174 </a> 2175 <!-- Modal type --> 2176 <a ng-if="item.type == 'modal' && item.visible !== false" 2177 href="#" 2178 class="crm-actions-panel__header-btn" 2179 ng-click="openModal(item)"> 2180 <i ng-class="item.iconClass"></i> 2181 <span class="crm-actions-panel__tooltip">{{item.label}}</span> 2182 </a> 2183 </ng-container>
2184 <span ng-if="headerDividerItems.length" class="crm-actions-panel__header-divider"></span> 2185 <a ng-if="dashboardUrl" 2186 class="crm-actions-panel__dashboard-btn" 2187 ng-href="{{dashboardUrl}}" 2188 ng-click="closePanel()"> 2189 <i class="material-icons crm-actions-panel__dashboard-btn-icon">grid_view</i> 2190 <span class="crm-actions-panel__dashboard-btn-label">{{dashboardLabel}}</span> 2191 </a> 2192 <button class="crm-actions-panel__close-btn" ng-click="closePanel()" type="button"> 2193 <i class="material-icons">close</i> 2194 </button> 2195 </div> 2196 </div> 2197 2198 <!-- Search --> 2199 <div class="crm-actions-panel__search"> 2200 <i class="material-icons crm-actions-panel__search-icon">search</i> 2201 <input type="text" 2202 class="crm-actions-panel__search-input" 2203 ng-model="search.query" 2204 ng-change="onSearchChange()" 2205 placeholder="Search actions..." 2206 > 2207 </div> 2208 2209 <!-- Category Tabs --> 2210 <div class="crm-actions-panel__tabs"> 2211 <button class="crm-actions-panel__tab" 2212 ng-class="{'crm-actions-panel__tab--active': activeTab === 'all'}" 2213 ng-click="setActiveTab('all')" 2214 type="button"> 2215 All <span class="crm-actions-panel__tab-count">{{totalVisibleCount}}</span> 2216 </button> 2217 <button ng-repeat="cat in orderedCategories" 2218 class="crm-actions-panel__tab" 2219 ng-class="{'crm-actions-panel__tab--active': activeTab === cat.key}" 2220 ng-click="setActiveTab(cat.key)" 2221 ng-if="cat.totalCount > 0" 2222 type="button"> 2223 <i class="crm-actions-panel__tab-icon" ng-class="cat.tabIconClass"></i> 2224 {{cat.label}} <span class="crm-actions-panel__tab-count">{{cat.visibleCount}}</span> 2225 </button> 2226 </div> 2227 2228 <!-- Scrollable Content Area --> 2229 <div class="crm-actions-panel__content"> 2230 2231 <!-- "All" view: grouped by category with section headers --> 2232 <div ng-if="activeTab === 'all'"> 2233 <div ng-repeat="cat in orderedCategories" 2234 ng-if="cat.visibleCount > 0" 2235 class="crm-actions-panel__section"> 2236 2237 <!-- Section header: colored dot + label --> 2238 <div class="crm-actions-panel__section-header"> 2239 <span class="crm-actions-panel__section-dot"></span> 2240 {{cat.label}} 2241 </div> 2242 2243 <!-- Card grid for this section --> 2244 <div class="crm-actions-panel__grid"> 2245 <ng-container ng-repeat="item in cat.visibleItems track by item.key"> 2246 <!-- Action Card: renders a single action item in the card grid --> 2247<!-- Expects `item` from ng-repeat scope with: type, visible, url, iconClass, label, modalOptions, buttonOptions, key --> 2248 2249<!-- Link type --> 2250<a ng-if="item.type == 'link' && item.visible !== false" 2251 ng-href="{{item.url}}" 2252 class="crm-actions-panel__card" 2253 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2254 ng-mouseenter="setFocusedItem(item.key)" 2255 ng-mouseleave="clearFocusedItem()" 2256 ng-click="closePanel()"> 2257 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2258 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2259</a> 2260 2261<!-- Modal type --> 2262<a ng-if="item.type == 'modal' && item.visible !== false" 2263 href="#" 2264 class="crm-actions-panel__card" 2265 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2266 ng-mouseenter="setFocusedItem(item.key)" 2267 ng-mouseleave="clearFocusedItem()" 2268 ng-click="openModal(item)"> 2269 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2270 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2271</a> 2272 2273<!-- Confirm button type --> 2274<button ng-if="item.type == 'confirmButton' && item.visible !== false" 2275 class="crm-actions-panel__card" 2276 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2277 ng-mouseenter="setFocusedItem(item.key)" 2278 ng-mouseleave="clearFocusedItem()" 2279 sd-modal-confirm 2280 ng-attr-action-url="{{item.url}}" 2281 config="{title: item.buttonOptions.confirmText, text: '', method: item.buttonOptions.method}" 2282 type="button" 2283 aria-label="{{item.label}}"> 2284 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2285 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2286</button> 2287 2288<!-- Copy text type -->
2289<button ng-if="item.type == 'copyTextButton' && item.visible !== false" 2290 class="crm-actions-panel__card" 2291 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2292 ng-mouseenter="setFocusedItem(item.key)" 2293 ng-mouseleave="clearFocusedItem()" 2294 auto-select="{copy:true,copySuccess:'{{item.buttonOptions.copySuccess}}',copyFailure:'{{item.buttonOptions.copyFailure}}'}" 2295 copy-text="{{item.buttonOptions.copyText}}" 2296 type="button" 2297 aria-label="{{item.label}}"> 2298 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2299 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2300</button> 2301 </ng-container> 2302 </div> 2303 </div> 2304 </div> 2305 2306 <!-- Single category view: flat grid, no headers --> 2307 <div ng-if="activeTab !== 'all'" class="crm-actions-panel__grid"> 2308 <ng-container ng-repeat="cat in orderedCategories"> 2309 <ng-container ng-if="activeTab === cat.key"> 2310 <ng-container ng-repeat="item in cat.visibleItems track by item.key"> 2311 <!-- Action Card: renders a single action item in the card grid --> 2312<!-- Expects `item` from ng-repeat scope with: type, visible, url, iconClass, label, modalOptions, buttonOptions, key --> 2313 2314<!-- Link type --> 2315<a ng-if="item.type == 'link' && item.visible !== false" 2316 ng-href="{{item.url}}" 2317 class="crm-actions-panel__card" 2318 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2319 ng-mouseenter="setFocusedItem(item.key)" 2320 ng-mouseleave="clearFocusedItem()" 2321 ng-click="closePanel()"> 2322 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2323 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2324</a> 2325 2326<!-- Modal type --> 2327<a ng-if="item.type == 'modal' && item.visible !== false" 2328 href="#" 2329 class="crm-actions-panel__card" 2330 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2331 ng-mouseenter="setFocusedItem(item.key)" 2332 ng-mouseleave="clearFocusedItem()" 2333 ng-click="openModal(item)"> 2334 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2335 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2336</a> 2337 2338<!-- Confirm button type --> 2339<button ng-if="item.type == 'confirmButton' && item.visible !== false" 2340 class="crm-actions-panel__card" 2341 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2342 ng-mouseenter="setFocusedItem(item.key)" 2343 ng-mouseleave="clearFocusedItem()" 2344 sd-modal-confirm 2345 ng-attr-action-url="{{item.url}}" 2346 config="{title: item.buttonOptions.confirmText, text: '', method: item.buttonOptions.method}" 2347 type="button" 2348 aria-label="{{item.label}}"> 2349 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2350 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2351</button> 2352 2353<!-- Copy text type --> 2354<button ng-if="item.type == 'copyTextButton' && item.visible !== false" 2355 class="crm-actions-panel__card" 2356 ng-class="{'crm-actions-panel__card--focused': focusedItemKey === item.key}" 2357 ng-mouseenter="setFocusedItem(item.key)" 2358 ng-mouseleave="clearFocusedItem()" 2359 auto-select="{copy:true,copySuccess:'{{item.buttonOptions.copySuccess}}',copyFailure:'{{item.buttonOptions.copyFailure}}'}" 2360 copy-text="{{item.buttonOptions.copyText}}" 2361 type="button" 2362 aria-label="{{item.label}}"> 2363 <span class="crm-actions-panel__card-icon"><i ng-class="item.iconClass"></i></span> 2364 <span class="crm-actions-panel__card-label">{{item.label}}</span> 2365</button> 2366 </ng-container> 2367 </ng-container> 2368 </ng-container> 2369 </div> 2370 2371 <!-- Empty state --> 2372 <div ng-if="totalVisibleCount === 0" class="crm-actions-panel__empty"> 2373 No actions found </div> 2374 </div> 2375 2376 <!-- Footer --> 2377 <div class="crm-actions-panel__footer">
2378 <span class="crm-actions-panel__footer-count"> 2379 <span class="crm-actions-panel__footer-badge">{{totalVisibleCount}}</span> actions available </span> 2380 <div class="crm-actions-panel__footer-shortcuts"> 2381 <span><kbd>esc</kbd> close</span> 2382 </div> 2383 </div> 2384</div> 2385</script>
vendor: 1 bytes, line 2385
2385
2386<script type="text/ng-template" id="conditionalLogicForm.html" role="1" assign-to-window="0"><div class="conditionLogic sidebar-conditional-field-form" 2387 ng-repeat="condition in conditions track by condition.id"> 2388 <div class="conditionLogic__header"> 2389 <div class="conditionLogic__number"></div> 2390 <span class="conditionLogic__name" contenteditable="true" ng-model="condition.name"></span> 2391 <button class="btn-conditionHide" ng-class="{'active' : condition.showSettings}" 2392 type="button" ng-click="condition.showSettings = !condition.showSettings"> 2393 <i class="fa-light fa-chevron-down"></i> 2394 </button> 2395 <div class="conditionLogic__remove"> 2396 <button 2397 class="conditionLogic__close-btn" type="button" 2398 ng-if="conditions.length > 1" 2399 ng-click="ConditionalLogic.removeCondition('condition', condition.id)"> 2400 <i class="material-icons">clear</i> 2401 </button> 2402 </div> 2403 2404 </div> 2405 <div class="conditionLogic__body" ng-show="condition.showSettings"> 2406 2407 2408 2409 <!-- Begin conditionLogic__block 01--> 2410 <div class="conditionLogic__block"> 2411 <label class="conditionLogic__label text-center">If this</label> 2412 2413 <!-- Begin conditionLogic__condition--> 2414 <div class="conditionLogic__item" ng-repeat="when in condition.when track by when.id" ng-class="{'conditionLogic__item__missed': when.missedField}"> 2415 <div class="conditionLogic__close" ng-if="condition.when.length > 1"> 2416 <button class="conditionLogic__close-btn" type="button" 2417 ng-click="ConditionalLogic.removeCondition('when', when.id, condition.id)"> 2418 <i class="material-icons">clear</i> 2419 </button> 2420 </div> 2421 <div class="conditionLogic__line"> 2422 <hr ng-if="$index == 0"> 2423 <i class="fal" ng-class="{'fa-question-circle': $index == 0, 'fa-code-branch': $index > 0 && condition.when[0].conjunction == 'or', 'fa-plus-circle': $index > 0 && condition.when[0].conjunction != 'or'}"></i> 2424 </div> 2425 <div class="row"> 2426 <div class="col-12" ng-if="$index == 0 && condition.when.length > 1"> 2427 <div class="field-wrapper base-input-field conjunction-input-field"> 2428 <select ng-model="when.conjunction" ng-options="key as value for (key , value) in ConditionalLogic.defaultOptionsForFieldConditions.conjunction" class="conjunction-field-select form-control" sd-oscar-theme-select="select2" data-options="{'allowClear':false}" name="" id=""> 2429<option value="">Make a selection</option> 2430</select> </div> 2431 </div> 2432 </div> 2433 <div class="row"> 2434 <div class="col-6"> 2435 <div class="field-wrapper base-input-field compareValue-input-field"> 2436 <select ng-model="when.compareValue" ng-options="compareValue as compareValue.title group by compareValue.selectGroup for compareValue in ConditionalLogic.defaultOptionsForFieldConditions.compareValueWhen | filter: ConditionalLogic.whenConditionalOptionsFilter(condition, when.id) track by compareValue.id" class="compareValue-field-select form-control" ng-change="ConditionalLogic.removeMissed("when", when.id, condition.id, when.missedField)" sd-oscar-theme-select="select2" name="" id=""> 2437<option value="">Make a selection</option> 2438</select> </div> 2439 </div> 2440 <div class="col-6"> 2441 <div class="field-wrapper base-input-field comparison-input-field"> 2442 <select ng-model="when.comparison" ng-options="key as value for (key , value) in ConditionalLogic.defaultOptionsForFieldConditions.comparisonText" ng-if="["textfield", "companyfield", "emailfield", "url", "textarea", "subdomain", undefined].includes(when.compareValue.type)" class="comparison-field-select form-control" sd-oscar-theme-select="select2" name="" id=""> 2443<option value="">Make a selection</option> 2444</select> 2445 <select ng-model="when.comparison" ng-options="key as value for (key , value) in ConditionalLogic.defaultOptionsForFieldConditions.comparisonNumber" ng-if="["number", "datefield"].includes(when.compareValue.type)" class="comparison-field-select form-control" sd-oscar-theme-select="select2" name="" id=""> 2446<option value="">Make a selection</option> 2447</select> 2448 <select ng-model="when.comparison" ng-options="key as value for (key , value) in ConditionalLogic.defaultOptionsForFieldConditions.comparisonForSelect" ng-if="["radio", "dropdown", "choice"].includes(when.compareValue.type)" class="comparison-field-select form-control" sd-oscar-theme-select="select2" name="" id=""> 2449<option value="">Make a selection</option> 2450</select> 2451 <select ng-model="when.comparison" ng-options="key as value for (key , value) in ConditionalLogic.defaultOptionsForFieldConditions.comparisonForCheckbox" ng-if="when.compareValue.type == "checkbox"" class="comparison-field-select form-control" sd-oscar-theme-select="select2" name="" id=""> 2452<option value="">Make a selection</option> 2453</select> </div> 2454 </div> 2455 </div> 2456 <div class="row"> 2457 <div class="col-12"> 2458 <div class="field-wrapper base-input-field compareInput-input-field"> 2459 <input ng-model="when.compareInput" class="compareInput-field-select form-control" ng-if="["textfield", "companyfield", "emailfield", "url", "textarea", "subdomain", undefined].includes(when.compareValue.type)" type="text" value="" name="" id="" /> 2460 <input ng-model="when.compareInput" class="compareInput-field-select form-control" ng-if="when.compareValue.type == "number"" type="number" value="" name="" id="" /> 2461 <input ng-model="when.compareInput" class="compareInput-field-select" ng-if="when.compareValue.type == "datefield"" type="hidden" value="" name="" id="" /> 2462 <input ng-model="datePickerForCompareInput" datepicker-append-to-body="true" ng-model-options="{timezone: 'utc'}" ng-change="when.compareInput = ((datePickerForCompareInput | momentUtc) | momentFormat:"YYYY-MM-DD" )" ng-if="when.compareValue.type == "datefield"" ng-init="datePickerForCompareInput = ((when.compareInput | momentUtc) | momentToDate)" class="form-control" datepicker-options="" uib-datepicker-popup="MM/dd/yyyy" on-open-focus="true" ng-focus="(dp_IsOpen = true)" ng-click="(dp_IsOpen = true)" close-on-date-selection="false" is-open="dp_IsOpen" autocomplete="off" current-text="Today" clear-text="Clear" close-text="Done" type="text" value="" name="" id="" /> 2463 <input ng-model="when.compareInput" class="compareInput-field-select" ng-if="when.compareValue.type == "checkbox"" type="hidden" value="1" name="" id="" /> 2464 <select ng-model="when.compareInput" ng-options="opts.value as opts.title for opts in when.compareValue.options" ng-if="["radio", "dropdown", "choice"].includes(when.compareValue.type)" class="comparison-field-select form-control" sd-oscar-theme-select="select2" name="" id=""> 2465<option value="">Make a selection</option> 2466</select> </div> 2467 </div> 2468 2469 </div> 2470 </div> 2471 <!-- End/ conditionLogic__condition--> 2472 2473 <div class="d-flex justify-content-center w-100"> 2474 <button type="button" class="btn btn-sm btn-outline-default" 2475 ng-click="ConditionalLogic.addNewCondition('when', condition.id)"> 2476 <i class="fa-light fa-plus-large mr-2"></i> 2477 Add New IF </button> 2478 </div> 2479 2480 </div> 2481 <!-- End/ conditionLogic__block 01--> 2482 2483 <!-- Begin conditionLogic__block INFORMATION BLOCK--> 2484 <div class="conditionLogic__block conditionLogic__block--info"> 2485 <div class="conditionLogic__item"> 2486 <div class="conditionLogic__line"> 2487 <h5 class="text-center mb-0 py-2"><sd-tr uid="IF_LOGIC_IMPLIED_BY_CONDITIONS_ABOVE_IS_TRUE"></sd-tr></h5> 2488 <hr class="my-0"> 2489 <h5 class="text-center mb-0 py-2"><sd-tr uid="THEN_EXECUTE_THE_INSTRUCTIONS_BELOW"></sd-tr></h5> 2490 <i class="fa-light fa-angles-down"></i> 2491 </div> 2492 </div> 2493 </div> 2494 <!-- End/ conditionLogic__block INFORMATION BLOCK--> 2495 2496 <!-- Begin conditionLogic__block 02--> 2497 <div class="conditionLogic__block"> 2498 <label class="conditionLogic__label text-center">Then</label> 2499 2500 <!-- Begin conditionLogic__condition--> 2501 <div class="conditionLogic__item" ng-repeat="do in condition.do track by do.id" ng-class="{'conditionLogic__item__missed': do.missedField}"> 2502 <div class="conditionLogic__close" ng-if="condition.do.length > 1"> 2503 <button class="conditionLogic__close-btn" type="button" 2504 ng-click="ConditionalLogic.removeCondition('do', do.id, condition.id)"> 2505 <i class="material-icons">clear</i> 2506 </button> 2507 </div> 2508 <div class="conditionLogic__line"> 2509 <hr ng-if="$index == 0"> 2510 <i class="fa-light fa-gear"></i> 2511 </div> 2512 <div class="row"> 2513 <div class="col-6"> 2514 <div class="field-wrapper base-input-field comparison-input-field"> 2515 <select ng-model="do.showing" ng-options="key as value for (key , value) in ConditionalLogic.defaultOptionsForFieldConditions.showing" class="form-control" sd-oscar-theme-select="select2" name="" id=""> 2516<option value="">Make a selection</option> 2517</select> </div> 2518 </div> 2519 <div class="col-6"> 2520 <div class="field-wrapper base-input-field compareValue-input-field"> 2521 <select ng-model="do.compareValue" ng-options="compareValue.id as compareValue.title for compareValue in ConditionalLogic.defaultOptionsForFieldConditions.compareValue | filter: ConditionalLogic.conditionalOptionsFilter(condition, do.id)" ng-change="ConditionalLogic.removeMissed("do", do.id, condition.id, do.missedField)" class="form-control" sd-oscar-theme-select="select2" name="" id=""> 2522<option value="">Make a selection</option> 2523</select> </div> 2524 </div> 2525 </div> 2526 </div> 2527 <!-- End/ conditionLogic__condition--> 2528 <div class="d-flex justify-content-center w-100"> 2529 <button type="button" class="btn btn-sm btn-outline-default" 2530 ng-click="ConditionalLogic.addNewCondition('do', condition.id)"> 2531 <i class="fa-light fa-plus-large mr-2"></i> 2532 <sd-tr uid="ADD_NEW_THEN"></sd-tr> 2533 </button> 2534 </div> 2535 2536 </div> 2537 <!-- End/ conditionLogic__block 02--> 2538 </div> 2539</div> 2540<div class="d-flex justify-content-center w-100 mt-2 mb-3"> 2541 <button type="button" class="btn btn-sm btn-primary text-uppercase m-3" 2542 ng-click="ConditionalLogic.addNewCondition('condition')"> 2543 <sd-tr uid="ADD_NEW_CONDITION"></sd-tr> 2544 </button> 2545</div> 2546 2547</script>
vendor: 1 bytes, line 2547
2547
2548<script type="text/ng-template" id="conditionalLogicAppointment.html" role="1" assign-to-window="0"><div ng-click="ConditionalLogic.saveCurrentConditions();" id="save-label" class="save-label-wrapper"> 2549 <sd-autosave-label trigger-save="disabled"></sd-autosave-label> 2550</div> 2551<div class="conditionLogic sidebar-conditional-field-form" 2552 ng-repeat="condition in conditions track by condition.trackId"> 2553 <div class="conditionLogic__header"> 2554 <div class="conditionLogic__number"></div> 2555 <span class="conditionLogic__name" contenteditable="true" id="condition-name-{{$index}}" ng-model="condition.name" ng-keyUp="ConditionalLogic.changeName($event, $index);"></span> 2556 <button class="btn-conditionHide" ng-class="{'active' : condition.showSettings}" 2557 type="button" ng-click="condition.showSettings = !condition.showSettings"> 2558 <i class="fa-light fa-chevron-down"></i> 2559 </button> 2560 <div class="conditionLogic__remove"> 2561 <button 2562 class="conditionLogic__close-btn" type="button" 2563 ng-click="ConditionalLogic.removeCondition('condition', condition.trackId)"> 2564 <i class="material-icons">clear</i> 2565 </button> 2566 </div> 2567 2568 </div> 2569 <div class="conditionLogic__body" ng-show="condition.showSettings"> 2570 <!-- Begin conditionLogic__block 01--> 2571 <div class="conditionLogic__block"> 2572 <label class="conditionLogic__label text-center"><sd-tr uid="APPOINTMENT_BLOCKED_INTERVAL_WINDOW"></sd-tr></label> 2573 2574 <!-- Begin conditionLogic__condition--> 2575 <div class="conditionLogic__item" ng-repeat="when in condition.when"> 2576 <div class="conditionLogic__close" ng-if="condition.when.length > 1"> 2577 <button class="conditionLogic__close-btn" type="button" 2578 ng-click="ConditionalLogic.removeCondition('when', when.trackId, condition.trackId)"> 2579 <i class="material-icons">clear</i> 2580 </button> 2581 </div> 2582 <div class="conditionLogic__line"> 2583 <hr ng-if="$index == 0"> 2584 <i class="fa-light" ng-class="{'fa-circle-question': $index == 0, 'fa-circle-plus': $index > 0}"></i> 2585 </div> 2586 <div class="row"> 2587 <div class="col-6"> 2588 <div class="field-wrapper base-input-field"> 2589 <input ng-model="when.fromDate" class="compareInput-field-select" type="hidden" value="" name="" id="" /> <input ng-model="datePickerForFromDate" datepicker-append-to-body="true" datepicker-options="" ng-model-options="{timezone: 'utc'}" ng-change="when.fromDate = ((datePickerForFromDate | momentUtc) | momentFormat:"YYYY-MM-DD" )" ng-init="datePickerForFromDate = ((when.fromDate | momentUtc) | momentToDate)" class="form-control" uib-datepicker-popup="MM/dd/yyyy" on-open-focus="true" ng-focus="(dp_datePickerForFromDateIsOpen = true)" ng-click="(dp_datePickerForFromDateIsOpen = true)" close-on-date-selection="false" is-open="dp_datePickerForFromDateIsOpen" autocomplete="off" current-text="Today" clear-text="Clear" close-text="Done" type="text" value="" name="datePickerForFromDate" id="datePickerForFromDate" /> </div> 2590 </div> 2591 <div class="col-6"> 2592 <div class="field-wrapper base-input-field comparison-input-field"> 2593 <select prevent-default="1" ng-model="when.fromTime" class="form-control" sd-oscar-theme-select="select2" data-options="'{allowClear:false}'" name="" id=""> 2594<option value="">Select Time</option> 2595<option value="00:00:00">12:00 am</option> 2596<option value="00:05:00">12:05 am</option> 2597<option value="00:10:00">12:10 am</option> 2598<option value="00:15:00">12:15 am</option> 2599<option value="00:20:00">12:20 am</option> 2600<option value="00:25:00">12:25 am</option> 2601<option value="00:30:00">12:30 am</option> 2602<option value="00:35:00">12:35 am</option> 2603<option value="00:40:00">12:40 am</option> 2604<option value="00:45:00">12:45 am</option> 2605<option value="00:50:00">12:50 am</option> 2606<option value="00:55:00">12:55 am</option> 2607<option value="01:00:00">1:00 am</option> 2608<option value="01:05:00">1:05 am</option> 2609<option value="01:10:00">
26091:10 am</option> 2610<option value="01:15:00">1:15 am</option> 2611<option value="01:20:00">1:20 am</option> 2612<option value="01:25:00">1:25 am</option> 2613<option value="01:30:00">1:30 am</option> 2614<option value="01:35:00">1:35 am</option> 2615<option value="01:40:00">1:40 am</option> 2616<option value="01:45:00">1:45 am</option> 2617<option value="01:50:00">1:50 am</option> 2618<option value="01:55:00">1:55 am</option> 2619<option value="02:00:00">2:00 am</option> 2620<option value="02:05:00">2:05 am</option> 2621<option value="02:10:00">2:10 am</option> 2622<option value="02:15:00">2:15 am</option> 2623<option value="02:20:00">2:20 am</option> 2624<option value="02:25:00">2:25 am</option> 2625<option value="02:30:00">2:30 am</option> 2626<option value="02:35:00">2:35 am</option> 2627<option value="02:40:00">2:40 am</option> 2628<option value="02:45:00">2:45 am</option> 2629<option value="02:50:00">2:50 am</option> 2630<option value="02:55:00">2:55 am</option> 2631<option value="03:00:00">3:00 am</option> 2632<option value="03:05:00">3:05 am</option> 2633<option value="03:10:00">3:10 am</option> 2634<option value="03:15:00">3:15 am</option> 2635<option value="03:20:00">3:20 am</option> 2636<option value="03:25:00">3:25 am</option> 2637<option value="03:30:00">3:30 am</option> 2638<option value="03:35:00">3:35 am</option> 2639<option value="03:40:00">3:40 am</option> 2640<option value="03:45:00">3:45 am</option> 2641<option value="03:50:00">3:50 am</option> 2642<option value="03:55:00">3:55 am</option> 2643<option value="04:00:00">4:00 am</option> 2644<option value="04:05:00">4:05 am</option> 2645<option value="04:10:00">4:10 am</option> 2646<option value="04:15:00">4:15 am</option> 2647<option value="04:20:00">4:20 am</option> 2648<option value="04:25:00">4:25 am</option> 2649<option value="04:30:00">4:30 am</option> 2650<option value="04:35:00">4:35 am</option> 2651<option value="04:40:00">4:40 am</option> 2652<option value="04:45:00">4:45 am</option> 2653<option value="04:50:00">4:50 am</option> 2654<option value="04:55:00">4:55 am</option> 2655<option value="05:00:00">5:00 am</option> 2656<option value="05:05:00">5:05 am</option> 2657<option value="05:10:00">5:10 am</option> 2658<option value="05:15:00">5:15 am</option> 2659<option value="05:20:00">5:20 am</option> 2660<option value="05:25:00">5:25 am</option> 2661<option value="05:30:00">5:30 am</option> 2662<option value="05:35:00">5:35 am</option> 2663<option value="05:40:00">5:40 am</option> 2664<option value="05:45:00">5:45 am</option> 2665<option value="05:50:00">5:50 am</option> 2666<option value="05:55:00">5:55 am</option> 2667<option value="06:00:00">6:00 am</option> 2668<option value="06:05:00">6:05 am</option> 2669<option value="06:10:00">6:10 am</option> 2670<option value="06:15:00">6:15 am</option> 2671<option value="06:20:00">6:20 am</option> 2672<option value="06:25:00">6:25 am</option> 2673<option value="06:30:00">6:30 am</option> 2674<option value="06:35:00">6:35 am</option> 2675<option value="06:40:00">6:40 am</option> 2676<option value="06:45:00">6:45 am</option> 2677<option value="06:50:00">6:50 am</option> 2678<option value="06:55:00">6:55 am</option> 2679<option value="07:00:00">7:00 am</option> 2680<option value="07:05:00">7:05 am</option> 2681<option value="07:10:00">7:10 am</option> 2682<option value="07:15:00">7:15 am</option> 2683<option value="07:20:00">7:20 am</option> 2684<option value="07:25:00">7:25 am</option> 2685<option value="07:30:00">7:30 am</option> 2686<option value="07:35:00">7:35 am</option> 2687<option value="07:40:00">7:40 am</option> 2688<option value="07:45:00">7:45 am</option> 2689<option value="07:50:00">7:50 am</option> 2690<option value="07:55:00">7:55 am</option> 2691<option value="08:00:00">8:00 am</option> 2692<option value="08:05:00">8:05 am</option> 2693<option value="08:10:00">8:10 am</option> 2694<option value="08:15:00">8:15 am</option> 2695<option value="08:20:00">8:20 am</option> 2696<option value="08:25:00">8:25 am</option> 2697<option value="08:30:00">8:30 am</option> 2698<option value="08:35:00">8:35 am</option> 2699<option value="08:40:00">8:40 am</option> 2700<option value="08:45:00">8:45 am</option> 2701<option value="08:50:00">8:50 am</option> 2702<option value="08:55:00">8:55 am</option> 2703<option value="09:00:00">9:00 am</option> 2704<option value="09:05:00">9:05 am</option> 2705<option value="09:10:00">9:10 am</option> 2706<option value="09:15:00">9:15 am</option> 2707<option value="09:20:00">9:20 am</option> 2708<option value="09:25:00">9:25 am</option> 2709<option value="09:30:00">9:30 am</option> 2710<option value="09:35:00">
27109:35 am</option> 2711<option value="09:40:00">9:40 am</option> 2712<option value="09:45:00">9:45 am</option> 2713<option value="09:50:00">9:50 am</option> 2714<option value="09:55:00">9:55 am</option> 2715<option value="10:00:00">10:00 am</option> 2716<option value="10:05:00">10:05 am</option> 2717<option value="10:10:00">10:10 am</option> 2718<option value="10:15:00">10:15 am</option> 2719<option value="10:20:00">10:20 am</option> 2720<option value="10:25:00">10:25 am</option> 2721<option value="10:30:00">10:30 am</option> 2722<option value="10:35:00">10:35 am</option> 2723<option value="10:40:00">10:40 am</option> 2724<option value="10:45:00">10:45 am</option> 2725<option value="10:50:00">10:50 am</option> 2726<option value="10:55:00">10:55 am</option> 2727<option value="11:00:00">11:00 am</option> 2728<option value="11:05:00">11:05 am</option> 2729<option value="11:10:00">11:10 am</option> 2730<option value="11:15:00">11:15 am</option> 2731<option value="11:20:00">11:20 am</option> 2732<option value="11:25:00">11:25 am</option> 2733<option value="11:30:00">11:30 am</option> 2734<option value="11:35:00">11:35 am</option> 2735<option value="11:40:00">11:40 am</option> 2736<option value="11:45:00">11:45 am</option> 2737<option value="11:50:00">11:50 am</option> 2738<option value="11:55:00">11:55 am</option> 2739<option value="12:00:00">12:00 pm</option> 2740<option value="12:05:00">12:05 pm</option> 2741<option value="12:10:00">12:10 pm</option> 2742<option value="12:15:00">12:15 pm</option> 2743<option value="12:20:00">12:20 pm</option> 2744<option value="12:25:00">12:25 pm</option> 2745<option value="12:30:00">12:30 pm</option> 2746<option value="12:35:00">12:35 pm</option> 2747<option value="12:40:00">12:40 pm</option> 2748<option value="12:45:00">12:45 pm</option> 2749<option value="12:50:00">12:50 pm</option> 2750<option value="12:55:00">12:55 pm</option> 2751<option value="13:00:00">1:00 pm</option> 2752<option value="13:05:00">1:05 pm</option> 2753<option value="13:10:00">1:10 pm</option> 2754<option value="13:15:00">1:15 pm</option> 2755<option value="13:20:00">1:20 pm</option> 2756<option value="13:25:00">1:25 pm</option> 2757<option value="13:30:00">1:30 pm</option> 2758<option value="13:35:00">1:35 pm</option> 2759<option value="13:40:00">1:40 pm</option> 2760<option value="13:45:00">1:45 pm</option> 2761<option value="13:50:00">1:50 pm</option> 2762<option value="13:55:00">1:55 pm</option> 2763<option value="14:00:00">2:00 pm</option> 2764<option value="14:05:00">2:05 pm</option> 2765<option value="14:10:00">2:10 pm</option> 2766<option value="14:15:00">2:15 pm</option> 2767<option value="14:20:00">2:20 pm</option> 2768<option value="14:25:00">2:25 pm</option> 2769<option value="14:30:00">2:30 pm</option> 2770<option value="14:35:00">2:35 pm</option> 2771<option value="14:40:00">2:40 pm</option> 2772<option value="14:45:00">2:45 pm</option> 2773<option value="14:50:00">2:50 pm</option> 2774<option value="14:55:00">2:55 pm</option> 2775<option value="15:00:00">3:00 pm</option> 2776<option value="15:05:00">3:05 pm</option> 2777<option value="15:10:00">3:10 pm</option> 2778<option value="15:15:00">3:15 pm</option> 2779<option value="15:20:00">3:20 pm</option> 2780<option value="15:25:00">3:25 pm</option> 2781<option value="15:30:00">3:30 pm</option> 2782<option value="15:35:00">3:35 pm</option> 2783<option value="15:40:00">3:40 pm</option> 2784<option value="15:45:00">3:45 pm</option> 2785<option value="15:50:00">3:50 pm</option> 2786<option value="15:55:00">3:55 pm</option> 2787<option value="16:00:00">4:00 pm</option> 2788<option value="16:05:00">4:05 pm</option> 2789<option value="16:10:00">4:10 pm</option> 2790<option value="16:15:00">4:15 pm</option> 2791<option value="16:20:00">4:20 pm</option> 2792<option value="16:25:00">4:25 pm</option> 2793<option value="16:30:00">4:30 pm</option> 2794<option value="16:35:00">4:35 pm</option> 2795<option value="16:40:00">4:40 pm</option> 2796<option value="16:45:00">4:45 pm</option> 2797<option value="16:50:00">4:50 pm</option> 2798<option value="16:55:00">4:55 pm</option> 2799<option value="17:00:00">5:00 pm</option> 2800<option value="17:05:00">5:05 pm</option> 2801<option value="17:10:00">5:10 pm</option> 2802<option value="17:15:00">5:15 pm</option> 2803<option value="17:20:00">5:20 pm</option> 2804<option value="17:25:00">5:25 pm</option> 2805<option value="17:30:00">5:30 pm</option> 2806<option value="17:35:00">5:35 pm</option> 2807<option value="17:40:00">5:40 pm</option> 2808<option value="17:45:00">5:45 pm</option> 2809<option value="17:50:00">5:50 pm</option> 2810<option value="17:55:00">5:55 pm</option> 2811<option value="18:00:00">6:00 pm</option> 2812<option value="18:05:00">6:05 pm</option> 2813<option value="18:10:00">6:10 pm</option> 2814<option value="18:15:00">6:15 pm</option> 2815<option value="18:20:00">6:20 pm</option> 2816<option value="18:25:00">6:25 pm</option> 2817<option value="18:30:00">6:30 pm</option> 2818<option value="18:35:00">6:35 pm</option> 2819<option value="18:40:00">6:40 pm</option> 2820<option value="18:45:00">6:45 pm</option> 2821<option value="18:50:00">6:50 pm</option> 2822<option value="18:55:00">6:55 pm</option> 2823<option value="19:00:00">7:00 pm</option> 2824<option value="19:05:00">7:05 pm</option> 2825<option value="19:10:00">7:10 pm</option> 2826<option value="19:15:00">7:15 pm</option> 2827<option value="19:20:00">7:20 pm</option> 2828<option value="19:25:00">7:25 pm</option> 2829<option value="19:30:00">7:30 pm</option> 2830<option value="19:35:00">7:35 pm</option> 2831<option value="19:40:00">7:40 pm</option> 2832<option value="19:45:00">7:45 pm</option> 2833<option value="19:50:00">7:50 pm</option> 2834<option value="19:55:00">7:55 pm</option> 2835<option value="20:00:00">8:00 pm</option> 2836<option value="20:05:00">8:05 pm</option> 2837<option value="20:10:00">8:10 pm</option> 2838<option value="20:15:00">8:15 pm</option> 2839<option value="20:20:00">8:20 pm</option> 2840<option value="20:25:00">8:25 pm</option> 2841<option value="20:30:00">8:30 pm</option> 2842<option value="20:35:00">8:35 pm</option> 2843<option value="20:40:00">8:40 pm</option> 2844<option value="20:45:00">8:45 pm</option> 2845<option value="20:50:00">8:50 pm</option> 2846<option value="20:55:00">8:55 pm</option> 2847<option value="21:00:00">9:00 pm</option> 2848<option value="21:05:00">9:05 pm</option> 2849<option value="21:10:00">9:10 pm</option> 2850<option value="21:15:00">9:15 pm</option> 2851<option value="21:20:00">9:20 pm</option> 2852<option value="21:25:00">9:25 pm</option> 2853<option value="21:30:00">9:30 pm</option> 2854<option value="21:35:00">9:35 pm</option> 2855<option value="21:40:00">9:40 pm</option> 2856<option value="21:45:00">9:45 pm</option> 2857<option value="21:50:00">9:50 pm</option> 2858<option value="21:55:00">9:55 pm</option> 2859<option value="22:00:00">10:00 pm</option> 2860<option value="22:05:00">10:05 pm</option> 2861<option value="22:10:00">10:10 pm</option> 2862<option value="22:15:00">10:15 pm</option> 2863<option value="22:20:00">10:20 pm</option> 2864<option value="22:25:00">10:25 pm</option> 2865<option value="22:30:00">10:30 pm</option> 2866<option value="22:35:00">10:35 pm</option> 2867<option value="22:40:00">10:40 pm</option> 2868<option value="22:45:00">10:45 pm</option> 2869<option value="22:50:00">10:50 pm</option> 2870<option value="22:55:00">10:55 pm</option> 2871<option value="23:00:00">11:00 pm</option> 2872<option value="23:05:00">11:05 pm</option> 2873<option value="23:10:00">11:10 pm</option> 2874<option value="23:15:00">
287411:15 pm</option> 2875<option value="23:20:00">11:20 pm</option> 2876<option value="23:25:00">11:25 pm</option> 2877<option value="23:30:00">11:30 pm</option> 2878<option value="23:35:00">11:35 pm</option> 2879<option value="23:40:00">11:40 pm</option> 2880<option value="23:45:00">11:45 pm</option> 2881<option value="23:50:00">11:50 pm</option> 2882<option value="23:55:00">11:55 pm</option> 2883</select> </div> 2884 </div> 2885 </div> 2886 <div class="row"> 2887 <div class="col-6"> 2888 <div class="field-wrapper base-input-field comparison-input-field"> 2889 <input ng-model="when.toDate" class="compareInput2-field-select" type="hidden" value="" name="" id="" /> <input ng-model="datePickerForToDate" datepicker-append-to-body="true" datepicker-options="" ng-model-options="{timezone: 'utc'}" ng-change="when.toDate = ((datePickerForToDate | momentUtc) | momentFormat:"YYYY-MM-DD" )" ng-init="datePickerForToDate = ((when.toDate | momentUtc) | momentToDate)" class="form-control" uib-datepicker-popup="MM/dd/yyyy" on-open-focus="true" ng-focus="(dp_datePickerForToDateIsOpen = true)" ng-click="(dp_datePickerForToDateIsOpen = true)" close-on-date-selection="false" is-open="dp_datePickerForToDateIsOpen" autocomplete="off" current-text="Today" clear-text="Clear" close-text="Done" type="text" value="" name="datePickerForToDate" id="datePickerForToDate" /> </div> 2890 </div> 2891 <div class="col-6"> 2892 <div class="field-wrapper base-input-field comparison-input-field"> 2893 <select prevent-default="1" ng-model="when.toTime" class="form-control" sd-oscar-theme-select="select2" data-options="'{allowClear:false}'" name="" id=""> 2894<option value="">Select Time</option> 2895<option value="00:00:00">12:00 am</option> 2896<option value="00:05:00">12:05 am</option> 2897<option value="00:10:00">12:10 am</option> 2898<option value="00:15:00">12:15 am</option> 2899<option value="00:20:00">12:20 am</option> 2900<option value="00:25:00">12:25 am</option> 2901<option value="00:30:00">12:30 am</option> 2902<option value="00:35:00">12:35 am</option> 2903<option value="00:40:00">12:40 am</option> 2904<option value="00:45:00">12:45 am</option> 2905<option value="00:50:00">12:50 am</option> 2906<option value="00:55:00">12:55 am</option> 2907<option value="01:00:00">1:00 am</option> 2908<option value="01:05:00">1:05 am</option> 2909<option value="01:10:00">1:10 am</option> 2910<option value="01:15:00">1:15 am</option> 2911<option value="01:20:00">1:20 am</option> 2912<option value="01:25:00">1:25 am</option> 2913<option value="01:30:00">1:30 am</option> 2914<option value="01:35:00">1:35 am</option> 2915<option value="01:40:00">1:40 am</option> 2916<option value="01:45:00">1:45 am</option> 2917<option value="01:50:00">1:50 am</option> 2918<option value="01:55:00">1:55 am</option> 2919<option value="02:00:00">2:00 am</option> 2920<option value="02:05:00">2:05 am</option> 2921<option value="02:10:00">2:10 am</option> 2922<option value="02:15:00">2:15 am</option> 2923<option value="02:20:00">2:20 am</option> 2924<option value="02:25:00">2:25 am</option> 2925<option value="02:30:00">2:30 am</option> 2926<option value="02:35:00">2:35 am</option> 2927<option value="02:40:00">2:40 am</option> 2928<option value="02:45:00">2:45 am</option> 2929<option value="02:50:00">2:50 am</option> 2930<option value="02:55:00">2:55 am</option> 2931<option value="03:00:00">3:00 am</option> 2932<option value="03:05:00">3:05 am</option> 2933<option value="03:10:00">3:10 am</option> 2934<option value="03:15:00">3:15 am</option> 2935<option value="03:20:00">3:20 am</option> 2936<option value="03:25:00">3:25 am</option> 2937<option value="03:30:00">3:30 am</option> 2938<option value="03:35:00">3:35 am</option> 2939<option value="03:40:00">3:40 am</option> 2940<option value="03:45:00">3:45 am</option> 2941<option value="03:50:00">3:50 am</option> 2942<option value="03:55:00">3:55 am</option> 2943<option value="04:00:00">4:00 am</option> 2944<option value="04:05:00">4:05 am</option> 2945<option value="04:10:00">4:10 am</option> 2946<option value="04:15:00">4:15 am</option> 2947<option value="04:20:00">4:20 am</option> 2948<option value="04:25:00">4:25 am</option> 2949<option value="04:30:00">4:30 am</option> 2950<option value="04:35:00">
29504:35 am</option> 2951<option value="04:40:00">4:40 am</option> 2952<option value="04:45:00">4:45 am</option> 2953<option value="04:50:00">4:50 am</option> 2954<option value="04:55:00">4:55 am</option> 2955<option value="05:00:00">5:00 am</option> 2956<option value="05:05:00">5:05 am</option> 2957<option value="05:10:00">5:10 am</option> 2958<option value="05:15:00">5:15 am</option> 2959<option value="05:20:00">5:20 am</option> 2960<option value="05:25:00">5:25 am</option> 2961<option value="05:30:00">5:30 am</option> 2962<option value="05:35:00">5:35 am</option> 2963<option value="05:40:00">5:40 am</option> 2964<option value="05:45:00">5:45 am</option> 2965<option value="05:50:00">5:50 am</option> 2966<option value="05:55:00">5:55 am</option> 2967<option value="06:00:00">6:00 am</option> 2968<option value="06:05:00">6:05 am</option> 2969<option value="06:10:00">6:10 am</option> 2970<option value="06:15:00">6:15 am</option> 2971<option value="06:20:00">6:20 am</option> 2972<option value="06:25:00">6:25 am</option> 2973<option value="06:30:00">6:30 am</option> 2974<option value="06:35:00">6:35 am</option> 2975<option value="06:40:00">6:40 am</option> 2976<option value="06:45:00">6:45 am</option> 2977<option value="06:50:00">6:50 am</option> 2978<option value="06:55:00">6:55 am</option> 2979<option value="07:00:00">7:00 am</option> 2980<option value="07:05:00">7:05 am</option> 2981<option value="07:10:00">7:10 am</option> 2982<option value="07:15:00">7:15 am</option> 2983<option value="07:20:00">7:20 am</option> 2984<option value="07:25:00">7:25 am</option> 2985<option value="07:30:00">7:30 am</option> 2986<option value="07:35:00">7:35 am</option> 2987<option value="07:40:00">7:40 am</option> 2988<option value="07:45:00">7:45 am</option> 2989<option value="07:50:00">7:50 am</option> 2990<option value="07:55:00">7:55 am</option> 2991<option value="08:00:00">8:00 am</option> 2992<option value="08:05:00">8:05 am</option> 2993<option value="08:10:00">8:10 am</option> 2994<option value="08:15:00">8:15 am</option> 2995<option value="08:20:00">8:20 am</option> 2996<option value="08:25:00">8:25 am</option> 2997<option value="08:30:00">8:30 am</option> 2998<option value="08:35:00">8:35 am</option> 2999<option value="08:40:00">8:40 am</option> 3000<option value="08:45:00">8:45 am</option> 3001<option value="08:50:00">8:50 am</option> 3002<option value="08:55:00">8:55 am</option> 3003<option value="09:00:00">9:00 am</option> 3004<option value="09:05:00">9:05 am</option> 3005<option value="09:10:00">9:10 am</option> 3006<option value="09:15:00">9:15 am</option> 3007<option value="09:20:00">9:20 am</option> 3008<option value="09:25:00">9:25 am</option> 3009<option value="09:30:00">9:30 am</option> 3010<option value="09:35:00">9:35 am</option> 3011<option value="09:40:00">9:40 am</option> 3012<option value="09:45:00">9:45 am</option> 3013<option value="09:50:00">9:50 am</option> 3014<option value="09:55:00">9:55 am</option> 3015<option value="10:00:00">10:00 am</option> 3016<option value="10:05:00">10:05 am</option> 3017<option value="10:10:00">10:10 am</option> 3018<option value="10:15:00">10:15 am</option> 3019<option value="10:20:00">10:20 am</option> 3020<option value="10:25:00">10:25 am</option> 3021<option value="10:30:00">10:30 am</option> 3022<option value="10:35:00">10:35 am</option> 3023<option value="10:40:00">10:40 am</option> 3024<option value="10:45:00">10:45 am</option> 3025<option value="10:50:00">10:50 am</option> 3026<option value="10:55:00">10:55 am</option> 3027<option value="11:00:00">11:00 am</option> 3028<option value="11:05:00">11:05 am</option> 3029<option value="11:10:00">11:10 am</option> 3030<option value="11:15:00">11:15 am</option> 3031<option value="11:20:00">11:20 am</option> 3032<option value="11:25:00">11:25 am</option> 3033<option value="11:30:00">11:30 am</option> 3034<option value="11:35:00">11:35 am</option> 3035<option value="11:40:00">11:40 am</option> 3036<option value="11:45:00">11:45 am</option> 3037<option value="11:50:00">11:50 am</option> 3038<option value="11:55:00">11:55 am</option> 3039<option value="12:00:00">12:00 pm</option> 3040<option value="12:05:00">12:05 pm</option> 3041<option value="12:10:00">12:10 pm</option> 3042<option value="12:15:00">12:15 pm</option> 3043<option value="12:20:00">12:20 pm</option> 3044<option value="12:25:00">12:25 pm</option> 3045<option value="12:30:00">12:30 pm</option> 3046<option value="12:35:00">12:35 pm</option> 3047<option value="12:40:00">12:40 pm</option> 3048<option value="12:45:00">12:45 pm</option> 3049<option value="12:50:00">12:50 pm</option> 3050<option value="12:55:00">12:55 pm</option> 3051<option value="13:00:00">1:00 pm</option> 3052<option value="13:05:00">1:05 pm</option> 3053<option value="13:10:00">1:10 pm</option> 3054<option value="13:15:00">1:15 pm</option> 3055<option value="13:20:00">1:20 pm</option> 3056<option value="13:25:00">1:25 pm</option> 3057<option value="13:30:00">1:30 pm</option> 3058<option value="13:35:00">1:35 pm</option> 3059<option value="13:40:00">1:40 pm</option> 3060<option value="13:45:00">1:45 pm</option> 3061<option value="13:50:00">1:50 pm</option> 3062<option value="13:55:00">1:55 pm</option> 3063<option value="14:00:00">2:00 pm</option> 3064<option value="14:05:00">2:05 pm</option> 3065<option value="14:10:00">2:10 pm</option> 3066<option value="14:15:00">2:15 pm</option> 3067<option value="14:20:00">2:20 pm</option> 3068<option value="14:25:00">2:25 pm</option> 3069<option value="14:30:00">2:30 pm</option> 3070<option value="14:35:00">2:35 pm</option> 3071<option value="14:40:00">2:40 pm</option> 3072<option value="14:45:00">2:45 pm</option> 3073<option value="14:50:00">2:50 pm</option> 3074<option value="14:55:00">2:55 pm</option> 3075<option value="15:00:00">3:00 pm</option> 3076<option value="15:05:00">3:05 pm</option> 3077<option value="15:10:00">3:10 pm</option> 3078<option value="15:15:00">3:15 pm</option> 3079<option value="15:20:00">3:20 pm</option> 3080<option value="15:25:00">3:25 pm</option> 3081<option value="15:30:00">3:30 pm</option> 3082<option value="15:35:00">3:35 pm</option> 3083<option value="15:40:00">3:40 pm</option> 3084<option value="15:45:00">3:45 pm</option> 3085<option value="15:50:00">3:50 pm</option> 3086<option value="15:55:00">3:55 pm</option> 3087<option value="16:00:00">4:00 pm</option> 3088<option value="16:05:00">4:05 pm</option> 3089<option value="16:10:00">4:10 pm</option> 3090<option value="16:15:00">4:15 pm</option> 3091<option value="16:20:00">4:20 pm</option> 3092<option value="16:25:00">4:25 pm</option> 3093<option value="16:30:00">4:30 pm</option> 3094<option value="16:35:00">4:35 pm</option> 3095<option value="16:40:00">4:40 pm</option> 3096<option value="16:45:00">4:45 pm</option> 3097<option value="16:50:00">4:50 pm</option> 3098<option value="16:55:00">4:55 pm</option> 3099<option value="17:00:00">5:00 pm</option> 3100<option value="17:05:00">5:05 pm</option> 3101<option value="17:10:00">5:10 pm</option> 3102<option value="17:15:00">5:15 pm</option> 3103<option value="17:20:00">5:20 pm</option> 3104<option value="17:25:00">5:25 pm</option> 3105<option value="17:30:00">5:30 pm</option> 3106<option value="17:35:00">5:35 pm</option> 3107<option value="17:40:00">5:40 pm</option> 3108<option value="17:45:00">5:45 pm</option> 3109<option value="17:50:00">5:50 pm</option> 3110<option value="17:55:00">5:55 pm</option> 3111<option value="18:00:00">6:00 pm</option> 3112<option value="18:05:00">6:05 pm</option> 3113<option value="18:10:00">6:10 pm</option> 3114<option value="18:15:00">6:15 pm</option> 3115<option value="18:20:00">6:20 pm</option> 3116<option value="18:25:00">6:25 pm</option> 3117<option value="18:30:00">6:30 pm</option> 3118<option value="18:35:00">6:35 pm</option> 3119<option value="18:40:00">6:40 pm</option> 3120<option value="18:45:00">6:45 pm</option> 3121<option value="18:50:00">6:50 pm</option> 3122<option value="18:55:00">6:55 pm</option> 3123<option value="19:00:00">7:00 pm</option> 3124<option value="19:05:00">7:05 pm</option> 3125<option value="19:10:00">7:10 pm</option> 3126<option value="19:15:00">7:15 pm</option> 3127<option value="19:20:00">7:20 pm</option> 3128<option value="19:25:00">7:25 pm</option> 3129<option value="19:30:00">7:30 pm</option> 3130<option value="19:35:00">7:35 pm</option> 3131<option value="19:40:00">7:40 pm</option> 3132<option value="19:45:00">7:45 pm</option> 3133<option value="19:50:00">7:50 pm</option> 3134<option value="19:55:00">7:55 pm</option> 3135<option value="20:00:00">8:00 pm</option> 3136<option value="20:05:00">8:05 pm</option> 3137<option value="20:10:00">8:10 pm</option> 3138<option value="20:15:00">8:15 pm</option> 3139<option value="20:20:00">8:20 pm</option> 3140<option value="20:25:00">8:25 pm</option> 3141<option value="20:30:00">8:30 pm</option> 3142<option value="20:35:00">8:35 pm</option> 3143<option value="20:40:00">8:40 pm</option> 3144<option value="20:45:00">8:45 pm</option> 3145<option value="20:50:00">8:50 pm</option> 3146<option value="20:55:00">8:55 pm</option> 3147<option value="21:00:00">9:00 pm</option> 3148<option value="21:05:00">9:05 pm</option> 3149<option value="21:10:00">9:10 pm</option> 3150<option value="21:15:00">9:15 pm</option> 3151<option value="21:20:00">9:20 pm</option> 3152<option value="21:25:00">9:25 pm</option> 3153<option value="21:30:00">9:30 pm</option> 3154<option value="21:35:00">9:35 pm</option> 3155<option value="21:40:00">9:40 pm</option> 3156<option value="21:45:00">9:45 pm</option> 3157<option value="21:50:00">9:50 pm</option> 3158<option value="21:55:00">9:55 pm</option> 3159<option value="22:00:00">10:00 pm</option> 3160<option value="22:05:00">10:05 pm</option> 3161<option value="22:10:00">10:10 pm</option> 3162<option value="22:15:00">10:15 pm</option> 3163<option value="22:20:00">10:20 pm</option> 3164<option value="22:25:00">10:25 pm</option> 3165<option value="22:30:00">10:30 pm</option> 3166<option value="22:35:00">10:35 pm</option> 3167<option value="22:40:00">10:40 pm</option> 3168<option value="22:45:00">10:45 pm</option> 3169<option value="22:50:00">10:50 pm</option> 3170<option value="22:55:00">10:55 pm</option> 3171<option value="23:00:00">11:00 pm</option> 3172<option value="23:05:00">11:05 pm</option> 3173<option value="23:10:00">11:10 pm</option> 3174<option value="23:15:00">
317411:15 pm</option> 3175<option value="23:20:00">11:20 pm</option> 3176<option value="23:25:00">11:25 pm</option> 3177<option value="23:30:00">11:30 pm</option> 3178<option value="23:35:00">11:35 pm</option> 3179<option value="23:40:00">11:40 pm</option> 3180<option value="23:45:00">11:45 pm</option> 3181<option value="23:50:00">11:50 pm</option> 3182<option value="23:55:00">11:55 pm</option> 3183</select> </div> 3184 </div> 3185 </div> 3186 <div class="errorMessage" ng-if="groupErrors[condition.trackId][when.trackId]">{{groupErrors[condition.trackId][when.trackId]}}</div> 3187 </div> 3188 <!-- End/ conditionLogic__condition--> 3189 3190 <div class="d-flex justify-content-center w-100"> 3191 <button type="button" class="btn btn-sm btn-outline-default" 3192 ng-click="ConditionalLogic.addNewCondition('when', condition.trackId)"> 3193 <i class="fa-light fa-plus-large mr-2"></i> 3194 <sd-tr uid="NEW_WINDOW"></sd-tr> 3195 </button> 3196 </div> 3197 3198 </div> 3199 <!-- End/ conditionLogic__block 01--> 3200 3201 <!-- Begin conditionLogic__block INFORMATION BLOCK--> 3202 <div class="conditionLogic__block conditionLogic__block--info"> 3203 <div class="conditionLogic__item"> 3204 <div class="conditionLogic__line"> 3205 <h5 class="text-center mb-0 py-2"><sd-tr uid="FOR_THE_TIME_WINDOWS_ABOVE"></sd-tr></h5> 3206 <hr class="my-0"> 3207 <h5 class="text-center mb-0 py-2"><sd-tr uid="BLOCK_AVAILABILITY_FOR_APPOINTMENT_TYPE_BELOW"></sd-tr></h5> 3208 <i class="fa-light fa-angles-down"></i> 3209 </div> 3210 </div> 3211 </div> 3212 <!-- End/ conditionLogic__block INFORMATION BLOCK--> 3213 3214 <!-- Begin conditionLogic__block 02--> 3215 <div class="conditionLogic__block"> 3216<!-- <label class="conditionLogic__label text-center">Then</label>--> 3217 3218 <!-- Begin conditionLogic__condition--> 3219<!-- <div class="conditionLogic__line">--> 3220<!-- <hr>--> 3221<!-- <i class="fa-light fa-gear"></i>--> 3222<!-- </div>--> 3223 <div class="row"> 3224 <div class="col-12"> 3225 <div class="field-wrapper base-input-field"> 3226 <p class="mb-0"><span><sd-tr uid="SELECT_APPOINTMENT_TYPE_S" /></span></p> 3227 <select ng-model="condition.do" prevent-default="1" multiple="multiple" ng-options="target.id as target.name group by target.group for target in available_calendars" class="form-control" sd-oscar-theme-select="select2" data-options="'{allowClear:false}'" name="[]" id=""> 3228<option value="">Make a selection</option> 3229</select> <div class="errorMessage" ng-if="groupErrors[condition.trackId].calendars">{{groupErrors[condition.trackId].calendars}}</div> 3230 </div> 3231 </div> 3232 </div> 3233 <!-- End/ conditionLogic__condition--> 3234 </div> 3235 <!-- End/ conditionLogic__block 02--> 3236 </div> 3237</div> 3238<div class="d-flex justify-content-center w-100 mt-2 mb-3"> 3239 <button type="button" class="btn btn-sm btn-primary text-uppercase m-3" 3240 ng-click="ConditionalLogic.addNewCondition('condition')"> 3241 <sd-tr uid="ADD_NEW_GROUP"></sd-tr> 3242 </button> 3243</div> 3244 3245</script>
vendor: 1 bytes, line 3245
3245
3246<script type="text/json-template" id="CURRENCIES_FORMATTED" role="1" assign-to-window="0">[{"id":"7","label":"EUR","alignment":"left","formatted":"(\u20ac) EUR","symbol":"€","value":"EUR","rate":"0.88813900000000","format":"\u20ac{amount}","formatCode":"\u20ac{amount} (EUR) "},{"id":"8","label":"USD","alignment":"left","formatted":"($) USD","symbol":"$","value":"USD","rate":"1.00000000000000","format":"${amount}","formatCode":"${amount} (USD) "}]</script>
vendor: 1 bytes, line 3246
3246
3247<script type="text/json-template" id="COMPANY_NUMBER_FORMAT" role="1" assign-to-window="0">{"numberFormat":"US"}</script>
3247 3248
3249<script type="text/javascript" src="/assets/30244f87/createEntityAction.js?51e9a6df22d"></script>
vendor: 1 bytes, line 3249
3249
3250<script type="text/javascript" src="/themes/mpa/assets/js/custom/appSumo/main.js?51e9a6df22d"></script>
vendor: 1 bytes, line 3250
3250
3251<script type="text/javascript" src="/themes/mpa/assets/js/custom/user/main.js?51e9a6df22d"></script>
vendor: 1 bytes, line 3251
3251
3252<script type="text/javascript" src="/themes/mpa/assets/js/custom/invoicesPayments/paymentMethods/main.js?51e9a6df22d"></script>
vendor: 1 bytes, line 3252
3252
3253<script type="text/javascript" src="/themes/mpa/assets/js/custom/ribbonTabsScroll.js?51e9a6df22d"></script>
vendor: 1 bytes, line 3253
3253
3254<script type="text/javascript" src="/themes/mpa/assets/js/custom/ribbonDropdown.js?51e9a6df22d"></script>
vendor: 1 bytes, line 3254
3254
3255<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/color.picker.min.js?ver=a3a8ba42fb6b73bcf4b262f3469271489043ed4a" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3255
3255
3256<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.HttpInterceptor.min.js?ver=27ba0aadc1c74e23d2714c1af2f7612586212f16" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3256
3256
3257<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Login.min.js?ver=11bcc8a2d47f68b3b25618b1150474279cbefba1" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3257
3257
3258<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Decorators.min.js?ver=f619e4a8676d5265ea8aa58c7ab5a9b75ee143c5" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3258
3258
3259<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Generics.min.js?ver=76c7eda62f3f7e84349cea165749741e03baab78" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3259
3259
3260<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/ngLocale.min.js?ver=1552dfaf4987aa23398dbb1dc2939a28604ca89b" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3260
3260
3261<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/ui.bootstrap.min.js?ver=6bbba2663cbd588335626e41e81433792bc75bad" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3261
3261
3262<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Modal.min.js?ver=7ca8980cc0edbadf0eaec639f1cdde26e416e0e3" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3262
3262
3263<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/ui.sortable.min.js?ver=2ec42b3fc54e9a1c9c6313403842ba7f527aad25" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3263
3263
3264<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/ngTagsInput.min.js?ver=a3b691509ead230e8008e4e67f10284177597b14" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3264
3264
3265<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Location.min.js?ver=68375e0c68d548e870e86cde110d51057438ecf6" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3265
3265
3266<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.FilePreview.min.js?ver=eaf951972c9db239a3d52927e6c72454887dfe41" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3266
3266
3267<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.FileUploadProgress.min.js?ver=5a6cd51d4a506eb10cb51817b05da10a28082bef" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3267
3267
3268<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.oscar.upload.min.js?ver=c1fe39096f8a8abe5df4ec178a565c2d777689a5" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3268
3268
3269<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.FileUpload.min.js?ver=e487449a8dd6eb0fdbd3a26ddb771013e4159d51" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3269
3269
3270<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.Icons.min.js?ver=67e67319f500a0689a260745b8f4103c9137d014" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3270
3270
3271<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.Filters.min.js?ver=0f27ca8bf5d35e2a7c5508340644ca0071576622" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3271
3271
3272<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.FolderProfiles.min.js?ver=4df12ce491b7c7ad90acea6211d6c28419fcaad8" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3272
3272
3273<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.UploadNotification.min.js?ver=872f57fd0cb35ffa444f786c31c616b5920da214" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3273
3273
3274<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.ClientSharedFolder.min.js?ver=468d1a329083c8c09ee9cb388bc9325c4726eddb" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3274
3274
3275<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.BrowserInclude.min.js?ver=715cdf1e39e976f3610e39cad6a90a34a284b2d2" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3275
3275
3276<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.web.viewer.min.js?ver=50a6d12cdd53c72695edeac4a5e82e7489d7453d" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3276
3276
3277<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/ui.select.min.js?ver=2c2cb66dc794b30a97124f423e810085edd5d09a" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3277
3277
3278<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Form.V2.min.js?ver=948ff7dbee4c36bc0845503995494a63ca8214e5" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3278
3278
3279<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.files.min.js?ver=eadd0ab613b887ff70f068900099aada009a2e6c" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3279
3279
3280<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.FileUploadFieldInput.min.js?ver=b0dea9e631b06125796979ae09bb5c0451a74f68" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3280
3280
3281<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/angular-ui-mask/dist/mask.min.js?90c7643d1bcf073d" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3281
3281
3282<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Form.min.js?ver=14cbcc3cc22af830cfbdeebc0cc668ca23e82082" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3282
3282
3283<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/sog-select2/dist/js/select2.full.js?f6fa741ad3efe30e" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3283
3283
3284<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Theme.Select.min.js?ver=3469294f5fa0170a835467864d2ea1005b2ef15b" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3284
3284
3285<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Theme.Components.min.js?ver=1acd6f7b94ad15e38eff39eb965b2738f0262c37" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3285
3285
3286<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/tinycolor2/dist/tinycolor-min.js?5b79a83b26977a7a" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3286
3286
3287<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Theme.TinyColor.min.js?ver=a881be5cb99a0fda3f330c5c9cb35034d83deeb2" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3287
3287
3288<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/ace-builds/src-min/ace.js?5aafb9bab59be400" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3288
3288
3289<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/ui.ace.min.js?ver=d532f13c3aa2b69b0636179572bc06913ac7de76" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3289
3289
3290<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.visibility.min.js?ver=47e975e4eb11657c2a8f42f6cb98a1e7442dc26b" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3290
3290
3291<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/gpickr/dist/gpickr.min.js?272cbc50a1aed139" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3291
3291
3292<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Theme.min.js?ver=9a5201cc7b7ac40fdf765a548fe53a98426899e0" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3292
3292
3293<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/moment/min/moment-with-locales.min.js?ef33ee2255d56226" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3293
3293
3294<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Filters.min.js?ver=747d4a9277a38e4fc445827129cc7de34b4712f2" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3294
3294
3295<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.SidebarMenu.min.js?ver=ffded1b41f4a5eb1166c9868b98334a5ace50852" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3295
3295
3296<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.ResourceUtil.min.js?ver=b4278798439e544a0f698c91990e17abbdcaf81b" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3296
3296
3297<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Help.min.js?ver=c9e30945bd61cf47e708f88896015959459358cb" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3297
3297
3298<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.pm.Timer.min.js?ver=3bd63edbc8fdc6bdd42805d5f7c91206a3e7348d" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3298
3298
3299<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Redactor.min.js?ver=b9108c3c1b2b7a5b20da8fc27b0aa0c8bbcac878" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3299
3299
3300<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.ai.rewrite.fragment.min.js?ver=8fef0cb88ee5fdd2bc8aa32fc7868694cd943163" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3300
3300
3301<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.react.interop.min.js?ver=da77f2a77a5bf7f7cc5e2bf5b0bb2fab6253aeff" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3301
3301
3302<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.reminder.settings.min.js?ver=1d17875abb04a764fc22dd11cc73c1e763e5f5a1" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3302
3302
3303<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.DropdownFitViewport.min.js?ver=d028605fac6c35cb5b5a8897c47ec3fb76bd1b6a" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3303
3303
3304<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/mpa.data.filters.sorting.min.js?ver=ebdc1b51593d3d946a6470f01a212ec3abb64ec1" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3304
3304
3305<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.shared.runtime.min.js?ver=696bcd612e64e3665897de5ec4233805843025bc" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3305
3305
3306<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.ActivityWatcher.min.js?ver=3165dc61c780436e3bf0f8a47996ae20d36e1bc9" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3306
3306
3307<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.IdleWarning.min.js?ver=af99956c318e7dc497455aa88d18ab0dc902f45f" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3307
3307
3308<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/node_modules/sweetalert2/dist/sweetalert2.all.min.js?e330ff637e063c26" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3308
3308
3309<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.min.js?ver=ef27c7e34336fbdadea7aa89a2f5050b88ae4eda" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3309
3309
3310<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.oscar.util.min.js?ver=8d9a8a12907264b51d9b99136d35a3106e62f386" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3310
3310
3311<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.filters.profile.widget.min.js?ver=ecac1e17d44a1d527df8a643abf95ec918ddbc67" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3311
3311
3312<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.data.view.min.js?ver=741da600cb61d789afa18f0ab4dd98f25ce16e78" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3312
3312
3313<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.oscar.grid.view.min.js?ver=d8f8dd41a027d3adb770954cdd2309b45c9a719c" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3313
3313
3314<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.oscar.quillEditor.min.js?ver=0a7327bfdc32f9f85fb685c6145aa9edf6784d1f" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3314
3314
3315<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.WysiwygPreview.min.js?ver=0718c889af06d6231404eb6e89093a1d1494dd50" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3315
3315
3316<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.Article.min.js?ver=89cc5c07f7756c35e6869999bb428514143b8717" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3316
3316
3317<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.FormCannon.min.js?ver=3324165e8bc33c865b8238452ea695538de15f97" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3317
3317
3318<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.entityActionWidget.min.js?ver=c6fb36830248e6370200dd4a85d56b056679b2c3" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3318
3318
3319<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.conditional.logic.min.js?ver=ef13643fc831aeba73024c1688a4eca66bbf055b" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3319
3319
3320<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.FormAsExtension.min.js?ver=fed330185ae3d911327c794bc27f3605fb54cf66" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3320
3320
3321<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.FormSubmit.min.js?ver=67c5b9781047ef648f269b370ba4b825a386e4bd" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3321
3321
3322<script type="text/javascript" src="https://d3rplhd9p4snt0.cloudfront.net/themes/mpa/assets/js/bundles/sd.app.FormManual.min.js?ver=f6e6eb3aec0784d4b04f5bd031c601373c2b33f5" crossorigin="anonymous"></script>
vendor: 1 bytes, line 3322
3322
3323<script type="module"> 3324/*<![CDATA[*/ 3325/* App Angular Module */ 3326var sdAngularModule = (function(window, moduleName, modules, sdModule) { 3327 for (var i = 0, dependencies = []; i < modules.length; i++) 3328 try { angular.module(modules[i]) && dependencies.push(modules[i]); } catch(e) {} 3329 sdModule = angular.module(moduleName, dependencies); 3330 return sdModule; 3331}(window, 'sd', ['color.picker','sd.app.HttpInterceptor','sd.app.Login','sd.styles.external.pack','sd.styles.old.pack','sd.app.Decorators','sd.app.Generics','ngLocale','ui.bootstrap','sd.app.Modal','ui.sortable','ngTagsInput','sd.app.Location','sd.files.FilePreview','sd.files.FileUploadProgress','sd.oscar.upload','sd.files.FileUpload','sd.files.Icons','sd.files.Filters','sd.files.FolderProfiles','sd.files.UploadNotification','sd.files.ClientSharedFolder','sd.files.BrowserInclude','sd.web.viewer','ui.select','sd.app.Form.V2','sd.files','sd.app.FileUploadFieldInput','sd.App.Form.V2','sd.app.Form','sd.app.Theme.Select','sd.app.Theme.Components','sd.app.Theme.TinyColor','ui.ace','sd.app.visibility','sd.app.Theme','sd.app.Filters','sd.app.SidebarMenu','sd.app.ResourceUtil','sd.app.Help','sd.app.pm.Timer','sd.app.Redactor','sd.ai.rewrite.fragment','sd.react.interop','sd.reminder.settings','sd.app.DropdownFitViewport','mpa.data.filters.sorting','sd.shared.runtime','sd.app.ActivityWatcher','sd.app.IdleWarning','sd.app','sd.menu','sd.oscar.util','sd.filters.profile.widget','sd.data.view','sd.oscar.grid.view','ngSanitize','ngAnimate','sd.oscar.quillEditor','sd.app.WysiwygPreview','sd.app.Article','sd.app.FormCannon','sd.entityActionWidget','sd.conditional.logic','sd.app.FormAsExtension','sd.app.FormSubmit','sd.app.FormManual','ui.mask'])); 3332 3333/*]]>*/ 3334</script>
3334<style id="sd-toast-styles"> 3335.sd-toast-container{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:var(--z-notification,5000);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none} 3336.sd-toast{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:8px;font-family:inherit;font-size:14px;line-height:1.4;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.08);min-width:300px;max-width:480px;position:relative;overflow:hidden;opacity:0;transform:translateY(-12px);transition:opacity .3s ease,transform .3s ease} 3337.sd-toast.sd-toast--visible{opacity:1;transform:translateY(0)} 3338.sd-toast.sd-toast--exit{opacity:0;transform:translateY(-12px)} 3339.sd-toast__icon{flex-shrink:0;display:flex;align-items:center} 3340.sd-toast__body{flex:1;min-width:0;word-break:break-word} 3341.sd-toast__close{flex-shrink:0;background:none;border:none;cursor:pointer;padding:4px;margin:-4px -4px -4px 4px;opacity:.4;transition:opacity .2s;display:flex;align-items:center} 3342.sd-toast__close:hover{opacity:.8} 3343.sd-toast__progress{position:absolute;bottom:0;left:0;height:4px;border-radius:0 0 8px 8px;width:100%;transform-origin:left} 3344@keyframes sd-toast-shrink{from{transform:scaleX(1)}to{transform:scaleX(0)}} 3345</style>
3346<script type="text/javascript"> 3347(function(window) { 3348 var TYPE_CONFIG = { 3349 success: { 3350 icon: '<svg width="22" height="22" viewBox="0 0 24 24" fill="none"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M22 4 12 14.01l-3-3" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>' 3351 }, 3352 error: { 3353 icon: '<svg width="22" height="22" viewBox="0 0 24 24" fill="none"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="2"/><path d="m15 9-6 6M9 9l6 6" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>' 3354 }, 3355 warning: { 3356 icon: '<svg width="22" height="22" viewBox="0 0 24 24" fill="none"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M12 9v4M12 17h.01" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>' 3357 }, 3358 info: { 3359 icon: '<svg width="22" height="22" viewBox="0 0 24 24" fill="none"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="2"/><path d="M12 16v-4M12 8h.01" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>' 3360 } 3361 }; 3362 3363 var DURATIONS = { success: 5000, info: 5000, warning: 5000, error: 8000 }; 3364 var MAX_TOASTS = 5; 3365 var activeToasts = []; 3366 var NOOP_HANDLE = { close: function() {} }; 3367 3368 function normalizeType(type) { 3369 if (type === 'failure' || type === 'danger') return 'error'; 3370 if (type === 'success' || type === 'error' || type === 'warning') return type; 3371 return 'info'; 3372 } 3373 3374 // Parsed inert on purpose: a detached element's innerHTML still builds live <img> nodes in this 3375 // document, so "<img src=x onerror=...>" in a tenant-authored message runs while being stripped. 3376 function stripHtml(str) { 3377 const parsed = new DOMParser().parseFromString(String(str), 'text/html'); 3378 return parsed.body.textContent || ''; 3379 } 3380 3381 // Minimum WCAG contrast the toast color must clear against its always-white surface (AA, 14px text). 3382 var TOAST_MIN_CONTRAST = 4.5; 3383 3384 function parseColor(str) { 3385 str = (str || '').trim(); 3386 var m = str.match(/^#([0-9a-f]{3})$/i); 3387 if (m) return [parseInt(m[1][0] + m[1][0], 16), parseInt(m[1][1] + m[1][1], 16), parseInt(m[1][2] + m[1][2], 16)]; 3388 m = str.match(/^#([0-9a-f]{6})$/i); 3389 if (m) return [parseInt(m[1].slice(0, 2), 16), parseInt(m[1].slice(2, 4), 16), parseInt(m[1].slice(4, 6), 16)]; 3390 m = str.match(/rgba?\(([^)]+)\)/i); 3391 if (m) { var p = m[1].split(','); return [parseInt(p[0], 10), parseInt(p[1], 10), parseInt(p[2], 10)]; } 3392 return null; 3393 } 3394 3395 function contrastOnWhite(rgb) { 3396 var lin = []; 3397 for (var i = 0; i < 3; i++) { 3398 var c = rgb[i] / 255; 3399 lin[i] = c <= 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4); 3400 } 3401 var lum = 0.2126 * lin[0] + 0.7152 * lin[1] + 0.0722 * lin[2]; 3402 return 1.05 / (lum + 0.05); 3403 } 3404 3405 function toHex(rgb) { 3406 var out = '#'; 3407 for (var i = 0; i < 3; i++) { 3408 out += ('0' + Math.max(0, Math.min(255, Math.round(rgb[i]))).toString(16)).slice(-2); 3409 } 3410 return out; 3411 } 3412 3413 // Brand primary (from --sd-toast-brand-color, already darkened to match primary buttons/links), 3414 // darkened further ONLY until it clears TOAST_MIN_CONTRAST against white: a legible brand is 3415 // returned untouched (matches the platform primary), a too-light brand is nudged the minimum 3416 // amount (converges — black is 21:1). Read from body so MrClean's body-scoped override applies. 3417 // Contrast math mirrored + regression-guarded by react/libs/sd-ui/src/utils/brandContrast.test.ts. 3418 function resolveBrandColor() { 3419 if (!document.body) return '#333'; 3420 var rgb = parseColor(getComputedStyle(document.body).getPropertyValue('--sd-toast-brand-color')); 3421 if (!rgb) return '#333'; 3422 var guard = 0; 3423 while (contrastOnWhite(rgb) < TOAST_MIN_CONTRAST && guard++ < 40) { 3424 rgb = [rgb[0] * 0.92, rgb[1] * 0.92, rgb[2] * 0.92]; 3425 } 3426 return toHex(rgb); 3427 } 3428 3429 function getContainer() { 3430 var el = document.getElementById('sd-toast-container'); 3431 if (el) return el; 3432 el = document.createElement('div'); 3433 el.id = 'sd-toast-container'; 3434 el.className = 'sd-toast-container'; 3435 document.body.appendChild(el); 3436 return el; 3437 } 3438 3439 function dismiss(toast) { 3440 if (toast._dismissed) return; 3441 toast._dismissed = true; 3442 toast.classList.remove('sd-toast--visible'); 3443 toast.classList.add('sd-toast--exit'); 3444 var idx = activeToasts.indexOf(toast); 3445 if (idx > -1) activeToasts.splice(idx, 1); 3446 setTimeout(function() { if (toast.parentNode) toast.parentNode.removeChild(toast); }, 300); 3447 } 3448 3449 function showToast(message, type, optionsOrDuration) { 3450 var duration, options = {}; 3451 if (typeof optionsOrDuration === 'object' && optionsOrDuration !== null) { 3452 options = optionsOrDuration; 3453 duration = options.duration; 3454 } else if (typeof optionsOrDuration === 'number') { 3455 duration = optionsOrDuration; 3456 } 3457 3458 type = normalizeType(type); 3459 var cfg = TYPE_CONFIG[type] || TYPE_CONFIG.info; 3460 var color = resolveBrandColor(); 3461 duration = duration || DURATIONS[type] || 5000; 3462 3463 var text; 3464 if (typeof message === 'object' && message !== null) { 3465 text = message.messageTemplate || message.message || ''; 3466 if (!type && message.type) type = normalizeType(message.type); 3467 } else { 3468 text = String(message); 3469 } 3470 text = stripHtml(text); 3471 if (!text.trim()) return NOOP_HANDLE; 3472 3473 while (activeToasts.length >= MAX_TOASTS) {
3474 dismiss(activeToasts[0]); 3475 } 3476 3477 var toast = document.createElement('div'); 3478 toast.className = 'sd-toast'; 3479 3480 var iconEl = document.createElement('span'); 3481 iconEl.className = 'sd-toast__icon'; 3482 iconEl.style.color = color; 3483 iconEl.innerHTML = cfg.icon; 3484 3485 var bodyEl = document.createElement('span'); 3486 bodyEl.className = 'sd-toast__body'; 3487 bodyEl.style.color = color; 3488 bodyEl.textContent = text; 3489 3490 var closeBtn = document.createElement('button'); 3491 closeBtn.className = 'sd-toast__close'; 3492 closeBtn.type = 'button'; 3493 closeBtn.innerHTML = '<svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="m1 1 12 12M13 1 1 13" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/></svg>'; 3494 closeBtn.addEventListener('click', function(e) { e.stopPropagation(); dismiss(toast); }); 3495 3496 var progress = document.createElement('div'); 3497 progress.className = 'sd-toast__progress'; 3498 progress.style.background = color; 3499 progress.style.animation = 'sd-toast-shrink ' + duration + 'ms linear forwards'; 3500 3501 toast.appendChild(iconEl); 3502 toast.appendChild(bodyEl); 3503 toast.appendChild(closeBtn); 3504 toast.appendChild(progress); 3505 getContainer().appendChild(toast); 3506 activeToasts.push(toast); 3507 3508 requestAnimationFrame(function() { 3509 requestAnimationFrame(function() { 3510 toast.classList.add('sd-toast--visible'); 3511 }); 3512 }); 3513 3514 var timer = setTimeout(function() { dismiss(toast); }, duration); 3515 var startTime = Date.now(); 3516 var elapsed = 0; 3517 3518 toast.addEventListener('mouseenter', function() { 3519 clearTimeout(timer); 3520 elapsed += Date.now() - startTime; 3521 progress.style.animationPlayState = 'paused'; 3522 }); 3523 3524 toast.addEventListener('mouseleave', function() { 3525 var remaining = Math.max(duration - elapsed, 500); 3526 startTime = Date.now(); 3527 progress.style.animationPlayState = 'running'; 3528 timer = setTimeout(function() { dismiss(toast); }, remaining); 3529 }); 3530 3531 return { 3532 close: function() { 3533 clearTimeout(timer); 3534 dismiss(toast); 3535 } 3536 }; 3537 } 3538 3539 window.notify = showToast; 3540 window.jGrowlNotify = function(message, options) { 3541 if (typeof options !== 'object') options = {}; 3542 return showToast(message, 'info', options.life); 3543 }; 3544 3545 var count = 0; 3546 (window.Pace && Pace.on('hide', paceHide)) || paceHide(); 3547 function paceHide() { 3548 if (count) return; 3549 count++; 3550 } 3551}(window)); 3552</script>
vendor: 1 bytes, line 3552
3552
3553<script id="CustomTheme" type="text/json-template">{"preset":"harvest_moon","properties":["customCSS","customCSSEnabled","customJs","customJsEnabled","gdprBannerEnabled","gdprBannerIntroMessage","gdprBannerLearnMoreUrl","newUITheme","registrationBackgroundImg","defaultOpenGraphImg","accConfirmationLogo","registrationAdvancedControls","registrationTextColor","registrationButtonColor","registrationButtonTextColor","registrationFormBackgroundColor","registrationMainBackgroundColor","appLogo","appLogoCollapsed","appLogoDarkMode","appLogoCollapsedDarkMode","appTopBarColor","appAvatarColor","appProgressBarColor","appMainWrapperBgColor","themeName","appTopBarTextColor","appTopBarIconsColor","appChartPrimaryColor","appHighlightColor","mrCleanAccentColor","mrCleanForegroundColor","appTopBarDropColor","appTopBarDropTextColor","appTopBarBorder","appSubBarsColor","appSubBarsTextColor","appSectionHeaderColor","appSectionHeaderTextColor","multiColorTopBar1","multiColorTopBar2","multiColorTopBar3","multiColorTopBar4","tableHeader","tableHeaderText","tableOptionsColor","tableOptionsText","buttonOptionsColor","buttonOptionsText","themeCSS","glassBackgroundEnable","glassBackgroundImg","glassBackgroundImgPath","glassBackgroundDarkModeImg","glassBackgroundOpacity","glassBackgroundOpacityDarkMode","glassBackgroundDarkModeImgPath","glassBackgroundTitleColor","glassBackgroundColor","glassBackgroundColorDarkMode","glassBackgroundDescriptionColor","glassBackgroundShadowColor","appPageLoaderControls","appPageLoaderBgColor","appPageLoaderBgEndingAnimation","appPageLoaderAnimation","appPageLoaderImageAnimation","appPageLoaderColor","appPageLoaderImage","appPageLoaderImageBlob","appPageLoaderImageWidth","appPageLoaderImageHeight","appPageLoaderImageMaxWidth","enableFontThemes","primaryFontFamilyID","primaryFontWeightID","primaryFontStyleID","primaryFontColor","primaryFontFile","secondaryFontFamilyID","secondaryFontWeightID","secondaryFontStyleID","secondaryFontColor","secondaryFontFile","generalFontFamilyID","generalFontWeightID","generalFontStyleID","generalFontColor","generalFontFile"],"values":{"customCSS":".sd-client-add-wr-description {\r\ndisplay:none;\r\n}\r\n\r\n.sd-client-add-wr-duedate {\r\n display:none;\r\n}\r\n","customCSSEnabled":"1","customJsEnabled":null,"gdprBannerEnabled":null,"newUITheme":null,"registrationBackgroundImg":"Designer1_792210878b101ec5514e85e4919ebf9d_889cc0375a211ac359439b3641cc03df.jpeg","accConfirmationLogo":"MPLogo_cd97555b86fef6c0e66757ff291d5ef7_529a43b0254d0fef8364b37210eebf1e.png","registrationAdvancedControls":"1","registrationTextColor":"#FFFFFF","registrationButtonColor":"#040404","registrationButtonTextColor":"#FFFFFF","registrationFormBackgroun
3553dColor":"rgba(0, 0, 0, 0.4)","registrationMainBackgroundColor":"rgb(29, 126, 160)","appLogoCollapsed":"Logo12_b277a9b416a27d6dcdae7b2f6d1335de.png","appLogoDarkMode":"Logo3_9eb792e3faa0d190b7ee1064a8bd31dc.png","appLogoCollapsedDarkMode":"Logo12_c2ef0e93ea0687a7b84d72c263c3c237.png","appTopBarColor":"#010001","appAvatarColor":null,"appMainWrapperBgColor":"#FF1AFF","themeName":"harvest_moon","appTopBarTextColor":"#CDCDCD","appTopBarIconsColor":"#FFFFFF","appChartPrimaryColor":"#5A9DF4","appHighlightColor":"#01A9F4","mrCleanAccentColor":"#01A9F4","mrCleanForegroundColor":null,"appTopBarDropColor":"#35304C","appTopBarDropTextColor":"#F1DCBD","appSubBarsColor":"#35304C","appSubBarsTextColor":"#F1DCBD","appSectionHeaderColor":"#413E5B","appSectionHeaderTextColor":"#F1DCBD","tableHeader":"#35304C","tableHeaderText":"#F1DCBD","tableOptionsColor":"#F1DCBD","tableOptionsText":"#413E5B","buttonOptionsColor":"#BA8A3F","buttonOptionsText":"#35304C","themeCSS":" \/*CSS HERE*\/","glassBackgroundImgPath":null,"glassBackgroundDarkModeImgPath":null,"glassBackgroundTitleColor":"#FFFFFF","glassBackgroundDescriptionColor":"#C7DAEB","glassBackgroundShadowColor":"rgba(255, 255, 255, 0.13)","appPageLoaderControls":"1","appPageLoaderBgColor":"rgb(255, 255, 255)","appPageLoaderBgEndingAnimation":"NO_ANIMATION","appPageLoaderAnimation":"CustomImage","appPageLoaderImageAnimation":"drawing-frame","appPageLoaderColor":"#DDDDDD","appPageLoaderImage":"MPLogo_cd97555b86fef6c0e66757ff291d5ef7_bc310d1341e92326a5349abef2b7dd85.png","appPageLoaderImageBlob":"https:\/\/secure.maxillopixel.com\/uploads\/company\/picture\/66104\/MPLogo_cd97555b86fef6c0e66757ff291d5ef7_bc310d1341e92326a5349abef2b7dd85.png","appPageLoaderImageWidth":"150","appPageLoaderImageHeight":"150","appPageLoaderImageMaxWidth":"80","primaryFontFamilyID":"586","primaryFontWeightID":"600","primaryFontStyleID":"normal","primaryFontFile":"https:\/\/fonts.gstatic.com\/s\/inter\/v12\/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf","secondaryFontFamilyID":"586","secondaryFontWeightID":"600","secondaryFontStyleID":"normal","secondaryFontFile":"https:\/\/fonts.gstatic.com\/s\/inter\/v12\/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf","generalFontFamilyID":"586","generalFontWeightID":"400","generalFontStyleID":"normal","generalFontFile":"https:\/\/fonts.gstatic.com\/s\/inter\/v12\/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZhrib2Bg-4.ttf"},"variants":{"appTopBarColor_dark1":{"methods":["darken"],"args":[10],"source":"appTopBarColor"},"appTopBarColor_dark2":{"methods":["darken"],"args":[20],"source":"appTopBarColor"},"appTopBarColor_dark2_2":{"methods":["darken"],"args":[22],"source":"appTopBarColor"},"appMainWrapperBgColor_none":{"methods":["none"],"source":"appMainWrapperBgColor"},"appHighlightColor_dark":{"methods":["darken"],"args":[10],"source":"appHighlightColor"},"tableHeaderText_hover":{"config":{"methods":{"test":"isLight","results":{"false":{"use":"lighten"},"true":{"use":"darken"}}}},"lighten":{"methods":["lighten"],"args":[20]},"darken":{"methods":["darken"],"args":[20]},"source":"tableHeaderText"},"tableHeaderText_light1":{"methods":["lighten"],"args":[10],"source":"tableHeaderText"}},"logos":{"appLogo":"https:\/\/secure.maxillopixel.com\/resize\/resized\/200x60\/uploads\/company\/picture\/66104\/Logo3_393a30a955eb5eebd984045c0939b8c5.png","appLogoCollapsed":"https:\/\/secure.maxillopixel.com\/resize\/resized\/60x60\/uploads\/company\/picture\/66104\/Logo12_b277a9b416a27d6dcdae7b2f6d1335de.png","appLogoDarkMode":"https:\/\/secure.maxillopixel.com\/resize\/resized\/200x60\/uploads\/company\/picture\/66104\/Logo3_9eb792e3faa0d190b7ee1064a8bd31dc.png","appLogoCollapsedDarkMode":"https:\/\/secure.maxillopixel.com\/resize\/resized\/60x60\/uploads\/company\/picture\/66104\/Logo12_c2ef0e93ea0687a7b84d72c263c3c237.png"},"generated":null,"themeRevision":"00000000000000000000000000000000","themeDefaults":{"appChartPrimaryColor":"#5A9DF4","registrationTextColor":"#FFFFFF","registrationButtonColor":"#1098B7","glassBackgroundTitleColor":"#FFFFFF","glassBackgroun
3553dColor":"#FFFFFF","glassBackgroundColorDarkMode":"#000000","glassBackgroundDescriptionColor":"#c7daeb","glassBackgroundShadowColor":"rgba(255,255,255,0.13)","registrationButtonTextColor":"#FFFFFF","registrationFormBackgroundColor":"rgba(0,0,0,0.2)","registrationMainBackgroundColor":"#1D7EA0","sidebarLogoBackgroundOption":"custom","sidebarLogoBackgroundValue":{"custom":"","darken":"20","lighten":"20"},"sidebarAvatarBackgroundOption":"custom","sidebarAvatarBackgroundValue":{"custom":"","darken":"20","lighten":"20"},"sidebarMenuBackgroundOption":"custom","sidebarMenuBackgroundValue":{"custom":"","darken":"20","lighten":"20"},"backgroundControlsOption":"none","backgroundControlsValue":{"none":"","custom":"","darken":"20","lighten":"20"},"appPageLoaderBgColor":"#FFFFFF","appPageLoaderBgEndingAnimation":"NO_ANIMATION","appPageLoaderAnimation":"2","appPageLoaderImageAnimation":"static","appPageLoaderColor":"#DDDDDD","appPageLoaderImageWidth":"50","appPageLoaderImageMaxWidth":"60","primaryFontFamilyID":825,"primaryFontWeightID":500,"primaryFontStyleID":"normal","secondaryFontFamilyID":825,"secondaryFontWeightID":500,"secondaryFontStyleID":"normal","generalFontFamilyID":825,"generalFontWeightID":400,"generalFontStyleID":"normal"},"CACHE_BUST":"51e9a6df22d","CFD_URI":"https:\/\/d3rplhd9p4snt0.cloudfront.net","defaultPhoneCountry":null,"languageCodeBcp47":"en","SDPlaceholder":{"DEFAULT_VALUE_SUFFIX":",fallback="}}</script>
3553<style role="CustomTheme" id="custom-theme-inline-66104-00000000000000000000000000000000" data-theme-revision="00000000000000000000000000000000" type="text/css">/*CSS HERE*/</style>
3553<script id="FilesTheme" type="text/json-template">{"folderColor":"","iconColor":""}</script>
3553<style role="CustomTheme" id="custom-theme-stylesheet-66104-00000000000000000000000000000000" data-theme-revision="00000000000000000000000000000000" type="text/css"> 3554 /* Common */ 3555 @font-face { 3556 font-family: primary_586; 3557 src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf); 3558} 3559 3560@font-face { 3561 font-family: secondary_586; 3562 src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf); 3563} 3564 3565@font-face { 3566 font-family: general_586; 3567 src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZhrib2Bg-4.ttf); 3568} 3569 3570:root { 3571 --sd-app-top-bar-color: {{ appTopBarColor }}; 3572 --sd-switchery-color: {{ appSwitcheryColor }}; 3573 --sd-highlight: {{ appHighlightColor }}; 3574 --sd-avatar-color: {{ appAvatarColor || appTopBarColor }}; 3575 --sd-app-top-bar-text: {{ appTopBarTextColor }}; 3576 --sd-app-top-bar-icons: {{ appTopBarIconsColor }}; 3577 --sd-app-top-bar-color-dark-1: {{ appTopBarColor_dark1 }}; 3578 --sd-app-top-bar-color-dark-2: {{ appTopBarColor_dark2 }}; 3579 --sd-app-top-bar-color-dark-2-2: {{ appTopBarColor_dark2_2 }}; 3580 --sd-menu-style-brand-state-bg: {{ appTopBarColor_dark1 | tcLuminanceFloor:'#1a1a1a' }}; 3581 --sd-menu-style-item-state-bg: var(--sd-menu-style-brand-state-bg); 3582 --sd-menu-style-rail-bg: var(--sd-menu-style-brand-state-bg); 3583 --sd-menu-style-submenu-bg: var(--sd-menu-style-brand-state-bg); 3584 --sd-primary-tint-subtle: {{appTopBarColor_dark1 | tcTintFloor:.04:'#e0e0e0'}}; 3585 --sd-primary-tint: {{appTopBarColor_dark1 | tcTintFloor:.08:'#e0e0e0'}}; 3586 --sd-primary-tint-hover: {{appTopBarColor_dark1 | tcTintFloor:.12:'#e0e0e0'}}; 3587 /* Text-selection highlight: the tint family at a strength a selected word can be seen at. The darker floor keeps white and near-white brands visible. */ 3588 --sd-primary-tint-selection: {{appTopBarColor_dark1 | tcTintFloor:.4:'#bfbfbf'}}; 3589 --sd-border-color-tint: {{appTopBarColor_dark1 | tcTintFloor:.3:'#e0e0e0'}}; 3590 3591 /* Files folder icon, brand-derived two-tone (card 21613). Four tiers, chosen so the glyph clears 3.5:1 on the body and the body stays visible on a white page for EVERY brand a tenant can pick (measured on white, warm white, light gray, pastel green/pink, baby blue, yellow, orange, green, blue, teal, red, black): 3592 - pale AND nearly colorless (white, near-white, light gray top bars): the neutral steps MrClean uses, because deriving from a white brand gives a white folder on a white page; 3593 - pale but colored (pastel green, baby blue, yellow): the brand itself is the body, tab and glyph stepped darker from it; 3594 - mid-brightness (orange, green): 55% brand over white as the body, brand tab, glyph darkened 40 for contrast on the light body; 3595 - dark (blue, teal, red, black): the same tint body and brand tab, with the tenant's dark-2 as the glyph. 3596 "Pale" = still light after darkening 25 points (brightness, not HSL lightness, so a vivid orange is not pale). "Nearly colorless" = saturation at or under 30%, tested as desaturate(30) landing on the greyscale. Both are built from filters this template already uses, so nothing new has to ship in a bundle before this line can be interpolated. Dark mode and MrClean remap the --sd-folder-* tokens that consume these. 3597 The base is the brand color unless the tenant chose a folder color in File Settings; both arrive as FilesTheme scope values (seeded in _stylesheet.php, already validated to #rrggbb) so the File Settings modal can preview a pick live by assigning them. */ 3598 --sd-primary-folder-body: {{ ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDarken:25 | tcIsLight) ? ((((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDesaturate:30) == ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcGreyscale)) ? '#e6e6e6' : (FilesTheme.folderColor || appTopBarColor || '#555555')) : ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcMix:'#ffffff':45) }}; 3599 --sd-primary-folder-tab: {{ ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDarken:25 | tcIsLight) ? ((((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDesaturate:30) == ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcGreyscale)) ? '#cccccc' : ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDarken:20)) : (FilesTheme.folderColor || appTopBarColor || '#555555') }}; 3600 --sd-primary-folder-glyph: {{ ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDarken:25 | tcIsLight) ? ((((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDesaturate:30) == ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcGreyscale)) ? '#333333' : ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDarken:45)) : ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcIsLightCond: ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDarken:40) : (FilesTheme.folderColor ? ((FilesTheme.folderColor || appTopBarColor || '#555555') | tcDarken:20) : (appTopBarColor_dark2 || '#333333'))) }}; 3601 /* A folder color the tenant chose on purpose outranks the neutral folders dark mode and MrClean would otherwise draw: those palettes read these override tokens first. `initial` is the guaranteed-invalid value, the one thing var() falls through (an empty value would not do, it is a defined value to var()). An icon color chosen in File Settings paints the glyph in every theme the same way. */ 3602 --sd-folder-override-body: {{ FilesTheme.folderColor ? 'var(--sd-primary-folder-body)' : 'initial' }}; 3603 --sd-folder-override-tab: {{ FilesTheme.folderColor ? 'var(--sd-primary-folder-tab)' : 'initial' }}; 3604 --sd-folder-override-glyph: {{ FilesTheme.folderColor ? 'var(--sd-primary-folder-glyph)' : 'initial' }}; 3605 --sd-folder-icon-color: {{ FilesTheme.iconColor || 'initial' }}; 3606 --sd-select-option-active-bg: {{appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:25):(appTopBarColor | tcLighten:25)}}; 3607 /* Read off the fill just above, not off the brand: a dark brand lightens 25 points and can land light, and the text must contrast with what is actually painted. */ 3608 --sd-select-option-active-text: {{ (appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:25):(appTopBarColor | tcLighten:25)) | tcIsLightCond:'var(--sd-text-default)':'white' }}; 3609 --sd-btn-primary-shadow: 0 0 0 2px {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}; 3610 3611 /* contrast colors to theme */ 3612 3613 --sd-app-top-bar-color-cnt: {{appTopBarColor | tcIsLightCond:'var(--sd-text-secondary)':'white'}}; 3614 --sd-app-top-bar-color-dark-1-cnt: {{appTopBarColor_dark1 | tcIsLightCond:'var(--sd-text-secondary)':'white'}}; 3615 --sd-app-top-bar-color-dark-2-cnt: {{appTopBarColor_dark2 | tcIsLightCond:'var(--sd-text-secondary)':'white'}}; 3616 --sd-highlight-cnt: {{appHighlightColor | tcIsLightCond:'var(--sd-text-secondary)':'white'}}; 3617 --sd-avatar-color-cnt: {{ ((appAvatarColor || appTopBarColor) | tcDarken:20) | tcIsLightCond:'var(--sd-text-default)':'white' }}; 3618 --sd-bg-button-primary-hover-shadow-color: {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}; 3619 3620 /* Brand-coloured ink is painted on light app surfaces. Preserve its hue, but cap luminance at 3621 the lightest neutral that clears 4.5:1 on white; dark brand shades pass through unchanged. */ 3622 --sd-theme-primary-highlighted-text: {{ appTopBarColor | tcLuminanceCeiling:'#767676' }}; 3623 --sd-theme-primary-dark-highlighted-text: {{ appTopBarColor_dark2 | tcLuminanceCeiling:'#767676' }}; 3624 --sd-theme-state-mark: {{ appTopBarColor | tcContrastFloor:3 }}; 3625 3626 /* Toast icon/text/progress base color: brand primary darkened to match primary buttons/links (BTM-PRIMARY). The toast script (_flashNotifications.php) then darkens this only as far as needed to stay legible on the toast's always-white surface. MrClean remaps it to a neutral (_mr-clean-palette.scss); intentionally NOT dark-mode-remapped — the toast stays white in both modes, so it needs a dark value, not dark-mode's light accents. */ 3627 --sd-toast-brand-color: {{ appTopBarColor | tcDarken:20 }}; 3628 3629 --sd-side-bar-border: 5px solid {{
3630 appTopBarColor_dark1 === '#ffffff' || appTopBarColor_dark1 === 'white' 3631 ? '#ccc' : (appTopBarColor_dark1 | tcIsDarkCond:(appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha:.2)) 3632 }}; 3633 3634 --gray-950: {{ '#0d0d0d' | tcMix: appTopBarColor : 30 }}; 3635 --gray-900: {{ '#1a1a1a' | tcMix: appTopBarColor : 20 }}; 3636 --gray-850: {{ '#262626' | tcMix: appTopBarColor : 20 }}; 3637 --gray-800: {{ '#333333' | tcMix: appTopBarColor : 16 }}; 3638 --gray-750: {{ '#404040' | tcMix: appTopBarColor : 16 }}; 3639 --gray-700: {{ '#4d4d4d' | tcMix: appTopBarColor : 16 }}; 3640 --gray-650: {{ '#595959' | tcMix: appTopBarColor : 16 }}; 3641 --gray-600: {{ '#666666' | tcMix: appTopBarColor : 16 }}; 3642 /* The brand mix must not bleach secondary text below its untinted #737373 contrast floor. */ 3643 --gray-550: {{ ('#737373' | tcMix: appTopBarColor : 12) | tcLuminanceCeiling:'#737373' }}; 3644 --gray-500: {{ '#808080' | tcMix: appTopBarColor : 10 }}; 3645 --gray-450: {{ '#8c8c8c' | tcMix: appTopBarColor : 8 }}; 3646 --gray-400: {{ '#999999' | tcMix: appTopBarColor : 8 }}; 3647 --gray-350: {{ '#a6a6a6' | tcMix: appTopBarColor : 6 }}; 3648 --gray-300: {{ '#b3b3b3' | tcMix: appTopBarColor : 6 }}; 3649 --gray-250: {{ '#bfbfbf' | tcMix: appTopBarColor : 4 }}; 3650 --gray-200: {{ '#cccccc' | tcMix: appTopBarColor : 4 }}; 3651 --gray-150: {{ '#d9d9d9' | tcMix: appTopBarColor : 4 }}; 3652 --gray-100: {{ '#e6e6e6' | tcMix: appTopBarColor : 3 }}; 3653 --gray-50: {{ '#f2f2f2' | tcMix: appTopBarColor : 2 }}; 3654 --gray-20: {{ '#fafafa' | tcMix: appTopBarColor : 2 }}; 3655 3656 /*old variables used by users for custom css placeholders - can't be deleted!!!!*/ 3657 --appTopBarColor: {{appTopBarColor}}; 3658 --appTopBarTextColor: {{appTopBarTextColor}}; 3659 --appTopBarIconsColor: {{appTopBarIconsColor}}; 3660 --appAvatarColor: {{appAvatarColor}}; 3661 3662 --appHighlightColor: {{appHighlightColor}}; 3663 --appProgressBarColor: {{appProgressBarColor}}; 3664 3665 --default-font-family: 'Inter', sans-serif; 3666 --font-theme-font-family: 'general_586', sans-serif; 3667 --primary-header-font-family: 'primary_586', sans-serif; 3668 --secondary-header-font-family: 'secondary_586', sans-serif; 3669 3670 /* 3671 * The vars above are the CONFIGURED families and are always emitted. MPA gates whether to 3672 * apply them with the `font-theme` body class, which cannot reach into a shadow root — so 3673 * shadow-DOM consumers read these `-applied` vars, which carry the gate in their value. 3674 */ 3675 --font-theme-font-family-applied: var(--default-font-family); 3676 --primary-header-font-family-applied: var(--default-font-family); 3677 --secondary-header-font-family-applied: var(--default-font-family); 3678 3679 --font-theme-font-weight: 400; 3680 --primary-header-font-weight: 600; 3681 --secondary-header-font-weight: 600; 3682 3683 --font-theme-font-style: normal; 3684 --primary-header-font-style: normal; 3685 --secondary-header-font-style: normal; 3686} 3687 3688.product-card__show-more, 3689.card-show-more { 3690 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 3691} 3692 3693.product-card__show-more:hover, 3694.product-card__show-more:focus, 3695.card-show-more:hover, 3696.card-show-more:focus { 3697 color: var(--sd-btn-accent-ink, {{appTopBarColor}}); 3698} 3699 3700.appointment-type__staff-avatar, 3701.sd-grid-view .logoCol.logoCol--staff .logoWrap .logo, 3702.contact-filter__avatar, 3703.avatar-wrap { 3704 background-color: {{appAvatarColor || appTopBarColor}}; 3705} 3706 3707.branding-theme-mrclean .contact-filter__avatar, 3708.branding-theme-mrclean .avatar-wrap { 3709 background-color: {{appAvatarColor || '#ccc'}}; 3710} 3711 3712.appointment-type__list .appointment-type__block:hover { 3713 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 3714} 3715 3716@media (max-width: 575px) { 3717 .contactCrmBar .person .client-options { 3718 background-color: var(--sd-btn-accent-fill, {{appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:40):(appTopBarColor | tcLighten:25)}}); 3719 } 3720 .person-dropdown .client-options svg { 3721 fill: var(--sd-btn-accent-foreground, white); 3722 } 3723} 3724.branding-theme-mrclean svg .company-avatar-bg, 3725.branding-theme-mrclean svg .contact-avatar-bg { 3726 fill: {{appAvatarColor || '#ccc'}}; 3727} 3728 3729.list-group .list-group-item.active { 3730 background-color: var(--sd-control-accent-selected-fill, {{ appTopBarColor | tcContrastFloor:3 }}); 3731 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 3732 color: var(--sd-control-accent-selected-foreground, #fff); 3733} 3734.card-heading-extra a:hover, 3735.card-heading-extra a .list-icon { 3736 text-decoration: none; 3737 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30)}}); 3738} 3739 3740.book-me-appointment__details-data { 3741 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}) 3742} 3743 3744.link-block { 3745 border-top: 3px solid var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3746} 3747 3748.file-count { 3749 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) !important; 3750 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}); 3751} 3752
3753.modal .modal-dialog.modal-fs .modal-body .form-actions.btn-list { 3754 border-top: 1px solid var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3755} 3756 3757.branding-theme-mrclean .modal-header { 3758 border-bottom: 4px solid {{appTopBarTextColor}} !important; 3759} 3760 3761.pdf-wrapper { 3762 border-top: 4px solid var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3763} 3764 3765#proposal-form .card-header { 3766 border-top: 2px solid var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3767} 3768 3769.file-transfer .nav .nav-item a.nav-link.active { 3770 color: var(--sd-btn-accent-ink, {{ appTopBarColor | tcContrastFloor:3 }}) !important; 3771 border-bottom-color: var(--sd-btn-accent-border, {{ appTopBarColor | tcContrastFloor:3 }}) !important; 3772} 3773 3774body.branding-theme-mrclean .file-transfer .nav .nav-item a.nav-link.active { 3775 color: {{appTopBarTextColor}} !important; 3776 border-bottom-color: {{appTopBarTextColor}} !important; 3777} 3778 3779.files-storage-browser-widget .no-selected-files .choose-files-button, 3780.active-packages .active-packages-header, 3781.card-storage-browser .card-header{ 3782 background: var(--sd-btn-accent-fill, {{appTopBarColor}}) !important; 3783} 3784/* Every theme repaints this header with its top-bar colour, so every theme owes it the matching text 3785 colour. Scoped to one branding theme, the others kept the stylesheet's white text and a tenant whose 3786 top bar is white lost the Reusable Deliveries, Active Packages and Delivery History headings entirely. */ 3787.active-packages .active-packages-header{ 3788 color: var(--sd-btn-accent-foreground, {{appTopBarTextColor}}) !important; 3789} 3790body.sd-dark-mode .active-packages .active-packages-header { 3791 color: var(--sd-text-secondary) !important; 3792} 3793.active-packages .active-packages-content .list-group .list-group-item.active{ 3794 background: none !important; 3795 border-left: 1px solid var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 3796 border-right: 1px solid var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 3797 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 3798} 3799 3800.impersonate-wrapper { 3801 border-bottom: 2px solid var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3802} 3803 3804.footer-actions-wrapper .timer--action-wrapper .timer-form .counter-wrap .timer-input.counting-time-input:focus { 3805 border-color: var(--sd-btn-accent-focus, {{appTopBarColor_dark2}}); 3806} 3807 3808.new-card-view .dataTableResp .data-table-item-mobile .card-details::before { 3809 background: var(--sd-btn-accent-border, {{appTopBarColor}}); 3810} 3811 3812.form-actions-btn.form-actions-btn--sidebar, 3813.form-actions-btn.form-actions-btn--tombstone, 3814.sd-grid-view .grid-card-view .dropdown .dropdown-menu.dropdown-menu-ui .categories-container .tab-content .category-container .item-container li a:hover { 3815 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3816} 3817 3818.content-tabs .plan-tab-content .plan-panel { 3819 box-shadow:inset 0 0 0 3px; 3820 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:5):(appTopBarColor | tcLighten:50)}}); 3821} 3822 3823.content-tabs .plan-tab-content .plan-panel .info-label { 3824 background: var(--sd-control-accent-tint, {{appTopBarColor_dark1}}) !important; 3825} 3826 3827/* The tagline sits on the dark-1 band above. On a dark brand it takes the ink that already reads on that shade: a lightened copy of the brand was 3.8:1 on a near-black one. */ 3828.content-tabs .plan-tab-content .plan-panel .info-label span{ 3829 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:60):'var(--sd-app-top-bar-color-dark-1-cnt)'}}); 3830} 3831 3832.content-tabs .plan-tab-content .plan-panel .panel-value .value { 3833 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3834} 3835 3836.content-tabs .plan-tab-content .plan-panel .panel-value .symbol { 3837 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3838} 3839 3840.content-tabs .plan-tab-content .plan-panel .panel-value .period { 3841 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3842} 3843 3844.content-tabs .plan-tab-content .plan-panel .panel-header { 3845 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3846} 3847 3848.content-tabs .plan-tab-content .plan-panel { 3849 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3850} 3851 3852.content-tabs .plan-tab-content .plan-panel .plan-btn-container .submit-plan-btn span { 3853 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3854} 3855 3856.content-tabs .plans-tabs .nav-tabs .nav-item .nav-link { 3857 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3858} 3859 3860.content-tabs .plan-tab-content .plan-panel .plan-btn-container .submit-plan-btn { 3861 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor}}); 3862 border-color: var(--sd-btn-accent-border, {{appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:5):(appTopBarColor | tcLighten:50)}}) !important; 3863} 3864 3865.content-tabs .plan-tab-content .plan-panel .plan-btn-container a:hover { 3866 background: var(--sd-control-accent-tint, {{appTopBarColor_dark2}}) !important; 3867} 3868 3869.content-tabs .plans-tabs .nav-tabs { 3870 border: 2px solid; 3871 border-color: var(--sd-btn-accent-border, {{appTopBarTextColor | tcIsDarkCond:(appTopBarColor | tcDarken:60):(appTopBarColor | tcLighten:1)}}); 3872} 3873 3874.content-tabs .plans-tabs .nav-tabs .nav-item .nav-link.active { 3875 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}); 3876} 3877 3878#sdTranslation .menu .menu-item.active { 3879 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}) !important; 3880} 3881 3882.sidebar-menu .menu .menu-item.selected, .content-dropdowns-menu .menu .menu-item.selected { 3883 background-color: var(--sd-primary-tint); 3884} 3885 3886.loader-widget::after { 3887 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}); 3888} 3889 3890.main-nav-dropdown .dropdown-menu .ext-item span::before { 3891 background-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30)}}); 3892} 3893 3894.appointment-type__block, 3895.appointment-booking .appointment-type__block { 3896 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 3897} 3898 3899.appointment-type__block:hover { 3900 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 3901} 3902 3903.view-submission-modal--line.bg-primary { 3904 background-color: var(--sd-control-accent-selected-fill, {{appTopBarColor}}) !important; 3905 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3906} 3907 3908.appointment-schedule-pagination__previous .appointment-schedule-pagination-button, .appointment-schedule-pagination__next .appointment-schedule-pagination-button { 3909 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}) !important; 3910} 3911 3912.progress.progress-fixed-label .progress-bar.progress-bar-info { 3913 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}) !important; 3914 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3915} 3916 3917.data-table-item-mobile.mobile-card .mobile-card__details::before { 3918 background-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3919} 3920 3921.entity-action-widget-upgrade div.upgrade-block { 3922 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}); 3923 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 3924} 3925
3926/*Glass Background Effect*/ 3927/* The tenant's three Liquid Glass panel colours, published as semantic tokens so a surface can wear 3928 the frosted treatment without re-deriving it. The internal form panels reach these values through 3929 the `.main-wrapper`-scoped rules below; the public A.I. hold pages use the `publicPage` layout, 3930 which has no `.main-wrapper`, and read them from here instead (`ai/_ai-hold-page.scss`). 3931 Light mode only, by omission rather than a guard: `_dm-palette.scss` re-declares all three under 3932 `body.sd-dark-mode`, which outranks this selector, so dark mode keeps the fixed slate tint it has 3933 always used — Platform Branding stores no dark-mode variant of the shadow colour. 3934 3935 The `||` defaults are load-bearing, NOT belt-and-braces. These are Angular interpolations, and an 3936 undefined scope property renders as the empty string — which would emit `--sd-glass-panel-bg: ;`. 3937 An empty custom property is VALID, not guaranteed-invalid, so it shadows the `:root` default and 3938 is not rescued by a `var()` fallback either; `var()` would then substitute nothing, making each
3939 declaration invalid at computed-value time. `background-color` would fall to `transparent` and 3940 `color`, being inherited, would fall back to the page's dark default — i.e. exactly the 3941 unreadable-text-on-wallpaper bug these tokens exist to fix. The rule below survives the same 3942 trigger only because it degrades to an untinted panel rather than an unreadable one. 3943 Literals mirror `Company::$themeDefaults`, which is the source of truth. */ 3944.glass-background-effect { 3945 --sd-glass-panel-bg: {{glassBackgroundShadowColor || 'rgba(255,255,255,0.13)'}}; 3946 --sd-glass-panel-title: {{glassBackgroundTitleColor || '#FFFFFF'}}; 3947 --sd-glass-panel-text: {{glassBackgroundDescriptionColor || '#c7daeb'}}; 3948} 3949 3950.glass-background-effect:not(.lms-page.blank-layout) > div:not(.modal) .main-wrapper .info-col-content:before , 3951.glass-background-effect:not(.lms-page.blank-layout) > div:not(.modal) .main-wrapper .sd-import-logs-form .row.form-group:before, 3952.glass-background-effect .main-wrapper .sd-import-logs-result .sd-import-logs-result-title:before { 3953 box-shadow: inset 0 0 0 500px {{glassBackgroundShadowColor}}; 3954} 3955 3956.glass-background-effect .main-wrapper .form-oscar .form-group-row .info-col-content .title , 3957.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .box-title, 3958.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .contact-company, 3959.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .contact-name, 3960.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .billing-tabel__block-title, 3961.glass-background-effect .main-wrapper div:not(.functional-theme) > form .form-group-row .info-col-content .title, 3962.glass-background-effect .main-wrapper .info-col-content .billing-tabel__block .empty-text, 3963.glass-background-effect .main-wrapper .info-col-content .active-cards-list-billing-dashboard-credit-cards-list .radiobox-label { 3964 color: {{glassBackgroundTitleColor}} !important; 3965} 3966 3967.glass-background-effect .main-wrapper .form-oscar .form-group-row .info-col-content .description , 3968.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .tab-content p, 3969.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .billing-tabel__item--button .billing-tabel__item-title, 3970.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .billing-tabel__item--button .billing-tabel__price, 3971.glass-background-effect .main-wrapper form .form-group-row .info-col-content .description { 3972 color: {{glassBackgroundDescriptionColor}} !important; 3973} 3974.glass-background-effect .main-wrapper .info-col-content .description a { 3975 color: {{glassBackgroundTitleColor}} !important; 3976} 3977.glass-background-effect .main-wrapper .billing-dashboard .info-col-content .tab-content .text-muted { 3978 color: {{glassBackgroundDescriptionColor}} !important; 3979} 3980/*Static css, need to move to scss*/ 3981 3982.glass-background-effect .main-wrapper .form:not(.wide) .form-actions:not(.form-actions--bottom-sticky) .btn-outline-default, 3983.glass-background-effect .main-wrapper .info-col .btn-outline-default { 3984 color: {{glassBackgroundTitleColor}} !important; 3985} 3986 3987.glass-background-effect .main-wrapper .form:not(.wide) .form-actions .btn-outline-default svg, 3988.glass-background-effect .main-wrapper .info-col .btn-outline-default svg { 3989 fill: {{glassBackgroundTitleColor}} !important; 3990} 3991 3992.glass-background-effect .main-wrapper .form:not(.wide) .form-actions .btn-outline-default a, 3993.glass-background-effect .main-wrapper .info-col .btn-outline-default a { 3994 color: {{glassBackgroundTitleColor}} !important; 3995} 3996 3997.glass-background-effect .main-wrapper .form:not(.wide) .form-actions .btn-outline-default:hover, 3998.glass-background-effect .main-wrapper .info-col .btn-outline-default:hover { 3999 border-color: {{glassBackgroundTitleColor}}; 4000} 4001 4002.glass-background-effect .main-wrapper .widget-list .title-row .title, 4003.glass-background-effect .main-wrapper .create-proposal .title-row .title, 4004.glass-background-effect .main-wrapper .create-proposal-content .form .form-oscar .form-title, 4005.glass-background-effect .main-wrapper .create-proposal-content .form .form-oscar .form-group label {
4006 color: {{glassBackgroundTitleColor}} !important; 4007} 4008 4009.glass-background-effect .main-wrapper .sd-import-logs-form .sd-import-logs-label, 4010.glass-background-effect .main-wrapper .sd-import-logs-form .sd-import-logs-link, 4011.glass-background-effect .main-wrapper .sd-import-logs-form .sd-import-logs-hint, 4012.glass-background-effect .main-wrapper .sd-import-logs-result .sd-import-logs-hint, 4013.glass-background-effect .main-wrapper .sd-import-logs-result .sd-import-logs-result-title { 4014 color: {{glassBackgroundTitleColor}} !important; 4015} 4016 4017.gift.gift--mangeAccount .gift__mangeAccount-btn { 4018 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) !important; 4019} 4020 4021.sd-redesign2020 .sd-view-deal .history-block .history-container:before { 4022 background-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) !important; 4023} 4024 4025.sd-redesign2020 .sd-view-deal .history-block .history-container .history-item:before { 4026 background-color: {{appTopBarTextColor}} !important; 4027 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) !important; 4028} 4029 4030.box--menu-mobile-dropdown .ml li a:not([href]):not([tabindex]), 4031.box--menu-mobile-dropdown .ml li a { 4032 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 4033} 4034.box--menu-mobile-dropdown .ml .ml--header { 4035 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark2}}) !important; 4036} 4037.box--menu-mobile-dropdown .ml li.ml--dropdown > a:after { 4038 border-right: 1px solid var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 4039 border-bottom: 1px solid var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 4040} 4041.box--menu-mobile-dropdown .ml li a:not([href]):not([tabindex]):hover, 4042.box--menu-mobile-dropdown .ml li a:not([href]):not([tabindex]):focus, 4043.box--menu-mobile-dropdown .ml li a:hover , 4044.box--menu-mobile-dropdown .ml li a:focus { 4045 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}); 4046 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor}}); 4047} 4048 4049.box--menu-mobile-dropdown .ml li.ml--dropdown > a:hover:after , 4050.box--menu-mobile-dropdown .ml li.ml--dropdown > a:focus:after { 4051 border-right: 1px solid var(--sd-control-accent-neutral-ink, {{appTopBarTextColor}}); 4052 border-bottom: 1px solid var(--sd-control-accent-neutral-ink, {{appTopBarTextColor}}); 4053} 4054 4055.slidesConf .step-order { 4056 background-color: var(--sd-btn-accent-fill, {{appTopBarColor | tcLighten:25}}); 4057} 4058.slidesArrows li.active, 4059.slidesArrows li:hover, 4060.slidesArrows li:focus { 4061 border: 1px solid var(--sd-btn-accent-border, {{appTopBarColor | tcLighten:25}}); 4062} 4063 4064.select-new-icon .icons-list .select-icon:hover, 4065.select-new-icon .icons-list .select-icon.active { 4066 background-color: var(--sd-control-accent-selected-fill, {{appTopBarColor}}) !important; 4067 color: var(--sd-control-accent-selected-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}); 4068} 4069 4070.select-new-icon .icons-list .select-icon:hover svg, 4071.select-new-icon .icons-list .select-icon.active svg { 4072 fill: var(--sd-control-accent-selected-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4073} 4074 4075.webhook-card:has(.switchery-active) { 4076 border: 1px solid transparent; 4077 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}); 4078 4079} 4080 4081.sd-checkmark-card-wrapper .sd-checkmark-card-item__active .choose-items-card__label, 4082.sd-checkmark-card-wrapper .sd-checkmark-card-item:hover .choose-items-card__label { 4083 color: var(--sd-control-accent-selected-foreground, {{appTopBarTextColor}}); 4084 background-color: var(--sd-control-accent-selected-fill, {{appTopBarColor}}); 4085} 4086 4087.sd-checkmark-card-item.sd-checkmark-card-item__active { 4088 border-color: var(--sd-btn-accent-border, {{ appTopBarColor | tcContrastFloor:3 }}); 4089} 4090 4091.choose-items-wrapper .choose-items-steps .sdAccordion__item .step-number, 4092.sd-checkmark-card-wrapper .sd-checkmark-card-item.sd-checkmark-card-item__active .sd-checkmark-card-item__arrow .checkmark-icon__circle { 4093 border-color: var(--sd-btn-accent-border, {{appTopBarColor | tcLighten:25}}); 4094 background-color: var(--sd-btn-accent-fill, {{ appTopBarColor | tcContrastFloor:3 }}); 4095} 4096 4097.choose-items-wrapper .choose-items-summary-wrapper .colored-title, 4098.choose-items-summary__section-title, 4099.cbe-block-shopping-wrapper .choose-items-summary-wrapper .choose-items-summary-body .choose-items-summary-total label { 4100 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 4101} 4102 4103 4104.checklist-submission-item.active .link-state-wrapper { 4105 border-color: var(--sd-btn-accent-border, {{ appTopBarColor_dark1 | tcContrastFloor:3 }}); 4106} 4107 4108.dropdown-card.dropdown-card-custom .extended-menu ul.ext-menu > li.ext-item > .ext-submenu li a{ 4109 box-shadow: inset 0 0 0 {{appTopBarColor_dark2}}; 4110} 4111 4112.dropdown-card.dropdown-card-custom .extended-menu ul.ext-menu > li.ext-item > .ext-submenu li a:hover, 4113.dropdown-card.dropdown-card-custom .extended-menu ul.ext-menu > li.ext-item > .ext-submenu li a:focus { 4114 box-shadow: inset 0 -0.6em 0 {{ 4115 (appTopBarColor_dark1 4116 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten: 30) 4117 : tcIsLightCond: (appTopBarColor_dark1 | tcDarken: 30) 4118 ) | tcSetAlpha: 0.5 4119 }}; 4120} 4121.branding-theme-mrclean .dropdown-card.dropdown-card-custom .extended-menu ul.ext-menu > li.ext-item > .ext-submenu li a:hover, 4122.branding-theme-mrclean .dropdown-card.dropdown-card-custom .extended-menu ul.ext-menu > li.ext-item > .ext-submenu li a:focus { 4123 box-shadow: inset 0 -0.6em 0 {{appTopBarColor_dark1 | tcSetAlpha: 0.5 }}; 4124} 4125 4126.book-me__background-top, 4127.book-me-calendar.calendar table tr:first-child th, 4128.book-me-calendar.calendar table tr:first-child th button, 4129.book-me-calendar.calendar table tr:first-child th button.uib-left::before, 4130.book-me-calendar.calendar table tr:first-child th button.uib-right::before { 4131 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}); 4132} 4133 4134.personal-block__avatar { 4135 background-color: {{appTopBarColor_dark2}}; 4136} 4137.book-me__appointment-options-item.active .appointment-card { 4138 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) !important; 4139} 4140 4141 4142 /* Registration Form*/ 4143 .registration-page {
4144 background-color: {{registrationMainBackgroundColor}} !important; 4145 } 4146 .registration-page .registration-card { 4147 background-color: {{registrationFormBackgroundColor}} !important; 4148 } 4149 4150 .registration-page .registration-card .form-group.info-text, 4151 .registration-page .registration-card .form-group.info-text a, 4152 .registration-page .registration-card .form-group label, 4153 .registration-page .registration-card .form-group .label, 4154 .registration-page .registration-card.registration-card--organizationLaunchpad, 4155 .registration-page .registration-card.registration-card--organizationLaunchpad .my-companies__item-text, 4156 .registration-page .registration-card.registration-card--organizationLaunchpad .organizationLaunchpad__cancel-btn { 4157 color: {{registrationTextColor}} !important; 4158 } 4159 4160 .registration-page .registration-card .btn.btn-primary, 4161 .registration-page .registration-card.registration-card--organizationLaunchpad .organizationLaunchpad__confirm-btn { 4162 background-color: {{registrationButtonColor}} !important; 4163 color: {{registrationButtonTextColor}} !important; 4164 } 4165 4166 .registration-page .registration-card .btn.btn-primary:hover, 4167 .registration-page .registration-card.registration-card--organizationLaunchpad .organizationLaunchpad__confirm-btn:hover { 4168 background-color: {{registrationButtonColor | tcDarken:5}} !important; 4169 border-color: {{registrationButtonColor | tcLighten:15}} !important; 4170 } 4171 4172 4173.box-nav.tabs li:hover a:before, .box-nav.tabs li:focus a:before, .box-nav.tabs li.active a:before, 4174.box-nav li a:hover:before, .box-nav li a:focus:before, .box-nav li a.active:before { 4175 background: var(--sd-btn-accent-border, {{appHighlightColor}}) !important; 4176} 4177body.sd-dark-mode .box-link, 4178body.sd-dark-mode .box-info li a, 4179body.sd-dark-mode .box-nav li a.active, 4180body.sd-dark-mode .box-btn.box-btn--primary, 4181.box-link, 4182.box-info li a, 4183.box-nav li a.active, 4184.box-btn.box-btn--primary { 4185 color: var(--sd-btn-accent-ink, {{appHighlightColor}}) !important; 4186} 4187body.sd-dark-mode .box-link:hover, .box-link:focus, 4188body.sd-dark-mode .box-info li a:hover, .box-info li a:focus, 4189body.sd-dark-mode .box-btn.box-btn--primary:hover, .box-btn.box-btn--primary:focus, 4190.box-link:hover, .box-link:focus, 4191.box-info li a:hover, .box-info li a:focus, 4192.box-btn.box-btn--primary:hover, .box-btn.box-btn--primary:focus { 4193 color: var(--sd-btn-accent-ink, {{appHighlightColor_dark}}) !important; 4194 border-color: var(--sd-btn-accent-border, {{appHighlightColor_dark}}) !important; 4195} 4196body.sd-dark-mode .box-person-link:hover svg, 4197body.sd-dark-mode .box-person-link:focus svg, 4198.box-person-link:hover svg, 4199.box-person-link:focus svg{ 4200 color: var(--sd-btn-accent-ink, {{appHighlightColor_dark}}) !important; 4201 fill: var(--sd-btn-accent-ink, {{appHighlightColor_dark}}) !important; 4202} 4203.body-crm-dashboard .badge-info{ 4204 background-color: var(--sd-btn-accent-fill, {{appHighlightColor}}) !important; 4205 border-color: var(--sd-btn-accent-border, {{appHighlightColor}}) !important; 4206} 4207.body-crm-dashboard .box--menu-placeholder .box--menu-container .box-nav li.hovered a.has-dropdown-menu:before{ 4208 background: var(--sd-btn-accent-border, {{appHighlightColor}}) !important; 4209} 4210.body-crm-dashboard.sd-dark-mode .redactor-toolbar a:hover, .body-crm-dashboard.sd-dark-mode .redactor-air a:hover, 4211.body-crm-dashboard .redactor-toolbar a:hover, .body-crm-dashboard .redactor-air a:hover, 4212.body-crm-dashboard .box-btn-saved{ 4213 background: var(--sd-btn-accent-fill, {{appHighlightColor}}) !important; 4214} 4215 4216.reporting__block__title__icon { 4217 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) 4218} 4219 4220.reporting__block__title__icon svg { 4221 fill: var(--sd-btn-accent-foreground, {{appTopBarIconsColor}}) 4222} 4223 4224.highlighted-text { 4225 color: var(--sd-btn-accent-ink, {{appHighlightColor}}) !important; 4226} 4227 4228 /* Notifications */ 4229 .notification-options a:focus, 4230.notification-options a:hover { 4231 color: var(--sd-btn-accent-ink, {{appTopBarColor}}) !important; 4232} 4233 4234 4235.maintenance-window { 4236 border-left: 5px solid var(--sd-btn-accent-border, {{appTopBarColor}}); 4237} 4238 4239.ribbon-notify__list-block, 4240.ribbon-notify__icon--down-arrow::after,
4241.ribbon-notify__inner-wrap--notify-block-shown .ribbon-notify__link-icon-left i, 4242.ribbon-notify__inner-wrap--notify-block-shown .ribbon-notify__link .ribbon-notify__link-icon-left i::before, 4243.ribbon-notify__inner-wrap--notify-block-shown .ribbon-notify__link .ribbon-notify__link-icon-left i::after { 4244 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 4245} 4246 4247.ribbon-notify__title { 4248 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) !important; 4249} 4250 4251 /* Forms */ 4252 .form-oscar .chosen-container.chosen-container-active, 4253.sd-app-tags .tags.focused, 4254.ui-select-multiple.ui-select-bootstrap.form-control.open, 4255.sd-file-browser .toolbar-wrap .toolbar-operations .view-bar .search:focus { 4256 box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%); 4257 border-color: var(--sd-btn-accent-focus, {{appTopBarColor}}); 4258} 4259 4260.drop-box.dragover, 4261.redactor-focus.redactor-styles-on, 4262.redactor-focus:focus.redactor-styles-on { 4263 border-color: var(--sd-btn-accent-focus, {{(appTopBarColor | tcLighten:5) | tcIsLightCond: appTopBarColor | tcDarken:50 : appTopBarColor | tcLighten:25}}); 4264} 4265 4266.chosen-container .chosen-results .highlighted, 4267.chosen-container-single .chosen-single .chosen-results .highlighted, 4268.chosen-container-multi .chosen-choices .chosen-results .highlighted { 4269 background-color: var(--sd-control-accent-selected-fill, {{ 4270 appTopBarColor 4271 | tcIsLightCond: (appTopBarColor | tcLighten:20) : (appTopBarColor | tcLighten:25) 4272 }}) !important; 4273 color: var(--sd-control-accent-selected-foreground, {{ 4274 appTopBarColor 4275 | tcIsLightCond: '#333' : 'white' 4276 }}) !important; 4277} 4278 4279.view-submission-modal .brand-band { 4280 background-color: var(--sd-control-accent-tint, {{appTopBarColor | tcLighten:5}}); 4281 color: var(--sd-control-accent-neutral-ink, {{(appTopBarColor | tcLighten:5) | tcIsLightCond:'black':'white'}}); 4282} 4283 4284.conditionLogic__number{ 4285 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) !important; 4286} 4287 4288.conditionLogic__label{ 4289 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) !important; 4290} 4291.form-builder .fields-list .field-block .label-block .field-container .field-wrapper .field-label-container .sort-number, 4292.form-builder .fields-list .field-block .label-block .field-container .field-wrapper .field-label-container .sort-number-choice, 4293.form-builder .fields-list .field-block .label-block .field-container .field-wrapper .choice-label-container .sort-number, 4294.form-builder .fields-list .field-block .label-block .field-container .field-wrapper .choice-label-container .sort-number-choice, 4295.sd-sortable-list-wrapper .sort-number { 4296 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) !important; 4297} 4298 4299.radiobox input[type=radio]:checked + span.label-text:before { 4300 border-color: var(--sd-btn-accent-border, {{ appTopBarColor | tcContrastFloor:3 }}) 4301} 4302.radiobox span.label-text:after { 4303 background-color: var(--sd-control-accent-selected-fill, {{ appTopBarColor | tcContrastFloor:3 }}); 4304} 4305 4306.check-card .check-label:hover .check-card-wrapper , 4307.check-card .check-label:focus .check-card-wrapper { 4308 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 4309} 4310 4311.manage-top-bar-wrapper .tabs-card .nav-tabs li a:hover, 4312.manage-top-bar-wrapper .tabs-card .nav-tabs li a:focus, 4313.manage-top-bar-wrapper .tabs-card .nav-tabs li.active a:focus, 4314.manage-top-bar-wrapper .tabs-card .nav-tabs li.active a:hover { 4315 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:5 )}}) !important; 4316 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:5 )}}) !important; 4317} 4318 4319.form-oscar .round-check input[type="checkbox"]:checked:hover + .label-text, 4320.form-oscar .round-check input[type="checkbox"]:checked + .label-text, 4321.round-check input[type="checkbox"]:checked:hover + .label-text, 4322.round-check input[type="checkbox"]:checked + .label-text { 4323 border-color: var(--sd-btn-accent-border, {{ appTopBarColor | tcContrastFloor:3 }}) !important; 4324 background-color: var(--sd-control-accent-selected-fill, {{ appTopBarColor | tcContrastFloor:3 }}) !important; 4325 color: var(--sd-control-accent-selected-foreground, white); 4326 transition: all .25s ease-in-out; 4327} 4328.form-oscar .round-check input[type="checkbox"]:checked:hover + .label-text:after, 4329.form-oscar .round-check input[type="checkbox"]:checked + .label-text:after,
4330.round-check input[type="checkbox"]:checked:hover + .label-text:after, 4331.round-check input[type="checkbox"]:checked + .label-text:after { 4332 border-color: var(--sd-control-accent-selected-foreground, white) !important; 4333} 4334.form-oscar .round-check input[type="checkbox"]:hover + .label-text, 4335.round-check input[type="checkbox"]:hover + .label-text { 4336 background-color: var(--sd-control-accent-tint, {{appTopBarColor| tcLighten:5 | tcSetAlpha:0.25}}) !important; 4337 transition: all .25s ease-in-out; 4338} 4339 4340.intake-form .glass-background-effect .main-wrapper { 4341 overflow: visible; 4342} 4343 4344.calendar__title { 4345 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}); 4346} 4347 4348.calendar__title h3 { 4349 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor | tcIsLightCond:'#333':'white'}}) !important; 4350} 4351 4352.calendar__pagination-icon svg { 4353 fill: var(--sd-control-accent-neutral-ink, {{appTopBarColor | tcIsLightCond:'#333':'white'}}) !important; 4354} 4355 4356.choose-items-wrapper .choose-items-summary-wrapper:not(.loader-widget)::before, 4357.choose-items-wrapper .sdAccordion__item .sdAccordion__head { 4358 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:45 | tcSetAlpha: .1)}}); 4359} 4360 4361 /* Sidebar */ 4362 .sidebar-dark .side-user .media .fs-12 { 4363 color: {{appTopBarTextColor}}; 4364} 4365 4366.sidebar-dark .side-menu :not([class*="color-"]) > .list-icon { 4367 color: {{appTopBarIconsColor}}; 4368} 4369 4370.side-menu > li.current-page > a { 4371 border-color: {{appTopBarTextColor}}; 4372} 4373 4374.modal-bottom-bar .RightBar__header, 4375.site-sidebar .side-menu { 4376 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 4377} 4378 4379.customization-sidebar-wrapper:not('.lms-sidebar-wrapper') { 4380 border-left: rem(5px) solid {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}; 4381} 4382 4383.sd-chat-wrapper { 4384 border-left-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}); 4385} 4386 4387.notification-sidebar-wrapper, 4388.main-wrapper--contactCRM .RightBar { 4389 border-left-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}); 4390} 4391 4392.lms-sidebar .close:hover:before, 4393.lms-sidebar .close:hover:after, 4394.lms-sidebar .close:focus:before, 4395.lms-sidebar .close:focus:after, 4396.RightBar .close:hover:before, 4397.RightBar .close:hover:after, 4398.RightBar .close:focus:before, 4399.RightBar .close:focus:after, 4400.rightPanel .close:hover:before, 4401.rightPanel .close:hover:after, 4402.rightPanel .close:focus:before, 4403.rightPanel .close:focus:after, 4404.customization-sidebar-wrapper .sidebar-header .close:hover:before, 4405.customization-sidebar-wrapper .sidebar-header .close:hover:after, 4406.customization-sidebar-wrapper .sidebar-header .close:focus:before, 4407.customization-sidebar-wrapper .sidebar-header .close:focus:after, 4408.emailconfig-sidebar-wrapper .sidebar-header .close:hover:before, 4409.emailconfig-sidebar-wrapper .sidebar-header .close:hover:after, 4410.emailconfig-sidebar-wrapper .sidebar-header .close:focus:before, 4411.emailconfig-sidebar-wrapper .sidebar-header .close:focus:after { 4412 background-color: var(--sd-btn-accent-ink, {{appTopBarColor }}); 4413 opacity: 0.75; 4414 transition: all 0.2s ease-in-out; 4415} 4416 4417.box-icons-list li:before, 4418.box-icons-list li:after, 4419.box-icons-list li a:before, 4420.box-icons-list li a:after { 4421 background-color: var(--sd-btn-accent-border, {{appTopBarColor }}); 4422} 4423 4424.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml .ml--close:before, 4425.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml .ml--close:after { 4426 background-color: {{appTopBarIconsColor}}; 4427} 4428 4429.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml .ml--back:before { 4430 border-left-color: {{appTopBarIconsColor}}; 4431 border-top-color: {{appTopBarIconsColor}}; 4432} 4433.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml .ml--back:after { 4434 background-color: {{appTopBarIconsColor}}; 4435} 4436 4437.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml ul { 4438 background-color: transparent; 4439} 4440.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml a:not(.menu-item-add-url) { 4441 border-bottom: 1px solid {{appTopBarTextColor| tcSetAlpha: .4}}; 4442} 4443
4444.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml .sd-get-help i, 4445.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml .sd-get-help span { 4446 color: {{appTopBarIconsColor}}; 4447 fill: {{appTopBarIconsColor}}; 4448 stroke: {{appTopBarIconsColor}}; 4449} 4450.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml a.menu-item-add-url { 4451 color: {{appTopBarIconsColor}}; 4452} 4453.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml a.menu-item-add-url:hover, 4454.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml a.menu-item-add-url:focus { 4455 background-color: transparent; 4456} 4457.sidebar-dark:not(.sd-dark-mode) .mobileMenu .ml li.ml--dropdown > a:after { 4458 border-right: 1px solid {{appTopBarIconsColor}}; 4459 border-bottom: 1px solid {{appTopBarIconsColor}}; 4460} 4461 4462.branding-theme-mrclean .box-icons-list li:before, 4463.branding-theme-mrclean .box-icons-list li:after, 4464.branding-theme-mrclean .box-icons-list li a:before, 4465.branding-theme-mrclean .box-icons-list li a:after { 4466 background-color: {{appTopBarColor | tcDarken:50}}; 4467} 4468 4469/*.reporting__block__title__icon,*/ 4470 4471.site-sidebar.site-sidebar--public-page .site-sidebar-header { 4472 background-color: {{appTopBarColor_dark1}}; 4473} 4474.site-sidebar.site-sidebar--public-page .sidebar-toggle { 4475 background-color: {{appTopBarColor_dark2}}; 4476 color: {{appTopBarIconsColor}}; 4477} 4478 4479 /* Buttons */ 4480 .btn-primary.badge { 4481 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark2 | tcIsLightCond:'var(--sd-text-secondary)':'white'}}); 4482 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4483 border-color: transparent; 4484} 4485 4486.flow-advance-wrapper .flow-buttons:not(.flow-button-skip) { 4487 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4488 border-color: transparent; 4489} 4490 4491.personal-block__btn span, 4492.choose-items-wrapper .choose-items-summary-actions button.next-btn { 4493 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark2 | tcIsLightCond:'#333':'white'}}); 4494} 4495 4496.book-me-calendar.calendar table tr:first-child th button { 4497 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor_dark2 | tcIsLightCond:'#333':'white'}}); 4498} 4499 4500.quantity-input .quantity-input__button.quantity-input__sub:hover::before, 4501.quantity-input .quantity-input__button.quantity-input__add:hover::before, 4502.quantity-input .quantity-input__button.quantity-input__add:hover::after { 4503 background-color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2 | tcIsLightCond:'#333':'white'}}); 4504} 4505 4506.choose-items-wrapper .choose-items-summary-actions button.next-btn svg { 4507 fill: var(--sd-btn-accent-foreground, {{appTopBarColor_dark2 | tcIsLightCond:'#333':'white'}}); 4508} 4509 4510.flow-buttons:not(.flow-button-skip):hover, 4511.flow-buttons:not(.flow-button-skip):focus, 4512.flow-buttons:not(.flow-button-skip).dropdown-toggle:focus, 4513.flow-buttons:not(.flow-button-skip):active { 4514 box-shadow:0 0 0 2px var(--sd-btn-accent-focus, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}); 4515 background-color: var(--sd-btn-accent-hover, {{appTopBarColor | tcDarken:15}}); 4516} 4517 4518.flow-button-skip { 4519 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 4520} 4521 4522.btn.btn-secondary.dropdown-toggle:focus { 4523 box-shadow: 0 0 0 2px var(--sd-btn-accent-focus, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}); 4524 border-color: var(--sd-btn-accent-border, {{appTopBarColor | tcDarken:5}}); 4525 background-color:#fff; 4526} 4527 4528.btn.btn-outline-default.dropdown-toggle:focus { 4529 background-color:#fff; 4530} 4531 4532 4533.advanced-select-add-new-item-wrapper .select2-selection.select2-selection--single:hover { 4534 box-shadow:0 0 0 2px var(--sd-btn-accent-focus, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}); 4535 border-color: var(--sd-btn-accent-border, {{appTopBarColor | tcDarken:5}}); 4536 background-color:#fff; 4537} 4538 4539.btn.btn-primary-light { 4540 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}); 4541 border-color: transparent; 4542} 4543 4544.appointment-type__item:active .appointment-type__block, .appointment-type__item.active .appointment-type__block { 4545 border: 3px solid var(--sd-btn-accent-border, {{ appTopBarColor | tcContrastFloor:3 }}) !important; 4546} 4547 4548.btn.btn-success { 4549 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4550 border-color: transparent; 4551} 4552 4553.swal2-modal .btn { 4554 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4555 border-color: transparent; 4556 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}); 4557} 4558
4559.addon-tab-content .addon-item .add-on-buttons .btn:not(.cancel-button) { 4560 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4561 border-color: transparent; 4562 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}); 4563} 4564 4565.addon-tab-content .addon-item .add-on-buttons .btn:hover { 4566background-color: var(--sd-btn-accent-hover, {{appTopBarColor | tcDarken:5}}); 4567} 4568 4569.btn-outline-default.outline-light-bg { 4570 background:var(--sd-control-accent-tint, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.9}}) !important; 4571 border-color: var(--sd-btn-accent-border, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.9}}) !important; 4572 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor | tcIsLightCond:'#555':'white'}}) ; 4573} 4574 4575.btn-add-template { 4576background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}) !important; 4577border-color: transparent !important; 4578border:none !important; 4579color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4580 4581} 4582 4583.panel-preview.panel-preview__templates .panel-preview__sidebar a.nav-link.active { 4584 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) !important; 4585} 4586 4587 4588.swal2-styled.swal2-confirm { 4589 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}) !important; 4590 border-color: transparent; 4591} 4592 4593.swal2-styled:focus { 4594box-shadow:0 0 0 2px var(--sd-btn-accent-focus, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}) !important; 4595} 4596 4597.vault-add-manually { 4598color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 4599border-color: transparent; 4600} 4601 4602.vault-add-request { 4603 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 4604 border-color: transparent; 4605} 4606 4607.form-actions.submit-buttons .save-btn svg, 4608.form-actions.submit-buttons .save-template svg, 4609.form-actions.submit-buttons.btn-top-list .configure-actions__icon svg { 4610 fill: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}) ; 4611 border-color: transparent; 4612} 4613 4614.form-actions.submit-buttons.btn-top-list .collapse-all a span { 4615 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) ; 4616} 4617 4618 4619@media (max-width: 768px) { 4620 .rightTabs.rightTabs--lms .right-sidebar-togler:hover, 4621 .rightTabs.rightTabs--lms .right-sidebar-togler:focus, 4622 .rightTabs.rightTabs--lms .right-sidebar-togler.active { 4623 background: transparent !important; 4624 } 4625 .rightTabs.rightTabs--lms .right-sidebar-togler:hover:before, 4626 .rightTabs.rightTabs--lms .right-sidebar-togler:focus:before, 4627 .rightTabs.rightTabs--lms .right-sidebar-togler.active:before { 4628 background:var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) ; 4629 } 4630 .rightTabs.rightTabs--lms .right-sidebar-togler:hover img, 4631 .rightTabs.rightTabs--lms .right-sidebar-togler:focus img, 4632 .rightTabs.rightTabs--lms .right-sidebar-togler.active img { 4633 filter: none; 4634 } 4635} 4636 4637.footer-actions-wrapper .actions-handler .handler-drag-icon { 4638 background:var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}) ; 4639 color:var(--sd-btn-accent-foreground, white) !important; 4640} 4641 4642 4643.btn-info { 4644background:var(--sd-btn-accent-fill, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.9}}) !important; 4645border-color: transparent !important; 4646border:none !important; 4647color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4648} 4649 4650.btn-info:hover { 4651background:var(--sd-btn-accent-hover, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}) !important; 4652border-color: transparent !important; 4653border:none !important; 4654color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4655} 4656 4657.btn-success { 4658background:{{appTopBarColor_dark2}} 4659border-color: transparent !important; 4660border:none !important; 4661color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4662} 4663 4664.btn-success:hover { 4665background:var(--sd-btn-accent-hover, {{appTopBarColor_dark2 | tcLighten:15 | tcSetAlpha:0.95}}) !important; 4666border-color: transparent !important; 4667border:none !important; 4668color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4669} 4670 4671.btn-success:active { 4672background:var(--sd-btn-accent-hover, {{appTopBarColor_dark1}}) !important; 4673border-color: transparent !important; 4674border:none !important; 4675color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4676} 4677 4678.btn-success:focus { 4679background:var(--sd-btn-accent-hover, {{appTopBarColor_dark2 | tcLighten:15 | tcSetAlpha:0.95}}) !important; 4680border-color: transparent !important; 4681border:none !important; 4682color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4683box-shadow:0 0 0 2px var(--sd-btn-accent-focus, {{appTopBarColor | tcLighten:15 | tcSetAlpha:0.5}}) !important; 4684} 4685 4686/*contrast color*/ 4687.uib-day .btn-info .text-info { 4688 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'var(--sd-text-secondary)':'white'}}) !important; 4689} 4690 4691.uib-day .btn-default text-info { 4692 color: var(--sd-text-default); 4693} 4694 4695.reminders-settings__forms-block .uib-time.am-pm button { 4696 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4697 color: var(--sd-btn-accent-foreground, #fff) !important; 4698} 4699 4700
4701li.select2-results__option--highlighted small.timer-action-selection-desc { 4702color: var(--sd-control-accent-selected-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}) !important; 4703} 4704 4705.footer-actions-wrapper .timer--action-wrapper .timer-form .counter-wrap .timer-input.counting-time-input:focus { 4706border-color:var(--sd-btn-accent-focus, {{appTopBarColor_dark1}}) !important; 4707 4708} 4709 4710/* Options Dropdowns */ 4711.ct-options-cell .dropdown .btn.btn-primary.dropdown-toggle { 4712 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4713 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}); 4714 border-color: transparent; 4715} 4716 4717.ct-options-cell .dropdown .dropdown-menu, 4718#sd-dropdown-wrapper.sd-dropdown-wrapper-theme-color .dropdown-menu { 4719 background-color: {{appTopBarColor_dark1}}; 4720 color: {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}; 4721} 4722 4723.ct-options-cell .dropdown .dropdown-menu .dropdown-item, 4724#sd-dropdown-wrapper.sd-dropdown-wrapper-theme-color .dropdown-menu .dropdown-item { 4725 background-color: {{appTopBarColor_dark1}}; 4726 color: {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}; 4727} 4728 4729.ct-options-cell .dropdown .dropdown-menu .dropdown-item:hover, 4730#sd-dropdown-wrapper.sd-dropdown-wrapper-theme-color .dropdown-menu .dropdown-item:hover { 4731 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}); 4732 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor_dark1}}); 4733} 4734 4735.btn-beacon { 4736 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}); 4737 color: var(--sd-btn-accent-foreground, {{appTopBarColor | tcIsLightCond:'black':'white'}}); 4738} 4739 4740.cbe-add-block-item:hover, 4741.configure-actions__item button:hover { 4742 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 4743} 4744 4745.installments-line-btn.btn-square{ 4746 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) ; 4747} 4748 4749#platform-branding-form .RightBar__footer.form-actions--bottom-sticky .form-actions-btn .btn, 4750.installments-line-btn.btn-square:hover, 4751.installments-line-btn.btn-square:focus { 4752 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 4753} 4754 4755.installments-line-btn.btn-square:hover svg, 4756.installments-line-btn.btn-square:hover i, 4757.installments-line-btn.btn-square:focus svg, 4758.installments-line-btn.btn-square:focus i{ 4759 fill: var(--sd-btn-accent-ink, {{appTopBarColor}}); 4760 color: var(--sd-btn-accent-ink, {{appTopBarColor}}); 4761} 4762 4763.btn-action:hover i, 4764.btn-action:focus i{ 4765 color: var(--sd-btn-accent-ink, {{appTopBarColor}}); 4766} 4767.btn-action:hover svg, 4768.btn-action:focus svg{ 4769 fill: var(--sd-btn-accent-ink, {{appTopBarColor}}); 4770 color: var(--sd-btn-accent-ink, {{appTopBarColor}}); 4771} 4772 4773#platform-branding-form .RightBar__footer.form-actions.form-actions--bottom-sticky .form-actions-btn:before, 4774.cbe-add-block-item-out-wrap:hover:not(.disabledItem) .cbe-add-block-item::after, 4775.cbe-add-block-item-out-wrap:hover:not(.disabledItem) .cbe-add-block-item::before, 4776.cbe-add-block-item-out-wrap:hover:before, 4777.cbe-add-block-item-out-wrap:hover:after, 4778.configure-actions__item:hover:before, 4779.configure-actions__item:focus:before, 4780.configure-actions__item:hover button:before, 4781.configure-actions__item:focus button:before, 4782.configure-actions__item:hover:after, 4783.configure-actions__item:focus:after, 4784.configure-actions__item:hover button:after, 4785.configure-actions__item:focus button:after { 4786 background-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 4787} 4788 4789.btn.btn-primary.message-users-list-toggle { 4790 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark1}}); 4791 border-color: transparent; 4792} 4793.switchery.switchery-small.switchery-active { 4794 box-shadow: var(--sd-control-accent-selected-fill, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .3)}}) 0px 0px 0px 8px inset; 4795 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .3)}}); 4796 background-color: var(--sd-control-accent-selected-fill, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .3)}}); 4797 4798} 4799 4800.modal-sticky-footer .form-actions-btn { 4801 border: 1px solid var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 4802 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 4803} 4804.modal-sticky-footer .form-actions-btn input[type="button"], 4805.modal-sticky-footer .form-actions-btn input[type="submit"],
4806.modal-sticky-footer .form-actions-btn i { 4807 color: inherit !important; 4808} 4809.modal-sticky-footer .form-actions-btn:hover, 4810.modal-sticky-footer .form-actions-btn:focus { 4811 background: var(--sd-control-accent-tint, {{appTopBarColor_dark2}}); 4812 color: var(--sd-control-accent-neutral-ink, white); 4813} 4814 4815@media (min-width: 960px) { 4816 .form-actions.form-actions--bottom-sticky .btn { 4817 border: 0 !important; 4818 border-right: 1px solid var(--sd-btn-accent-border, {{appTopBarColor | tcSetAlpha: .5}}) !important; 4819 position: relative; 4820 } 4821 .form-actions.form-actions--bottom-sticky .form-actions-btn input[type="button"], 4822 .form-actions.form-actions--bottom-sticky .form-actions-btn input[type="submit"], 4823 .form-actions.form-actions--bottom-sticky .form-actions-btn i { 4824 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}) !important; 4825 } 4826 .form-actions.form-actions--bottom-sticky .form-actions-btn input[type="button"] , 4827 .form-actions.form-actions--bottom-sticky .form-actions-btn input[type="submit"] { 4828 border-right: 1px solid var(--sd-btn-accent-border, {{appTopBarColor | tcSetAlpha: .5}}) !important; 4829 } 4830 .form-actions.form-actions--bottom-sticky .form-actions-btn:hover:before, 4831 .form-actions.form-actions--bottom-sticky .form-actions-btn:focus:before, 4832 .form-actions.form-actions--bottom-sticky:not(.calendar) .btn:hover:before, 4833 .form-actions.form-actions--bottom-sticky:not(.calendar) .btn:focus:before { 4834 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}) !important; 4835 } 4836} 4837 4838.modal-sticky-footer .form-actions .form-actions-btn , 4839.modal-sticky-footer .form-actions .btn { 4840 color: var(--sd-theme-primary-dark-highlighted-text) !important; 4841 border-left: 0 !important; 4842 border-top: 0 !important; 4843 border-bottom: 0 !important; 4844 border-right: 1px solid var(--sd-btn-accent-border, {{appTopBarColor | tcSetAlpha: .5}}) !important; 4845} 4846 4847.modal-sticky-footer .form-actions .form-actions-btn .btn { 4848 border-right: 0 !important; 4849} 4850 4851.modal-sticky-footer .form-actions.justify-content-end .form-actions-btn, 4852.modal-sticky-footer .form-actions.justify-content-between .form-actions-btn:not(:first-child) { 4853 border-left: 1px solid var(--sd-btn-accent-border, {{appTopBarColor | tcSetAlpha: .5}}) !important; 4854} 4855.modal-sticky-footer .form-actions.justify-content-between .form-actions-btn:first-child { 4856 border-right: 1px solid var(--sd-btn-accent-border, {{appTopBarColor | tcSetAlpha: .5}}) !important; 4857} 4858.modal-sticky-footer .form-actions .form-actions-btn:hover, 4859.modal-sticky-footer .form-actions .form-actions-btn:focus { 4860 background-color: transparent !important; 4861} 4862 4863.modal-sticky-footer .form-actions:not(.calendar) .btn:hover:before, 4864.modal-sticky-footer .form-actions:not(.calendar) .btn:focus:before, 4865.modal-sticky-footer .form-actions .form-actions-btn:focus:before { 4866 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}) !important; 4867 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor_dark2}}) !important; 4868} 4869 4870.sd-type-switcher__tabs { 4871 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 4872} 4873 4874.sd-type-switcher__tabs:after { 4875 background-color: var(--sd-control-accent-selected-fill, {{ appTopBarColor | tcContrastFloor:3 }}); 4876} 4877 4878.companySettings .form-actions--bottom-sticky .form-actions-btn:hover::before, 4879.platformBranding .form-actions--bottom-sticky .form-actions-btn:hover::before { 4880 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark2}}) 4881} 4882 4883.checklist-flow-chain-link .btn-block:not(.brn2) { 4884 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}) 4885} 4886 4887.invoice-header-row .dynamic-items-confirm-btn { 4888 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 4889 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark2 | tcIsLightCond:'black':'white'}}); 4890} 4891 4892.invoice-header-row .dynamic-items-confirm-btn:hover, 4893.invoice-header-row .dynamic-items-confirm-btn:active { 4894 background-color: var(--sd-btn-accent-hover, {{appTopBarColor_dark1}}); 4895 color: var(--sd-btn-accent-foreground, {{appTopBarColor_dark1 | tcIsLightCond:'black':'white'}}); 4896} 4897 4898 /* Dropdowns */ 4899 .dropdown-card.dropdown-card-custom .extended-menu ul.ext-menu > li.ext-item > span 4900{ 4901 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30)}}); 4902} 4903 4904.impersonated-body impersonate-panel::-webkit-scrollbar-track { 4905 background-color: {{appTopBarColor_dark1}}; 4906} 4907 4908.impersonated-body impersonate-panel::-webkit-scrollbar-thumb { 4909 background-color:var(--sd-btn-accent-border, {{appTopBarColor}}); 4910} 4911 4912 /* Navigation */ 4913 .header-light .navbar-nav > li > a .list-icon, 4914.navbar-nav .top-nav-link > a .material-icons, 4915.navbar-nav .top-nav-link > button .material-icons 4916{ 4917 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor_dark2}}); 4918} 4919 4920.navbar .create-new .btn-primary:hover { 4921 background-color: var(--sd-btn-accent-hover, {{appTopBarColor}}); 4922 box-shadow: none; 4923} 4924 4925.top-nav-link a:focus i.material-icons, 4926.top-nav-link.show .dropdown-toggle i.material-icons, 4927.top-nav-link .show .dropdown-toggle i.material-icons { 4928 color: var(--sd-btn-accent-ink, {{appTopBarColor}}) !important; 4929} 4930 4931.page-header-logo { 4932 background-color: {{appTopBarColor_dark2}}; 4933} 4934 4935.nav-tabs .nav-item .nav-link.active { 4936 color: var(--sd-theme-primary-dark-highlighted-text) !important; 4937 border-bottom-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}) !important; 4938} 4939 4940.sd-btn-wide-action-24px.active { 4941 border-bottom-color: var(--sd-btn-accent-border, {{ appTopBarColor | tcContrastFloor:3 }}) !important; 4942} 4943 4944.fc-unthemed .fc-popover .fc-header { 4945 background-color: var(--sd-control-accent-tint, {{appTopBarColor}}); 4946 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor | tcIsLightCond:'black':'white'}}); 4947} 4948 4949.header-avatar-block .avatar .material-icons { 4950 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}); 4951 color: var(--sd-btn-accent-foreground, {{appTopBarColor | tcIsLightCond:'black':'white'}}); 4952} 4953 4954.fc-unthemed .fc-popover .fc-header .fc-close { 4955 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor | tcIsLightCond:'black':'white'}}); 4956} 4957 4958.right-sidebar-togler-container .right-sidebar-togler.current { 4959 border-left-color: var(--sd-btn-accent-border, {{ appTopBarColor | tcContrastFloor:3 }}) !important; 4960} 4961 4962.rightTabs.rightTabs--react .right-sidebar-togler-container .right-sidebar-togler.active:before, 4963.rightTabs.rightTabs--react .right-sidebar-togler-container .right-sidebar-togler.current:before { 4964 background: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 4965} 4966 4967.flow-chain .flow-chain-link .card .card-header .link-title .step-order { 4968 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}); 4969} 4970 4971.project-switcher-bar .projects-list { 4972 border-color: var(--sd-btn-accent-border, {{appHighlightColor}}) !important; 4973} 4974 4975.project-switcher-bar .projects-list svg { 4976 fill: var(--sd-btn-accent-ink, {{appHighlightColor}}) !important; 4977} 4978 4979body.branding-theme-mrclean:not(.sd-dark-mode) { 4980 .sd-nav-bar-add-button .sd-nav-bar-add-button__icon::before, 4981 .sd-nav-bar-add-button .sd-nav-bar-add-button__icon::after { 4982 background-color: {{appTopBarColor | tcDarken:50}}; 4983 } 4984 .conditionLogic__number , 4985 .conditionLogic__label, 4986 .file-upload-attachment-modal-card .file-count-wrapper .file-count { 4987 background-color: {{appTopBarColor | tcDarken:50}} !important; 4988 } 4989 4990 .installments-line-btn.btn-square:hover, 4991 .installments-line-btn.btn-square:focus { 4992 background-color: {{appTopBarColor | tcDarken:50}}; 4993 } 4994} 4995 4996 /* Pace */ 4997 4998 /* Custom Page Loader */ 4999 body.pace-custom-loader.pace-bg-NO_ANIMATION .pace, 5000body.pace-custom-loader.pace-bg-fade .pace, 5001body.pace-custom-loader.pace-bg-slide-left .pace, 5002body.pace-custom-loader.pace-bg-slide-right .pace, 5003body.pace-custom-loader.pace-bg-slide-up .pace, 5004body.pace-custom-loader .pace:before, 5005body.pace-custom-loader .pace:after{ 5006 background-color: {{appPageLoaderBgColor}} !important; 5007} 5008 5009body.pace-custom-loader .pace-activity, 5010body.pace-custom-loader.pace-image-loading .pace-progress{ 5011 width: {{appPageLoaderImageWidth}}px; 5012 height: {{appPageLoaderImageHeight}}px; 5013 max-width: {{appPageLoaderImageMaxWidth}}%; 5014} 5015 5016body.pace-custom-loader.pace-image-loading .pace-progress .pace-progress-inner:after, 5017body.pace-custom-loader .pace-activity { 5018 background-image: url(https://secure.maxillopixel.com/uploads/company/picture/66104/MPLogo_cd97555b86fef6c0e66757ff291d5ef7_bc310d1341e92326a5349abef2b7dd85.png); 5019} 5020body.pace-custom-loader.loader-preview.pace-image-loading .pace-progress .pace-progress-inner:after, 5021body.pace-custom-loader.loader-preview .pace-activity { 5022 background-image: url(https://secure.maxillopixel.com/uploads/company/picture/66104/MPLogo_cd97555b86fef6c0e66757ff291d5ef7_bc310d1341e92326a5349abef2b7dd85.png); 5023} 5024body.pace-custom-loader.pace-image-drawing-frame .pace-activity:before, 5025body.pace-custom-loader.pace-image-drawing-frame .pace-activity:after, 5026body.pace-custom-loader.pace-image-drawing-frame .pace-activity .custom-pace-activity-inner:before, 5027body.pace-custom-loader.pace-image-drawing-frame .pace-activity .custom-pace-activity-inner:after 5028{ 5029background-color: {{appPageLoaderColor}} !important; 5030} 5031 /* Dashboard Widgets */ 5032 #sdReporting .sd-reporting-tabs .reporting-tabs .tab-slider { 5033 background-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}})!important; 5034} 5035 5036.new-card-view #circles-grid.dataTableResp .data-table-item-mobile .show-more.link-block .circles-users-more { 5037 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 5038} 5039.dashboard-box .dashboard-anns__item { 5040 border-left-color: var(--sd-btn-accent-border, {{appTopBarColor}}) !important; 5041} 5042 5043.merchant-content a { 5044 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 )}}); 5045} 5046 5047.cbe-content #sdReporting .sd-reporting-tabs .dropdown .reporting-tab-active .active-label, 5048.cbe-content #sdReporting .reporting-panes .reporting-pane .property-data .currency-active, 5049.cbe-content #sdReporting .reporting-panes .reporting-pane .property-data-mixed .property-data.sm, 5050.cbe-content #sdReporting .sd-reporting-tabs .dropdown .reporting-tab-active:after, 5051.cbe-content #sdReporting .sd-reporting-tabs .dropdown .currency-active:after { 5052 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 5053} 5054 5055.checklist-item-container .checklist-actions .button { 5056 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) 5057} 5058 5059.checklist-item-container .checklist-item-content .checklist-item-completed-icon.completed { 5060 background-color: var(--sd-control-accent-selected-fill, {{ appTopBarColor | tcContrastFloor:3 }}); 5061} 5062 5063.person-dropdown__img svg { 5064 fill: {{appTopBarColor | tcIsLightCond:'#555':'white'}} !important; 5065} 5066 5067.dashboard-organize-box .dashboard-organize-box__content .dashboard-item__data .counter { 5068 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 5069} 5070 5071/** Onboarding Wizard */ 5072.onboarding-sidebar li span.number{ 5073 background: var(--sd-control-accent-tint, {{appTopBarColor | tcDarken:20}}); 5074 color: var(--sd-control-accent-neutral-ink, {{appTopBarIconsColor}}); 5075} 5076.onboarding-sidebar li.completed span.number{ 5077 background: var(--sd-control-accent-selected-fill, {{appTopBarColor}}); 5078 color: var(--sd-control-accent-selected-foreground, {{appTopBarIconsColor}}); 5079} 5080.onboarding-sidebar .checkmark-icon__check:after{ 5081 border-color: var(--sd-control-accent-selected-foreground, {{appTopBarIconsColor}}); 5082} 5083@media (max-width: 1200px) { 5084 .checklist-item-container .checklist-actions .complete { 5085 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) 5086 } 5087} 5088 5089@media (max-width: 1800px) { 5090 .flow-chain-link-wrapper .checklist-item-container .checklist-actions .complete { 5091 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}) 5092 } 5093} 5094 5095 /* Pagination */ 5096 .page-item.active .page-link { 5097 background-color: var(--sd-control-accent-selected-fill, {{ appTopBarColor_dark2 | tcContrastFloor:3 }}); 5098 border-color: var(--sd-btn-accent-border, {{ appTopBarColor_dark2 | tcContrastFloor:3 }}); 5099 color: var(--sd-control-accent-selected-foreground, #fff); 5100} 5101 5102.pager > li > a, 5103.pagination > li > a { 5104 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 5105} 5106 5107.pager > li.active > a, 5108.pager > li.active > a:hover, 5109.pager > li.active > a:focus, 5110.pager > li > a:focus, 5111.pager > li > a:hover, 5112.pagination > li.active > a, 5113.pagination > li.active > a:hover, 5114.pagination > li.active > a:focus, 5115.pagination > li.active > button:hover, 5116.pagination > li.active > button:focus, 5117.pagination > li > button:hover, 5118.pagination > li > button:focus, 5119.pagination > li > a:focus, 5120.pagination > li > a:hover 5121{ 5122 background: var(--sd-control-accent-selected-fill, {{ appTopBarColor_dark1 | tcContrastFloor:3 }}); 5123 border-color: var(--sd-btn-accent-border, {{ appTopBarColor_dark1 | tcContrastFloor:3 }}); 5124 color: var(--sd-control-accent-selected-foreground, #fff); 5125} 5126 5127.appointment-schedule-pagination__arrow::before { 5128 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2}}); 5129} 5130 5131.pager .page-link { 5132 display: inline-block; 5133} 5134.pager.pager { 5135 height: 50px; 5136 padding: 0; 5137 bottom: 3px; 5138 right: 8px; 5139 border-top: 0; 5140 background: #F7F7F7; 5141} 5142.pager.pager ul { 5143 display: flex; 5144 flex-direction: row; 5145 flex-wrap: nowrap; 5146 width: 100%; 5147 justify-content: flex-start;
5148 align-items: center; 5149} 5150.pager.pager ul li { 5151 width: 100%; 5152 max-width: 35px; 5153} 5154.pager.pager ul li a { 5155 justify-content: center; 5156 align-items: center; 5157 display: flex; 5158 width: unset; 5159 background: #fff; 5160 color: var(--sd-btn-accent-ink, #88be60); 5161 text-align: center; 5162 border: 1px solid #DCDCDC; 5163 border-radius: 2px; 5164 line-height: 22px; 5165 font-size: 12px; 5166 box-shadow: none; 5167 -moz-box-shadow: none; 5168} 5169.pager.pager ul li.first, 5170.pager.pager ul li.previous, 5171.pager.pager ul li.next, 5172.pager.pager ul li.last { 5173 max-width: 88px; 5174} 5175.pager.pager ul li.first a, 5176.pager.pager ul li.previous a, 5177.pager.pager ul li.next a, 5178.pager.pager ul li.last a { 5179 width: 100%; 5180} 5181.pager.pager ul li.selected a { 5182 background: var(--sd-control-accent-selected-fill, #88be60); 5183 color: var(--sd-control-accent-selected-foreground, #fff); 5184} 5185.pager.pager ul li.disabled a { 5186 background: #44576c; 5187 color: #fefefe !important; 5188} 5189.pager.pager ul li.first a, .pager.pager ul li.previous a, .pager.pager ul li.next a, .pager.pager ul li.last a { 5190 min-width: 85px; 5191 color: var(--sd-btn-accent-ink, #000000); 5192} 5193 5194 /* Tables */ 5195 /*.sd-grid-view .table thead th,*/ 5196/*.sd-grid-view .table thead th *:not([type="checkbox"]):not([class="optionsContainer"]):not([class="checkbox"])*/ 5197/*{*/ 5198/* background: {{tableHeader}};*/ 5199/* color: {{tableHeaderText}};*/ 5200/*}*/ 5201/**/ 5202/*.sd-grid-view .table thead th a:before,*/ 5203/*.sd-grid-view .table thead th a:after*/ 5204/*{*/ 5205/* color: {{tableHeaderText}};*/ 5206/*}*/ 5207/**/ 5208/*.sd-grid-view .table thead th a:hover:before,*/ 5209/*.sd-grid-view .table thead th a:hover:after*/ 5210/*{*/ 5211/* color: {{tableHeader | tcIsDarkCond:(tableHeader | tcLighten:25):(tableHeader | tcDarken:25)}}!important;*/ 5212/*}*/ 5213 5214.dashboard-organize-box .dashboard-item:hover { 5215 border-right-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 5216} 5217 5218.appointment-slot-timer { 5219 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 5220} 5221 5222.appointment-date-head-text, 5223.appointment-slot-timer-container:hover { 5224 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 5225 color: var(--sd-btn-accent-foreground, #ffffff); 5226} 5227 5228.appointment-schedule-page .appointment-slot-timer-container { 5229 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 5230} 5231 5232.liveSupportSession__date { 5233 background-color: var(--sd-btn-accent-fill, {{appTopBarColor_dark2}}); 5234 color: var(--sd-btn-accent-foreground, #fff); 5235} 5236 5237.data-table-item-mobile.mobile-card .mobile-card__header .badge.default-color { 5238 background-color: var(--sd-btn-accent-fill, {{appTopBarColor}}); 5239 color: var(--sd-btn-accent-foreground, #fff); 5240} 5241 5242.circles-users-more { 5243 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}) 5244} 5245 5246.book-me-timeZone__time-table-item { 5247 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}) !important; 5248} 5249 5250.invoiceTable.invoiceTableSummary .selectedRow, 5251.invoiceTable.invoiceTableSummary tbody.ui-sortable.hidePackageItems tr.ui-sortable-helper { 5252 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}) !important; 5253} 5254.invoiceTable.invoiceTableSummary tbody.ui-sortable.hidePackageItems tr.sortable-placeholder { 5255 background: var(--sd-control-accent-tint, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .03)}}) !important; 5256 border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark1 | tcIsDarkCond: (appTopBarColor_dark1 | tcLighten:30 | tcSetAlpha: .2)}}) !important; 5257} 5258 5259 /* !! LEGACY !! */ 5260 /* Widgets */ 5261 .widget .whead { 5262 background: {{appTopBarColor_dark1}}!important; 5263 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor}})!important; 5264} 5265 5266.widget .whead h6 { 5267 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor}})!important; 5268} 5269 5270.lifesaver-hover:hover .fa-life-ring, 5271.sd-gettingstarted-widget .lifesaver-hover:hover svg { 5272 color: var(--sd-btn-accent-ink, {{appTopBarColor | tcDarken:5}}) !important; 5273} 5274 5275.sd-gettingstarted-widget .lifesaver-hover svg { 5276 fill: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}}); 5277} 5278 5279.lifesaver-hover:hover .btn { 5280background-color: var(--sd-btn-accent-hover, {{appTopBarColor | tcDarken:5}}) !important; 5281border-color: var(--sd-btn-accent-border, {{appTopBarColor_dark2 | tcLighten:25}}); 5282} 5283 /* Tabs */ 5284 ul.tabs 5285{ 5286 background: {{appTopBarColor_dark1}}!important; 5287 color: var(--sd-control-accent-neutral-ink, {{appTopBarColor}})!important; 5288} 5289 5290ul.tabs li a.active, 5291ul.tabs li a.active:hover 5292{ 5293 background: var(--sd-control-accent-tint, {{appTopBarColor}})!important; 5294 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor}})!important; 5295} 5296 5297ul.tabs li a:hover 5298{ 5299 color: var(--sd-btn-accent-ink, {{appTopBarColor_dark2}})!important; 5300} 5301 /* Invoice */ 5302 .invoice-header-wrapper-undo { 5303 background-color: var(--sd-control-accent-tint, {{appTopBarColor_dark2}}); 5304 color: var(--sd-control-accent-neutral-ink, {{appTopBarTextColor}}); 5305} 5306 5307.mx-auto.widget-holder.credit-card-payment { 5308 border-color: var(--sd-btn-accent-border, {{appTopBarColor}}); 5309} 5310 /* !! END LEGACY !! */ 5311</style> 5312<style role="CustomTheme" id="theme-advanced-and-background-controls"> 5313 .navbar-header .navbar-brand { 5314background-color:{{'#0C0C0C' }}; 5315 } .sidebar-dark .mpa-compact-profile { 5316background-color:{{'#131313' }}; 5317 } .sidebar-dark aside.site-sidebar { 5318background-color:{{'#1D1D1D' }}; 5319 }</style> 5320
5321<!--Glass Background--> 5322<style role="GlassBackground" type="text/css" 5323 ng-if="!darkMode_enable && glassBackgroundImg && !OscarThemeForm"> 5324 body:not(.sd-dark-mode).glass-background-effect:not(.blank-layout), 5325 body:not(.sd-dark-mode).glass-background-effect:not(.blank-layout) .main-wrapper:not(.no-bg) { 5326 background-color: {{ glassBackgroundColor }} !important; 5327 } 5328 .glass-background-effect:not(.blank-layout) > div:not(.modal) .main-wrapper:before, 5329 body:not(.sd-dark-mode).glass-background-effect:not(.blank-layout)::before { 5330 background-image: {{"url('" + ( glassBackgroundImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}}; 5331 opacity: {{ glassBackgroundOpacity }}%; 5332 } 5333 5334 .glass-background-effect:not(.blank-layout) > div:not(.modal) .main-wrapper .sd-import-logs-form .row.form-group:before, 5335 .glass-background-effect:not(.blank-layout) > div:not(.modal) .main-wrapper .sd-import-logs-result .sd-import-logs-result-title:before { 5336 background-image: {{"url('" + ( glassBackgroundImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}}; 5337 opacity: {{ glassBackgroundOpacity }}%; 5338 } 5339</style> 5340 5341<style role="GlassBackground" type="text/css" ng-if="!darkMode_enable && OscarThemeForm.glassBackgroundImg"> 5342 body:not(.sd-dark-mode).glass-background-effect:not(.blank-layout), 5343 body:not(.sd-dark-mode).glass-background-effect:not(.blank-layout) .main-wrapper:not(.no-bg) { 5344 background-color: {{ OscarThemeForm.glassBackgroundColor }} !important; 5345 } 5346 5347 .glass-background-effect:not(.blank-layout) .main-wrapper:before, 5348 body:not(.sd-dark-mode).glass-background-effect:not(.blank-layout)::before { 5349 background-image: {{"url('" + ( OscarThemeForm.glassBackgroundImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}} !important; 5350 opacity: {{OscarThemeForm.glassBackgroundOpacity}}%; 5351 } 5352 5353 .glass-background-effect .main-wrapper .sd-import-logs-form .row.form-group:before, 5354 .glass-background-effect:not(.lms-page.blank-layout) > div:not(.modal) .main-wrapper .sd-import-logs-result .sd-import-logs-result-title:before { 5355 background-image: {{"url('" + ( OscarThemeForm.glassBackgroundImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}} !important; 5356 opacity: {{OscarThemeForm.glassBackgroundOpacity}}%; 5357 } 5358</style> 5359 5360<style role="GlassBackground" type="text/css" 5361 ng-if="darkMode_enable && glassBackgroundDarkModeImg && !OscarThemeForm"> 5362 body.sd-dark-mode.glass-background-effect:not(.blank-layout), 5363 body.sd-dark-mode.glass-background-effect:not(.blank-layout) .main-wrapper:not(.no-bg) { 5364 background-color: {{ glassBackgroundColorDarkMode }} !important; 5365 } 5366 5367 body.sd-dark-mode.glass-background-effect:not(.lms-page.blank-layout) > div:not(.modal) .main-wrapper:before, 5368 body.sd-dark-mode.glass-background-effect:not(.blank-layout)::before { 5369 background-image: {{"url('" + ( glassBackgroundDarkModeImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}}; 5370 opacity: {{ glassBackgroundOpacityDarkMode }}%; 5371 } 5372 5373 body.sd-dark-mode.glass-background-effect:not(.lms-page.blank-layout) > div:not(.modal) .main-wrapper .sd-import-logs-form .row.form-group:before, 5374 body.sd-dark-mode.glass-background-effect:not(.lms-page.blank-layout) > div:not(.modal) .main-wrapper .sd-import-logs-result .sd-import-logs-result-title:before { 5375 background-image: {{"url('" + ( glassBackgroundDarkModeImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}}; 5376 opacity: {{ glassBackgroundOpacityDarkMode }}%; 5377 } 5378</style> 5379 5380<style role="GlassBackground" type="text/css" ng-if="darkMode_enable && OscarThemeForm.glassBackgroundDarkModeImg"> 5381 body.sd-dark-mode.glass-background-effect:not(.blank-layout), 5382 body.sd-dark-mode.glass-background-effect:not(.blank-layout) .main-wrapper:not(.no-bg) {
5383 background-color: {{ OscarThemeForm.glassBackgroundColorDarkMode }} !important; 5384 } 5385 5386 body.sd-dark-mode.glass-background-effect .main-wrapper:before, 5387 body.sd-dark-mode.glass-background-effect:not(.blank-layout)::before { 5388 background-image: {{"url('" + ( OscarThemeForm.glassBackgroundDarkModeImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}} !important; 5389 opacity: {{OscarThemeForm.glassBackgroundOpacityDarkMode}}%; 5390 } 5391 5392 body.sd-dark-mode.glass-background-effect .main-wrapper .sd-import-logs-form .row.form-group:before, 5393 body.sd-dark-mode.glass-background-effect:not(.lms-page.blank-layout) > div:not(.modal) .main-wrapper .sd-import-logs-result .sd-import-logs-result-title:before { 5394 background-image: {{"url('" + ( OscarThemeForm.glassBackgroundDarkModeImg | retrieveAbsUrl: 'https://secure.maxillopixel.com/uploads/company/picture/66104/' ) + "')"}} !important; 5395 opacity: {{OscarThemeForm.glassBackgroundOpacityDarkMode}}%; 5396 } 5397</style> 5398<!--Glass Background End--> 5399
5400<script type="text/json-template" id="CustomColors"> 5401 { 5402 "appTopBarColor_cond1" : "appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:35):(appTopBarColor | tcLighten:35)", 5403 "appSwitcheryColor" : "appTopBarColor | tcIsLightCond:(appTopBarColor | tcDarken:35):(appTopBarColor | tcLighten:35)", 5404 "advanced_sidebar_logo": "'#0C0C0C' ", 5405"advanced_sidebar_avatar": "'#131313' ", 5406"advanced_sidebar_menu": "'#1D1D1D' " } 5407</script>
5407 5408<style role="CustomTheme" type="text/css" id="platform-branding-custom-css-anchor"></style> 5409<style role="CustomTheme" type="text/css" id="platform-branding-custom-css"> 5410 .sd-client-add-wr-description { 5411display:none; 5412} 5413 5414.sd-client-add-wr-duedate { 5415 display:none; 5416} 5417</style> 5418 5419</body> 5420</html> 5421 5422 5423 5424
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.