


(function() {
    var amznAutoTagger=function(a){var c={};c.process=function(e){d(e,a.trackingId);};var b=["tag","tag-value","tag_value","t"];function d(h,e){var g=false;for(var f=0;f<b.length;f++){if(amznOneTagUtils.isQueryParamPresent(h,b[f])){g=true;break;}}if(!g){amznOneTagUtils.addQueryParam(h,"linkCode","w50");amznOneTagUtils.addQueryParam(h,"tag",e);}}return c;};
    var amznOneTagUtils=(function(){var b={};var a={CA:"ca",CN:"cn",IN:"in",DE:"de",FR:"fr",GB:"co.uk",JP:"co.jp",US:"com"};var d=["kdp.amazon.com"];var c="ots";b.fetchAmznLinks=function(j,e){var k=a[e];var l=new RegExp("^(http|https)://(www|[\\w\\-\\.]+)?amazon\\.("+k+")/","i");var h=j.getElementsByTagName("a");var g=[];for(i=0;i<h.length;i++){var f=String(h[i].href);if(f.match(l)&&!isAnExcludedLink(f)){g.push(h[i]);}}return g;};b.markLinkAsProcessed=function(e){if(b.isLinkProcessed(e)){return;}b.addQueryParam(e,c,"1");};b.isLinkProcessed=function(e){return e.search.indexOf("ots=1")!==-1;};b.addQueryParam=function(f,e,g){if(f.search.length===0){f.search=f.search.concat("?"+e+"="+g);}else{f.search=f.search.replace(/\?/,"?"+e+"="+g+"&");}};b.isQueryParamPresent=function(g,f){var e="/?"+f+"=([^&]+)|&"+f+"=([^&]+)/";return g.search.match(e);};b.getCurrentUrl=function(){return(window.location!==window.parent.location)?document.referrer:document.location.href;};isAnExcludedLink=function(g){var f,e=false;for(f=0;f<d.length;f++){if(g.match(d[f])){e=true;break;}}return e;};b.isTrackingEnabled=function(){return !window["aa-disable-onetag-tracking"];};return b;}());var amznLinkSlot=(function(){var a={};var b=-1;a.getSlot=function(){return b;};a.increment=function(){b++;};return a;}());var amznPageHandler=function(c){var e={};var b=[];var d=null;var a=function(){if(typeof amznFetchImpression!=="undefined"&&amznOneTagUtils.isTrackingEnabled()){b.push(amznFetchImpression(c));}if(typeof amznTransitRecorder!=="undefined"&&amznOneTagUtils.isTrackingEnabled()){b.push(amznTransitRecorder(c));}if(typeof amznPixelRecorder!=="undefined"&&amznOneTagUtils.isTrackingEnabled()){b.push(amznPixelRecorder(c));}var j=null;if(b.length){j=b[0];for(var h=1;h<b.length;h++){var f=b[h];var k=b[h-1];k.setNextStep(f.process);}var g=b[b.length-1];g.setNextStep(e.completed);}return j;};e.handleRequest=function(){var f=a();if(f){f.process(document);}else{e.completed();}};e.setNextHandler=function(f){d=f;};e.completed=function(){if(d){d();}};return e;};var amznLinkHandler=function(c){var e={};var d=null;var b=[];var a=function(f){if(typeof amznAutoTagger!=="undefined"){b.push(amznAutoTagger(c));}if(typeof amznPixelRecorder!=="undefined"&&amznOneTagUtils.isTrackingEnabled()){b.push(amznPixelRecorder(c));}if(typeof amznImpressionAppender!=="undefined"&&amznOneTagUtils.isTrackingEnabled()){b.push(amznImpressionAppender(c));}};e.handleRequest=function(){var g=amznOneTagUtils.fetchAmznLinks(document,c.region);if(b.length===0){a();}for(var f=0;f<g.length;f++){if(!amznOneTagUtils.isLinkProcessed(g[f])){amznLinkSlot.increment();b.forEach(function(h){h.process(g[f]);});amznOneTagUtils.markLinkAsProcessed(g[f]);}}e.completed();};e.setNextHandler=function(f){d=f;};e.completed=function(){if(d){d();}};return e;};var amznMutationRunner=function(h){var g={};var f=3000;var c={childList:true,subtree:true,chracterData:true};var e=document.body;var j,a;var d=false;function b(){a=Date.now();j=a;h.handleRequest();d=false;}g.process=function(){h.setNextHandler(null);j=Date.now();var k=new MutationObserver(function(l){a=Date.now();if(a-j>f){j=a;h.handleRequest();}else{if(!d){d=true;setTimeout(b,f);}}});k.observe(e,c);};return g;};var amznDynamicContentHandler=function(a){var c={};var b=null;c.handleRequest=function(){if(typeof amznMutationRunner!=="undefined"){amznMutationRunner(a).process();}c.completed();};c.setNextHandler=function(d){b=d;};c.completed=function(){if(b){b();}};return c;};var amznOneTag=function(a){var b={};b.execute=function(){var e=amznPageHandler(a);var c=amznLinkHandler(a);var d=amznDynamicContentHandler(c);c.setNextHandler(d.handleRequest);e.setNextHandler(c.handleRequest);e.handleRequest();};return b;};
var spec = {
trackingId : "witwhimsy-20",
region : "US",
aesEndpoint : "https://assoc-na.associates-amazon.com"
};
var onetag = amznOneTag(spec);
onetag.execute();
}());
