|
Server : Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 System : Windows NT SERVER-PC 10.0 build 26200 (Windows 11) AMD64 User : ServerPC ( 0) PHP Version : 8.2.12 Disable Function : NONE Directory : C:/Program Files/NVIDIA Corporation/NVIDIA app/www/ |
Upload File : |
(()=>{"use strict";var e={973:()=>{try{self["workbox:background-sync:7.0.0"]&&_()}catch(e){}},136:()=>{try{self["workbox:core:7.0.0"]&&_()}catch(e){}},626:()=>{try{self["workbox:expiration:7.0.0"]&&_()}catch(e){}},859:()=>{try{self["workbox:navigation-preload:7.0.0"]&&_()}catch(e){}},447:()=>{try{self["workbox:precaching:7.0.0"]&&_()}catch(e){}},227:()=>{try{self["workbox:routing:7.0.0"]&&_()}catch(e){}},390:()=>{try{self["workbox:strategies:7.0.0"]&&_()}catch(e){}}},t={};function s(n){var r=t[n];if(void 0!==r)return r.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,s),a.exports}function n(e,t,s,n){return new(s||(s=Promise))((function(r,a){function i(e){try{c(n.next(e))}catch(e){a(e)}}function o(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(i,o)}c((n=n.apply(e,t||[])).next())}))}Object.create,Object.create,"function"==typeof SuppressedError&&SuppressedError,s(136);class r extends Error{constructor(e,t){super(((e,...t)=>{let s=e;return t.length>0&&(s+=` :: ${JSON.stringify(t)}`),s})(e,t)),this.name=e,this.details=t}}let a,i;const o=new WeakMap,c=new WeakMap,h=new WeakMap,u=new WeakMap,l=new WeakMap;let d={get(e,t,s){if(e instanceof IDBTransaction){if("done"===t)return c.get(e);if("objectStoreNames"===t)return e.objectStoreNames||h.get(e);if("store"===t)return s.objectStoreNames[1]?void 0:s.objectStore(s.objectStoreNames[0])}return p(e[t])},set:(e,t,s)=>(e[t]=s,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function f(e){return"function"==typeof e?(t=e)!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(i||(i=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(g(this),e),p(o.get(this))}:function(...e){return p(t.apply(g(this),e))}:function(e,...s){const n=t.call(g(this),e,...s);return h.set(n,e.sort?e.sort():[e]),p(n)}:(e instanceof IDBTransaction&&function(e){if(c.has(e))return;const t=new Promise(((t,s)=>{const n=()=>{e.removeEventListener("complete",r),e.removeEventListener("error",a),e.removeEventListener("abort",a)},r=()=>{t(),n()},a=()=>{s(e.error||new DOMException("AbortError","AbortError")),n()};e.addEventListener("complete",r),e.addEventListener("error",a),e.addEventListener("abort",a)}));c.set(e,t)}(e),s=e,(a||(a=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])).some((e=>s instanceof e))?new Proxy(e,d):e);var t,s}function p(e){if(e instanceof IDBRequest)return function(e){const t=new Promise(((t,s)=>{const n=()=>{e.removeEventListener("success",r),e.removeEventListener("error",a)},r=()=>{t(p(e.result)),n()},a=()=>{s(e.error),n()};e.addEventListener("success",r),e.addEventListener("error",a)}));return t.then((t=>{t instanceof IDBCursor&&o.set(t,e)})).catch((()=>{})),l.set(t,e),t}(e);if(u.has(e))return u.get(e);const t=f(e);return t!==e&&(u.set(e,t),l.set(t,e)),t}const g=e=>l.get(e),y=["get","getKey","getAll","getAllKeys","count"],w=["put","add","delete","clear"],m=new Map;function v(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return;if(m.get(t))return m.get(t);const s=t.replace(/FromIndex$/,""),n=t!==s,r=w.includes(s);if(!(s in(n?IDBIndex:IDBObjectStore).prototype)||!r&&!y.includes(s))return;const a=async function(e,...t){const a=this.transaction(e,r?"readwrite":"readonly");let i=a.store;return n&&(i=i.index(t.shift())),(await Promise.all([i[s](...t),r&&a.done]))[0]};return m.set(t,a),a}var E;E=d,d={...E,get:(e,t,s)=>v(e,t)||E.get(e,t,s),has:(e,t)=>!!v(e,t)||E.has(e,t)},s(973);const b="requests",R="queueName";class S{constructor(){this._db=null}async addEntry(e){const t=(await this.getDb()).transaction(b,"readwrite",{durability:"relaxed"});await t.store.add(e),await t.done}async getFirstEntryId(){const e=await this.getDb(),t=await e.transaction(b).store.openCursor();return null==t?void 0:t.value.id}async getAllEntriesByQueueName(e){const t=await this.getDb();return await t.getAllFromIndex(b,R,IDBKeyRange.only(e))||new Array}async getEntryCountByQueueName(e){return(await this.getDb()).countFromIndex(b,R,IDBKeyRange.only(e))}async deleteEntry(e){const t=await this.getDb();await t.delete(b,e)}async getFirstEntryByQueueName(e){return await this.getEndEntryFromIndex(IDBKeyRange.only(e),"next")}async getLastEntryByQueueName(e){return await this.getEndEntryFromIndex(IDBKeyRange.only(e),"prev")}async getEndEntryFromIndex(e,t){const s=await this.getDb(),n=await s.transaction(b).store.index(R).openCursor(e,t);return null==n?void 0:n.value}async getDb(){return this._db||(this._db=await function(e,t,{blocked:s,upgrade:n,blocking:r,terminated:a}={}){const i=indexedDB.open(e,t),o=p(i);return n&&i.addEventListener("upgradeneeded",(e=>{n(p(i.result),e.oldVersion,e.newVersion,p(i.transaction),e)})),s&&i.addEventListener("blocked",(e=>s(e.oldVersion,e.newVersion,e))),o.then((e=>{a&&e.addEventListener("close",(()=>a())),r&&e.addEventListener("versionchange",(e=>r(e.oldVersion,e.newVersion,e)))})).catch((()=>{})),o}("workbox-background-sync",3,{upgrade:this._upgradeDb})),this._db}_upgradeDb(e,t){t>0&&t<3&&e.objectStoreNames.contains(b)&&e.deleteObjectStore(b),e.createObjectStore(b,{autoIncrement:!0,keyPath:"id"}).createIndex(R,R,{unique:!1})}}class q{constructor(e){this._queueName=e,this._queueDb=new S}async pushEntry(e){delete e.id,e.queueName=this._queueName,await this._queueDb.addEntry(e)}async unshiftEntry(e){const t=await this._queueDb.getFirstEntryId();t?e.id=t-1:delete e.id,e.queueName=this._queueName,await this._queueDb.addEntry(e)}async popEntry(){return this._removeEntry(await this._queueDb.getLastEntryByQueueName(this._queueName))}async shiftEntry(){return this._removeEntry(await this._queueDb.getFirstEntryByQueueName(this._queueName))}async getAll(){return await this._queueDb.getAllEntriesByQueueName(this._queueName)}async size(){return await this._queueDb.getEntryCountByQueueName(this._queueName)}async deleteEntry(e){await this._queueDb.deleteEntry(e)}async _removeEntry(e){return e&&await this.deleteEntry(e.id),e}}const D=["method","referrer","referrerPolicy","mode","credentials","cache","redirect","integrity","keepalive"];class C{static async fromRequest(e){const t={url:e.url,headers:{}};"GET"!==e.method&&(t.body=await e.clone().arrayBuffer());for(const[s,n]of e.headers.entries())t.headers[s]=n;for(const s of D)void 0!==e[s]&&(t[s]=e[s]);return new C(t)}constructor(e){"navigate"===e.mode&&(e.mode="same-origin"),this._requestData=e}toObject(){const e=Object.assign({},this._requestData);return e.headers=Object.assign({},this._requestData.headers),e.body&&(e.body=e.body.slice(0)),e}toRequest(){return new Request(this._requestData.url,this._requestData)}clone(){return new C(this.toObject())}}const N="workbox-background-sync",I=new Set,x=e=>{const t={request:new C(e.requestData).toRequest(),timestamp:e.timestamp};return e.metadata&&(t.metadata=e.metadata),t};class T{constructor(e,{forceSyncFallback:t,onSync:s,maxRetentionTime:n}={}){if(this._syncInProgress=!1,this._requestsAddedDuringSync=!1,I.has(e))throw new r("duplicate-queue-name",{name:e});I.add(e),this._name=e,this._onSync=s||this.replayRequests,this._maxRetentionTime=n||10080,this._forceSyncFallback=Boolean(t),this._queueStore=new q(this._name),this._addSyncListener()}get name(){return this._name}async pushRequest(e){await this._addRequest(e,"push")}async unshiftRequest(e){await this._addRequest(e,"unshift")}async popRequest(){return this._removeRequest("pop")}async shiftRequest(){return this._removeRequest("shift")}async getAll(){const e=await this._queueStore.getAll(),t=Date.now(),s=[];for(const n of e){const e=60*this._maxRetentionTime*1e3;t-n.timestamp>e?await this._queueStore.deleteEntry(n.id):s.push(x(n))}return s}async size(){return await this._queueStore.size()}async _addRequest({request:e,metadata:t,timestamp:s=Date.now()},n){const r={requestData:(await C.fromRequest(e.clone())).toObject(),timestamp:s};switch(t&&(r.metadata=t),n){case"push":await this._queueStore.pushEntry(r);break;case"unshift":await this._queueStore.unshiftEntry(r)}this._syncInProgress?this._requestsAddedDuringSync=!0:await this.registerSync()}async _removeRequest(e){const t=Date.now();let s;switch(e){case"pop":s=await this._queueStore.popEntry();break;case"shift":s=await this._queueStore.shiftEntry()}if(s){const n=60*this._maxRetentionTime*1e3;return t-s.timestamp>n?this._removeRequest(e):x(s)}}async replayRequests(){let e;for(;e=await this.shiftRequest();)try{await fetch(e.request.clone())}catch(t){throw await this.unshiftRequest(e),new r("queue-replay-failed",{name:this._name})}}async registerSync(){if("sync"in self.registration&&!this._forceSyncFallback)try{await self.registration.sync.register(`${N}:${this._name}`)}catch(e){}}_addSyncListener(){"sync"in self.registration&&!this._forceSyncFallback?self.addEventListener("sync",(e=>{if(e.tag===`${N}:${this._name}`){const t=async()=>{let t;this._syncInProgress=!0;try{await this._onSync({queue:this})}catch(e){if(e instanceof Error)throw t=e,t}finally{!this._requestsAddedDuringSync||t&&!e.lastChance||await this.registerSync(),this._syncInProgress=!1,this._requestsAddedDuringSync=!1}};e.waitUntil(t())}})):this._onSync({queue:this})}static get _queueNames(){return I}}class L{constructor(e,t){this.fetchDidFail=async({request:e})=>{await this._queue.pushRequest({request:e})},this._queue=new T(e,t)}}const k=new Set,A={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!=typeof registration?registration.scope:""},P=e=>[A.prefix,e,A.suffix].filter((e=>e&&e.length>0)).join("-"),O=e=>e||P(A.precache),U=e=>e||P(A.runtime);function B(e,t){const s=new URL(e);for(const e of t)s.searchParams.delete(e);return s.href}let W,F,M;function K(e){e.then((()=>{}))}class j{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}function G(e){return new Promise((t=>setTimeout(t,e)))}function H(e,t){const s=t();return e.waitUntil(s),s}const $=new WeakMap,V=new WeakMap,Q=new WeakMap,z=new WeakMap,Z=new WeakMap;let X={get(e,t,s){if(e instanceof IDBTransaction){if("done"===t)return V.get(e);if("objectStoreNames"===t)return e.objectStoreNames||Q.get(e);if("store"===t)return s.objectStoreNames[1]?void 0:s.objectStore(s.objectStoreNames[0])}return Y(e[t])},set:(e,t,s)=>(e[t]=s,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function J(e){return"function"==typeof e?(t=e)!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(M||(M=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(ee(this),e),Y($.get(this))}:function(...e){return Y(t.apply(ee(this),e))}:function(e,...s){const n=t.call(ee(this),e,...s);return Q.set(n,e.sort?e.sort():[e]),Y(n)}:(e instanceof IDBTransaction&&function(e){if(V.has(e))return;const t=new Promise(((t,s)=>{const n=()=>{e.removeEventListener("complete",r),e.removeEventListener("error",a),e.removeEventListener("abort",a)},r=()=>{t(),n()},a=()=>{s(e.error||new DOMException("AbortError","AbortError")),n()};e.addEventListener("complete",r),e.addEventListener("error",a),e.addEventListener("abort",a)}));V.set(e,t)}(e),s=e,(F||(F=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])).some((e=>s instanceof e))?new Proxy(e,X):e);var t,s}function Y(e){if(e instanceof IDBRequest)return function(e){const t=new Promise(((t,s)=>{const n=()=>{e.removeEventListener("success",r),e.removeEventListener("error",a)},r=()=>{t(Y(e.result)),n()},a=()=>{s(e.error),n()};e.addEventListener("success",r),e.addEventListener("error",a)}));return t.then((t=>{t instanceof IDBCursor&&$.set(t,e)})).catch((()=>{})),Z.set(t,e),t}(e);if(z.has(e))return z.get(e);const t=J(e);return t!==e&&(z.set(e,t),Z.set(t,e)),t}const ee=e=>Z.get(e),te=["get","getKey","getAll","getAllKeys","count"],se=["put","add","delete","clear"],ne=new Map;function re(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return;if(ne.get(t))return ne.get(t);const s=t.replace(/FromIndex$/,""),n=t!==s,r=se.includes(s);if(!(s in(n?IDBIndex:IDBObjectStore).prototype)||!r&&!te.includes(s))return;const a=async function(e,...t){const a=this.transaction(e,r?"readwrite":"readonly");let i=a.store;return n&&(i=i.index(t.shift())),(await Promise.all([i[s](...t),r&&a.done]))[0]};return ne.set(t,a),a}X=(e=>({...e,get:(t,s,n)=>re(t,s)||e.get(t,s,n),has:(t,s)=>!!re(t,s)||e.has(t,s)}))(X),s(626);const ae="cache-entries",ie=e=>{const t=new URL(e,location.href);return t.hash="",t.href};class oe{constructor(e){this._db=null,this._cacheName=e}_upgradeDb(e){const t=e.createObjectStore(ae,{keyPath:"id"});t.createIndex("cacheName","cacheName",{unique:!1}),t.createIndex("timestamp","timestamp",{unique:!1})}_upgradeDbAndDeleteOldDbs(e){this._upgradeDb(e),this._cacheName&&function(e,{blocked:t}={}){const s=indexedDB.deleteDatabase(e);t&&s.addEventListener("blocked",(e=>t(e.oldVersion,e))),Y(s).then((()=>{}))}(this._cacheName)}async setTimestamp(e,t){const s={url:e=ie(e),timestamp:t,cacheName:this._cacheName,id:this._getId(e)},n=(await this.getDb()).transaction(ae,"readwrite",{durability:"relaxed"});await n.store.put(s),await n.done}async getTimestamp(e){const t=await this.getDb(),s=await t.get(ae,this._getId(e));return null==s?void 0:s.timestamp}async expireEntries(e,t){const s=await this.getDb();let n=await s.transaction(ae).store.index("timestamp").openCursor(null,"prev");const r=[];let a=0;for(;n;){const s=n.value;s.cacheName===this._cacheName&&(e&&s.timestamp<e||t&&a>=t?r.push(n.value):a++),n=await n.continue()}const i=[];for(const e of r)await s.delete(ae,e.id),i.push(e.url);return i}_getId(e){return this._cacheName+"|"+ie(e)}async getDb(){return this._db||(this._db=await function(e,t,{blocked:s,upgrade:n,blocking:r,terminated:a}={}){const i=indexedDB.open(e,t),o=Y(i);return n&&i.addEventListener("upgradeneeded",(e=>{n(Y(i.result),e.oldVersion,e.newVersion,Y(i.transaction),e)})),s&&i.addEventListener("blocked",(e=>s(e.oldVersion,e.newVersion,e))),o.then((e=>{a&&e.addEventListener("close",(()=>a())),r&&e.addEventListener("versionchange",(e=>r(e.oldVersion,e.newVersion,e)))})).catch((()=>{})),o}("workbox-expiration",1,{upgrade:this._upgradeDbAndDeleteOldDbs.bind(this)})),this._db}}class ce{constructor(e,t={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=t.maxEntries,this._maxAgeSeconds=t.maxAgeSeconds,this._matchOptions=t.matchOptions,this._cacheName=e,this._timestampModel=new oe(e)}async expireEntries(){if(this._isRunning)return void(this._rerunRequested=!0);this._isRunning=!0;const e=this._maxAgeSeconds?Date.now()-1e3*this._maxAgeSeconds:0,t=await this._timestampModel.expireEntries(e,this._maxEntries),s=await self.caches.open(this._cacheName);for(const e of t)await s.delete(e,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,K(this.expireEntries()))}async updateTimestamp(e){await this._timestampModel.setTimestamp(e,Date.now())}async isURLExpired(e){if(this._maxAgeSeconds){const t=await this._timestampModel.getTimestamp(e),s=Date.now()-1e3*this._maxAgeSeconds;return void 0===t||t<s}return!1}async delete(){this._rerunRequested=!1,await this._timestampModel.expireEntries(1/0)}}class he{constructor(e={}){var t;this.cachedResponseWillBeUsed=async({event:e,request:t,cacheName:s,cachedResponse:n})=>{if(!n)return null;const r=this._isResponseDateFresh(n),a=this._getCacheExpiration(s);K(a.expireEntries());const i=a.updateTimestamp(t.url);if(e)try{e.waitUntil(i)}catch(e){}return r?n:null},this.cacheDidUpdate=async({cacheName:e,request:t})=>{const s=this._getCacheExpiration(e);await s.updateTimestamp(t.url),await s.expireEntries()},this._config=e,this._maxAgeSeconds=e.maxAgeSeconds,this._cacheExpirations=new Map,e.purgeOnQuotaError&&(t=()=>this.deleteCacheAndMetadata(),k.add(t))}_getCacheExpiration(e){if(e===U())throw new r("expire-custom-caches-only");let t=this._cacheExpirations.get(e);return t||(t=new ce(e,this._config),this._cacheExpirations.set(e,t)),t}_isResponseDateFresh(e){if(!this._maxAgeSeconds)return!0;const t=this._getDateHeaderTimestamp(e);return null===t||t>=Date.now()-1e3*this._maxAgeSeconds}_getDateHeaderTimestamp(e){if(!e.headers.has("date"))return null;const t=e.headers.get("date"),s=new Date(t).getTime();return isNaN(s)?null:s}async deleteCacheAndMetadata(){for(const[e,t]of this._cacheExpirations)await self.caches.delete(e),await t.delete();this._cacheExpirations=new Map}}function ue(e){if(!e)throw new r("add-to-cache-list-unexpected-type",{entry:e});if("string"==typeof e){const t=new URL(e,location.href);return{cacheKey:t.href,url:t.href}}const{revision:t,url:s}=e;if(!s)throw new r("add-to-cache-list-unexpected-type",{entry:e});if(!t){const e=new URL(s,location.href);return{cacheKey:e.href,url:e.href}}const n=new URL(s,location.href),a=new URL(s,location.href);return n.searchParams.set("__WB_REVISION__",t),{cacheKey:n.href,url:a.href}}s(859),s(447);class le{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:s})=>{if("install"===e.type&&t&&t.originalRequest&&t.originalRequest instanceof Request){const e=t.originalRequest.url;s?this.notUpdatedURLs.push(e):this.updatedURLs.push(e)}return s}}}class de{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:e,params:t})=>{const s=(null==t?void 0:t.cacheKey)||this._precacheController.getCacheKeyForURL(e.url);return s?new Request(s,{headers:e.headers}):e},this._precacheController=e}}function fe(e){return"string"==typeof e?new Request(e):e}s(390);class pe{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new j,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const e of this._plugins)this._pluginStateMap.set(e,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let s=fe(e);if("navigate"===s.mode&&t instanceof FetchEvent&&t.preloadResponse){const e=await t.preloadResponse;if(e)return e}const n=this.hasCallback("fetchDidFail")?s.clone():null;try{for(const e of this.iterateCallbacks("requestWillFetch"))s=await e({request:s.clone(),event:t})}catch(e){if(e instanceof Error)throw new r("plugin-error-request-will-fetch",{thrownErrorMessage:e.message})}const a=s.clone();try{let e;e=await fetch(s,"navigate"===s.mode?void 0:this._strategy.fetchOptions);for(const s of this.iterateCallbacks("fetchDidSucceed"))e=await s({event:t,request:a,response:e});return e}catch(e){throw n&&await this.runCallbacks("fetchDidFail",{error:e,event:t,originalRequest:n.clone(),request:a.clone()}),e}}async fetchAndCachePut(e){const t=await this.fetch(e),s=t.clone();return this.waitUntil(this.cachePut(e,s)),t}async cacheMatch(e){const t=fe(e);let s;const{cacheName:n,matchOptions:r}=this._strategy,a=await this.getCacheKey(t,"read"),i=Object.assign(Object.assign({},r),{cacheName:n});s=await caches.match(a,i);for(const e of this.iterateCallbacks("cachedResponseWillBeUsed"))s=await e({cacheName:n,matchOptions:r,cachedResponse:s,request:a,event:this.event})||void 0;return s}async cachePut(e,t){const s=fe(e);await G(0);const n=await this.getCacheKey(s,"write");if(!t)throw new r("cache-put-with-no-response",{url:(a=n.url,new URL(String(a),location.href).href.replace(new RegExp(`^${location.origin}`),""))});var a;const i=await this._ensureResponseSafeToCache(t);if(!i)return!1;const{cacheName:o,matchOptions:c}=this._strategy,h=await self.caches.open(o),u=this.hasCallback("cacheDidUpdate"),l=u?await async function(e,t,s,n){const r=B(t.url,s);if(t.url===r)return e.match(t,n);const a=Object.assign(Object.assign({},n),{ignoreSearch:!0}),i=await e.keys(t,a);for(const t of i)if(r===B(t.url,s))return e.match(t,n)}(h,n.clone(),["__WB_REVISION__"],c):null;try{await h.put(n,u?i.clone():i)}catch(e){if(e instanceof Error)throw"QuotaExceededError"===e.name&&await async function(){for(const e of k)await e()}(),e}for(const e of this.iterateCallbacks("cacheDidUpdate"))await e({cacheName:o,oldResponse:l,newResponse:i.clone(),request:n,event:this.event});return!0}async getCacheKey(e,t){const s=`${e.url} | ${t}`;if(!this._cacheKeys[s]){let n=e;for(const e of this.iterateCallbacks("cacheKeyWillBeUsed"))n=fe(await e({mode:t,request:n,event:this.event,params:this.params}));this._cacheKeys[s]=n}return this._cacheKeys[s]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const s of this.iterateCallbacks(e))await s(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if("function"==typeof t[e]){const s=this._pluginStateMap.get(t),n=n=>{const r=Object.assign(Object.assign({},n),{state:s});return t[e](r)};yield n}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,s=!1;for(const e of this.iterateCallbacks("cacheWillUpdate"))if(t=await e({request:this.request,response:t,event:this.event})||void 0,s=!0,!t)break;return s||t&&200!==t.status&&(t=void 0),t}}class ge{constructor(e={}){this.cacheName=U(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,s="string"==typeof e.request?new Request(e.request):e.request,n="params"in e?e.params:void 0,r=new pe(this,{event:t,request:s,params:n}),a=this._getResponse(r,s,t);return[a,this._awaitComplete(a,r,s,t)]}async _getResponse(e,t,s){let n;await e.runCallbacks("handlerWillStart",{event:s,request:t});try{if(n=await this._handle(t,e),!n||"error"===n.type)throw new r("no-response",{url:t.url})}catch(r){if(r instanceof Error)for(const a of e.iterateCallbacks("handlerDidError"))if(n=await a({error:r,event:s,request:t}),n)break;if(!n)throw r}for(const r of e.iterateCallbacks("handlerWillRespond"))n=await r({event:s,request:t,response:n});return n}async _awaitComplete(e,t,s,n){let r,a;try{r=await e}catch(a){}try{await t.runCallbacks("handlerDidRespond",{event:n,request:s,response:r}),await t.doneWaiting()}catch(e){e instanceof Error&&(a=e)}if(await t.runCallbacks("handlerDidComplete",{event:n,request:s,response:r,error:a}),t.destroy(),a)throw a}}class ye extends ge{constructor(e={}){e.cacheName=O(e.cacheName),super(e),this._fallbackToNetwork=!1!==e.fallbackToNetwork,this.plugins.push(ye.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){return await t.cacheMatch(e)||(t.event&&"install"===t.event.type?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let s;const n=t.params||{};if(!this._fallbackToNetwork)throw new r("missing-precache-entry",{cacheName:this.cacheName,url:e.url});{const r=n.integrity,a=e.integrity,i=!a||a===r;s=await t.fetch(new Request(e,{integrity:"no-cors"!==e.mode?a||r:void 0})),r&&i&&"no-cors"!==e.mode&&(this._useDefaultCacheabilityPluginIfNeeded(),await t.cachePut(e,s.clone()))}return s}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const s=await t.fetch(e);if(!await t.cachePut(e,s.clone()))throw new r("bad-precaching-response",{url:e.url,status:s.status});return s}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[s,n]of this.plugins.entries())n!==ye.copyRedirectedCacheableResponsesPlugin&&(n===ye.defaultPrecacheCacheabilityPlugin&&(e=s),n.cacheWillUpdate&&t++);0===t?this.plugins.push(ye.defaultPrecacheCacheabilityPlugin):t>1&&null!==e&&this.plugins.splice(e,1)}}ye.defaultPrecacheCacheabilityPlugin={cacheWillUpdate:async({response:e})=>!e||e.status>=400?null:e},ye.copyRedirectedCacheableResponsesPlugin={cacheWillUpdate:async({response:e})=>e.redirected?await async function(e,t){let s=null;if(e.url&&(s=new URL(e.url).origin),s!==self.location.origin)throw new r("cross-origin-copy-response",{origin:s});const n=e.clone(),a={headers:new Headers(n.headers),status:n.status,statusText:n.statusText},i=t?t(a):a,o=function(){if(void 0===W){const e=new Response("");if("body"in e)try{new Response(e.body),W=!0}catch(e){W=!1}W=!1}return W}()?n.body:await n.blob();return new Response(o,i)}(e):e};class we{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:s=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new ye({cacheName:O(e),plugins:[...t,new de({precacheController:this})],fallbackToNetwork:s}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const s of e){"string"==typeof s?t.push(s):s&&void 0===s.revision&&t.push(s.url);const{cacheKey:e,url:n}=ue(s),a="string"!=typeof s&&s.revision?"reload":"default";if(this._urlsToCacheKeys.has(n)&&this._urlsToCacheKeys.get(n)!==e)throw new r("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(n),secondEntry:e});if("string"!=typeof s&&s.integrity){if(this._cacheKeysToIntegrities.has(e)&&this._cacheKeysToIntegrities.get(e)!==s.integrity)throw new r("add-to-cache-list-conflicting-integrities",{url:n});this._cacheKeysToIntegrities.set(e,s.integrity)}if(this._urlsToCacheKeys.set(n,e),this._urlsToCacheModes.set(n,a),t.length>0){const e=`Workbox is precaching URLs without revision info: ${t.join(", ")}\nThis is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(e)}}}install(e){return H(e,(async()=>{const t=new le;this.strategy.plugins.push(t);for(const[t,s]of this._urlsToCacheKeys){const n=this._cacheKeysToIntegrities.get(s),r=this._urlsToCacheModes.get(t),a=new Request(t,{integrity:n,cache:r,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:s},request:a,event:e}))}const{updatedURLs:s,notUpdatedURLs:n}=t;return{updatedURLs:s,notUpdatedURLs:n}}))}activate(e){return H(e,(async()=>{const e=await self.caches.open(this.strategy.cacheName),t=await e.keys(),s=new Set(this._urlsToCacheKeys.values()),n=[];for(const r of t)s.has(r.url)||(await e.delete(r),n.push(r.url));return{deletedURLs:n}}))}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new r("non-precached-url",{url:e});return s=>(s.request=new Request(e),s.params=Object.assign({cacheKey:t},s.params),this.strategy.handle(s))}}let me;const _e=()=>(me||(me=new we),me);s(227);const ve=e=>e&&"object"==typeof e?e:{handle:e};class Ee{constructor(e,t,s="GET"){this.handler=ve(t),this.match=e,this.method=s}setCatchHandler(e){this.catchHandler=ve(e)}}class be extends Ee{constructor(e,t,s){super((({url:t})=>{const s=e.exec(t.href);if(s&&(t.origin===location.origin||0===s.index))return s.slice(1)}),t,s)}}class Re{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",(e=>{const{request:t}=e,s=this.handleRequest({request:t,event:e});s&&e.respondWith(s)}))}addCacheListener(){self.addEventListener("message",(e=>{if(e.data&&"CACHE_URLS"===e.data.type){const{payload:t}=e.data,s=Promise.all(t.urlsToCache.map((t=>{"string"==typeof t&&(t=[t]);const s=new Request(...t);return this.handleRequest({request:s,event:e})})));e.waitUntil(s),e.ports&&e.ports[0]&&s.then((()=>e.ports[0].postMessage(!0)))}}))}handleRequest({request:e,event:t}){const s=new URL(e.url,location.href);if(!s.protocol.startsWith("http"))return;const n=s.origin===location.origin,{params:r,route:a}=this.findMatchingRoute({event:t,request:e,sameOrigin:n,url:s});let i=a&&a.handler;const o=e.method;if(!i&&this._defaultHandlerMap.has(o)&&(i=this._defaultHandlerMap.get(o)),!i)return;let c;try{c=i.handle({url:s,request:e,event:t,params:r})}catch(e){c=Promise.reject(e)}const h=a&&a.catchHandler;return c instanceof Promise&&(this._catchHandler||h)&&(c=c.catch((async n=>{if(h)try{return await h.handle({url:s,request:e,event:t,params:r})}catch(e){e instanceof Error&&(n=e)}if(this._catchHandler)return this._catchHandler.handle({url:s,request:e,event:t});throw n}))),c}findMatchingRoute({url:e,sameOrigin:t,request:s,event:n}){const r=this._routes.get(s.method)||[];for(const a of r){let r;const i=a.match({url:e,sameOrigin:t,request:s,event:n});if(i)return r=i,(Array.isArray(r)&&0===r.length||i.constructor===Object&&0===Object.keys(i).length||"boolean"==typeof i)&&(r=void 0),{route:a,params:r}}return{}}setDefaultHandler(e,t="GET"){this._defaultHandlerMap.set(t,ve(e))}setCatchHandler(e){this._catchHandler=ve(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new r("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(!(t>-1))throw new r("unregister-route-route-not-registered");this._routes.get(e.method).splice(t,1)}}let Se;function qe(e,t,s){let n;if("string"==typeof e){const r=new URL(e,location.href);n=new Ee((({url:e})=>e.href===r.href),t,s)}else if(e instanceof RegExp)n=new be(e,t,s);else if("function"==typeof e)n=new Ee(e,t,s);else{if(!(e instanceof Ee))throw new r("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});n=e}return(Se||(Se=new Re,Se.addFetchListener(),Se.addCacheListener()),Se).registerRoute(n),n}class De extends Ee{constructor(e,t){super((({request:s})=>{const n=e.getURLsToCacheKeys();for(const r of function*(e,{ignoreURLParametersMatching:t=[/^utm_/,/^fbclid$/],directoryIndex:s="index.html",cleanURLs:n=!0,urlManipulation:r}={}){const a=new URL(e,location.href);a.hash="",yield a.href;const i=function(e,t=[]){for(const s of[...e.searchParams.keys()])t.some((e=>e.test(s)))&&e.searchParams.delete(s);return e}(a,t);if(yield i.href,s&&i.pathname.endsWith("/")){const e=new URL(i.href);e.pathname+=s,yield e.href}if(n){const e=new URL(i.href);e.pathname+=".html",yield e.href}if(r){const e=r({url:a});for(const t of e)yield t.href}}(s.url,t)){const t=n.get(r);if(t)return{cacheKey:t,integrity:e.getIntegrityForCacheKey(t)}}}),e.strategy)}}const Ce={cacheWillUpdate:async({response:e})=>200===e.status||0===e.status?e:null};class Ne extends ge{constructor(e={}){super(e),this.plugins.some((e=>"cacheWillUpdate"in e))||this.plugins.unshift(Ce),this._networkTimeoutSeconds=e.networkTimeoutSeconds||0}async _handle(e,t){const s=[],n=[];let a;if(this._networkTimeoutSeconds){const{id:r,promise:i}=this._getTimeoutPromise({request:e,logs:s,handler:t});a=r,n.push(i)}const i=this._getNetworkPromise({timeoutId:a,request:e,logs:s,handler:t});n.push(i);const o=await t.waitUntil((async()=>await t.waitUntil(Promise.race(n))||await i)());if(!o)throw new r("no-response",{url:e.url});return o}_getTimeoutPromise({request:e,logs:t,handler:s}){let n;return{promise:new Promise((t=>{n=setTimeout((async()=>{t(await s.cacheMatch(e))}),1e3*this._networkTimeoutSeconds)})),id:n}}async _getNetworkPromise({timeoutId:e,request:t,logs:s,handler:n}){let r,a;try{a=await n.fetchAndCachePut(t)}catch(e){e instanceof Error&&(r=e)}return e&&clearTimeout(e),!r&&a||(a=await n.cacheMatch(t)),a}}class Ie extends ge{constructor(e={}){super(e),this._networkTimeoutSeconds=e.networkTimeoutSeconds||0}async _handle(e,t){let s,n;try{const s=[t.fetch(e)];if(this._networkTimeoutSeconds){const e=G(1e3*this._networkTimeoutSeconds);s.push(e)}if(n=await Promise.race(s),!n)throw new Error(`Timed out the network response after ${this._networkTimeoutSeconds} seconds.`)}catch(e){e instanceof Error&&(s=e)}if(!n)throw new r("no-response",{url:e.url,error:s});return n}}class xe extends ge{constructor(e={}){super(e),this.plugins.some((e=>"cacheWillUpdate"in e))||this.plugins.unshift(Ce)}async _handle(e,t){const s=t.fetchAndCachePut(e).catch((()=>{}));t.waitUntil(s);let n,a=await t.cacheMatch(e);if(a);else try{a=await s}catch(e){e instanceof Error&&(n=e)}if(!a)throw new r("no-response",{url:e.url,error:n});return a}}var Te,Le,ke,Ae,Pe,Oe,Ue,Be;!function(e){e[e.None=-1]="None",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Trace=4]="Trace",e[e.Verbose=5]="Verbose",e[e.Event=6]="Event"}(Te||(Te={})),function(e){e.Gfn="geforcenow",e.Nvapp="nvidiaapplication"}(Le||(Le={})),function(e){e.FetchSuccess="SW_FETCH_SUCCESS",e.RuntimeCacheUpdated="SW_RUNTIME_CACHE_UPDATED"}(ke||(ke={})),function(e){e.ETag="etag",e.SwCacheBypass="x-sw-cachebypass",e.XRequestId="x-request-id",e.SwCacheKeyAppendString="sw-cache-key-append-string",e.SwCache="sw-cache",e.SwNotifyFetch="sw-notify-fetch",e.SwNoDataUpdate="sw-no-data-update"}(Ae||(Ae={})),function(e){e.SkipWaiting="SKIP_WAITING",e.GameLaunched="GAME_LAUNCHED",e.GameExit="GAME_EXIT",e.CloseStreamerSession="CLOSE_STREAM_SESSION",e.PushNotification="BROWSER_PUSH_NOTIFICATION",e.IpcPushNotification="IPC_PUSH_NOTIFICATION",e.PushNotificationTelemetry="PUSH_NOTIFICATION_TELEMETRY",e.UiPushNotification="BROWSER_VISIBLE_PUSH_NOTIFICATION",e.PushNotificationTracing="PUSH_NOTIFICATION_TRACING",e.SharedStorageUpdate="SHARED_STORAGE_UPDATE",e.LoggerNotification="LOGGER_NOTIFICATION",e.GetClientVersion="GET_CLIENT_VERSION",e.SetLoggerSettings="SET_LOGGING_SETTINGS",e.GetClientVersionWaitingSW="GET_CLIENT_VERSION_FROM_WAITING_SW"}(Pe||(Pe={})),function(e){e.INSTALLING="installing",e.INSTALLED="installed",e.ACTIVATING="activating",e.ACTIVATED="activated",e.REDUNDANT="redundant"}(Oe||(Oe={})),function(e){e.PushNotificationReceived="PushNotificationReceived",e.PushNotificationError="PushNotificationError"}(Ue||(Ue={})),function(e){e.FirebaseInitialisation="FirebaseInitialisation",e.FirebaseToken="FirebaseToken"}(Be||(Be={}));let We={remoteLoggingEnabled:!1,consoleLoggingEnabled:!0,loggingLevel:Te.Event,remoteLogFunction:null};class Fe{static sendLog(e,t){null!=t&&t(e)}static info(e,...t){return Fe.logEntry(e,t,Te.Info,console.log.bind(console))}static logEntry(e,t,s,n){const r=function(e){const t=new Date;let s=t.toLocaleString("en-CA",{dateStyle:"short",timeStyle:"medium",hourCycle:"h24"}).replace(",","")+"."+t.getMilliseconds()+" ";for(const t of e)try{s+="string"==typeof t?t:JSON.stringify(t,null,"\t"),s+=" "}catch(e){console.error("Error while unfolding worker logs ",e)}return s}(t);return e.loggingLevel<s||(e.consoleLoggingEnabled&&n(r),e.remoteLoggingEnabled&&Fe.sendLog(r,e.remoteLogFunction)),r}static error(e,...t){return Fe.logEntry(e,t,Te.Error,console.error.bind(console))}static warn(e,...t){return Fe.logEntry(e,t,Te.Warning,console.warn.bind(console))}static event(e,...t){return Fe.logEntry(e,t,Te.Event,console.log.bind(console))}static verbose(e,...t){return Fe.logEntry(e,t,Te.Verbose,console.log.bind(console))}}class Me{constructor(){this.cachedResponseWillBeUsed=e=>n(this,void 0,void 0,(function*(){const t=e.request;if(t.headers.has(Ae.SwCacheBypass))return Fe.info(We,"Bypassing the service worker's cache for url",t.url),null;if(e.cachedResponse){Fe.info(We,"Returning service worker's cache response for url",t.url);const s=e.cachedResponse.clone(),n=new Headers(e.cachedResponse.headers);return n.append(Ae.SwCache,"true"),new Response(s.body,{status:s.status,statusText:s.statusText,headers:n})}return e.cachedResponse}))}}const Ke=Le.Nvapp;var je;!function(e){e.LCARS="lcars",e.GFWSLDriverContent="gfwslDriverContent",e.GFWSLArticleContent="gfwslArticleContent",e.GFWSLInstaller="gfwslInstaller",e.GFWSLProfile="gfwslProfile",e.Telemetry="telemetry",e.Offline="offline",e.AllAppsMetaData="allAppsMetaData"}(je||(je={}));const Ge=`${Ke}-${je.Offline}-v1`,He="offline.html",$e={staleWhileRevalidate:{lcars:{name:je.LCARS,cacheName:`${Ke}-${je.LCARS}-v1`,routePattern:/https:\/\/([a-zA-Z0-9_.-])+\/graphql\?requestType=panels/,expiry:{maxEntries:10,maxAgeSeconds:1209600,purgeOnQuotaError:!0}},gfwslDriverContent:{name:je.GFWSLDriverContent,cacheName:`${Ke}-${je.GFWSLDriverContent}-v1`,routePattern:/https:\/\/gfwsl[a-zA-Z0-9_.-\/]+getDispDrvrDtlsByDevid\//,expiry:{maxEntries:10,maxAgeSeconds:1209600,purgeOnQuotaError:!0}},gfwslProfile:{name:je.GFWSLProfile,cacheName:`${Ke}-${je.GFWSLProfile}-v1`,routePattern:/https:\/\/gfwsl[a-zA-Z0-9_.-\/]+targetGfeAchievements\//,expiry:{maxEntries:10,maxAgeSeconds:1209600,purgeOnQuotaError:!0}},gfwslInstaller:{name:je.GFWSLInstaller,cacheName:`${Ke}-${je.GFWSLInstaller}-v1`,routePattern:/https:\/\/gfwsl[a-zA-Z0-9_.-\/]+getCurrentGFEClientHtmlDefault\//,expiry:{maxEntries:10,maxAgeSeconds:1209600,purgeOnQuotaError:!0}},gfwslArticleContent:{name:je.GFWSLArticleContent,cacheName:`${Ke}-${je.GFWSLArticleContent}-v1`,routePattern:/https:\/\/gfwsl[a-zA-Z0-9_.-\/]+getGfeCntntNode\//,expiry:{maxEntries:30,maxAgeSeconds:1209600,purgeOnQuotaError:!0}},appMetadata:{name:je.AllAppsMetaData,cacheName:`${Ke}-${je.AllAppsMetaData}-v1`,routePattern:/https:\/\/([a-zA-Z0-9_.-])+\/graphql\?requestType=allAppsMetaData/,expiry:{maxEntries:10,maxAgeSeconds:1209600,purgeOnQuotaError:!0}}},networkFirst:{},networkOnly:{}};class Ve{constructor(){this.cacheDidUpdate=e=>n(this,void 0,void 0,(function*(){if(e.request.headers.has(Ae.SwCacheBypass))return;let t="";const s=e.oldResponse,r=e.newResponse;if(s){if((null==s?void 0:s.headers.has(Ae.ETag))&&(t=s.headers.get(Ae.ETag)),t&&(null==r?void 0:r.headers.has(Ae.ETag))&&r.headers.get(Ae.ETag)===t)return;var a,i;yield(a=e.request,i=r,n(void 0,void 0,void 0,(function*(){let e="";const t=a.url;for(const s in $e.staleWhileRevalidate)if($e.staleWhileRevalidate.hasOwnProperty(s)){const n=$e.staleWhileRevalidate[s];if(n.routePattern.test(t)){e=n.cacheName;break}}const s={type:ke.RuntimeCacheUpdated,payload:{cacheName:e,requestUrl:t}},n=yield self.clients.matchAll({type:"window"});for(const e of n)e.postMessage(s);return i})))}}))}}class Qe{constructor(){this.fetchDidSucceed=e=>n(this,void 0,void 0,(function*(){return t={requestId:e.request.headers.get(Ae.XRequestId),requestUrl:e.request.url,responseStatusCode:e.response.status,responseReceivedTimeMs:Date.now()},n(void 0,void 0,void 0,(function*(){const e={type:ke.FetchSuccess,payload:t},s=yield self.clients.matchAll({type:"window"});for(const t of s)t.postMessage(e)})),e.response;var t}))}}var ze;self.addEventListener("activate",(()=>self.clients.claim())),Boolean(self.registration&&self.registration.navigationPreload)&&self.addEventListener("activate",(e=>{e.waitUntil(self.registration.navigationPreload.enable().then((()=>{})))})),self.addEventListener("message",(e=>{var t;(null===(t=e.data)||void 0===t?void 0:t.type)===Pe.SkipWaiting&&self.skipWaiting()})),self.addEventListener("install",(()=>{caches.open(Ge).then((e=>e.add(He)))})),(e=>{(e=>{for(const t of Object.keys(A))e(t)})((t=>{"string"==typeof e[t]&&(A[t]=e[t])}))})({prefix:Le.Nvapp,suffix:"v1",precache:"precache",runtime:"runtime"}),ze=[{"revision":"27da811419713779cc4465014484bdb5","url":"assets/hashed/Marquee_Hero_Image_Gradient_RTL.8f28b6a06d45d190.svg"},{"revision":"3f03b5fa3d228e924ff4ac0a034c0669","url":"assets/hashed/Marquee_Hero_Image_Gradient.97da07cc527f6200.svg"},{"revision":"12ae4e2b15bf63bdd0bee0e566406d4e","url":"assets/hashed/ootb-grd-driver-experience.ae47d97afbef711e.jpg"},{"revision":"7e3f662f6749edc71b6da17467a435de","url":"assets/hashed/ootb-grd-ops-experience.98c0923bd68cfd11.jpg"},{"revision":"0ae5aebe3b07774cda1a327116389696","url":"assets/hashed/ootb-nsd-ops-experience.7954f3c97e07a320.jpg"},{"revision":"bac9cb90eecb4da37b92392c7c51b2af","url":"assets/img/Asterisk_24.svg"},{"revision":"6b8f78367c9708038c6ab35ac8c6f1f8","url":"assets/img/auto_display_mode.svg"},{"revision":"79d8cdfa7dc5378d4f4f860460e197b9","url":"assets/img/avatar_generic_118.svg"},{"revision":"73b954a7a61afbefde4ea8989c09b035","url":"assets/img/badge_G-Sync_ultimate.svg"},{"revision":"9df87e26bd99abe8071117f140e537bc","url":"assets/img/badge_G-Sync.svg"},{"revision":"b51faff767cea403ca47a8a31b060f0c","url":"assets/img/DefaultGameArt.jpg"},{"revision":"36b83542342fc9f93475c6c1c80e9145","url":"assets/img/Deselect_All_24.svg"},{"revision":"e88711e9cfb0d2657f38ae09433b827c","url":"assets/img/display_Port.svg"},{"revision":"946d01c69c10e1a2e64b5693fcad0086","url":"assets/img/driver.svg"},{"revision":"8ef493ad2cef3d565e935fc23d5cb96a","url":"assets/img/DVI.svg"},{"revision":"23e67daa9984e922735f4ac05b57500f","url":"assets/img/fallback-app-icon.svg"},{"revision":"0dd5b31b18ece8a4637cca6b5b634dc9","url":"assets/img/fallback-hero-image.svg"},{"revision":"6a1dbadf01725b8bb135c820de7e21e4","url":"assets/img/HDMI.svg"},{"revision":"d06cf2a7f4f0d8541e92f213e25e0317","url":"assets/img/icon_laptop.svg"},{"revision":"d97382667ea17fd134e07dd617212108","url":"assets/img/icon_monitor.svg"},{"revision":"4e7b696df41521560edabc2a733f6924","url":"assets/img/icon_tv.svg"},{"revision":"a332fdfc26124ac93f8b873166364367","url":"assets/img/installation-billboard-fallback.svg"},{"revision":"90c5f3ed54011c49230fe4cfcb1d6b8a","url":"assets/img/landscape_flipped.svg"},{"revision":"37a3ddb8e23b684e7091bc54da799961","url":"assets/img/landscape.svg"},{"revision":"329c02901535d80687382963e5f8bafa","url":"assets/img/laptop_Display.svg"},{"revision":"2748df37b78383c846e384b04026ef08","url":"assets/img/lt_arrow.svg"},{"revision":"27da811419713779cc4465014484bdb5","url":"assets/img/Marquee_Hero_Image_Gradient_RTL.svg"},{"revision":"3f03b5fa3d228e924ff4ac0a034c0669","url":"assets/img/Marquee_Hero_Image_Gradient.svg"},{"revision":"143bf6a638b760eea349695ad3d37f4e","url":"assets/img/marquee-fallback.svg"},{"revision":"3dd884a23f47c56778ba4f94e051ed22","url":"assets/img/marquee-individual-fallback.svg"},{"revision":"dc896ef0a535cb2f0b77fd231fbd9ccd","url":"assets/img/More-Menu_32.svg"},{"revision":"c84070e1028b062a4000e38c1b9e690d","url":"assets/img/More-Menu-Hover_32.svg"},{"revision":"bee15e8b2dadb555695e7a81f1100f78","url":"assets/img/nv-gpu.svg"},{"revision":"79fa7c619fe4d7da78c55ad02baecd9e","url":"assets/img/nvapp-logo.svg"},{"revision":"897f63ea5db0847da9a14472b28cd31e","url":"assets/img/nvidia_symbol.svg"},{"revision":"12ae4e2b15bf63bdd0bee0e566406d4e","url":"assets/img/ootb-grd-driver-experience.jpg"},{"revision":"7e3f662f6749edc71b6da17467a435de","url":"assets/img/ootb-grd-ops-experience.jpg"},{"revision":"0ae5aebe3b07774cda1a327116389696","url":"assets/img/ootb-nsd-ops-experience.jpg"},{"revision":"96574f0c45fec73e0a7bd8467b909cb8","url":"assets/img/optimus.svg"},{"revision":"3e54f1855121785d179c62eaca9999b0","url":"assets/img/overlay.svg"},{"revision":"86fb459786f6e469590101eb88b2bd54","url":"assets/img/portrait_flipped.svg"},{"revision":"38f646a605bd5854539b26c80349b362","url":"assets/img/portrait.svg"},{"revision":"49a7916ef3c60329fba2069328e329f9","url":"assets/img/rewards_fallback.svg"},{"revision":"9e14cc6ce0e6fe2d1da2bb2f9830b88e","url":"assets/img/rewards_viewdetails_fallback.svg"},{"revision":"db3ddbf6e101dd0650a5acd6d60570aa","url":"assets/img/rt_arrow.svg"},{"revision":"9e226f86a9bcb12bb5ca0acd6f37dcc1","url":"assets/img/Select_All_24.svg"},{"revision":"8a9862c1e3abf53c91cb10c52ff63731","url":"assets/img/TV.svg"},{"revision":"0f0efb973f8357b60c7e70dec504b35f","url":"assets/img/USB.svg"},{"revision":"dbfcfd059854c73aeac548c234150219","url":"assets/img/VGA.svg"},{"revision":"0ce6f8be574bdb43c428221b31447ba0","url":"assets/img/wrench_icon.svg"},{"revision":"a37b0c01c0baf1888ca812cc0508f6e2","url":"assets/hashed/MaterialIcons-Regular.196fa4a92dd6fa73.ttf"},{"revision":"e79bfd88537def476913f3ed52f4f4b3","url":"assets/hashed/MaterialIcons-Regular.1e50f5c2ffa6aba4.eot"},{"revision":"570eb83859dc23dd0eec423a49e147fe","url":"assets/hashed/MaterialIcons-Regular.7ea2023eeca07427.woff2"},{"revision":"012cf6a10129e2275d79d6adac7f3b02","url":"assets/hashed/MaterialIcons-Regular.db852539204b1a34.woff"},{"revision":"3f0bf27b7cb915fa24715ee2bf5f136e","url":"assets/hashed/NVIDIASans_W_Bd.5aafff8b08f9a971.woff2"},{"revision":"7076cf63098b62ea9cb5589caf581107","url":"assets/hashed/NVIDIASans_W_Md.14ea224b997bf6e0.woff2"},{"revision":"6ada063defe18142a62c974db9bffa40","url":"assets/hashed/NVIDIASans_W_Rg.33fb51adcc625f4e.woff2"}],_e().precache(ze),function(e){const t=_e();qe(new De(t,e))}(undefined);for(const e in $e.staleWhileRevalidate)if($e.staleWhileRevalidate.hasOwnProperty(e)){const t=$e.staleWhileRevalidate[e];qe(t.routePattern,new xe({cacheName:t.cacheName,plugins:[new he(t.expiry),new Me,new Ve,new Qe]}))}for(const e in $e.networkFirst)if($e.networkFirst.hasOwnProperty(e)){const t=$e.networkFirst[e];qe(t.routePattern,new Ne({cacheName:t.cacheName,plugins:[new he(t.expiry)]}))}for(const e in $e.networkOnly)if($e.networkOnly.hasOwnProperty(e)){const t=$e.networkOnly[e];qe(t.routePattern,new Ie({plugins:[new L(t.cacheName,{maxRetentionTime:t.maxRetentionTime})]}),"POST")}qe(new class extends Ee{constructor(e,{allowlist:t=[/./],denylist:s=[]}={}){super((e=>this._match(e)),e),this._allowlist=t,this._denylist=s}_match({url:e,request:t}){if(t&&"navigate"!==t.mode)return!1;const s=e.pathname+e.search;for(const e of this._denylist)if(e.test(s))return!1;return!!this._allowlist.some((e=>e.test(s)))}}((e=>n(void 0,void 0,void 0,(function*(){try{return yield(new Ie).handle(e)}catch(e){const t=caches.match(He,{cacheName:Ge});if(t)return t}})))))})();
// SIG // Begin signature block
// SIG // MIIofQYJKoZIhvcNAQcCoIIobjCCKGoCAQExDzANBglg
// SIG // hkgBZQMEAgEFADB3BgorBgEEAYI3AgEEoGkwZzAyBgor
// SIG // BgEEAYI3AgEeMCQCAQEEEBDgyQbOONQRoqMAEEvTUJAC
// SIG // AQACAQACAQACAQACAQAwMTANBglghkgBZQMEAgEFAAQg
// SIG // sB55yV75nwtWbHIe+uCHuUEfzna6s9gHdC6rw+YgjWag
// SIG // gg20MIIGsDCCBJigAwIBAgIQCK1AsmDSnEyfXs2pvZOu
// SIG // 2TANBgkqhkiG9w0BAQwFADBiMQswCQYDVQQGEwJVUzEV
// SIG // MBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
// SIG // d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2Vy
// SIG // dCBUcnVzdGVkIFJvb3QgRzQwHhcNMjEwNDI5MDAwMDAw
// SIG // WhcNMzYwNDI4MjM1OTU5WjBpMQswCQYDVQQGEwJVUzEX
// SIG // MBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMT
// SIG // OERpZ2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBTaWduaW5n
// SIG // IFJTQTQwOTYgU0hBMzg0IDIwMjEgQ0ExMIICIjANBgkq
// SIG // hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1bQvQtAorXi3
// SIG // XdU5WRuxiEL1M4zrPYGXcMW7xIUmMJ+kjmjYXPXrNCQH
// SIG // 4UtP03hD9BfXHtr50tVnGlJPDqFX/IiZwZHMgQM+TXAk
// SIG // ZLON4gh9NH1MgFcSa0OamfLFOx/y78tHWhOmTLMBICXz
// SIG // ENOLsvsI8IrgnQnAZaf6mIBJNYc9URnokCF4RS6hnyzh
// SIG // GMIazMXuk0lwQjKP+8bqHPNlaJGiTUyCEUhSaN4QvRRX
// SIG // XegYE2XFf7JPhSxIpFaENdb5LpyqABXRN/4aBpTCfMjq
// SIG // GzLmysL0p6MDDnSlrzm2q2AS4+jWufcx4dyt5Big2MEj
// SIG // R0ezoQ9uo6ttmAaDG7dqZy3SvUQakhCBj7A7CdfHmzJa
// SIG // wv9qYFSLScGT7eG0XOBv6yb5jNWy+TgQ5urOkfW+0/tv
// SIG // k2E0XLyTRSiDNipmKF+wc86LJiUGsoPUXPYVGUztYuBe
// SIG // M/Lo6OwKp7ADK5GyNnm+960IHnWmZcy740hQ83eRGv7b
// SIG // UKJGyGFYmPV8AhY8gyitOYbs1LcNU9D4R+Z1MI3sMJN2
// SIG // FKZbS110YU0/EpF23r9Yy3IQKUHw1cVtJnZoEUETWJrc
// SIG // JisB9IlNWdt4z4FKPkBHX8mBUHOFECMhWWCKZFTBzCEa
// SIG // 6DgZfGYczXg4RTCZT/9jT0y7qg0IU0F8WD1Hs/q27Iwy
// SIG // CQLMbDwMVhECAwEAAaOCAVkwggFVMBIGA1UdEwEB/wQI
// SIG // MAYBAf8CAQAwHQYDVR0OBBYEFGg34Ou2O/hfEYb7/mF7
// SIG // CIhl9E5CMB8GA1UdIwQYMBaAFOzX44LScV1kTN8uZz/n
// SIG // upiuHA9PMA4GA1UdDwEB/wQEAwIBhjATBgNVHSUEDDAK
// SIG // BggrBgEFBQcDAzB3BggrBgEFBQcBAQRrMGkwJAYIKwYB
// SIG // BQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBB
// SIG // BggrBgEFBQcwAoY1aHR0cDovL2NhY2VydHMuZGlnaWNl
// SIG // cnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZFJvb3RHNC5jcnQw
// SIG // QwYDVR0fBDwwOjA4oDagNIYyaHR0cDovL2NybDMuZGln
// SIG // aWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZFJvb3RHNC5j
// SIG // cmwwHAYDVR0gBBUwEzAHBgVngQwBAzAIBgZngQwBBAEw
// SIG // DQYJKoZIhvcNAQEMBQADggIBADojRD2NCHbuj7w6mdNW
// SIG // 4AIapfhINPMstuZ0ZveUcrEAyq9sMCcTEp6QRJ9L/Z6j
// SIG // fCbVN7w6XUhtldU/SfQnuxaBRVD9nL22heB2fjdxyyL3
// SIG // WqqQz/WTauPrINHVUHmImoqKwba9oUgYftzYgBoRGRjN
// SIG // YZmBVvbJ43bnxOQbX0P4PpT/djk9ntSZz0rdKOtfJqGV
// SIG // WEjVGv7XJz/9kNF2ht0csGBc8w2o7uCJob054ThO2m67
// SIG // Np375SFTWsPK6Wrxoj7bQ7gzyE84FJKZ9d3OVG3ZXQIU
// SIG // H0AzfAPilbLCIXVzUstG2MQ0HKKlS43Nb3Y3LIU/Gs4m
// SIG // 6Ri+kAewQ3+ViCCCcPDMyu/9KTVcH4k4Vfc3iosJocsL
// SIG // 6TEa/y4ZXDlx4b6cpwoG1iZnt5LmTl/eeqxJzy6kdJKt
// SIG // 2zyknIYf48FWGysj/4+16oh7cGvmoLr9Oj9FpsToFpFS
// SIG // i0HASIRLlk2rREDjjfAVKM7t8RhWByovEMQMCGQ8M4+u
// SIG // KIw8y4+ICw2/O/TOHnuO77Xry7fwdxPm5yg/rBKupS8i
// SIG // bEH5glwVZsxsDsrFhsP2JjMMB0ug0wcCampAMEhLNKhR
// SIG // ILutG4UI4lkNbcoFUCvqShyepf2gpx8GdOfy1lKQ/a+F
// SIG // SCH5Vzu0nAPthkX0tGFuv2jiJmCG6sivqf6UHedjGzqG
// SIG // VnhOMIIG/DCCBOSgAwIBAgIQCZfFbKpZBVOU2anNuL7r
// SIG // VjANBgkqhkiG9w0BAQsFADBpMQswCQYDVQQGEwJVUzEX
// SIG // MBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMT
// SIG // OERpZ2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBTaWduaW5n
// SIG // IFJTQTQwOTYgU0hBMzg0IDIwMjEgQ0ExMB4XDTIzMDEx
// SIG // MzAwMDAwMFoXDTI2MDExNjIzNTk1OVowgYAxCzAJBgNV
// SIG // BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRQwEgYD
// SIG // VQQHEwtTYW50YSBDbGFyYTEbMBkGA1UEChMSTlZJRElB
// SIG // IENvcnBvcmF0aW9uMQwwCgYDVQQLEwMyLUoxGzAZBgNV
// SIG // BAMTEk5WSURJQSBDb3Jwb3JhdGlvbjCCAaIwDQYJKoZI
// SIG // hvcNAQEBBQADggGPADCCAYoCggGBAIiAXRBzCNRy05OZ
// SIG // NUtJguKdJ1R5HNatdvXtn+pWXHg9PfhU9A5ZboWwSPej
// SIG // iZxJn9clYWVpyjPbkkFvaTBLYeHArmzswavs7+bct4df
// SIG // BTBZG8Qmc9kusaaOxNnuUevseGAC5H61QsGOVATdRQfS
// SIG // kfaP7kTBF9wuIat7BXVglPAlZagQTZWA/BA4Vr8GeNVY
// SIG // 5jU2C6F907UM6orsfsVfkBI8HSowD1U/faTS1yMBu1Mx
// SIG // ePUKZosFn2tYE4dUWId/Vv6LKWk30e/63C5Ul9e3eY7x
// SIG // aZ4eC0TqxluMWb2XdvCcfw9dELeI+0suWliFIyCgSf3A
// SIG // Kuq9cXnoMOBoPEeBOr3XWfCCNLxf9RcGxyaNPd1KcTOO
// SIG // ErSJMFpOCnVi5kys2NrTrFMFVZiRC49BidetoT6cHt3Z
// SIG // f+VHR3rqdUbo4xSpuvsfNA4GRYcWI2KvY3T6hBlrgTlr
// SIG // ngfA3ztOn+38KGJavEa7iJ+k/kjjnD47t0qQoRiujBi+
// SIG // q+mv6Hgy/g0VeQIDAQABo4ICBjCCAgIwHwYDVR0jBBgw
// SIG // FoAUaDfg67Y7+F8Rhvv+YXsIiGX0TkIwHQYDVR0OBBYE
// SIG // FL5vQA7WEARmpu0ItwJOm7f48LbRMA4GA1UdDwEB/wQE
// SIG // AwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzCBtQYDVR0f
// SIG // BIGtMIGqMFOgUaBPhk1odHRwOi8vY3JsMy5kaWdpY2Vy
// SIG // dC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2lnbmlu
// SIG // Z1JTQTQwOTZTSEEzODQyMDIxQ0ExLmNybDBToFGgT4ZN
// SIG // aHR0cDovL2NybDQuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0
// SIG // VHJ1c3RlZEc0Q29kZVNpZ25pbmdSU0E0MDk2U0hBMzg0
// SIG // MjAyMUNBMS5jcmwwPgYDVR0gBDcwNTAzBgZngQwBBAEw
// SIG // KTAnBggrBgEFBQcCARYbaHR0cDovL3d3dy5kaWdpY2Vy
// SIG // dC5jb20vQ1BTMIGUBggrBgEFBQcBAQSBhzCBhDAkBggr
// SIG // BgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29t
// SIG // MFwGCCsGAQUFBzAChlBodHRwOi8vY2FjZXJ0cy5kaWdp
// SIG // Y2VydC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2ln
// SIG // bmluZ1JTQTQwOTZTSEEzODQyMDIxQ0ExLmNydDAMBgNV
// SIG // HRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4ICAQBNa3En
// SIG // raaMqv58RZV1qn0K09tv83qxwHaM6/N40w2fMljnGOxS
// SIG // xR1g0+R26S7XtwpzG+b8LWmWmyJKiZIogVkcfZpchS6B
// SIG // x+9HcUSo7TBBJn4ylcpQzksLOCmT6/DSeIDYucyQiHo8
// SIG // Nq3XkLpkJaDETnCBDulYZ+9pavQT4lNpB6sffbjsDcQ7
// SIG // CZQdImdzyNwd81c56xZc05ufVkronW78r35vwhzuNd88
// SIG // YQXr26fClBEXf3cNvytVupOeHZTy0Od+tPnAPl5744un
// SIG // 0f1MDjiKRne5FqDoo2F4EoeJQuaS6tWcFQg55dOEmOwS
// SIG // E8mweLCWDTTWmZV6x0IGHwagde1S5rkkmxpvAZRUkaD/
// SIG // ZTyxDiHywNi981mFvCnS1gKGd8GpqDuChpKAet8ivgB3
// SIG // 8hVTE/jsstKwQL7HNGxlmk7hyFxkbUNXki2gwJ/CSGaQ
// SIG // qqS3ctjF5Vv8mbtH2f3pK3AFaXOW7wDfjeuqF+yh6UxT
// SIG // ockgH6Ggc4tj+rcrwWhnbgu+JljlBbSKtGiEXMjA9Ccg
// SIG // YsbOIS9T1/FRAOW4KzCaG2FaX5eIhnCqXl79Va2OV8ul
// SIG // IgIbn1XaQQk6RvNPIwZzM8TARUTR9d1edtiuOymxDYm6
// SIG // j16TmoLkXlWUGLj05+yKut6rkqmYCqCJHRHD0T7LXUmw
// SIG // eBMWDQ5e0t8ADV8KGzGCGiEwghodAgEBMH0waTELMAkG
// SIG // A1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMu
// SIG // MUEwPwYDVQQDEzhEaWdpQ2VydCBUcnVzdGVkIEc0IENv
// SIG // ZGUgU2lnbmluZyBSU0E0MDk2IFNIQTM4NCAyMDIxIENB
// SIG // MQIQCZfFbKpZBVOU2anNuL7rVjANBglghkgBZQMEAgEF
// SIG // AKB8MBAGCisGAQQBgjcCAQwxAjAAMBkGCSqGSIb3DQEJ
// SIG // AzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsxDjAM
// SIG // BgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCDzlRHX
// SIG // KFCMO7oPKa8Tu3WFr3YnmSmMnhM+Ju5RfwX9HjANBgkq
// SIG // hkiG9w0BAQEFAASCAYBg3+U3IAwyqosh/ykhfkjvL75S
// SIG // ZW/MBCOULG+JFU7GDSUNm994H9MSJMMHaa2ixixniTwo
// SIG // 1VCbxf0jEagbHEiLZQAheu6fKcWtvEfHyxceAQkHlfQ2
// SIG // 7q3LSbUvZDlYe5xy/vSSpWG81G5sMoOsPM1hWLB05UbE
// SIG // U7yhkHQGZe7qxnxWNMVW5aUAArAekKiEHRgwQfUDr6EW
// SIG // +3QoaXZAq7SE19v9l4aSPejhrxQkr9jLZgTucLhjoeI2
// SIG // pLb6lwvPo5oEtJmjtQf8UVdFLgJZIY5o3ZuGPuXCxzX8
// SIG // E/Z5sje/Eka/bzfB6tO7eBnutrrcWhKEuQj/h+qznZYc
// SIG // 8qvU6k3uwkO8VV+tMiNWC0ixdDMnUo6dV3xoIhg0jNHb
// SIG // o8iSalHw+IEW2wuqqLR7fgApuH0vIxWIw4cgI0zNOnhW
// SIG // bSHRCji/U440UFEMuqwCUbizwRvwJSznwhL7Y73NTYtc
// SIG // Ro2MyztvK3hQJ2sqXdUlq6CT1DHixzm3+ZZiQDeZzAMZ
// SIG // J76hghd3MIIXcwYKKwYBBAGCNwMDATGCF2MwghdfBgkq
// SIG // hkiG9w0BBwKgghdQMIIXTAIBAzEPMA0GCWCGSAFlAwQC
// SIG // AQUAMHgGCyqGSIb3DQEJEAEEoGkEZzBlAgEBBglghkgB
// SIG // hv1sBwEwMTANBglghkgBZQMEAgEFAAQgYUptwxjSrSce
// SIG // dy10CfNgX3OMJMVu2bvF43LKY1K/f88CEQCHg6r8J59p
// SIG // Rq6oN5nmUKWDGA8yMDI1MTAxNTIyMjEwOVqgghM6MIIG
// SIG // 7TCCBNWgAwIBAgIQCoDvGEuN8QWC0cR2p5V0aDANBgkq
// SIG // hkiG9w0BAQsFADBpMQswCQYDVQQGEwJVUzEXMBUGA1UE
// SIG // ChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMTOERpZ2lD
// SIG // ZXJ0IFRydXN0ZWQgRzQgVGltZVN0YW1waW5nIFJTQTQw
// SIG // OTYgU0hBMjU2IDIwMjUgQ0ExMB4XDTI1MDYwNDAwMDAw
// SIG // MFoXDTM2MDkwMzIzNTk1OVowYzELMAkGA1UEBhMCVVMx
// SIG // FzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMTswOQYDVQQD
// SIG // EzJEaWdpQ2VydCBTSEEyNTYgUlNBNDA5NiBUaW1lc3Rh
// SIG // bXAgUmVzcG9uZGVyIDIwMjUgMTCCAiIwDQYJKoZIhvcN
// SIG // AQEBBQADggIPADCCAgoCggIBANBGrC0Sxp7Q6q5gVrMr
// SIG // V7pvUf+GcAoB38o3zBlCMGMyqJnfFNZx+wvA69HFTBdw
// SIG // bHwBSOeLpvPnZ8ZN+vo8dE2/pPvOx/Vj8TchTySA2R4Q
// SIG // KpVD7dvNZh6wW2R6kSu9RJt/4QhguSssp3qome7MrxVy
// SIG // fQO9sMx6ZAWjFDYOzDi8SOhPUWlLnh00Cll8pjrUcCV3
// SIG // K3E0zz09ldQ//nBZZREr4h/GI6Dxb2UoyrN0ijtUDVHR
// SIG // XdmncOOMA3CoB/iUSROUINDT98oksouTMYFOnHoRh6+8
// SIG // 6Ltc5zjPKHW5KqCvpSduSwhwUmotuQhcg9tw2YD3w6yS
// SIG // SSu+3qU8DD+nigNJFmt6LAHvH3KSuNLoZLc1Hf2JNMVL
// SIG // 4Q1OpbybpMe46YceNA0LfNsnqcnpJeItK/DhKbPxTTuG
// SIG // oX7wJNdoRORVbPR1VVnDuSeHVZlc4seAO+6d2sC26/PQ
// SIG // PdP51ho1zBp+xUIZkpSFA8vWdoUoHLWnqWU3dCCyFG1r
// SIG // oSrgHjSHlq8xymLnjCbSLZ49kPmk8iyyizNDIXj//cOg
// SIG // rY7rlRyTlaCCfw7aSUROwnu7zER6EaJ+AliL7ojTdS5P
// SIG // WPsWeupWs7NpChUk555K096V1hE0yZIXe+giAwW00aHz
// SIG // rDchIc2bQhpp0IoKRR7YufAkprxMiXAJQ1XCmnCfgPf8
// SIG // +3mnAgMBAAGjggGVMIIBkTAMBgNVHRMBAf8EAjAAMB0G
// SIG // A1UdDgQWBBTkO/zyMe39/dfzkXFjGVBDz2GM6DAfBgNV
// SIG // HSMEGDAWgBTvb1NK6eQGfHrK4pBW9i/USezLTjAOBgNV
// SIG // HQ8BAf8EBAMCB4AwFgYDVR0lAQH/BAwwCgYIKwYBBQUH
// SIG // AwgwgZUGCCsGAQUFBwEBBIGIMIGFMCQGCCsGAQUFBzAB
// SIG // hhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wXQYIKwYB
// SIG // BQUHMAKGUWh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNv
// SIG // bS9EaWdpQ2VydFRydXN0ZWRHNFRpbWVTdGFtcGluZ1JT
// SIG // QTQwOTZTSEEyNTYyMDI1Q0ExLmNydDBfBgNVHR8EWDBW
// SIG // MFSgUqBQhk5odHRwOi8vY3JsMy5kaWdpY2VydC5jb20v
// SIG // RGlnaUNlcnRUcnVzdGVkRzRUaW1lU3RhbXBpbmdSU0E0
// SIG // MDk2U0hBMjU2MjAyNUNBMS5jcmwwIAYDVR0gBBkwFzAI
// SIG // BgZngQwBBAIwCwYJYIZIAYb9bAcBMA0GCSqGSIb3DQEB
// SIG // CwUAA4ICAQBlKq3xHCcEua5gQezRCESeY0ByIfjk9iJP
// SIG // 2zWLpQq1b4URGnwWBdEZD9gBq9fNaNmFj6Eh8/YmRDfx
// SIG // T7C0k8FUFqNh+tshgb4O6Lgjg8K8elC4+oWCqnU/ML9l
// SIG // Ffim8/9yJmZSe2F8AQ/UdKFOtj7YMTmqPO9mzskgiC3Q
// SIG // YIUP2S3HQvHG1FDu+WUqW4daIqToXFE/JQ/EABgfZXLW
// SIG // U0ziTN6R3ygQBHMUBaB5bdrPbF6MRYs03h4obEMnxYOX
// SIG // 8VBRKe1uNnzQVTeLni2nHkX/QqvXnNb+YkDFkxUGtMTa
// SIG // iLR9wjxUxu2hECZpqyU1d0IbX6Wq8/gVutDojBIFeRlq
// SIG // AcuEVT0cKsb+zJNEsuEB7O7/cuvTQasnM9AWcIQfVjnz
// SIG // rvwiCZ85EE8LUkqRhoS3Y50OHgaY7T/lwd6UArb+BOVA
// SIG // kg2oOvol/DJgddJ35XTxfUlQ+8Hggt8l2Yv7roancJIF
// SIG // cbojBcxlRcGG0LIhp6GvReQGgMgYxQbV1S3CrWqZzBt1
// SIG // R9xJgKf47CdxVRd/ndUlQ05oxYy2zRWVFjF7mcr4C34M
// SIG // j3ocCVccAvlKV9jEnstrniLvUxxVZE/rptb7IRE2lskK
// SIG // PIJgbaP5t2nGj/ULLi49xTcBZU8atufk+EMF/cWuiC7P
// SIG // OGT75qaL6vdCvHlshtjdNXOCIUjsarfNZzCCBrQwggSc
// SIG // oAMCAQICEA3HrFcF/yGZLkBDIgw6SYYwDQYJKoZIhvcN
// SIG // AQELBQAwYjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERp
// SIG // Z2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0
// SIG // LmNvbTEhMB8GA1UEAxMYRGlnaUNlcnQgVHJ1c3RlZCBS
// SIG // b290IEc0MB4XDTI1MDUwNzAwMDAwMFoXDTM4MDExNDIz
// SIG // NTk1OVowaTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRp
// SIG // Z2lDZXJ0LCBJbmMuMUEwPwYDVQQDEzhEaWdpQ2VydCBU
// SIG // cnVzdGVkIEc0IFRpbWVTdGFtcGluZyBSU0E0MDk2IFNI
// SIG // QTI1NiAyMDI1IENBMTCCAiIwDQYJKoZIhvcNAQEBBQAD
// SIG // ggIPADCCAgoCggIBALR4MdMKmEFyvjxGwBysddujRmh0
// SIG // tFEXnU2tjQ2UtZmWgyxU7UNqEY81FzJsQqr5G7A6c+Gh
// SIG // /qm8Xi4aPCOo2N8S9SLrC6Kbltqn7SWCWgzbNfiR+2fk
// SIG // HUiljNOqnIVD/gG3SYDEAd4dg2dDGpeZGKe+42DFUF0m
// SIG // R/vtLa4+gKPsYfwEu7EEbkC9+0F2w4QJLVSTEG8yAR2C
// SIG // QWIM1iI5PHg62IVwxKSpO0XaF9DPfNBKS7Zazch8NF5v
// SIG // p7eaZ2CVNxpqumzTCNSOxm+SAWSuIr21Qomb+zzQWKhx
// SIG // KTVVgtmUPAW35xUUFREmDrMxSNlr/NsJyUXzdtFUUt4a
// SIG // S4CEeIY8y9IaaGBpPNXKFifinT7zL2gdFpBP9qh8SdLn
// SIG // Eut/GcalNeJQ55IuwnKCgs+nrpuQNfVmUB5KlCX3ZA4x
// SIG // 5HHKS+rqBvKWxdCyQEEGcbLe1b8Aw4wJkhU1JrPsFfxW
// SIG // 1gaou30yZ46t4Y9F20HHfIY4/6vHespYMQmUiote8lad
// SIG // jS/nJ0+k6MvqzfpzPDOy5y6gqztiT96Fv/9bH7mQyogx
// SIG // G9QEPHrPV6/7umw052AkyiLA6tQbZl1KhBtTasySkuJD
// SIG // psZGKdlsjg4u70EwgWbVRSX1Wd4+zoFpp4Ra+MlKM2ba
// SIG // oD6x0VR4RjSpWM8o5a6D8bpfm4CLKczsG7ZrIGNTAgMB
// SIG // AAGjggFdMIIBWTASBgNVHRMBAf8ECDAGAQH/AgEAMB0G
// SIG // A1UdDgQWBBTvb1NK6eQGfHrK4pBW9i/USezLTjAfBgNV
// SIG // HSMEGDAWgBTs1+OC0nFdZEzfLmc/57qYrhwPTzAOBgNV
// SIG // HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwgw
// SIG // dwYIKwYBBQUHAQEEazBpMCQGCCsGAQUFBzABhhhodHRw
// SIG // Oi8vb2NzcC5kaWdpY2VydC5jb20wQQYIKwYBBQUHMAKG
// SIG // NWh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdp
// SIG // Q2VydFRydXN0ZWRSb290RzQuY3J0MEMGA1UdHwQ8MDow
// SIG // OKA2oDSGMmh0dHA6Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9E
// SIG // aWdpQ2VydFRydXN0ZWRSb290RzQuY3JsMCAGA1UdIAQZ
// SIG // MBcwCAYGZ4EMAQQCMAsGCWCGSAGG/WwHATANBgkqhkiG
// SIG // 9w0BAQsFAAOCAgEAF877FoAc/gc9EXZxML2+C8i1NKZ/
// SIG // zdCHxYgaMH9Pw5tcBnPw6O6FTGNpoV2V4wzSUGvI9NAz
// SIG // aoQk97frPBtIj+ZLzdp+yXdhOP4hCFATuNT+ReOPK0mC
// SIG // efSG+tXqGpYZ3essBS3q8nL2UwM+NMvEuBd/2vmdYxDC
// SIG // vwzJv2sRUoKEfJ+nN57mQfQXwcAEGCvRR2qKtntujB71
// SIG // WPYAgwPyWLKu6RnaID/B0ba2H3LUiwDRAXx1Neq9ydOa
// SIG // l95CHfmTnM4I+ZI2rVQfjXQA1WSjjf4J2a7jLzWGNqNX
// SIG // +DF0SQzHU0pTi4dBwp9nEC8EAqoxW6q17r0z0noDjs6+
// SIG // BFo+z7bKSBwZXTRNivYuve3L2oiKNqetRHdqfMTCW/Nm
// SIG // KLJ9M+MtucVGyOxiDf06VXxyKkOirv6o02OoXN4bFzK0
// SIG // vlNMsvhlqgF2puE6FndlENSmE+9JGYxOGLS/D284NHNb
// SIG // oDGcmWXfwXRy4kbu4QFhOm0xJuF2EZAOk5eCkhSxZON3
// SIG // rGlHqhpB/8MluDezooIs8CVnrpHMiD2wL40mm53+/j7t
// SIG // FaxYKIqL0Q4ssd8xHZnIn/7GELH3IdvG2XlM9q7WP/Uw
// SIG // gOkw/HQtyRN62JK4S1C8uw3PdBunvAZapsiI5YKdvlar
// SIG // Evf8EA+8hcpSM9LHJmyrxaFtoza2zNaQ9k+5t1wwggWN
// SIG // MIIEdaADAgECAhAOmxiO+dAt5+/bUOIIQBhaMA0GCSqG
// SIG // SIb3DQEBDAUAMGUxCzAJBgNVBAYTAlVTMRUwEwYDVQQK
// SIG // EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdp
// SIG // Y2VydC5jb20xJDAiBgNVBAMTG0RpZ2lDZXJ0IEFzc3Vy
// SIG // ZWQgSUQgUm9vdCBDQTAeFw0yMjA4MDEwMDAwMDBaFw0z
// SIG // MTExMDkyMzU5NTlaMGIxCzAJBgNVBAYTAlVTMRUwEwYD
// SIG // VQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5k
// SIG // aWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lDZXJ0IFRy
// SIG // dXN0ZWQgUm9vdCBHNDCCAiIwDQYJKoZIhvcNAQEBBQAD
// SIG // ggIPADCCAgoCggIBAL/mkHNo3rvkXUo8MCIwaTPswqcl
// SIG // LskhPfKK2FnC4SmnPVirdprNrnsbhA3EMB/zG6Q4FutW
// SIG // xpdtHauyefLKEdLkX9YFPFIPUh/GnhWlfr6fqVcWWVVy
// SIG // r2iTcMKyunWZanMylNEQRBAu34LzB4TmdDttceItDBvu
// SIG // INXJIB1jKS3O7F5OyJP4IWGbNOsFxl7sWxq868nPzaw0
// SIG // QF+xembud8hIqGZXV59UWI4MK7dPpzDZVu7Ke13jrclP
// SIG // XuU15zHL2pNe3I6PgNq2kZhAkHnDeMe2scS1ahg4AxCN
// SIG // 2NQ3pC4FfYj1gj4QkXCrVYJBMtfbBHMqbpEBfCFM1Lyu
// SIG // GwN1XXhm2ToxRJozQL8I11pJpMLmqaBn3aQnvKFPObUR
// SIG // WBf3JFxGj2T3wWmIdph2PVldQnaHiZdpekjw4KISG2aa
// SIG // dMreSx7nDmOu5tTvkpI6nj3cAORFJYm2mkQZK37AlLTS
// SIG // YW3rM9nF30sEAMx9HJXDj/chsrIRt7t/8tWMcCxBYKqx
// SIG // YxhElRp2Yn72gLD76GSmM9GJB+G9t+ZDpBi4pncB4Q+U
// SIG // DCEdslQpJYls5Q5SUUd0viastkF13nqsX40/ybzTQRES
// SIG // W+UQUOsxxcpyFiIJ33xMdT9j7CFfxCBRa2+xq4aLT8LW
// SIG // RV+dIPyhHsXAj6KxfgommfXkaS+YHS312amyHeUbAgMB
// SIG // AAGjggE6MIIBNjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud
// SIG // DgQWBBTs1+OC0nFdZEzfLmc/57qYrhwPTzAfBgNVHSME
// SIG // GDAWgBRF66Kv9JLLgjEtUYunpyGd823IDzAOBgNVHQ8B
// SIG // Af8EBAMCAYYweQYIKwYBBQUHAQEEbTBrMCQGCCsGAQUF
// SIG // BzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYI
// SIG // KwYBBQUHMAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0
// SIG // LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcnQw
// SIG // RQYDVR0fBD4wPDA6oDigNoY0aHR0cDovL2NybDMuZGln
// SIG // aWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENB
// SIG // LmNybDARBgNVHSAECjAIMAYGBFUdIAAwDQYJKoZIhvcN
// SIG // AQEMBQADggEBAHCgv0NcVec4X6CjdBs9thbX979XB72a
// SIG // rKGHLOyFXqkauyL4hxppVCLtpIh3bb0aFPQTSnovLbc4
// SIG // 7/T/gLn4offyct4kvFIDyE7QKt76LVbP+fT3rDB6mouy
// SIG // XtTP0UNEm0Mh65ZyoUi0mcudT6cGAxN3J0TU53/oWajw
// SIG // vy8LpunyNDzs9wPHh6jSTEAZNUZqaVSwuKFWjuyk1T3o
// SIG // sdz9HNj0d1pcVIxv76FQPfx2CWiEn2/K2yCNNWAcAgPL
// SIG // ILCsWKAOQGPFmCLBsln1VWvPJ6tsds5vIy30fnFqI2si
// SIG // /xK4VC0nftg62fC2h5b9W9FcrBjDTZ9ztwGpn1eqXiji
// SIG // uZQxggN8MIIDeAIBATB9MGkxCzAJBgNVBAYTAlVTMRcw
// SIG // FQYDVQQKEw5EaWdpQ2VydCwgSW5jLjFBMD8GA1UEAxM4
// SIG // RGlnaUNlcnQgVHJ1c3RlZCBHNCBUaW1lU3RhbXBpbmcg
// SIG // UlNBNDA5NiBTSEEyNTYgMjAyNSBDQTECEAqA7xhLjfEF
// SIG // gtHEdqeVdGgwDQYJYIZIAWUDBAIBBQCggdEwGgYJKoZI
// SIG // hvcNAQkDMQ0GCyqGSIb3DQEJEAEEMBwGCSqGSIb3DQEJ
// SIG // BTEPFw0yNTEwMTUyMjIxMDlaMCsGCyqGSIb3DQEJEAIM
// SIG // MRwwGjAYMBYEFN1iMKyGCi0wa9o4sWh5UjAH+0F+MC8G
// SIG // CSqGSIb3DQEJBDEiBCC3hHjT+UHqZ3AgCCL2lP5YhEPq
// SIG // NptI1LRbdKg8IE3x8jA3BgsqhkiG9w0BCRACLzEoMCYw
// SIG // JDAiBCBKoD+iLNdchMVck4+CjmdrnK7Ksz/jbSaaozTx
// SIG // RhEKMzANBgkqhkiG9w0BAQEFAASCAgB6M6K4xiHembS3
// SIG // MkZugaB5rm1fG7LnwrpOGFwU8cBzcYy7iU14mmNHJOTl
// SIG // GbMlX53O65cy2O9R3/h3n8z+GXrKOALieiJM54rXeSDE
// SIG // Mq42ptG7klNvLOYatFXoyPJVBWMxXdI9Kn6FY6m3/Nrq
// SIG // lc8hOPKT4R+KxZrjfgbffQqGE7ra0kFEOekFGtdaQYnN
// SIG // n0umH81SXwObaistXrO64Cdo7lmyeXJEqxRTXpFUeJ3x
// SIG // NKLmLu13QOu4AEPm7tWTG78ola/+gyNgPkLcoCE+h8Wd
// SIG // gAIj+a2BxffJds4GL/LhcI1tHMS4sVhosequNuQClRQt
// SIG // dbzwaoUERG8DICuJaW+zphoE8UtN9J7UCCbU8NKTTgKl
// SIG // zzfpX75UXP0bOYTGcvOL1yKfTVNBxQB2TcJpKPa+jVbS
// SIG // 2qFTV50t+OBDM/EwK/CaFq64i2NBZBXcqKwi8IpT+TYF
// SIG // eSLzrrX5tqyXTSMW9fOvvsDVnKdtOr5cuMyJ77nJainY
// SIG // pVxWnCAcRecnyHoCWOp3GuwrVIW6EsDuLnxc1E/XOMQM
// SIG // EyO6ET91Jb9g8ZHkF74UevtMG0Pj1Yk5+P6oUd9Q2tzF
// SIG // xbgWiMQJXx9ZYy9Vel0a0IP5Em3sLvq6T0BJZ3d2Lgmr
// SIG // D2WLGWy6vIrzke82IY2BtgBPCrt+cYLQ/9TU9j5zNMNw
// SIG // qwAhZtxTlw==
// SIG // End signature block