
/* Controltag Loader for Washington Post */
(function(){
  var debugging = /kxdebug/.test(location);
  var log = function() {
    // It's a flag, so if it's there, then it means debug.
    debugging && window.console && console.log([].slice.call(arguments).join(' '));
  };

  var load = function(url, callback) {
    log('Loading script from:', url);
    var node = document.createElement('script');
    node.async = true;  // This is just to be friendly.
    node.src = url;

    // Connect to both in case we're in older IE.
    node.onload = node.onreadystatechange = function() {
      var state = node.readyState;
      if (!callback.done && (!state || /loaded|complete/.test(state))) {
        log('Script loaded from:', url);
        callback.done = true;  // Mark the callback, so we don't load it twice on accident.
        callback();
      }
    };

    // Fetch the first script element, so we can insert the
    // controltag before it. There *must* be at least one
    // script element, or this code would never be called
    var sibling = document.getElementsByTagName('script')[0];
    sibling.parentNode.insertBefore(node, sibling);
  };

  // ControlTag simply crashes when opening a website from Twitter browser on
  // iOS, temporarily disable CT when Twitter for iPhone is detected until they
  // fix this (works fine with other twitter client though)
  if (/Twitter for iPhone/.test(window.navigator.userAgent || '')) return;

  var config = {"partner_segment_map": {}, "context_terms": [{"id": "It03V-vk", "value": "visa signature"}, {"id": "It03WASn", "value": "credit card"}, {"id": "It03WAvJ", "value": "nissan maxima"}, {"id": "I-C2we_V", "value": "healthcare"}, {"id": "I-C2wfMo", "value": "Affordable Care Act"}, {"id": "I-C2wfZg", "value": "Obamacare"}, {"id": "I-C2wfmm", "value": "Medicare"}, {"id": "I-C2wfzz", "value": "Medicaid"}, {"id": "I-C2wgA-", "value": "National Kidney Foundation"}, {"id": "I-C2wgOE", "value": "National Alliance on Mental Illness"}, {"id": "I-C2wgjm", "value": "Part D"}, {"id": "I-C2wgwe", "value": "Patient Protection"}], "tags": [{"content": "<script type=\"text/javascript\">Krux('social.init');</script>", "target": null, "target_action": "append", "require": "", "docwrite": null, "internal": 1, "template_replacement": 1, "execution_results": null, "tier": 1, "library_tag_config": {}, "content_type": "html", "timing": "onload", "method": "document", "type": "library", "id": 24879, "name": "Krux Track Social"}, {"content": "<script>\r\n// LiveRamp universal user match\r\n\r\n(function(){\r\n  var kuid = Krux('get', 'user');\r\n  if (kuid) {\r\n      var liveramp_url = 'https://idsync.rlcdn.com/379708.gif?partner_uid=' + kuid;\r\n      var i = new Image();\r\n      i.src = liveramp_url;      \r\n  }\r\n})();\r\n</script>", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 63, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 41063, "name": "NetProspex provider tag"}, {"content": "<script>\r\n(function(){\r\n  var kuid = Krux('get', 'user');\r\n  if (kuid) {\r\n    Krux('require:http').pixel({\r\n      url: \"//loadm.exelator.com/load\",\r\n      data: {\r\n          _kdpid: 'e4942ff0-4070-4896-a7ef-e6a5a30ce9f9',\r\n          buid: kuid,\r\n          p: '204',\r\n          g: '270',\r\n          j: '0'\r\n      }});\r\n  }\r\n  })();\r\n</script>", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 11, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 23156, "name": "eXelate Media provider tag"}, {"content": "<script>\r\n// this tag is intentionally blank\r\n</script>", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 6, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 22656, "name": "Technographic Data provider tag"}, {"content": "", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 14, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "id": 22657, "name": "Krux Geographic Data provider tag"}, {"content": "<img src=\"//adadvisor.net/adscores/g.js?sid=9212244187&_kdpid=2111c0af-fc3a-446f-ab07-63aa74fbde8e\" />", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 22, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 23427, "name": "AdAdvisor S2S provider tag"}, {"content": "<script>\r\n(function() {\r\n  var sniff;\r\n  try {\r\n    sniff = Krux('require:sniff');\r\n  } catch(e) {} \r\n\r\n  // krxd.nexac.com throws SSL cert errors so only fire this tag\r\n  // on HTTP pages\r\n  if (location.protocol == \"http:\") {\r\n      var kuid = Krux('get', 'user');\r\n      if (kuid) {\r\n         var u = \"http://krxd.nexac.com/dlx.gif?_kdpid=2dd640a6-6ebd-4d4f-af30-af8baa441a0d&kuid=\" + kuid;\r\n         (new Image()).src = u;\r\n         var di = \"http://beacon.krxd.net/event.gif?event_id=Jo7PIOui&type=regular&event_type=cnt\";\r\n         (new Image()).src = di;   \r\n      }\r\n      else if (sniff && sniff.browser === sniff.Browsers.SAFARI) {\r\n        var u = \"http://krxd.nexac.com/dlx.gif?_kdpid=2dd640a6-6ebd-4d4f-af30-af8baa441a0d&browser=safari&kuid=\" + kuid;\r\n        (new Image()).src = u;\r\n      }\r\n   } else {\r\n       var di = \"https://beacon.krxd.net/event.gif?event_id=Jo7PIOui&type=secure&event_type=cnt\";\r\n       (new Image()).src = di;   \r\n   }\r\n})();\r\n</script>", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 8, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 23429, "name": "DataLogix provider tag"}, {"content": "", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 67, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "id": 43672, "name": "WhoToo Partner Network provider tag"}, {"content": "<script>\r\n(function(){\r\n  var kuid = Krux('get', 'user');\r\n  if (kuid) {\r\n      var liveramp_url = 'https://idsync.rlcdn.com/379708.gif?partner_uid=' + kuid;\r\n      var i = new Image();\r\n      i.src = liveramp_url;      \r\n  }\r\n})();\r\n</script>", "target": null, "target_action": "append", "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 21, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 23255, "name": "Acxiom S2S provider tag"}, {"content": "<script>\r\n(function(){     \r\n\tvar kuid = window.Krux('get', 'user');\r\n\tif (kuid) {\r\n\t     var min = 1000000000;\r\n\t     var max = 9999999999;\r\n\t     var rand = Math.floor(Math.random() * (max - min)) + min;\r\n\t     var kuid = Krux('get', 'user');\r\n\t     var prefix = location.protocol == 'https:' ? \"https:\" :\"http:\";\r\n\t     var r_url = prefix + '//b3.mookie1.com/1/usermatch/krux/'\r\n\t     var kurl = r_url + rand + '@x55' + '?' + kuid;\r\n\t     var i = new Image();\r\n\t     i.src = kurl;\r\n\t}\r\n})();\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": 1, "content_type": "html", "timing": "onload", "method": "document", "type": "publisher", "id": 45319, "name": "xaxis user match"}, {"content": "<script>\r\n// Using Meta keywords to produce page attribute keywords\r\nKrux('scrape', { \"page_attr_keywords\": {meta_name: \"keywords\"}});\r\n// Using Omniture prop34 to produce page attribute omniture_prop34\r\nKrux('set', 'page_attr_omniture_prop34', typeof window.s =='object' && window.s['prop34']);\r\n// Using Globals wp_section to produce page attribute wp_section\r\nKrux('scrape', { \"page_attr_wp_section\": {js_global: \"wp_section\"}});\r\n// Using Globals wp_subsection to produce page attribute wp_subsection\r\nKrux('scrape', { \"page_attr_wp_subsection\": {js_global: \"wp_subsection\"}});\r\n// Using Globals wp_content_category to produce page attribute wp_content_category\r\nKrux('scrape', { \"page_attr_wp_content_category\": {js_global: \"wp_content_category\"}});\r\n// Using Globals wp_meta_data.wt to produce page attribute wp_meta_data.wt\r\nKrux('scrape', { \"page_attr_wp_meta_data.wt\": {js_global: \"wp_meta_data.wt\"}});\r\n// Using Cookie rplm to produce page attribute cookie_rplm\r\nKrux('scrape', { \"page_attr_cookie_de\": {cookie: \"de\"}});\r\n// Using Globals wp_blogname to produce page attribute wp_blogname\r\nKrux('scrape', { \"page_attr_wp_blogname\": {js_global: \"wp_blogname\"}});\r\n// Using Globals wp_author to produce page attribute wp_author\r\nKrux('scrape', { \"page_attr_wp_author\": {js_global: \"wp_author\"}});\r\nKrux('scrape', { \"page_attr_wp_pvid\": {js_global: \"wp_pvid\"}});\r\n\r\n// Set section/subsection\r\n  Krux('set', {\r\n    section: Krux('get', 'page_attr_wp_section'),\r\n    subsection: Krux('get', 'page_attr_wp_subsection')\r\n  });\r\n\r\n// Using Omniture eVar62 to produce user attribute omniture_evar62\r\nKrux('set', 'user_attr_omniture_evar62', typeof window.s =='object' && window.s['eVar62']);\r\n\r\n// Set user attribute for subscriber type\r\n(function() {\r\n    if (window.s && window.s['prop65'] && window.s.prop65 !== 'none') {\r\n        var subType = window.s.prop65.replace(/[0-9]/g,'').split(',');\r\n        Krux('set','user_attr_sub_types', (subType.filter(function(e) { return e !== ''})));\r\n    }\r\n})();\r\n\r\n// Set Topics\r\n(function() {\r\n  if (window.wp_meta_data && window.wp_meta_data.clavis) {\r\n    var topics = []; \r\n    var i;\r\n    for(i = 0; i < wp_meta_data.clavis.topics.length; i++) {\r\n        topics[i] = wp_meta_data.clavis.topics[i].replace(/,/g,'');\r\n    }\r\n     \r\n    if (topics !=null && topics != \"\")  {\r\n    Krux('set', {'page_attr_topics': topics });\r\n    }\r\n  }\r\n})();\r\n\r\n\r\n// Set array of auxiliary values into context & keywords attr auxiliaries\r\n// 20141211 author mfisher\r\n(function() {\r\n\r\n    if (window.wp_meta_data && typeof window.wp_meta_data.clavis != 'undefined' && typeof window.wp_meta_data.clavis.auxiliary_names != 'undefined') {\r\n\r\n        var aux = [];\r\n        var q;\r\n\r\n        for (q = 0; q < wp_meta_data.clavis.auxiliary_names.length; q++) {\r\n            aux[q] = wp_meta_data.clavis.auxiliary_names[q].replace(/,/g, '');\r\n        }\r\n    }\r\n    if (aux != null && aux != \"\") {\r\n        Krux('set', {\r\n            'page_attr_aux': aux\r\n        });\r\n    }\r\n})();\r\n\r\n\r\n//Pull paywall info \r\n// 2014 11 17 coluzzi check TWP object (was throwing errors on page) \r\nif (typeof TWP != 'undefined') {\r\n    (function () {\r\n\r\n        if (TWP.Identity.paywall && TWP.Identity.paywall.pwresp) {\r\n            var mtfn = TWP.Identity.paywall.pwresp.mtfn;\r\n            var sub = TWP.Identity.paywall.pwresp.sub;\r\n            var mtr = TWP.Identity.paywall.pwresp.mtr;\r\n\r\n            if (mtfn != null) {\r\n                Krux('set', {\r\n                    'page_attr_mtfn': mtfn\r\n                });\r\n            }\r\n            if (sub != null) {\r\n                Krux('set', {\r\n                    'page_attr_sub': sub\r\n                });\r\n            }\r\n            if (mtr != null) {\r\n                Krux('set', {\r\n                    'page_attr_mtr': mtr\r\n                });\r\n            }\r\n\r\n        }\r\n    })();\r\n}\r\n\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": 1, "content_type": "html", "timing": "onload", "method": "document", "type": "publisher", "id": 23049, "name": "Krux Data Transfer Code"}, {"content": "<script>\r\n  Krux('require:http').pixel({\r\n    url: \"//s.ixiaa.com/digi/C726AB29-0470-440B-B8D2-D552CED3A3DC/a.gif\"\r\n  });\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 28, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 23428, "name": "IXI Digital (Open Market) provider tag"}, {"content": "<script>\r\n(function(){\r\n\tvar prefix = location.protocol == 'https:' ? \"https:\" : \"http:\";\r\n\tvar restUrl = '//tag.researchnow.com/t/beacon?pr=4821&ca=WP&pl=SITE&si=WP&adn=3&tt=3';\r\n\tvar completeUrl = prefix + restUrl;\r\n\tvar image = new Image();\r\n\timage.src= completeUrl;\r\n})();\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": false, "content_type": "html", "timing": "onload", "method": "document", "type": "publisher", "id": 42132, "name": "Research Now All Sites Except Mobile"}, {"content": "<script>\r\n\r\n(function () {\r\n_ml = window._ml || {};\r\n_ml.pub = '748';\r\n_ml.redirect = '//beacon.krxd.net/usermatch.gif?partner=madisonlogic&partner_uid=[PersonID]';\r\nvar s = document.getElementsByTagName('script')[0], cd = new Date(), mltag = document.createElement('script');\r\nmltag.type = 'text/javascript'; mltag.async = true;\r\nmltag.src = '//ml314.com/tag.aspx?' + cd.getDate() + cd.getMonth() + cd.getFullYear();\r\ns.parentNode.insertBefore(mltag, s);\r\n})();\r\n\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 1, "internal": 47, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "data provider", "id": 43671, "name": "Madison Logic provider tag"}, {"content": "<script type='text/javascript\u2019 src='http://pixel.mathtag.com/sync/js?sync=auto'>\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": 1, "content_type": "html", "freq_cap": 3, "timing": "onload", "method": "document", "type": "publisher", "id": 27033, "name": "MediaMath User Matching"}, {"content": "<script>\r\n// Using Globals commercialNode to produce page attribute commercialnode\r\nKrux('scrape', { \"page_attr_commercialnode\": {js_global: \"commercialNode\"}});\r\n\r\n(function() {\r\n  if (TWP && TWP.Identity && TWP.Identity.paywall && TWP.Identity.paywall.pwresp) {\r\n    var mtrct = TWP.Identity.paywall.pwresp.mtrct;\r\n     \r\n    if (mtrct !=null)  {\r\n    Krux('set', {'page_attr_mtrct': mtrct });\r\n    }\r\n  }\r\n})();\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": 1, "content_type": "html", "timing": "onload", "method": "document", "type": "publisher", "id": 23533, "name": "Krux Data Transfer Code - Commercial Node + new"}, {"content": "<script>(function() {\r\n  var _fbq = window._fbq || (window._fbq = []);\r\n  if (!_fbq.loaded) {\r\n    var fbds = document.createElement('script');\r\n    fbds.async = true;\r\n    fbds.src = '//connect.facebook.net/en_US/fbds.js';\r\n    var s = document.getElementsByTagName('script')[0];\r\n    s.parentNode.insertBefore(fbds, s);\r\n    _fbq.loaded = true;\r\n  }\r\n  _fbq.push(['addPixelId', '525550007567175']);\r\n})();\r\nwindow._fbq = window._fbq || [];\r\nwindow._fbq.push(['track', 'PixelInitialized', {}]);\r\n</script>\r\n<noscript><img height=\"1\" width=\"1\" alt=\"\" style=\"display:none\" src=\"https://www.facebook.com/tr?id=525550007567175&amp;ev=NoScript\" /></noscript>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": [{"capture": false, "type": "popstate", "func": "function () {\n    j = i;\n    i = c.href;\n    e.push([\"track\", \"PixelInitialized\"]);\n}"}]}, "tier": 1, "internal": false, "content_type": "html", "criteria": [{"operator": "=", "name": "country", "value": "US"}, {"operator": "=", "name": "segment", "value": "opeznco9d"}], "timing": "onload", "method": "document", "type": "publisher", "id": 31738, "name": "MKTG: NOT Subs & Views>=7"}, {"content": "<script type=\"text/javascript\">\r\n(function(require) {\r\n    var config = require('config')();\r\n    var store = require('store');\r\n    var _ = require('util');\r\n    var segments;\r\n\r\n    function handleUserDataResponse(r) {\r\n        // Handle the response as usual.\r\n        segments.handleUserDataResponse(r);\r\n\r\n        // Override localStorage.kxuser with a case-insensitive value for DFP premium.\r\n        // This will get read by the interchange direct snippet for Krux.user\r\n        // and Krux.dfpKeyValues\r\n        if(r.kuid_long) {\r\n            store.set('user', r.kuid_long, store.DAYS*30);\r\n        }\r\n    }\r\n\r\n    function useFirstPartyCookie() {\r\n        // Older versions of CT don't have feature.\r\n        try {\r\n            var feature = Krux('require:feature');\r\n            // If they don't have 3rd party cookies, then we rely on 1st party.\r\n            return !feature.hasThirdPartyCookies();\r\n        } catch (e){\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // Our own fetch uses our own handleResponse\r\n    function fetch() {\r\n        var data = {pub: _.get('pubid')};\r\n\r\n        // Skip \r\n        if (useFirstPartyCookie() && Krux('get', 'user')) {\r\n            data._kuid = Krux('get', 'user');\r\n        }\r\n        var options = {\r\n            url: _.get('url_userdata'),\r\n            data: data,\r\n            callback: 'kxjsonp_userdata',\r\n            done: handleUserDataResponse\r\n        };\r\n\r\n        // SEE: SCRUM-1129\r\n        var orgUserId = _.get('org_user_id');\r\n        if(orgUserId) {\r\n            options.data._kuid = orgUserId;\r\n        }\r\n\r\n        var fpId, fp;\r\n        var useFingerprint = config.get('params.fingerprint', false);\r\n        if (useFingerprint) {\r\n            fpId = _.get('fp_id');\r\n            options.data.kxfp = fp = _.get('fp');\r\n            // Ensure we don't send the fingerprint as the id (it mascarades in fallback mode)\r\n            if (fpId && fpId.length !== fp.length) {\r\n                options.data.kfuid = fpId;\r\n            }\r\n        }\r\n\r\n        if(!segments.readTechFromStore()) {\r\n            options.data.technographics = 1;\r\n        }\r\n        require('http').jsonp(options);\r\n    }\r\n\r\n    if (!useFirstPartyCookie()) {\r\n        Krux('set', 'user', Krux('require:store').get('kuid'));\r\n    }\r\n\r\n    if(!store.get('segWait')) {\r\n        // disable segments.fetch and use our own\r\n        _.set('segWait', 1, store.MINUTES*5);\r\n        _.onOnce('dom:load', fetch);\r\n        _.fire('user_data_fetch_scheduled');\r\n    }\r\n\r\n    // Finally, require segments as usual.\r\n    segments = require('segments');\r\n}(Krux.require));\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": null, "tier": 2, "internal": 1, "content_type": "html", "timing": "onload", "method": "document", "type": "publisher", "id": 22658, "name": "Krux Load Segments v4"}, {"content": "<script>(function() {\r\n  var _fbq = window._fbq || (window._fbq = []);\r\n  if (!_fbq.loaded) {\r\n    var fbds = document.createElement('script');\r\n    fbds.async = true;\r\n    fbds.src = '//connect.facebook.net/en_US/fbds.js';\r\n    var s = document.getElementsByTagName('script')[0];\r\n    s.parentNode.insertBefore(fbds, s);\r\n    _fbq.loaded = true;\r\n  }\r\n  _fbq.push(['addPixelId', '525550007567175']);\r\n})();\r\nwindow._fbq = window._fbq || [];\r\nwindow._fbq.push(['track', 'PixelInitialized', {}]);\r\n</script>\r\n<noscript><img height=\"1\" width=\"1\" border=\"0\" alt=\"\" style=\"display:none\" src=\"https://www.facebook.com/tr?id=525550007567175&amp;ev=NoScript\" /></noscript>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 10, "internal": false, "content_type": "html", "criteria": [{"operator": "=", "name": "segment", "value": "oc3w0p1cy"}], "timing": "onload", "method": "document", "type": "publisher", "id": 30394, "name": "Facebook sample"}, {"content": "<!-- Facebook Conversion Code for Checkouts -->\r\n\r\n<script>(function() {\r\n\r\nvar _fbq = window._fbq || (window._fbq = []);\r\n\r\nif (!_fbq.loaded) {\r\n\r\nvar fbds = document.createElement('script');\r\n\r\nfbds.async = true;\r\n\r\nfbds.src = '//connect.facebook.net/en_US/fbds.js';\r\n\r\nvar s = document.getElementsByTagName('script')[0];\r\n\r\ns.parentNode.insertBefore(fbds, s);\r\n\r\n_fbq.loaded = true;\r\n\r\n}\r\n\r\n})();\r\n\r\nwindow._fbq = window._fbq || [];\r\n\r\nwindow._fbq.push(['track', '6014697289233', {'value':'0.01','currency':'USD'}]);\r\n\r\n</script>\r\n\r\n<noscript><img height=\"1\" width=\"1\" alt=\"\" style=\"display:none\" src=\"https://www.facebook.com/tr?ev=6014697289233&amp;cd[value]=0.01&amp;cd[currency]=USD&amp;noscript=1\" /></noscript>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": false, "content_type": "html", "criteria": [{"operator": "=", "name": "country", "value": "US"}], "timing": "onready", "method": "document", "type": "publisher", "id": 31265, "name": "FB Checkout"}, {"content": "<script>\r\n(function () {\r\n    function getCookie(c_name) {\r\n        var c_value = document.cookie;\r\n        var c_start = c_value.indexOf(c_name + \"=\");\r\n        if (c_start == -1) {\r\n            c_start = c_value.indexOf(c_name + \"=\");\r\n        }\r\n        if (c_start == -1) {\r\n            c_value = null;\r\n        } else {\r\n            c_start = c_value.indexOf(\"=\", c_start) + 1;\r\n            var c_end = c_value.indexOf(\";\", c_start);\r\n            if (c_end == -1) {\r\n                c_end = c_value.length;\r\n            }\r\n            c_value = unescape(c_value.substring(c_start, c_end));\r\n        }\r\n        return c_value;\r\n    }\r\n\r\n    var wpatc = getCookie(\"WPATC\");\r\n    if (wpatc != null && wpatc != \"\") {\r\n        var n = wpatc.split(\":\");\r\n        for (i = 0; i < n.length; i++) {\r\n            // get attribute pairs\r\n            var attribute = n[i].toUpperCase();\r\n            var split_value = attribute.split(\"=\");\r\n\r\n            switch (split_value[0]) {\r\n                case \"A\":\r\n                    // set attribute of A\r\n                    var value = split_value[1];\r\n                    Krux('set', {\r\n                        'user_attr_A': value\r\n                    });\r\n                    break;\r\n                case \"B\":\r\n                    // set attribute of B AND KEEP reading\r\n                    var value = split_value[1];\r\n                    if (value < 25) {\r\n                        Krux('set', {\r\n                            'user_attr_B_Job': value\r\n                        });\r\n                    } else if (value >= 25 && value <= 59) {\r\n                        Krux('set', {\r\n                            'user_attr_B_Responsibility': value\r\n                        });\r\n                    } else if (value >= 60 && value <= 99) {\r\n                        Krux('set', {\r\n                            'user_attr_B_Industry': value\r\n                        });\r\n                    } else if (value >= 100 && value <= 110) {\r\n                        Krux('set', {\r\n                            'user_attr_B_Size': value\r\n                        });\r\n                    }\r\n                   case \"D\":\r\n                    value = split_value[1];\r\n                    if (value >= 1 && value <= 5) {\r\n                    Krux('set', {\r\n                        'user_attr_D': value\r\n                    });\r\n                    break;\r\n                    }\r\n            }\r\n        }\r\n    }\r\n})();\r\n</script>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": 1, "content_type": "html", "timing": "onready", "method": "document", "type": "publisher", "id": 27248, "name": "WPATC Ingest"}, {"content": "<script>(function() {\r\n  var _fbq = window._fbq || (window._fbq = []);\r\n  if (!_fbq.loaded) {\r\n    var fbds = document.createElement('script');\r\n    fbds.async = true;\r\n    fbds.src = '//connect.facebook.net/en_US/fbds.js';\r\n    var s = document.getElementsByTagName('script')[0];\r\n    s.parentNode.insertBefore(fbds, s);\r\n    _fbq.loaded = true;\r\n  }\r\n  _fbq.push(['addPixelId', '525550007567175']);\r\n})();\r\nwindow._fbq = window._fbq || [];\r\nwindow._fbq.push(['track', 'PixelInitialized', {}]);\r\n</script>\r\n<noscript><img height=\"1\" width=\"1\" border=\"0\" alt=\"\" style=\"display:none\" src=\"https://www.facebook.com/tr?id=525550007567175&ev=NoScript\" /></noscript>", "target": "", "target_action": null, "require": "", "docwrite": null, "template_replacement": 1, "execution_results": {"onloadSafe": true, "docwrite": false, "listeners": []}, "tier": 1, "internal": false, "content_type": "html", "criteria": [{"operator": "=", "name": "segment", "value": "of61en0yu,nu9nuucoe,ntod7r5ek,nyzorrn0q,nwn4wthb5"}], "timing": "onready", "method": "document", "type": "publisher", "id": 30581, "name": "MKTG Gov and Mil"}], "segments": [], "publisher": {"uuid": "415dda7b-13ba-40f3-9a60-eb3ba310f160", "id": 11974, "name": "Washington Post"}, "controltag_options": {"async": "true", "render": true}, "site": {"id": 14227, "name": "Washington Post"}, "prioritized_segments": ["pmey58pzx", "n881e6bd0", "o37ewguj0", "o30n32aic", "o30nqvgvo", "o30m15xhm", "onzzsiicb", "oul9e5iwv", "ohduro4zg", "oypr8npxc", "peoik2xew", "pg1tlpf1r", "ns4f45fqg", "oypdm9cie", "nslj5f5ui", "oyoqgalbb", "oyop6uiyc", "nka000vpg", "oyhkuxted", "oyhj39zbh", "oyhjiwo8d", "nn2oqto66", "ng78o5120", "pgfuaz5ob", "n5stjvxz6", "njqr3rlsc", "nzug6ge3t", "nizexw04v", "n599knwgw", "n7n6ja380", "ohp0mz1gc", "odinv5rgo", "nknaxeam8", "nizphkubo", "nizspxrg4", "njfarv02p", "ogtnc36ch", "nkaz6dzi4", "n7secqldd", "oeaews4x9", "ojdtffw89", "oxpzz3sg5", "nmcwihpq8", "njqs6hdt6", "nznj688mz", "nu40mrodt", "nizgsrzre", "nkm9v2j67", "nknceqoj4", "n7n68hkzz", "njrt8io0s", "n25o95yrk", "nley4unu3", "nlezpi42g", "nknctom55", "nxb45k01c", "npl71xosi", "ogtnh42r1", "njnd110xn", "nxb42ktg5", "nka0r3165", "nkznjpcww", "odimvsm03", "nknbvoafm", "njqrbzas6", "nr8i4cziq", "nlrail0ay", "nv3vpl4sc", "nizfti7z9", "nizqkg0gz", "nstxofuh1", "n4g82yuw9", "nhbuddf78", "njqssl8fx", "oenpp1t7j", "ntkt32gbs", "nkay78wok", "ohlx12bkc", "onjyc5m6y", "nps2kwa83", "njqrl1bfb", "onkqugi7u", "n9oi8vlqc", "of9q09k7m", "ntoboq1k5", "nu9rdyziw", "n9wqkxddz", "oqoaud1gj", "nzuehynfk", "nwn4wthb5", "olj8boj3h", "oeiuizocd", "nwsmpntc8", "ng780og69", "nvwljtfnx", "niv0ol064", "oe67lrdza", "nizgegx3a", "nzadp13wc", "nizrx7sno", "nivurvgqp", "nka0l7q2e", "nh304tyj9", "nyzorrn0q", "ogttj7dlx", "nizsx81pa", "odqggb931", "nps167ytl", "os28v6au3", "o0o0tnjwm", "nkaz82lct", "nizhn0oxy", "njn3lvekn", "nzud0rq2b", "obzswvk15", "nkfu63bjs", "njqrvfxac", "niv0g0yi7", "opzv4wf5w", "n9cmfefqm", "oh986m12r", "njn3whm99", "objk4rdk0", "n9ckaa3af", "oqrx9hhrg", "nkzqstvs6", "olo7nzgfd", "oaf393v4t", "n9cjhv5j3", "nzuf2i20h", "n9nkusmnm", "nzrubsvw7", "olo9jpfri", "oh98velyu", "oe3ag8w9e", "nukdjwipa", "ntsvbd0dw", "n9cmodee2", "nu9nuucoe", "nwsm55rws", "nv0k4rd7m", "nkaxmter1", "n5wq9er1m", "ntod7r5ek", "oqzz0pgzy", "n9nuwiiy3", "ovhfgrpa5", "ov05tibrh", "ov06icq6a", "ov47838la", "ovh0y2z36", "ov05m8ddz", "ov05ynk2y", "oygp6ls41", "o0oy9g7xr", "o66mrbymd", "o1wv6mfsc", "o3tcoc2qg", "o6y85e48j", "o63hyi49b", "o8ifq0rb1", "o9adnautp", "o9nyibm86", "o9n1kd5ew", "nmcwigidj", "padynukjo", "o1wvx73u8", "pa1sdfzt2", "pa1u906pm", "pblp17ry2", "oc3xggnii", "oc3w9t9qy", "pbtpwkm1z", "pblp8gsr5", "pblqq8z9h", "pblqoung0", "pblqlg4ay", "pblqeizqr", "pblqbpi4q", "nwhpqx68b", "odqgpfxos", "of61en0yu", "pcaanrnov", "pfjydrtrm", "pfkunmfbz", "pfkw5je8x", "pfnuhh0ff", "pgvd2zmg6", "pgvz7wah1", "pg3hrjia3", "pg3hwp4z9", "pg3h1y140", "pg8k0iyz6", "phnhft15r", "phnhjyx77", "phnhphy7q", "ph25uplvj", "pii6wg4mh", "pipaklr2e", "pjygshs63", "pjygwwx96", "pjyg7l9yy", "pjyhbhqr4", "pjyheo6wt", "pjyhh7mt2", "pjyhk9qj4", "pjyhoswmi", "nstxk2kbu", "oc3w0p1cy"], "dnt": null, "params": {"connector_host": "connector.krxd.net", "control_tag_load_sync": "false", "fingerprint": "true", "disable_http_compression": false, "remove_kxhead": "0", "supertag_requires_approval": false, "config_source": 1, "control_tag_stats_prefix": null, "beacon_host": "beacon.krxd.net", "max_segments": "25", "control_tag_pixel_throttle": "100", "user_id_cookie": null, "first_party_uid": false, "no_pii": 0, "recommend": false, "revenue_optimization": false, "context_terms": "true", "jslog_host": "jslog.krxd.net", "site_level_supertag_config": "site", "max_slot_time": 1000, "services_host": "apiservices.krxd.net", "capture_leakage": true, "client_side_storage": "localStorage,cookie", "userData_host": "cdn.krxd.net", "control_tag_namespace": null, "control_tag_version": "stable", "capture_js_errors": "true", "datatag_version": "3", "dfp_premium": "true", "userdata_host": "cdn.krxd.net", "target_fingerprint": "false"}, "services": {"impression": "//beacon.krxd.net/ad_impression.gif", "stats": "//apiservices.krxd.net/stats", "userdata": "//cdn.krxd.net/userdata/get", "userData": "//cdn.krxd.net/user_data/segments/3", "um": "//apiservices.krxd.net/um", "optout": "//beacon.krxd.net/optout_check", "pixel": "//beacon.krxd.net/pixel.gif", "contentConnector": "//connector.krxd.net/content_connector/", "is_optout": "//beacon.krxd.net/optout_check", "set_optin": "//apiservices.krxd.net/consumer/optin", "social": "//beacon.krxd.net/social.gif", "set_optout": "//apiservices.krxd.net/consumer/optout", "data": "//beacon.krxd.net/data.gif", "event": "//beacon.krxd.net/event.gif", "log": "//jslog.krxd.net/jslog.gif"}, "geo": {}, "realtime_segments": [{"test": ["and", ["or", ["and", ["or", ["intersects", "$page_attr_wp_section", "[\"entertainment\"]"]]]]], "id": "niv0ol064"}], "confid": "IbWIJ0xh"};

  // Wrap in a function and comment, then toString the func and replace
  // everything that's not the beginning or end of a JSON object, so we get a
  // string that's either empty or JSON.
  var esiGeo = String(function(){/*
    {"CONTINENT":"NA", "COUNTRY":"CA", "REGION":"ON", "CITY":"", "DMA":"0", "AREACODE":"0", "ZIP":"", "LATITUDE":"43.667", "LONGITUDE":"-79.417"}
  */}).replace(/^.*\/\*[^{]+|[^}]+\*\/.*$/g, '');

  if (esiGeo) {
    log('Got a request for:', esiGeo, 'adding geo to config.');
    try {
      config.geo = window.JSON.parse(esiGeo);
    } catch (__) {
      // Couldn't parse, so setting to {}
      log('Unable to parse geo from:', config.geo);
      config.geo = {};
    }
  }

  
  
  

  load('//cdn.krxd.net/ctjs/controltag.js.875fd5b280a77e06def8c74a5a268e2c', function() {
    
    
    log('Loading krux configuration.');

    Krux('config', config);

    
  });
})();
