Wed. Jan 19th, 2022
Spread the love


There are many benefits of organizing; at its most basic, establishing organizational systems can help to reduce stress. Being organized will also save you time and money, and free up valuable storage space in your home or workplace. (It can also be really pretty — just check out Target’s new Brightroom collection.) At CNN Underscored, our goal is to guide you to the everyday products and services that help you live a smarter, simpler and more fulfilling life, and we believe that organizing is a critical part of that mission.

Our goal is to help you organize any of the physical and digital spaces in your life — a closet, the kitchen, your home office. To inform this collection of articles, we sought out professional organizers, homemakers and time management experts to find the best products for organizing any type of space or thing, and to bring you their best tips and tricks for living an organized life.

If oddly placed outlets mean that you have to leave your phone on the floor while it charges, an outlet shelf will give you a perfect spot to store smaller items while plugged in.

The Container Store

The trick to making divided storage solutions work is to look for ones that are adjustable so that you can tailor the organizer to fit your specific needs. This organizer will keep food storage lids tidy, and its five adjustable dividers can hold round, rectangular and square container lids up to 9 inches in length or diameter.

iStock

This clear plastic turntable is small enough to grab from the fridge and place right on the table at dinnertime, so your family can easily choose their favorite condiments.

iStock

Vertical wall space is also a great spot to install a wall-mounted hair dryer holder. This inexpensive holster-style caddy uses 3M’s Command adhesive strips to secure the unit to the wall, so no hardware is required for installation and it won’t damage the walls.

iStock

The fabric organizer has six pockets that can hold tablets, planners, remotes, eyeglasses, chargers and more, keeping them tucked away but still within arm’s reach.

iStock

If you’re a person who tends to have a big stack of books on your bedside table — where they take up valuable real estate that’s needed for a box of tissues, eyeglasses, remotes, etc. — a wall-mounted floating bookshelf will be a life- and space-saver for you.

The Container Store

Monitor stands, too, can create extra vertical space on the desk itself — models that have built-in cubbyholes or drawers offer more storage than simple shelf-style designs.

iStock

This clip-on headset and headphone holder attaches to the side of a desk, keeping headphones out of the way but still right there when you need them.

iStock

These zippered storage boxes help store off-season clothing or extra bedding, plus they’re soft-sided, making them more flexible than hard plastic bins, but they zip fully shut to keep dirt, dust and hair out.

iStock

Typically, dorm beds don’t come with a bedside table, and most rooms aren’t set up to accommodate one. This caddy helps solve that problem.

iStock

Both the hook and the shoulders of slim hangers are slimmer than standard hangers, so they truly do maximize closet space. And, unlike plastic hangers, most slim hangers are covered in a nonslip velvet so delicate items like silk blouses stay put rather than sliding off the hanger and getting rumpled — or worse, ending up on the closet floor with your shoes.

Amazon

This three-tier shoe rack will give you a lot of room for storing shoes in a way that keeps them easily accessible.

20 products under $25 that help organize your bags and luggage

Amazon

This hanging purse organizer borrows from those hanging shoe organizers that are so ubiquitous. We like this style because it doesn’t have any plastic detailing, so it’s more breathable than other similar fabrications.

Amazon

This wallet is roomy enough not only for a passport but also for boarding passes and other travel documents, and it comes in a ton of colors.

iStock

This product works with economy-size liquid laundry detergent to keep drips and spills from making a huge mess.

20 products under $25 that help organize your basement and attic

iStock

The attic is prime real estate for storing holiday decorations during the offseason. There are loads of holiday ornament storage options available, but the small footprint of this cube-style zippered ornament organizer — which can hold up to 64 ornaments — means it won’t take up a ton of space.

iStock

This tool organizer can hold long-handled items like mops, brooms, rakes, grabbers in the spring-loaded gripper clamps, and the four small hooks can be used to store smaller items like scrub brushes and dustpans.

iStock

This golf bag storage rack has cubbies for stashing two golf bags, plus four open shelves to hold golf shoes, towels or a bucket of balls.

20 products under $25 to keep your car clean and organized

Amazon

One of the most effective things you can do is to establish a place for trash to go, so that it doesn’t go on the floor. This hanging trash can that’s designed to fit on a car’s center console does just that.

