// v3 module, will need to have some sort of loader to migrate v2 to v3 {:name=>"Module 3.0", :thumbnail_size=>2, :default_min_num_flyers=>1, :default_max_num_flyers=>4, :min_num_flyers_permitted=>1, :max_num_flyers_permitted=>4, :default_fallback_img_s3_key=>#<struct FlyerModuleSharedHelper::CountryFallback US="arbitrary_files/27297/1448487194/27297_nativefallbacknov2015.png", CA="arbitrary_files/45393/1490813422/45393_ca_fallback_480x300.png">, :active=>true} window.wishabi = window.wishabi || {}; window.wishabi.analyticsDomain = 'a.wishabi.com'; function updatePlaceHolderAndEncode(i){return encodeURI(i.replace(PLACE_HOLDER,getRandomString()))}function encode_params(i){var e=[];for(var t in i)e.push(encodeURIComponent(t)+"="+encodeURIComponent(i[t]));return e.join("&")}function generateAndEncodeUrl(i,e,t){return encode_params(i)+(e?"&":"")+encode_params(e)+(t?"&":"")+encode_params(t)}function getRandomString(){return Math.random().toString(36).replace(NON_ALPHANUMERIC,"")}var _window=window,_document=document,PLACE_HOLDER=/\[\[randomn?\]\]/gi,NON_ALPHANUMERIC=/\W/;try{if(window.top.jasmine&&window.top!=self){console&&console.log&&console.log("found jasmine, trying to attach analytics to window.top");try{var windowHref=window.top.location.href}catch(i){console&&console.log&&console.log("Unable to access window.top")}var iframe=window.frameElement;iframe&&(iframe.width=0,iframe.height=0),_window=window.top,_document=_window.document}}catch(i){console&&console.log&&console.log("Unable to access window.top")}window.wishabi=window.wishabi||{},window.wishabi.analytics=_window.wishabi.analytics||{},window.wishabi.analytics.base=_window.wishabi.analytics.base||function(i,e){function t(){y=_window.wishabi.hasOwnProperty("analyticsDomain")?[_window.wishabi.analyticsDomain+"/track.gif"]:["unset.a.dev.wishabi.com/track.gif"]}function n(i,e){i=i||[""],b=e||"module2",k=i.filter(function(i){return i.length>0})}function a(){return _window.location.protocol}function o(i,e){if(r(i))E=null;else if(E=i,!r(e))for(var t in e)E[t]=e[t]}function r(i){for(var e in i)if(i.hasOwnProperty(e))return!1;return JSON.stringify(i)===JSON.stringify({})}function c(t,n){return{aid:i,mt:e,et:t,st:n,t:(new Date).getTime()}}function d(i,e,t){if(!i||!e)return!1;r(t)&&(t=null);var n=c(i,e);l(n,t),k&&s(n,t)}function l(i,e){t();for(var n=generateAndEncodeUrl(i,e,E),o=0;odocument.domain = \''+_document.domain+'\';")',c=r.contentWindo.Image}var d,l=c!==_window.Image,s=a;if("module2"===b){var w=generateAndEncodeUrl(i,e,E);s=a+(a.indexOf("?")<0?"?":"")+w}l&&(d=new c(1,1),d.src=s.toString()),_.push(d),v.push(s.toString())}"module3"===b&&(k=null)}function w(){p=[],g=[],_=[],v=[]}function u(){return p}function f(){return g}function m(){return _}function h(){return v}var y,k,b,p=[],g=[],_=[],v=[],E=null;return{track:d,clear:w,setDefaultParams:o,getTrackQueue:f,getTrackImages:u,getNoRefTrackQueue:h,getNoRefTrackImages:m,setNoRefBaseUrls:n}},"modules"in window.wishabi.analytics||(window.wishabi.analytics.modules=new window.wishabi.analytics.base("editorials","widget"),window.wishabi.analytics.modules.trackModuleView=function(i){this.track("view","module",i)},window.wishabi.analytics.modules.trackModuleViewed=function(i){this.track("viewed","module",i)},window.wishabi.analytics.modules.trackModuleViewedError=function(i){this.track("viewed_error","module",i)},window.wishabi.analytics.modules.trackModuleEmptyView=function(i){this.track("empty_view","module",i)},window.wishabi.analytics.modules.trackModuleEmptyViewed=function(i){this.track("empty_viewed","module",i)},window.wishabi.analytics.modules.trackModuleEmptyViewedError=function(i){this.track("empty_viewed_error","module",i)},window.wishabi.analytics.modules.trackModuleFallbackView=function(i){this.track("fallback_view","module",i)},window.wishabi.analytics.modules.trackModuleFallbackViewed=function(i){this.track("fallback_viewed","module",i)},window.wishabi.analytics.modules.trackModuleFallbackViewedError=function(i){this.track("fallback_viewed_error","module",i)},window.wishabi.analytics.modules.trackModulePageVisibilityNotSupported=function(){this.track("page_visibility","module",{supported:!1})},window.wishabi.analytics.modules.trackModulePageVisibilitySupported=function(){this.track("page_visibility","module",{supported:!0})},window.wishabi.analytics.modules.trackModuleUnsupportedBrowser=function(i){this.track("unsupported_browser","module",i)},window.wishabi.analytics.modules.trackModuleLoad=function(i){this.track("load","module",i)},window.wishabi.analytics.modules.trackModuleOtherClicks=function(i){this.track("click","other",i)},window.wishabi.analytics.flyers=new window.wishabi.analytics.base("editorials","widget"),window.wishabi.analytics.flyers.trackFlyerClick=function(){this.track("click","flyer")},window.wishabi.analytics.flyers.trackFlyerAndFeaturedItemClick=function(){this.track("click","flyer_and_featured_item")},window.wishabi.analytics.flyers.trackFlyerView=function(){this.track("view","flyer")},window.wishabi.analytics.flyers.trackFlyerAndFeaturedItemView=function(){this.track("view","flyer_and_featured_item")},window.wishabi.analytics.flyers.trackFlyerViewed=function(){this.track("viewed","flyer")},window.wishabi.analytics.flyers.trackFlyerAndFeaturedItemViewed=function(){this.track("viewed","flyer_and_featured_item")},window.wishabi.analytics.flyers.trackFlyerViewedError=function(){this.track("viewed_error","flyer")}); window.wishabi.analytics.modules.trackModuleLoad( { 'module_id': 27178 } ); (function(){ function ready(fn) { if (document.readyState != 'loading'){ fn(); } else if (document.addEventListener) { document.addEventListener('DOMContentLoaded', fn); } else { document.attachEvent('onreadystatechange', function() { if (document.readyState != 'loading') fn(); }); } } ready( function(){ var wm_elem = document.getElementById('circularhub_module_15576'); if (wm_elem && !wm_elem.getAttribute('data-module-id')){ wm_elem.setAttribute('data-module-id', true); var m3_code = '