(function(){
  function addScript({ async, defer, name, src, ucStates, id, data }) {
    try {
      if (src && typeof src === 'string') {
        if (ucStates && ucStates.length) {
          WM.UserConsent.addScript({ src, async, defer }, ucStates);
        } else {
          const script = document.createElement('script');
          script.src = src;
          script.dataset.uid = name;
          script.async = async;
          script.defer = defer;
          script.onload = () => {window.dispatchEvent(new CustomEvent(name+'.loaded'));};
          if (id) {
            script.id = id;
          }
          if (data && typeof data === 'object') {
            Object.keys(data).forEach(key => script.dataset[key] = data[key]);
          }
          document.head.appendChild(script);
        }
      }
    } catch(e) {
      console.error('ExternalScripts: error adding script "' + name + '"', e);
    }
  };
//snippet: user-consent
    window.WM=window.WM||{},function(e,o){"use strict";var n;"function"!=typeof e.CustomEvent&amp;&amp;((n=function(e,n){var t;return n=n||{bubbles:!1,cancelable:!1,detail:void 0},(t=o.createEvent("CustomEvent")).initCustomEvent(e,n.bubbles,n.cancelable,n.detail),t}).prototype=e.Event.prototype,e.CustomEvent=n,"function"!==e.Event&amp;&amp;(e.Event=n))}(window,document),window.WM.UserConsent=window.WM.UserConsent||function(y,C){"use strict";var f,k="",v={},I=!1,m=[],b=0,h=null,E=null,S="",T={},A="",D="",O="",x=!1,P=!1,w=!1,n=!1,L="",t="3.1.15",M=null,G=!1,R=!1,U=!1,_=null,W="",B={addtlConsentCookie:"OTAdditionalConsentString",brand:"",categories:{req:"required",ven:"vendor",p1:"data-store",p2:"ads-contextual",p3:"ads-person-prof",p4:"ads-person",p5:"content-person-prof",p6:"content-person",p7:"measure-ads",p8:"measure-content",p9:"measure-market",p10:"product-develop",sp1:"product-security",sp2:"deliver-content",f1:"combine-data",f2:"link-devices",f3:"id-devices",sf1:"geolocate",sf2:"scan-devices"},ccCookie:"countryCode",compatCategories:{"ads-general":["ads-contextual","ads-person","measure-ads"],"ads-vendor":["vendor","ads-contextual","ads-person","measure-ads"],"behavior-general":["content-person"],"behavior-vendor":["vendor","content-person"],functional:["vendor","data-store","content-person-prof","content-person"],performance:["measure-content","measure-market","product-develop"],"perf-general":["measure-content","measure-market","product-develop"],"perf-vendor":["vendor","measure-content","measure-market","product-develop"],"person-general":["ads-person-prof","content-person-prof"],"person-vendor":["vendor","ads-person-prof","content-person-prof"],"social-vendor":["vendor"],"storage-general":["data-store"],"storage-vendor":["vendor","data-store"],targeting:["vendor","ads-contextual","ads-person-prof","ads-person","measure-ads"]},confirmCookie:"OptanonAlertBoxClosed",consentChangeAction:null,consentChangeActionDelay:1e3,consentCookie:"OptanonConsent",consentDefaults:{required:!0,vendor:!0,"data-store":!0,"ads-contextual":!0,"ads-person":!0,"ads-person-prof":!0,"content-person":!0,"content-person-prof":!0,"measure-ads":!0,"measure-content":!0,"measure-market":!0,"product-develop":!0,"product-security":!0,"deliver-content":!0,"combine-data":!0,"link-devices":!0,"id-devices":!0,geolocate:!0,"scan-devices":!0},consentExpireIn:1,consentLinkTitle:"",controlCookie:"OptanonControl",cookieSameSite:"Lax",cookieSecure:!1,enableDebug:!1,enableGPC:!0,enableTransitionCheck:!0,enableWebViewCheck:!0,gdprApplies:!1,gdprIabCookie:"eupubconsent-v2",gdprIabIsGlobal:!1,gdprIabMaxPurposes:10,gdprIabMaxSpecialFeats:2,gdprIabPolicy:2,geoUsedByOneTrust:!0,languageFromBrowser:!0,privacyCenterLinkTitle:"",psmAppId:"",psmEnv:"prod",regionChangeAction:null,regions:[{id:"ccpa",compatCodes:{adv:["ven"],bbv:["ven"],fc:["ven"],pfv:["ven"],pzv:["ven"],sav:["ven"],smv:["ven"],tc:["ven"]},compatTransition:{cond:!1,new:"ven",old:"pzv"},consentExpireIn:3,consentGpcDefaults:{vendor:!1},consentImpliedDefaults:{required:!0,"data-store":!0,"ads-contextual":!0,"ads-person":!0,"ads-person-prof":!0,"content-person":!0,"content-person-prof":!0,"measure-ads":!0,"measure-content":!0,"measure-market":!0,"product-develop":!0,"product-security":!0,"deliver-content":!0,"combine-data":!0,"link-devices":!0,"id-devices":!0,geolocate:!0,"scan-devices":!0},consentLinkTitle:"Do Not Sell My Personal Information",geoMatch:["US","PR","VI","UM",""]},{id:"gdpr",compatCodes:{ad:["p2","p4","p7"],adv:["p2","p4","p7"],bb:["p6"],bbv:["p6"],fc:["p1","p5","p6"],pf:["p8","p9","p10"],pfv:["p8","p9","p10"],pz:["p3","p5"],pzv:["p3","p5"],sa:["p1"],sav:["p1"],tc:["p2","p3","p4","p7"]},consentDefaults:{required:!0,vendor:!0,"data-store":!1,"ads-contextual":!1,"ads-person-prof":!1,"ads-person":!1,"content-person-prof":!1,"content-person":!1,"measure-ads":!1,"measure-content":!1,"measure-market":!1,"product-develop":!1,"product-security":!0,"deliver-content":!0,"combine-data":!1,"link-devices":!1,"id-devices":!1,geolocate:!1,"scan-devices":!1},consentImpliedDefaults:{required:!0,vendor:!0,"product-security":!0,"deliver-content":!0,"combine-data":!0,"link-devices":!0,"id-devices":!0},consentLinkTitle:"Manage Cookies+",gdprApplies:!0,geoMatch:["GB","DE","FR","IT","ES","PL","RO","NL","BE","GR","CZ","PT","SE","HU","AT","BG","DK","FI","SK","IE","HR","LT","SI","LV","EE","CY","LU","MT","NO","IS","LI"]},{id:"global",geoMatch:["*"]}],reloadOnConsentChange:!0,reloadOnConsentReduction:!1,scCookie:"stateCode",setPageClass:!0,useIAB:!0,uspApiCookieName:"usprivacy",uspApiExplicitNotice:!0,uspApiIsLspa:!1};function N(e){var n=Array.prototype.slice.call(arguments);n[0]="[WMUC]"+(0===A.length?"":" ("+A+")")+":",("error"===e?console.error:console.log).apply(console,n)}function d(e){return!!Number(e)}function p(e){return parseInt(e,2)||0}function l(e){return 100*p(e)}function g(e){for(var n="A".charCodeAt(),t=e.match(/.{6}/g),o="",r=0;r&lt;t.length;r++)o+=String.fromCharCode(p(t[r])+n);return o}function z(e){for(var n=e.split(&quot;&quot;),t={},o=0;o&lt;n.length;o++)d(n[o])&amp;&amp;(t[o+1]=!0);return t}function V(e){var n,t,o,r,s,i,a=[];if(&quot;string&quot;!=typeof e)return N(&quot;error&quot;,&quot;Invalid TC string specified&quot;),a;for(o=e.split(&quot;.&quot;),r=0;r&lt;o.length;r++){for(n=function(e){if(&quot;function&quot;==typeof y.atob)try{return atob(e.replace(/_/g,&quot;/&quot;).replace(/-/g,&quot;+&quot;))}catch(e){N(&quot;error&quot;,&quot;Failed to decode TC string&quot;)}return&quot;&quot;}(o[r]),s=0,i=&quot;&quot;;s&lt;n.length;s++)t=n.charCodeAt(s).toString(2),i+=&quot;00000000&quot;.slice(0,8-t.length)+t;a.push(i)}return 2!==p(a[0].slice(0,6))?(N(&quot;error&quot;,&quot;Unsupported TC string version&quot;),[]):a}function F(e){for(var t=0,i=function(n,e,t,o){function r(){if(o.pubRestrictionEntry&amp;&amp;o.rangeEntry)for(var e in o.rangeEntry)Object.prototype.hasOwnProperty.call(o.rangeEntry,e)&amp;&amp;(o.pubRestrictionEntry[e]=(o.pubRestrictionEntry[e]||[]).concat(o.rangeEntry[e]));o.numPubRestrictions&amp;&amp;(o.numPubRestrictions--,n.push({key:&quot;purposeId&quot;,size:6},{key:&quot;restrictionType&quot;,size:2},{key:&quot;numEntries&quot;,size:12}))}function s(){o.numEntries?(o.numEntries--,n.push({key:&quot;isRange&quot;,size:1,decoder:d},{key:&quot;startVendorId&quot;,size:16})):r()}function i(){return!o.purposeId||[{purpose:o.purposeId,isAllowed:0!==o.restrictionType,isConsentRequired:1===o.restrictionType,isLegitimateInterestRequired:2===o.restrictionType}]}if(&quot;isRangeEncoding&quot;===e.key)n.push(t?{key:&quot;numEntries&quot;,size:12}:{key:&quot;bitField&quot;,size:o.maxVendorId,decoder:z});else if(&quot;numEntries&quot;===e.key)o.rangeEntry={},s();else if(&quot;isRange&quot;===e.key)t&amp;&amp;n.push({key:&quot;endVendorId&quot;,size:16});else if(&quot;startVendorId&quot;===e.key)o.isRange||(o.rangeEntry[t]=i(),s());else if(&quot;endVendorId&quot;===e.key){for(var a=o.startVendorId;a&lt;=o.endVendorId;a+=1)o.rangeEntry[a]=i();s()}else&quot;numCustomPurposes&quot;===e.key?n.push({key:&quot;customPurposeConsents&quot;,size:o.numCustomPurposes,decoder:z},{key:&quot;customPurposeLegitimateInterests&quot;,size:o.numCustomPurposes,decoder:z}):&quot;numPubRestrictions&quot;===e.key&amp;&amp;(o.pubRestrictionEntry={},r())},a=function(e){return e.pubRestrictionEntry||e.rangeEntry||e.bitField||e},c=function(e,n){n=n.slice(t,t+e.size);return t+=e.size,(e.decoder||p)(n)},n=function(e,n){for(var t,o,r={},s=0;s&lt;e.queue.length;s++)o=function(e,n){var t,o,r,s={};if(!e.queue)return c(e,n);for(t=0;t&lt;e.queue.length;t+=1)o=e.queue[t],r=c(o,n),s[o.key]=r,i(e.queue,o,r,s);return a(s)}(t=e.queue[s],n),r[t.key]=o,i(e.queue,t,o,r);return a(r)},o=V(e),r=function(e){for(var n=[{key:&quot;purposeConsents&quot;,size:24,decoder:z},{key:&quot;purposeLegitimateInterests&quot;,size:24,decoder:z}],t=[{key:&quot;version&quot;,size:6},{key:&quot;created&quot;,size:36,decoder:l},{key:&quot;lastUpdated&quot;,size:36,decoder:l},{key:&quot;cmpId&quot;,size:12},{key:&quot;cmpVersion&quot;,size:12},{key:&quot;consentScreen&quot;,size:6},{key:&quot;consentLanguage&quot;,size:12,decoder:g},{key:&quot;vendorListVersion&quot;,size:12},{key:&quot;policyVersion&quot;,size:6},{key:&quot;isServiceSpecified&quot;,size:1,decoder:d},{key:&quot;useNonStandardStacks&quot;,size:1,decoder:d},{key:&quot;specialFeatureOptins&quot;,size:12,decoder:z}].concat(n).concat({key:&quot;purposeOneTreatment&quot;,size:1,decoder:d},{key:&quot;publisherCountryCode&quot;,size:12,decoder:g}),o=[].concat([{size:3}]).concat(n).concat({key:&quot;numCustomPurposes&quot;,size:6}),r=[{key:&quot;core&quot;,queue:t}],s=1;s&lt;e.length;s++)3===p(e[s].slice(0,3))&amp;&amp;r.push({key:&quot;publisherTC&quot;,queue:o});return r}(o),s={},u=0;u&lt;r.length;u++)s[r[u].key]=n(r[u],o[u]),t=0;return s}function q(e){e=new RegExp(&quot;(^|;) *&quot;+e+&quot; *= *([^;]+)&quot;),e=C.cookie.match(e);return e?e.pop():null}function o(e,n,t){e&amp;&amp;(C.cookie=e+&quot;=&quot;+(&quot;string&quot;==typeof n?n:&quot;&quot;)+&quot;; Domain=&quot;+((t=t||{}).domain||v.cookieDomain)+&quot;; Path=&quot;+(t.path||&quot;/&quot;)+(t.maxage?&quot;; Max-Age=&quot;+t.maxage:t.expires?&quot;; Expires=&quot;+t.expires:&quot;&quot;)+(t.secure?&quot;; Secure&quot;:&quot;&quot;)+(t.samesite?&quot;; SameSite=&quot;+t.samesite:&quot;&quot;))}function j(e){for(var n=0,t={},n=0;n&lt;f.length;n++)t[f[n]]=e[f[n]];return t}function J(e,n){var t=0;if(n)for(e=e||{},t=0;t&lt;f.length;t++)&quot;boolean&quot;==typeof n[f[t]]&amp;&amp;(e[f[t]]=n[f[t]]);return e}function H(){var e,n,t,o,r,s,i,a,c,u,d,p,l=[],g=[],C=q(v.consentCookie),f=!1,m=!1,b=!1;if(C&amp;&amp;-1!==C.indexOf(&quot;&amp;groups=&quot;)||!0===v.useExternalConsent||(I=!1,E=null),!0===v.useExternalConsent&amp;&amp;(C=&quot;groups=&quot;+encodeURIComponent(y.OTExternalConsent.groups)),(R=!1)===I?(d=j(v.consentDefaults),(m=!0)===v.enableGPC&amp;&amp;v.consentGpcDefaults&amp;&amp;navigator.globalPrivacyControl&amp;&amp;(d=J(d,v.consentGpcDefaults),R=!0)):!0!==v.useExternalConsent&amp;&amp;v.gdprApplies&amp;&amp;v.useIAB&amp;&amp;v.gdprIabCookie&amp;&amp;(d=function(e,n){var t,o,r,s,i,a=null;if(&quot;string&quot;==typeof e&amp;&amp;0!==e.length)if(!0===v.useExternalConsent&amp;&amp;y.OTExternalConsent.tcString?(L=y.OTExternalConsent.tcString,s=r=&quot;external consent&quot;,k=y.OTExternalConsent.addtlConsent||&quot;&quot;):(L=q(e),r=&quot;&quot;&quot;+e+'&quot; cookie',s=&quot;&quot;&quot;+n+'&quot; cookie',null===(k=&quot;string&quot;==typeof n&amp;&amp;0!==n.length?q(n):&quot;&quot;)&amp;&amp;(k=&quot;&quot;)),L)if((i=F(L))&amp;&amp;i.core&amp;&amp;i.core.policyVersion===v.gdprIabPolicy&amp;&amp;i.core.purposeConsents){for(v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Processed TC string from &quot;+r+&quot;: &quot;,i),a=j(v.consentImpliedDefaults),i.core.purposeLegitimateInterests=i.core.purposeLegitimateInterests||{},i.core.specialFeatureOptins=i.core.specialFeatureOptins||{},t=1;t&lt;=v.gdprIabMaxPurposes;t++)a[o=v.categories[&quot;p&quot;+t.toString(10)]]=&quot;boolean&quot;==typeof i.core.purposeConsents[t]?i.core.purposeConsents[t]:&quot;boolean&quot;==typeof i.core.purposeLegitimateInterests[t]?i.core.purposeLegitimateInterests[t]:&quot;boolean&quot;==typeof v.consentImpliedDefaults[o]&amp;&amp;v.consentImpliedDefaults[o];for(t=1;t&lt;=v.gdprIabMaxSpecialFeats;t++)a[o=v.categories[&quot;sf&quot;+t.toString(10)]]=&quot;boolean&quot;==typeof i.core.specialFeatureOptins[t]?i.core.specialFeatureOptins[t]:&quot;boolean&quot;==typeof v.consentImpliedDefaults[o]&amp;&amp;v.consentImpliedDefaults[o];0!==k.length&amp;&amp;-1===k.search(/^d+~[d.]*$/)&amp;&amp;(N(&quot;error&quot;,&quot;Error: Invalid AC string in &quot;+s+&quot;.&quot;),k=&quot;&quot;)}else N(&quot;error&quot;,&quot;Error: Invalid TC string in &quot;+r+&quot;.&quot;),k=L=&quot;&quot;;else k=L=&quot;&quot;;return a}(v.gdprIabCookie,v.addtlConsentCookie))?m=!0:d=J(j(v.consentDefaults),v.consentImpliedDefaults),C)for(s=C.split(&quot;&amp;&quot;),r=0;r&lt;s.length;r++)if(u=s[r])if(u=(p=u.split(&quot;=&quot;))[0],p=p[1],!1===m&amp;&amp;&quot;groups&quot;===u&amp;&amp;p){for(a=decodeURIComponent(p).split(&quot;,&quot;),c=0;c&lt;a.length;c++)o=(i=a[c].split(&quot;:&quot;))[0].toLowerCase(),i=&quot;1&quot;===i[1],o&amp;&amp;(v.categories[o]?(d[v.categories[o]]=i,&quot;req&quot;!==o&amp;&amp;(f=!0)):(v.compatTransition&amp;&amp;v.compatTransition.old===o&amp;&amp;v.compatTransition.cond===i&amp;&amp;(b=!0),v.compatCodes[o]&amp;&amp;(l.push(o),g.push(i))));if(!1===f&amp;&amp;0&lt;l.length)for(G=!0,c=0;c&lt;l.length;c++)for(t=v.compatCodes[l[c]],n=0;n&lt;t.length;n++)(e=v.categories[t[n]])&amp;&amp;(d[e]=g[c]);else!0===b&amp;&amp;d[v.categories[v.compatTransition.new]]!==v.compatTransition.cond&amp;&amp;(d[v.categories[v.compatTransition.new]]=v.compatTransition.cond)}else&quot;version&quot;===u&amp;&amp;p?S=p:&quot;isIABGlobal&quot;===u&amp;&amp;(x=&quot;true&quot;===p);return d}function e(){return j(h)}function r(){return P}function Y(){return!1===P}function s(){return&quot;ccpa&quot;===v.regId}function u(){return null!==h}function i(e,n){var t,o,r,s,i=!0,a=&quot;iab-&quot;+v.regId,c=&quot;not ready&quot;;if(u()&amp;&amp;e)for(e=Array.isArray(e)?e:[e],s=0;s&lt;e.length&amp;&amp;!0===i;s++)if((c=e[s])&amp;&amp;&quot;required&quot;!==c)if(&quot;iab&quot;===c||c===a){if(v.useIAB&amp;&amp;(!n||!n.ignoreIAB))break}else if(&quot;boolean&quot;==typeof h[c]&amp;&amp;!1===h[c])i=!1;else if(v.compatCategories[c])for(r=v.compatCategories[c],t=0;t&lt;r.length;t++)if(o=r[t],&quot;boolean&quot;==typeof h[o]&amp;&amp;!1===h[o]){i=!1;break}return v.debug&amp;&amp;((n=n||{}).name=n.name||n.id||&quot;unnamed&quot;,m.push({ts:new Date,act:n.cact||&quot;CHK&quot;,desc:n.name,res:i,note:!i&amp;&amp;c||&quot;&quot;}),N(&quot;debug&quot;,!0===i?&quot;Check for consent [&quot;+(e&amp;&amp;e.join(&quot;,&quot;)||&quot;empty&quot;)+'] ALLOWS &quot;'+n.name+'&quot;'+(&quot;ADD&quot;===n.cact?&quot;, script added&quot;:&quot;&quot;):&quot;Check for consent [&quot;+(e&amp;&amp;e.join(&quot;,&quot;)||&quot;empty&quot;)+'] REJECTS &quot;'+n.name+'&quot;'+(&quot;ADD&quot;===n.cact?&quot;, script NOT added&quot;:&quot;&quot;))),i}function Z(){var e=s()?!0===U?(h.vendor?y.WM.CDP.ccpaShareData():y.WM.CDP.ccpaDoNotShare(),y.WM.CDP.getUSPString()):&quot;1&quot;+(v.uspApiExplicitNotice?&quot;Y&quot;:&quot;N&quot;)+(h.vendor?&quot;N&quot;:&quot;Y&quot;)+(v.uspApiIsLspa?&quot;Y&quot;:&quot;N&quot;):&quot;1---&quot;;return Y()&amp;&amp;e!==W&amp;&amp;(W=e,!1===U&amp;&amp;null===_&amp;&amp;o(v.uspApiCookieName,e,{domain:v.cookieDomain,path:&quot;/&quot;,samesite:v.cookieSameSite,secure:v.cookieSecure}),v.debug&amp;&amp;N(&quot;debug&quot;,&quot;USP string updated: &quot;,e)),W}function K(){y.location.reload()}function $(e){var n;return!y.frames[e]&amp;&amp;(C.body?((n=C.createElement(&quot;iframe&quot;)).style.cssText=&quot;display:none&quot;,n.name=e,C.body.appendChild(n)):setTimeout($.bind(y,e),5),!0)}function Q(e){for(var n=null,t=y;t;t=t.parent){try{if(t.frames&amp;&amp;t.frames[e]){n=t;break}}catch(e){}if(t===y.top)break}return n}function X(e){y.addEventListener?y.addEventListener(&quot;message&quot;,e,!1):y.attachEvent(&quot;onmessage&quot;,e)}function ee(e){var n;T=e||{ccpaTCS:W,consentInteractions:b,consentTime:E,consentVersion:S,countryCode:D,region:v.regId,stateCode:O,userConsentVersion:t},Y()&amp;&amp;o(v.controlCookie,&quot;ccc=&quot;+T.countryCode+&quot;&amp;csc=&quot;+T.stateCode+&quot;&amp;cic=&quot;+T.consentInteractions+&quot;&amp;otvers=&quot;+T.consentVersion+&quot;&amp;pctm=&quot;+(T.consentTime&amp;&amp;encodeURIComponent(T.consentTime.toISOString())||&quot;0&quot;)+&quot;&amp;reg=&quot;+T.region+&quot;&amp;ustcs=&quot;+encodeURIComponent(T.ccpaTCS)+&quot;&amp;vers=&quot;+T.userConsentVersion,{domain:v.cookieDomain,expires:(e=v.consentExpireIn,(n=n?new Date(n):new Date).setUTCFullYear(n.getUTCFullYear()+e),n.toUTCString()),path:&quot;/&quot;,samesite:v.cookieSameSite,secure:v.cookieSecure})}function ne(){var e=null,n=q(v.confirmCookie);return&quot;string&quot;==typeof n&amp;&amp;0!==n.length&amp;&amp;(e=new Date(n),!1===y.isNaN(e.valueOf()))?e:null}function a(){var e,n,t=ne(),o=!1,r=0&lt;y.WM.UserConsent_wrapproc?new Date(y.WM.UserConsent_wrapproc):null,s=I,i=E,a=!1;for(y.WM.UserConsent_wrapproc=0,t&amp;&amp;(null===E||E&lt;t)&amp;&amp;(I=!0,E=t),n=H(),e=0;eE.getTime()+v.consentChangeActionDelay+1e3)&amp;&amp;(E=r),r=h,h=n,Z(),ee(),!0===o){if(!0===v.debug)try{m.push({ts:new Date,act:"CHG",desc:JSON.stringify(n),res:v.reloadOnConsentChange||v.reloadOnConsentReduction&amp;&amp;a,note:"function"==typeof v.consentChangeAction?"change function":""})}catch(e){N("error","Failed to track consent change: ",e)}if("function"==typeof v.consentChangeAction&amp;&amp;v.consentChangeAction(j(h),v.regId,S,r),C.dispatchEvent(new CustomEvent("userConsentChanged",{bubbles:!1,cancelable:!1,detail:{region:v.regId,time:E,old:r,new:j(h),usp:W,tcf:L,acf:k}})),!0===v.reloadOnConsentChange||!0===a&amp;&amp;!0===v.reloadOnConsentReduction)setTimeout(K,100);else if(Y())try{y.sessionStorage.setItem("_ucWMCons",JSON.stringify({consentState:h,consentTime:E,consentVersion:S,iabIsGlobal:x})),y.postMessage("_ucWMConsReset","*")}catch(e){N("error","Failed to update session storage and notify children of consent change: ",e)}}}else E=i,(!T.region||!T.consentVersion&amp;&amp;S||!T.userConsentVersion||T.userConsentVersion&lt;&quot;3.1.1&quot;)&amp;&amp;ee()}function c(e){var n,t,o,r,s,i,a,c,u,d,p=C.getElementsByTagName(&quot;head&quot;)[0],l=C.createElement(&quot;script&quot;),g=null;if(null===h){if(null!==(s=Q(&quot;_usrConWM&quot;))){A=y.name||&quot;child&quot;;try{r=JSON.parse(y.sessionStorage.getItem(&quot;_ucWMConf&quot;))}catch(e){r=null,N(&quot;error&quot;,&quot;Failed to parse parent frame consent settings.&quot;)}if(&quot;object&quot;==typeof r&amp;&amp;null!==r){e.countryCode=r.countryCode,e.cookieDomain=r.cookieDomain,e.cookieSameSite=r.cookieSameSite,e.cookieSecure=r.cookieSecure,e.domId=r.domId,e.languageFromBrowser=!!r.langFromBrowser,e.enableDebug=!!r.enableDebug,e.enableGPC=!!r.enableGPC,e.regId=r.regId,e.stateCode=r.stateCode,e.src=r.src;try{i=JSON.parse(y.sessionStorage.getItem(&quot;_ucWMCons&quot;))}catch(e){i=null,N(&quot;error&quot;,&quot;Failed to parse parent frame consent state.&quot;)}&quot;object&quot;==typeof i&amp;&amp;null!==i&amp;&amp;(h=i.consentState,E=i.consentTime,S=i.consentVersion,e.gdprIabIsGlobal=!!i.iabIsGlobal,P=!0),!1===r.parentReload&amp;&amp;X(function(e){var n;if(&quot;_ucWMConsReset&quot;===e.data){try{n=y.sessionStorage.getItem(&quot;_ucWMCons&quot;)}catch(e){n=null}&quot;object&quot;==typeof n&amp;&amp;null!==n&amp;&amp;(e=function(e,n){var t=0;if(e&amp;&amp;n)for(t=0;t&lt;f.length;t++)if(!0===e[f[t]]&amp;&amp;!0!==n[f[t]])return!0;return!1}(h,n.consentState),h=n.consentState,E=n.consentTime,S=n.consentVersion,Z(),(!0===v.reloadOnConsentChange||!0===e&amp;&amp;!0===v.reloadOnConsentReduction)&amp;&amp;setTimeout(K,100))}})}}if(!(e&amp;&amp;e.src&amp;&amp;e.domId&amp;&amp;e.cookieDomain))throw new Error(&quot;Invalid config passed to user-consent!&quot;);if(v.cookieDomain=e.cookieDomain,v.cookieSameSite=e.cookieSameSite||B.cookieSameSite,v.cookieSecure=(&quot;boolean&quot;==typeof e.cookieSecure?e:B).cookieSecure,v.debug=!(!console||!e.enableDebug&amp;&amp;-1===y.location.search.search(/[?&amp;]wmuc_debug=[1t]/)),v.enableGPC=(&quot;boolean&quot;==typeof e.enableGPC?e:B).enableGPC,&quot;object&quot;==typeof y.GetExternalConsent&amp;&amp;null!==y.GetExternalConsent&amp;&amp;&quot;function&quot;==typeof y.GetExternalConsent.oneTrustCookie){try{t=JSON.parse(y.GetExternalConsent.oneTrustCookie())}catch(e){t=null}&quot;object&quot;==typeof t&amp;&amp;null!==t&amp;&amp;t.consentedDate&amp;&amp;(t.tcString||t.groups)&amp;&amp;(y.OTExternalConsent=t),&quot;function&quot;==typeof y.GetExternalConsent.countryCode&amp;&amp;y.GetExternalConsent.countryCode()&amp;&amp;(y.ExternalConsentGeo={countryCode:y.GetExternalConsent.countryCode(),stateCode:y.GetExternalConsent.stateCode()||&quot;&quot;})}for((&quot;boolean&quot;==typeof e.enableWebViewCheck?e:B).enableWebViewCheck&amp;&amp;&quot;object&quot;==typeof y.OTExternalConsent&amp;&amp;null!==y.OTExternalConsent&amp;&amp;y.OTExternalConsent.consentedDate?(v.useExternalConsent=!0,v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Reading consent from external consent data: &quot;,y.OTExternalConsent)):v.useExternalConsent=!1,v.geoUsedByOneTrust=(&quot;boolean&quot;==typeof e.geoUsedByOneTrust?e:B).geoUsedByOneTrust,!0===Y()&amp;&amp;!0===v.debug&amp;&amp;-1!==y.location.search.search(/[?&amp;]wmuc_cc=[A-Za-z]{2}/)?N(&quot;debug&quot;,&quot;Set debug CC to: &quot;,D=y.location.search.match(/[?&amp;]wmuc_cc=([A-Za-z]{2})/)[1].toUpperCase()):D=v.useExternalConsent&amp;&amp;&quot;object&quot;==typeof y.ExternalConsentGeo&amp;&amp;&quot;string&quot;==typeof y.ExternalConsentGeo.countryCode&amp;&amp;2===y.ExternalConsentGeo.countryCode.length?y.ExternalConsentGeo.countryCode.toUpperCase():&quot;string&quot;==typeof e.countryCode&amp;&amp;2===e.countryCode.length?e.countryCode.toUpperCase():(i=q(e.ccCookie||&quot;countryCode&quot;))&amp;&amp;2===i.length?i.toUpperCase():(N(&quot;error&quot;,&quot;User-Consent unable to determine country, missing or invalid cookies!&quot;),&quot;US&quot;),v.debug&amp;&amp;-1!==y.location.search.search(/[?&amp;]wmuc_sc=[A-Za-z]{2}/)?N(&quot;debug&quot;,&quot;Set debug SC to: &quot;,O=y.location.search.match(/[?&amp;]wmuc_sc=([A-Za-z]{2})/)[1].toUpperCase()):v.useExternalConsent&amp;&amp;&quot;object&quot;==typeof y.ExternalConsentGeo&amp;&amp;&quot;string&quot;==typeof y.ExternalConsentGeo.stateCode&amp;&amp;2===y.ExternalConsentGeo.stateCode.length?O=y.ExternalConsentGeo.stateCode.toUpperCase():&quot;string&quot;==typeof e.stateCode&amp;&amp;2===e.stateCode.length?O=e.stateCode.toUpperCase():(i=q(e.scCookie||&quot;stateCode&quot;))&amp;&amp;2===i.length?O=i.toUpperCase():v.debug&amp;&amp;N(&quot;debug&quot;,&quot;User-Consent unable to determine state, leaving unset.&quot;),!0===Y()&amp;&amp;!0===v.geoUsedByOneTrust&amp;&amp;!1===w&amp;&amp;(y.OneTrust=y.OneTrust||{},y.OneTrust.geolocationResponse={countryCode:D,stateCode:O},i=function(e){!1===w?(w=!0,y.OneTrust=y.OneTrust||{},y.OneTrust.geolocationResponse={countryCode:D,stateCode:O},y.OneTrustStub&amp;&amp;&quot;function&quot;==typeof y.OneTrustStub.setGeoLocation&amp;&amp;y.OneTrustStub.setGeoLocation(D,O),v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Set OneTrust geo-location.&quot;)):&quot;function&quot;==typeof y.OptanonWrapper&amp;&amp;y.OptanonWrapper()},y.addEventListener?y.addEventListener(&quot;consent.onetrust&quot;,i,!1):y.attachEvent(&quot;consent.onetrust&quot;,i)),v.categories=e.categories||B.categories,v.regions=e.regions||B.regions,v.consentChangeAction=e.consentChangeAction||B.consentChangeAction,v.consentChangeActionDelay=e.consentChangeActionDelay||B.consentChangeActionDelay,v.controlCookie=e.controlCookie||B.controlCookie,v.brand=e.brand||B.brand||&quot;&quot;,v.psmAppId=e.psmAppId||B.psmAppId||&quot;&quot;,v.psmEnv=e.psmEnv||B.psmEnv||&quot;prod&quot;,v.languageFromBrowser=(&quot;boolean&quot;==typeof e.languageFromBrowser?e:B).languageFromBrowser,v.regionChangeAction=e.regionChangeAction||B.regionChangeAction,v.reloadOnConsentChange=(&quot;boolean&quot;==typeof e.reloadOnConsentChange?e:B).reloadOnConsentChange,v.reloadOnConsentReduction=(&quot;boolean&quot;==typeof e.reloadOnConsentReduction?e:B).reloadOnConsentReduction,n=Object.keys(v.categories),f=[],o=0;o&lt;n.length;o++)f.push(v.categories[n[o]]);for(o=0;o&lt;v.regions.length;o++)if(!0===Y()&amp;&amp;function(e){for(var n=0;n&lt;e.length;n++)if(D===e[n].toUpperCase()||&quot;*&quot;===e[n])return 1}(v.regions[o].geoMatch)||!0===P&amp;&amp;v.regions[o].id===e.regId){g=v.regions[o];break}if(!g){if(P)throw new Error(&quot;No matching user-consent region, parent and iframe configs do not match!&quot;);throw new Error(&quot;No matching user-consent region!&quot;)}if(v.regId=g.id,v.compatTransition=(e.enableTransitionCheck||B.enableTransitionCheck)&amp;&amp;g.compatTransition?g.compatTransition:null,v.compatCategories=g.compatCategories||e.compatCategories||B.compatCategories||{},v.compatCodes=g.compatCodes||e.compatCodes||B.compatCodes||{},v.consentExpireIn=g.consentExpireIn||e.consentExpireIn||B.consentExpireIn||1,v.consentLinkAction=g.consentLinkAction||e.consentLinkAction||null,v.consentLinkTitle=g.consentLinkTitle||e.consentLinkTitle||B.consentLinkTitle,v.confirmCookie=g.confirmCookie||e.confirmCookie||B.confirmCookie,v.consentCookie=g.consentCookie||e.consentCookie||B.consentCookie,v.addtlConsentCookie=g.addtlConsentCookie||e.addtlConsentCookie||B.addtlConsentCookie,v.consentDefaults=g.consentDefaults||e.consentDefaults||B.consentDefaults,v.consentGpcDefaults=g.consentGpcDefaults||e.consentGpcDefaults||B.consentGpcDefaults||null,v.consentImpliedDefaults=g.consentImpliedDefaults||B.consentImpliedDefaults||v.consentDefaults,v.domId=g.domId||e.domId,v.gdprIabCookie=g.gdprIabCookie||e.gdprIabCookie||B.gdprIabCookie,v.gdprIabMaxPurposes=g.gdprIabMaxPurposes||e.gdprIabMaxPurposes||B.gdprIabMaxPurposes,v.gdprIabMaxSpecialFeats=g.gdprIabMaxSpecialFeats||e.gdprIabMaxSpecialFeats||B.gdprIabMaxSpecialFeats,v.gdprIabPolicy=g.gdprIabPolicy||e.gdprIabPolicy||B.gdprIabPolicy,v.privacyCenterLinkAction=g.privacyCenterLinkAction||e.privacyCenterLinkAction||null,v.privacyCenterLinkTitle=g.privacyCenterLinkTitle||e.privacyCenterLinkTitle||B.privacyCenterLinkTitle,v.src=g.src||e.src,v.useIAB=(&quot;boolean&quot;==typeof e.useIAB?e:B).useIAB,v.uspApiExplicitNotice=e.uspApiExplicitNotice||B.uspApiExplicitNotice,v.uspApiIsLspa=e.uspApiIsLspa||B.uspApiIsLspa,v.uspApiCookieName=e.uspApiCookieName||B.uspApiCookieName,v.gdprApplies=(&quot;boolean&quot;==typeof g.gdprApplies?g:&quot;boolean&quot;==typeof e.gdprApplies?e:B).gdprApplies,x=e.gdprIabIsGlobal||B.gdprIabIsGlobal||!1,(!0===e.setPageClass||&quot;boolean&quot;!=typeof e.setPageClass&amp;&amp;!0===B.setPageClass)&amp;&amp;C.documentElement&amp;&amp;(C.documentElement.className=(C.documentElement.className&amp;&amp;&quot; &quot;!==C.documentElement.className?C.documentElement.className+&quot; userconsent-cntry-&quot;:&quot;userconsent-cntry-&quot;)+D.toLowerCase()+&quot; userconsent-reg-&quot;+v.regId.toLowerCase()),v.debug&amp;&amp;(N(&quot;debug&quot;,&quot;GeoIP Country Code: &quot;+D+&quot;, using consent region: &quot;+v.regId),N(&quot;debug&quot;,&quot;IAB &quot;+(v.useIAB?&quot;enabled&quot;:&quot;disabled&quot;))),!0===Y()){if(v.psmAppId&amp;&amp;y.WM.CDP&amp;&amp;&quot;function&quot;==typeof y.WM.CDP.initPsm&amp;&amp;&quot;function&quot;==typeof y.WM.CDP.isPrivacyEnabled&amp;&amp;!v.useExternalConsent){try{y.WM.CDP.initPsm(v.psmAppId,v.brand,v.psmEnv,v.cookieDomain,D),U=y.WM.CDP.isPrivacyEnabled(),v.debug&amp;&amp;N(&quot;debug&quot;,&quot;PSM found and initialized.  Privacy is &quot;+(U?&quot;enabled.&quot;:&quot;disabled.&quot;))}catch(e){U=!1,N(&quot;error&quot;,&quot;PSM found but failed to initialize: &quot;,e)}U&amp;&amp;(&quot;string&quot;!=typeof(u=y.WM.CDP.getUSPString())||0===u.length?U=!1:W=u,v.debug&amp;&amp;N(&quot;debug&quot;,&quot;PSM privacy enabled &quot;+(U?&quot;so using.&quot;:&quot;but not working so ignoring it.&quot;)))}else v.debug&amp;&amp;N(&quot;debug&quot;,&quot;PSM not found.&quot;);if(T=function(){var n,e,t,o,r={consentInteractions:b,consentTime:null,consentVersion:&quot;&quot;,countryCode:&quot;&quot;,region:&quot;&quot;,stateCode:&quot;&quot;,userConsentVersion:&quot;&quot;},s=q(v.controlCookie);if(&quot;string&quot;==typeof s&amp;&amp;0!==s.length)for(t=s.split(&quot;&amp;&quot;),e=0;e&lt;t.length;e++)if(&quot;string&quot;==typeof(o=t[e].split(&quot;=&quot;))[0]&amp;&amp;0!==o[0].length&amp;&amp;&quot;string&quot;==typeof o[1])switch(o[0]){case&quot;ccc&quot;:r.countryCode=o[1].toLowerCase();break;case&quot;csc&quot;:r.stateCode=o[1].toLowerCase();break;case&quot;cic&quot;:r.consentInteractions=parseInt(o[1],10),(isNaN(r.consentInteractions)||r.consentInteractions<b>E)?(E=T.consentTime,v.debug&amp;&amp;N("debug",'Consent time read from "'+v.controlCookie+'": ',E)):null!==E&amp;&amp;v.debug&amp;&amp;N("debug",'Consent time read from "'+v.confirmCookie+'": ',E);if(null!==E?(I=!0,h=H(),!0===I?(l.async=!0,null!==T.consentTime&amp;&amp;T.consentTime&lt;E&amp;&amp;(T.region=&quot;&quot;),v.debug&amp;&amp;(N(&quot;debug&quot;,'Consent state read from &quot;'+(v.useExternalConsent?&quot;external consent&quot;:v.consentCookie)+'&quot; ('+S+&quot;): &quot;,h),G&amp;&amp;N(&quot;debug&quot;,&quot;Consent state using compatibility config.&quot;))):(E=null,T.region=&quot;&quot;,v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Consent state expired or removed, reset from defaults: &quot;,h))):(h=j(v.consentDefaults),!0===v.enableGPC&amp;&amp;v.consentGpcDefaults&amp;&amp;navigator.globalPrivacyControl?(h=J(h,v.consentGpcDefaults),R=!0,v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Consent state from defaults (GPC set): &quot;,h)):v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Consent state from defaults: &quot;,h)),v.debug)try{m.push({ts:new Date,act:&quot;SET&quot;,desc:JSON.stringify(h),res:null!==E,note:v.regId})}catch(e){N(&quot;error&quot;,&quot;Failed to track setting initial consent: &quot;,e)}}if(y.WM.UserConsent_initted)N(&quot;error&quot;,&quot;ERROR:  Second instance of UserConsent initialized!&quot;);else{if(y.WM.UserConsent_initted=!0,v.useIAB&amp;&amp;(d=function(o,r){var s,n,i=&quot;string&quot;==typeof r.data,e=o+&quot;Call&quot;;try{n=i?JSON.parse(r.data):r.data}catch(e){n={}}&quot;object&quot;==typeof n&amp;&amp;null!==n&amp;&amp;n[e]&amp;&amp;(s=n[e],y[o](s.command,s.version,function(e,n){var t={};t[o+&quot;Return&quot;]={returnValue:e,success:n,callId:s.callId};try{r.source.postMessage(i?JSON.stringify(t):t,&quot;*&quot;)}catch(e){N(&quot;error&quot;,&quot;Failed to post reply: &quot;,e)}},s.parameter))},U||(null===(_=Q(&quot;__uspapiLocator&quot;))?($(&quot;__uspapiLocator&quot;),y.__uspapi=function(e,n,t){if(&quot;function&quot;==typeof t){if(n=0===n?1:n,&quot;getUSPData&quot;===e&amp;&amp;1===n)return t({version:1,uspString:y.WM.UserConsent.getUspAPIstring()},!0),!0;if(&quot;ping&quot;===e)return t({version:1,uspapiLoaded:!0},!0),!0;t(null,!1)}return!1},y.__uspapi.msgHandler=d.bind(y,&quot;__uspapi&quot;),X(y.__uspapi.msgHandler),v.debug&amp;&amp;N(&quot;debug&quot;,&quot;IAB for CCPA ready.&quot;)):v.debug&amp;&amp;N(&quot;debug&quot;,&quot;IAB for CCPA ready (via frame).&quot;)),(x||v.gdprApplies)&amp;&amp;(c=G?&quot;1.1&quot;:&quot;2.0&quot;,null===(M=Q((a=G?&quot;__cmp&quot;:&quot;__tcfapi&quot;)+&quot;Locator&quot;))&amp;&amp;&quot;function&quot;!=typeof y[a]?($(a+&quot;Locator&quot;),y[a]=function(){var e=arguments,n=0;return y[a].a=y[a].a||[],0&lt;e.length&amp;&amp;(n=0===(n=1&lt;e.length&amp;&amp;parseInt(e[1],10)||0)?2:n,&quot;ping&quot;===e[0]?e[2]({apiVersion:c,gdprApplies:v.gdprApplies,gdprAppliesGlobally:x,cmpLoaded:!1,cmpStatus:&quot;stub&quot;,displayStatus:v.gdprApplies?&quot;hidden&quot;:&quot;disabled&quot;},!0):&quot;setGdprApplies&quot;===e[0]&amp;&amp;3&lt;e.length&amp;&amp;&quot;boolean&quot;==typeof e[3]?v.gdprApplies=e[3]:y[a].a.push([].slice.apply(e))),y[a].a},y[a].msgHandler=d.bind(y,a),X(y[a].msgHandler),v.debug&amp;&amp;N(&quot;debug&quot;,&quot;IAB (v&quot;+c+&quot;) for GDPR ready.&quot;),y[a](&quot;getTCData&quot;,0,y.OptanonWrapper)):M&amp;&amp;v.debug&amp;&amp;N(&quot;debug&quot;,&quot;IAB (v&quot;+c+&quot;) for GDPR ready (via frame).&quot;))),Z(),!0===Y()){if(v.useExternalConsent?ee():T.region&amp;&amp;T.region!==v.regId&amp;&amp;(u=T.region,d=v.regId,v.debug&amp;&amp;N(&quot;debug&quot;,'User-Consent detected region change from &quot;'+u+'&quot; to &quot;'+d+'&quot;.'),&quot;function&quot;==typeof v.regionChangeAction&amp;&amp;v.regionChangeAction(u,d,v.consentLinkAction)),null===s&amp;&amp;$(&quot;_usrConWM&quot;))try{y.sessionStorage.setItem(&quot;_ucWMConf&quot;,JSON.stringify({cookieDomain:v.cookieDomain,cookieSameSite:v.cookieSameSite,cookieSecure:v.cookieSecure,countryCode:D,domId:v.domId,enableDebug:v.debug,langFromBrowser:v.languageFromBrowser,parentReload:v.reloadOnConsentChange,regId:v.regId,src:v.src,stateCode:O})),y.sessionStorage.setItem(&quot;_ucWMCons&quot;,JSON.stringify({consentState:h,consentTime:E,consentVersion:S,iabIsGlobal:x}))}catch(e){N(&quot;error&quot;,&quot;Failed to set UserConsent frame data!&quot;)}!(l.charset=&quot;utf-8&quot;)===v.languageFromBrowser&amp;&amp;(l.dataset.documentLanguage=&quot;true&quot;),l.dataset.domainScript=v.domId,l.src=v.src,p.appendChild(l)}v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Dispatching UserConsentReady event.&quot;),C.dispatchEvent(new CustomEvent(&quot;userConsentReady&quot;,{bubbles:!1,cancelable:!1,detail:{region:v.regId,time:new Date,consentConfirmed:I}}))}}}return!0===y.WM.UserConsent_loaded?N(&quot;error&quot;,&quot;ERROR:  Second instance of UserConsent loaded!&quot;):(y.WM.UserConsent_loaded=!0,y.WM.UserConsent_wrapproc=0,y.OptanonWrapper=function(){var e;n||(n=!0,v.geoUsedByOneTrust&amp;&amp;y.Optanon&amp;&amp;&quot;function&quot;==typeof y.Optanon.getGeolocationData&amp;&amp;(e=y.Optanon.getGeolocationData())&amp;&amp;e.country!==D&amp;&amp;&quot;function&quot;==typeof y.Optanon.setGeoLocation&amp;&amp;(y.Optanon.setGeoLocation(D,O),v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Reset OneTrust geo-location to match site.&quot;)),v.debug&amp;&amp;N(&quot;debug&quot;,&quot;Dispatching OptanonLoaded event.&quot;),C.dispatchEvent(new CustomEvent(&quot;optanonLoaded&quot;,{bubbles:!1,cancelable:!1,detail:{region:v.regId,time:new Date,consentConfirmed:I}})),!0===v.useExternalConsent&amp;&amp;!0!==y.Optanon.IsAlertBoxClosed()&amp;&amp;y.Optanon.Close()),null!==h&amp;&amp;0===y.WM.UserConsent_wrapproc&amp;&amp;(y.WM.UserConsent_wrapproc=(new Date).getTime(),setTimeout(a,(&quot;number&quot;==typeof v.consentChangeActionDelay?v:B).consentChangeActionDelay))},&quot;object&quot;==typeof y.WM.UserConsentConfig&amp;&amp;null!==y.WM.UserConsentConfig&amp;&amp;c(y.WM.UserConsentConfig)),{addScript:function(e,n,t){var o,r,s,t=t||C.head;if(e&amp;&amp;(e.src||e.text)){if(!0===i(n,{cact:&quot;ADD&quot;,name:e.name||e.src||e.id||&quot;unnamed inline&quot;})){for(o=C.createElement(&quot;script&quot;),s=Object.keys(e),r=0;r&lt;s.length;r++)o[s[r]]=e[s[r]];return t.appendChild(o),!0}}else N(&quot;error&quot;,&quot;Invalid or missing options to addScript.&quot;);return!1},addScriptElement:function(e,n,t){if(t=t||C.head,e){if(i(n,{cact:&quot;ADD&quot;,name:e.name||e.src||e.id||&quot;unnamed inline&quot;}))return t.appendChild(e),!0}else N(&quot;error&quot;,&quot;Invalid or missing options to addScriptElement.&quot;);return!1},forceReconsent:function(){Y()&amp;&amp;(C.cookie=v.consentCookie+&quot;=; Domain=&quot;+v.cookieDomain+&quot;; Path=/; Expires=Thu, 01 Jan 2000 00:00:01 GMT;&quot;,C.cookie=v.confirmCookie+&quot;=; Domain=&quot;+v.cookieDomain+&quot;; Path=/; Expires=Thu, 01 Jan 2000 00:00:01 GMT;&quot;,ee({ccpaTCS:&quot;&quot;,consentInteractions:b,consentTime:null,consentVersion:S,countryCode:D,region:v.regId,stateCode:O,userConsentVersion:t}),setTimeout(K,100))},getCmpString:function(e,n){var t,o,r;if(&quot;function&quot;==typeof e)if(n=n||this.getRegion(),!1===v.useIAB&amp;&amp;(v.debug&amp;&amp;N(&quot;debug&quot;,&quot;getCmpString called with IAB disabled&quot;),e(n,0,&quot;&quot;,&quot;&quot;,new Error(&quot;IAB disabled&quot;))),v.gdprApplies||x&amp;&amp;&quot;ccpa&quot;!==n){if(!1===G){if(&quot;string&quot;==typeof L&amp;&amp;0!==L.length)return v.debug&amp;&amp;N(&quot;debug&quot;,&quot;getCmpString returning GDPR v2 CMP string&quot;),void e(n,2,L,k,null);t=window.__tcfapi,o=&quot;getTCData&quot;,r=2}else t=window.__cmp,o=&quot;getConsentData&quot;,r=1;t(o,r,function(e,n,t,o,r){r?(v.debug&amp;&amp;N(&quot;debug&quot;,&quot;getCmpString returning GDPR v&quot;+t+&quot; CMP string&quot;),e(n,t,1===t?o.consentData:o.tcString,1 {
if (
  window.CNN.Zion.apiKey &amp;&amp;
  window.CNN.Zion.environmentType &amp;&amp;
  window.CNN.Zion.sourceId &amp;&amp;
  window.ZION_SDK
) {
  const environment = window.ZION_SDK.EnvironmentType[window.CNN.Zion.environmentType];
  const enableLogging = environment !== window.ZION_SDK.EnvironmentType.Prod;

  window.zion_analytics.configure({
    bridgeEnabled: true,
    bufferSize: 20,
    enableLogging,
    customFeatureManagerPath: 'https://z.cdp-dev.cnn.com/zfm/zfh-3.js',
    environment: window.CNN.Zion.environmentType,
    isSecure: true,
    telemetryEndpoint: window.env.ZION_TELEMETRY_ENDPOINT,
    trackAdvertising: false,
    trackBluetooth: false,
    trackDeeplink: false,
    trackLifecycle: false,
    trackLocation: false,
    trackNotifications: false,
    trackPurchases: false,
    trackScreens: false,
    trackUxMetrics: true,
    uxMetricsPercentage: 100,
  });

  if (window.zion_analytics) {
    window.zion_analytics.track(new window.ZION_SDK.Pageview({
      canonicalUrl: window.CNN.contentModel.canonicalUrl,
      traits: {
        event_source: window.CNN.contentModel.techStack || 'stellar',
        page_variant: window.CNN.contentModel.templateType || '',
        raw_url: window.location.href,
        cms_id: CNN.contentModel.cmsId || '',
        page_type: CNN.contentModel.pageType || '',
        edition: CNN.contentModel.edition,
        section: CNN.contentModel.section || '',
        subsection: CNN.contentModel.subsection || '',
        experience_type: window.location.href.includes('plus') ? 'cnn_plus' : 'cnn_core'
      },
      sourceId: window.CNN.contentModel.sourceId || ''
    }));
  }
} else {
  throw new Error('zion: missing either "apiKey", "environmentType" or "sourceId"');
}

});
})()

    }

//script: fave
addScript({ async: false, defer: true, name: ‘fave’, src: ‘https://registry.api.cnn.io/bundles/fave/latest-4.x/js’ });

//snippet: airship
!function(n,r,e,t,c){var i,o=”Promise”in n,u={then:function(){return u},catch:function(n){ return n(new Error(“Airship SDK Error: Unsupported browser”)),u}},s=o?new Promise((function(n,r){i=function(e,t){e?r(e):n(t)}})):u ;s._async_setup=function(n){if(o)try{i(null,n(c))}catch(n){i(n)}},n[t]=s;var a=r.createElement(“script”);a.src=e,a.async=!0,a.id=”_uasdk”, a.rel=t,r.head.appendChild(a)}(window,document, window.env.AIRSHIP_SRC, ‘UA’, { vapidPublicKey: window.env.AIRSHIP_VAPID_PUBLIC_KEY, websitePushId: window.env.AIRSHIP_WEB_SITE_PUSH_ID, appKey: window.env.AIRSHIP_APP_KEY, token: window.env.AIRSHIP_TOKEN, workerUrl:window.env.AIRSHIP_WORKER }); (function(){const c = { auto: true, position: ‘top’, appearDelay: 5000, stylesheet: ‘https://z.cdn.cnn.com/cnn/tmpl_asset/static/css/vendor/airship.css’, askAgainDelay: 2592000, disappearDelay: 1000, type: ‘alert’, logo: ‘https://z.cdn.cnn.com/cnn/tmpl_asset/static/images/cnn_underscored_stacked_256.png’, i18n: { en: { title: ‘Subscribe to CNN Underscored notifications’, message: ‘Never miss out on a product worth buying or a sale worth shopping by subscribing to our push notifications.’, bubble: ‘Unlock permission to allow notifications’, button: ‘Allow’, accept: ‘Yes, Subscribe me!’, deny: ‘No thanks’}}}; window.UA.then((sdk) => { sdk.plugins.load(‘html-prompt’, ‘https://aswpsdkus.com/notify/v1/ua-html-prompt.min.js’, c).then((plugin) => plugin.prompt(c)); sdk.addEventListener(‘channel’, ev => { sdk.channel.tags.add(‘underscored’); }, { once: true }); }); })();

//snippet: krux-id
if (window.WM.UserConsent.inUserConsentState([‘vendor’,’data-store’,’ads-person-prof’,’ads-person’,’measure-ads’,’measure-content’,’measure-market’])) {
const MODULE_NAME=”Krux Module”,MODULE_VERSION=”v4.1.4″,config={DOM_CONTROLTAG:window.env.KRUX_DOM_CONTROLTAG,INTL_CONTROLTAG:window.env.KRUX_INTL_CONTROLTAG,SEND_VALUES_TO_ZION:window.env.KRUX_SEND_VALUES_TO_ZION};let zionBus,setControlTag,sendValuesToZion,hostname,messageSent=!1,subscribersSet=!1;const readCookie=e=>{let n=!1,t=null;var o;return void 0!==window.localStorage&&(n=!0),”https://www.cnn.com/2022/01/12/cnn-underscored/how-to-organize-life/undefined”==typeof value&&(n&&(t=window.localStorage.getItem(e)),n&&null!==t||(o=e,t=”https://www.cnn.com/2022/01/12/cnn-underscored/how-to-organize-life/undefined”!=typeof document&&document.cookie&&document.cookie.match(RegExp(${o}=.*?;))?document.cookie.match(RegExp(${o}=.*?;))[0].replace(RegExp(${o}=|;,”g”),””):null)),t},setHostAndPathNames=()=>{const e=”https://www.cnn.com/2022/01/12/cnn-underscored/how-to-organize-life/undefined”!=typeof document?document.createElement(“a”):{href:””,hostname:””,pathname:””};e.href=”https://www.cnn.com/2022/01/12/cnn-underscored/how-to-organize-life/undefined”!=typeof document?document.location.href:””,hostname=e.hostname},countryCode=readCookie(“countryCode”)||(readCookie(“CG”)?readCookie(“CG”).substr(0,2):””),getURLParam=e=>{if(“https://www.cnn.com/2022/01/12/cnn-underscored/how-to-organize-life/undefined”==typeof document)return””;const n=e.replace(/[[]/,”[“).replace(/[]]/,”]”),t=new RegExp([?&amp;]${n}=([^&amp;#]*));if(document&&document.location&&document.location.search){const e=t.exec(document.location.search);return e?e[1]:””}return””},isIntl=()=>{let e=!1;return setHostAndPathNames(),e=”true”===getURLParam(“isIntl”)||(hostname.search(/^.(edition|edition-m|arabic|cnnespanol|cnne-test)./)>=0||””!==countryCode&&null!==countryCode&&(“US”!==countryCode&&”CA”!==countryCode)),e},piiRE=/(([^()[].,;:[email protected]”]+(.[^()[].,;:[email protected]”]+))|(“.+”))@(([^()[].,;:[email protected]”]+.)+[^()[].,;:[email protected]”]{2,})/i,piiIsPresentInQueryString=()=>{if(document.location.search){const e=document.location.search.search(piiRE)+1;let n;try{n=decodeURIComponent(document.location.search).search(piiRE)+1}catch(t){n=e}return 1===e||1===n}return!1},piiIsPresentInHash=()=>{if(document.location.hash){const e=document.location.hash.search(piiRE)+1;let n;try{n=decodeURIComponent(document.location.hash).search(piiRE)+1}catch(t){n=e}return e||n}return!1},piiIsPresentInReferrer=()=>{if(document.referrer){const e=document.referrer.search(piiRE)+1;let n;try{n=decodeURIComponent(document.referrer).search(piiRE)+1}catch(t){n=e}return e||n}return!1},piiFilter={qs:piiIsPresentInQueryString,hash:piiIsPresentInHash,ref:piiIsPresentInReferrer},retrieve=e=>{const n=kx${e},t=(()=>{try{return window.localStorage}catch(e){return null}})();if(t)return t[n]||””;if(navigator.cookieEnabled){const e=document.cookie.match(${n}=([^;]*));return e&&unescape(e[1])||””}return””},init=e=>{const n=new Promise((n=>{window.Krux||((window.Krux=function(){window.Krux.q.push([arguments])}).q=[]),window.krux_getFWKeyValues=(e,n)=>{window.Krux.segments=retrieve(“segs”)?retrieve(“segs”).split(“,”):[];const t=e||”_fwu:386123:”,o=n||35,r={};for(let e=0;e<window.Krux.segments.length;e++)e{let e=”&kxid=”;return window.Krux.user&&(e+=window.Krux.user),e+=&amp;kxseg=${window.kvs.join(",")},e},window.krux_getFWSegments=()=>(window.Krux.segments=retrieve(“segs”)?retrieve(“segs”).split(“,”):[],kxseg=${window.Krux.segments.join(",kxseg=")}),window.krux_getUser=()=>(window.Krux.user=retrieve(“user”),window.Krux.user),window.krux_getKuid=()=>(window.Krux.kuid=retrieve(“kuid”),window.Krux.kuid),setControlTag=e=>{const n=document,t=n.createElement(“script”),o=n.getElementsByTagName(“head”)[0];t.type=”text/javascript”,t.async=!0,t.src=`https://cdn.krxd.net/controltag?confid=${e}`,piiFilter.hash()||piiFilter.qs()||piiFilter.ref()||o.appendChild(t)},sendValuesToZion=()=>{window.Krux.user=retrieve(“user”),window.Krux.segments=retrieve(“segs”)?retrieve(“segs”).split(“,”):[],window.Krux.kuid=retrieve(“kuid”);const n=window.Krux.user,t=window.Krux.segments.filter((function(e,n){return n{if(e){const n=e.CONTROLTAGS?e.CONTROLTAGS:{DOM:e.DOM_CONTROLTAG,INTL:e.INTL_CONTROLTAG},t=isIntl()?n.INTL:n.DOM;setControlTag(t),e.SEND_VALUES_TO_ZION&&!subscribersSet&&(subscribersSet=!0,window.ZION_SDK?(zionBus=window.ZION_SDK.ZionMessageBus.getInstance(),sendValuesToZion()):window.addEventListener(“zion.loaded”,(()=>{zionBus=window.ZION_SDK.ZionMessageBus.getInstance(),sendValuesToZion()})))}n()})()}));return n.id=”Krux Module v4.1.4″,n};init(config);

    }

//snippet: hyphensocial
(function () {
window.addEventListener(“load”, (event) => {
if (document.location.href.includes(“facebook-paid”)) {
function getURLParameter(e, t) {
return (RegExp(t + “=(.+?)(&|$)”).exec(e) || [, null])[1];
}
function parse_query_string(e) {
for (var t = e.split(“&”), n = {}, a = 0; a -1 || e.indexOf(“FBAV”) > -1;
}
function os_system() {
var e = navigator.userAgent || navigator.vendor || window.opera;
return /windows phone/i.test(e)
? “Windows Phone”
: /android/i.test(e)
? “Android”
: /iPad|iPhone|iPod/.test(e) && !window.MSStream
? “iOS”
: “unknown”;
}
function affSwap() {
(window.aff_params = {}),
(window.base_tag = null),
(window.tag_count = 0);
let e = document
.querySelector(‘[data-editable=”content”]’)
.querySelectorAll(‘a:not([swapped=”true”])’);
if (e.length >= 5) {
for (const t of e) {
let e = [
getURLParameter(t.href.replace(“-20”, “”), “tag”),
getURLParameter(t.href.replace(“|”, “&”), “subId1”),
getURLParameter(t.href.replace(“|”, “&”), “u1”),
getURLParameter(t.href.replace(“|”, “&”), “afftrack”),
].join(“”);
(e in aff_params) & (“” != e)
? ((window.aff_params[e] += 1),
window.aff_params[e] > window.tag_count &&
((tag_count = window.aff_params[e]), (window.base_tag = e)))
: (aff_params[e] = 1);
}
for (const t of e) {
(t.onclick = function () {
fbq(“trackSingleCustom”, “404409197807416”, “affClick”, {
href: t.href,
});
}),
t.setAttribute(“swapped”, !0);
let e = params().utm_term;
if (e && “https://www.cnn.com/2022/01/12/cnn-underscored/how-to-organize-life/undefined” !== e) {
let n = t.href.replace(base_tag, e);
t.setAttribute(“href”, n);
}
if (
t.href.includes(“amazon”) &
browser() &
(“Android” == os_system())
) {
t.setAttribute(“target”, “_blank”);
let e =
“intent://#Intent;scheme=com.amazon.mobile.shopping.web://amazon.com/o/ASIN/” +
i
.getAttribute(“href”)
.match(“(?:[/dp/]|$)([A-Z0-9]{10})”)[0]
.replace(“/”, “”) +
“/” +
i.getAttribute(“href”).split(“?”)[1].split(“tag=”)[1] +
“/ref=nosim//;end”;
t.setAttribute(“href”, e);
}
}
}
}
!(function (e, t, n, a, r, o, i) {
e.fbq ||
((r = e.fbq =
function () {
r.callMethod
? r.callMethod.apply(r, arguments)
: r.queue.push(arguments);
}),
e._fbq || (e._fbq = r),
(r.push = r),
(r.loaded = !0),
(r.version = “2.0”),
(r.queue = []),
((o = t.createElement(n)).async = !0),
(o.src = “https://connect.facebook.net/en_US/fbevents.js”),
(i = t.getElementsByTagName(n)[0]).parentNode.insertBefore(o, i));
})(window, document, “script”),
fbq(“init”, “404409197807416”),
fbq(“track”, “PageView”),
affSwap(),
setInterval(affSwap, 5e3);
}
});
})();

}())

Leave a Reply