5e41cc9cfbd5bc88bf497d7af95dbb25aa6126c9

THE 10 BEST Hotels in Bahamas for 2021 (from $82)


THE 10 BEST Hotels in Bahamas for 2021 (from $82) – Tripadvisor=0&&o1e12?new Date:performance.now())-t.timeStamp;”pointerdown”==t.type?function(t,o){function i(){p(t,o),r()}function c(){r()}function r(){e(a,i,f),e(u,c,f)}n(a,i,f),n(u,c,f)}(o,t):p(o,t)}}function w(n){[“click”,”mousedown”,”keydown”,”touchstart”,”pointerdown”].forEach(function(e){n(e,l,f)})}w(n),self.perfMetrics=self.perfMetrics||{},self.perfMetrics.onFirstInputDelay=function(n){c.push(n),s()}}(addEventListener,removeEventListener);]]>0;)define.apply(e,t.d.shift());for(;t.r.length>0;)require.apply(e,t.r.shift());e.getRequireJSQueue=null}l&&+new Date-i<5e3&&a.apply(e,l)}if(!e||!e.requireCallLast){var l,i,u=!1,a=e.requireCallLast=function(e,r){l=null;var a=[].slice.call(arguments,2);t(e)?n(require(e),r,a):t("trjs")?require(["trjs!"+e],function(e){n(e,r,a)}):u||(i=+new Date,l=[].slice.call(arguments))},c=e.requireCallIfReady=function(n){t(n)&&a.apply(e,arguments)},o=function(t,n,r,l){var i=c;return!r||"click"!==r.type&&"submit"!==r.type||(i=a,r.preventDefault&&r.preventDefault()),l.unshift(n),l.unshift(t),i.apply(e,l),!1};e.remoteModule=function(e,t){return o("remoteModule",null,e,[].slice.call(arguments))},e.requireEvCall=function(e,t,n,r){return e=e.match(/^((?:[^/]+/)*[^/.]+).([^/]*)?$/),o(e[1],e[2],t,[].slice.call(arguments,1))},e.widgetEvCall=function(e,t,n,r){return o("ta/prwidgets","call",t,[].slice.call(arguments))},e.placementEvCall=function(e,t,n,r,l){return o("ta/p13n/placements","evCall",n,[].slice.call(arguments))},document.addEventListener?document.addEventListener("DOMContentLoaded",r):e.addEventListener?e.addEventListener("load",r):e.attachEvent&&e.attachEvent("onload",r)}}(window); ]]>0&&o&&(o=o[t[0]]||o[t[0].toLowerCase()]),o?(D[i]=o,d.push(o)):n.push(i)}else n&&n.push(i);else d.push(null);if(d.length===e.length)return d}function t(e){var n,r,i,t,o=”Missing immediately required dependency: “+e;for(n=0;n<10;n++){var d=v[e];if(!d){o+=" (not specified)";break}if(d.error){o+=" ("+d.error+")";break}if(e=null,t=d.deps)for(r=0;r "+e}var f=new Error(o);return y&&!window.IS_DEBUG||!g||y&&null===window.require.caller&&/^R|react$/.test(e)||g.error(f),f}function o(e,n,t){var u,a,s,p,c,h,y,g=[],w=[],m=[];n.deps=n.deps||[],n.defname&&(p=v[n.defname],v[n.defname]=n,p&&p!==n&&p.needers&&p.needers.length&&(n.needers=(p.needers||[]).concat(n.needers||[])));for(var c=0;c=0?(g.push(u.substring(0,h)),w.push(u.substring(h+1))):(g.push(null),w.push(u));if(g=i(g,m),!g)return o(m,n);for(var c=0;c0){o(n,d);continue}r=null,d.cb&&(r=d.cb.apply(null,e)),d.deps=[],d.cb=null,d.defname&&u(d.defname,r)}catch(e){P(“Error propagating dependency resolutions: “,e)}}q=null}function f(e){return function(n){e.defname&&u(e.defname,n)}}function l(e){return function(n){e.defname&&(e.error=”Error loading ‘”+e.defname+”‘: “+n,P(e.error),e.need=0,e.deps=[],a(e.defname))}}function u(e,n){if(!D[e]){var r=v[e];if(D[e]=n,delete v[e],w[e]){var i,t=e.split(“/”),o=ta;for(“ta”===t[0]&&t.shift();t.length>1;)i=t.shift(),o[i]||(o[i]={}),o=o[i];t.length>0&&(i=t.shift(),i in o||i.toLowerCase()in o||(o[i]=n,o[i.toLowerCase()]=n))}if(E&&E(e,[],s(n)),r)for(;r.needers&&r.needers.length>0;){var f=r.needers.shift();f.need-=1,f.need||b.push(f)}b.length&&!q&&(q=setTimeout(d,0))}}function a(e){var n=v[e];if(n){var r=n.eb;for(n.deps=null,n.cb=null,n.eb=null,n.error||(n.error=”Error loading ‘”+n.defname+”‘”);n.needers&&n.needers.length>0;){var i=n.needers.shift();i.error=”Failed to load AMD module ‘”+e+”‘ which is depended upon by ‘”+i.defname+”‘”,i.need>0&&(i.need=0,b.push(i)),y&&!window.IS_DEBUG||!g||g.error(i.error)}if(null!=r)try{r(n.error)}catch(e){}}b.length&&!q&&(q=setTimeout(d,0))}function s(e){return function(){return e}}function p(e){return e&&(e.indexOf(“trjs!”)!==-1||e.indexOf(“trcss!”)!==-1||e.indexOf(“trhtml!”)!==-1||e.indexOf(“trdust!”)!==-1)}function c(){return!(“undefined”!=typeof ta&&ta.page&&ta.page.loadDeferred)}function h(){var e,n,r,t,o;if(q)return void setTimeout(h,0);if(M=!0,v&&c())for(e in v)if(v.hasOwnProperty(e)){if(n=v[e],t=[],o=[],p(n.defname))continue;if(v.hasOwnProperty(“trjs!”+n.defname))continue;if(n.deps&&n.deps.length){for(r=0;r0)return void(r=setTimeout(t.apply.bind(t,this,arguments),i));var u=t.apply(this,arguments);return e=Date.now(),u}}}); define(“vanillajs”,[],function(){return{}}); define(“mobile/lite/image-loader”,[“utils/throttle”,”vanillajs”],function(t){“use strict”;function e(e,n){n=n||document,c=e||0;var i=Array.prototype.filter.call(n.querySelectorAll(“[“+u+”]”),r());if(0!=i.length){var o=t(function(t){i=i.filter(r()),0==i.length&&(window.removeEventListener(“scroll”,o),window.removeEventListener(“resize”,o))},200);window.addEventListener(“scroll”,o),window.addEventListener(“resize”,o)}}function r(){return function(t){if(!document.body.contains(t))return!1;try{if(!i(t))return!0}catch(t){return!1}var e=t.getAttribute(u);if(e)return”IMG”===t.tagName?t.src=e:t.style.backgroundImage=”url(“+e+”)”,t.removeAttribute(u),!1;var r=t.getAttribute(l);return r&&”IMG”===t.tagName&&(t.srcset=r,t.removeAttribute(l)),!0}}function n(t){t=t||document;var e=t.querySelectorAll(“[“+u+”]”);Array.prototype.filter.call(e,r())}function i(t){var e=t.getBoundingClientRect();return e.width>0&&e.height>0&&e.top+c>=0&&e.top-c<=window.innerHeight}function o(){return function(t){var e=t.getAttribute(u);return!e||("IMG"===t.tagName?t.src=e:t.style.backgroundImage="url("+e+")",t.removeAttribute(u),!1)}}function a(t){t=t||document;var e=t.querySelectorAll("["+u+"]");Array.prototype.filter.call(e,o())}var u="data-lazyurl",l="data-lazyset",c=0;return{init:e,demandLoadImages:n,forceLoadImages:a}}); define("utils/to-array",["vanillajs"],function(){return function(n){return"number"!=typeof n.length?[n]:Array.prototype.slice.call(n)}}); define("amdloaders",["utils/to-array"],function(e){var t=[],n=[],r=[],o=[],a=[],d=null,i=null,u={},s={},c={},l={},f=null,p=!1,h=1e4,m=!1,w={},v=function(e,t,r){if("@ta/"!==e.substring(0,4)){if(u[e]){if(s[e]&&/^[-a-z]+.[-_a-zA-Z0-9]+$/.test(e))return}else u[e]=!0,n.push(e);a.push(function(n){n||!t.parsed||t.parsed(e)||(n=new Error("Dynamic load failed to define module '"+e+"'")),n&&r.error&&r.error(n)}),S()}},g=function(e,t,r){u[e]||(u[e]=!0,s[e]||t.specified(e)||n.push(e)),a.push(function(n){var o=t.parsed(e);n||s[e]||o||(n=new Error("Dynamic load failed to define '"+e+"'")),n?r.error&&r.error(n):o||define(e,[],H(!0))}),t([e],r,r.error),S()},y=function(e,n,r){t.push(e),a.push(function(e){e?r.error&&r.error(e):r(!0)}),S()},C=function(e,t,n){r.push(e),a.push(function(r){r||t.specified("trhtml!"+e)||(r=new Error("Dynamic load failed to define content '"+e+"'")),r&&n.error&&n.error(r)}),S()},L=function(e,t,n){c[e]||(c[e]=!0,l[e]||o.push(e)),a.push(function(e){e?n.error&&n.error(e):n(!0)}),S()},L=function(e,t,n){c[e]||(c[e]=!0,l[e]||o.push(e)),a.push(function(e){e?n.error&&n.error(e):n(!0)}),S()},S=function(){!f&&p&&!m&&(a.length||t.length||n.length||r.length||o.length)&&(f=setTimeout(b,0))},E=function(e,t){var n=e.getAttribute("data-rup");if(n){var r;n=n.split(",");for(var o=0;o0&&(h+="&needContent="+encodeURIComponent(String(i))),window.pageServlet&&(h+="&metaReferer="+encodeURIComponent(window.pageServlet));var w=null;try{w=new XMLHttpRequest}catch(e){try{w=new ActiveXObject("MSXML2.XMLHTTP")}catch(e){try{w=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){throw new Error("Can't create XMLHttpRequest or similar")}}}var v=!1;w.onreadystatechange=function(){v||4!==w.readyState||(v=!0,w.status>=200&&w.status<=299?x(d,w.responseText):I(d,new Error("XHR returned "+w.status)))},w.open("POST","/DemandLoadAjax",!0);try{w.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8")}catch(e){}try{w.setRequestHeader("X-Requested-With","XMLHttpRequest")}catch(e){}try{w.setRequestHeader("Accept","text/html, */*")}catch(e){}m=!0,w.send(h)}},I=function(e,t){if(m=!1,S(),e.length)for(var n=0;n=l.limit&&(l.list=l.list.slice(0,l.list.length-1),l.callbacks=l.callbacks.slice(0,l.callbacks.length-1)),l.list.unshift(e),l.callbacks.unshift(t);var r=l.handlerModule;r&&l.handlerMethod&&(l.handlerModule=null,require([r+””],function(e){n(l,e[l.handlerMethod],0)}))}}function e(l,e){if(e=Array.prototype.slice.call(e),l.handler)try{l.handler.apply(null,e)}catch(l){}else if(l.list&&l.list.length=t)return!1;l.handler=n,l.priority=t;var a=l.list;l.list=null;for(var i=0;i0&&”function”==typeof e[0]&&l(o,e.slice(1),e[0])}}}); define(“ns-exporter”,[“vanillajs”],function(r){function n(r){if(“undefined”==typeof window)return null;if(“undefined”==typeof r&&(r=window),!r)return require.defined(“ta/util/Error”)&&require(“ta/util/Error”).record(null,”Using ns-exporter:exportTo without a namespace”),null;if(“string”==typeof r){var n=window;n.ta||(ta={}),r.split(“.”).forEach(function(r){n[r]||(n[r]={}),n=n[r]}),r=n}return r}return{exportTo:function(r,e,t){if(e=n(e),!e)return!1;for(var i in r)!r.hasOwnProperty(i)||t&&i in e||(e[i]=r[i]);return!0},createNs:function(r,e,t){return!!(e=n(e))&&void(e[t]=r)}}}); define(“ta/Core/TA.FireEvent”,[“vanillajs”],function(){var n={},e={};return n.on=function(n,r){var i=e[n];i||(i=e[n]=[]),i.push(r)},n.fireEvent=function(n,r){var i=Array.prototype.slice.call(arguments),t=e[n];i.shift(),t&&t.slice(0).forEach(function(n){try{n.apply(null,i)}catch(n){window.IS_DEBUG&&(console.error||console.log)(“Exception in TA.FireEvent handler”,n)}})},n.off=function(n,r){if(r){var i,t=e[n];t instanceof Array&&(i=t.indexOf(r),i>=0&&t.splice(i,1))}else delete e[n]},n.hasEventListener=function(n){return!!e[n]},n}); define(“ta/Core/TA.Event”,[“vanillajs”,”common/trackingStreams”,”ns-exporter”,”ta/Core/TA.FireEvent”],function(vanilla,tracks,nsExporter,fireEvent){function _makeClosure(e,t){var n=this;return t=Array.prototype.slice.call(t),function(){e.apply(n,t)}}function QueueTimer(e,t){var n=0,r=0,o=[],a=0,u=!1;this.start=function(){n&&clearTimeout(n),a=Date.now()},this.end=function(i){var c=Date.now(),f=c-a;r+=f;var l=””+f+”ms [“+(i||””)+”]”,s=e+(t?”-after”:””);u?console.error(“Straggler for “+s+”: “+l):(o.push(l),n=setTimeout(function(){console.error(“Timing for “+s+”: “+r+”msn”+o.sort(function(e,t){return parseInt(e)-parseInt(t)}).join(“n”)),u=!0},2e3))}}var exports={on:fireEvent.on,off:fireEvent.off,fireEvent:fireEvent.fireEvent,hasEventListener:fireEvent.hasEventListener};exports.call=function(e,t,n,r){if(null==t)return IS_DEBUG&&alert(“You must pass the event.nnUsage:nta.call(‘ta.namespace.Class.function’, event);”),!1;if(null==e)return IS_DEBUG&&alert(“ta.call of undefined function”),!1;var o=e;if(“function”==typeof e)e=””;else if(!/^ta.[wd.]+$/.test(e))return IS_DEBUG&&alert(“Invalid function name. Must be of the form: ta.namespace.Class.function”),!1;var a=t||window.event;[“stopPropagation”,”preventDefault”].forEach(function(e){a[e]||(a[e]=function(){})}),a.stop||(a.stop=function(){a.preventDefault(),a.stopPropagation()}),n||(n=a.target||a.srcElement),n||tracks.error(null,”ta.call re-wrap fail (non-DOM element) – “+e,t,{“funcName”:e});var u=arguments,i=Array.prototype.slice.call(u,3);i.splice(0,0,a,n);try{return i.unshift({callback:_ta_call_defer,evt:a}),i.unshift(o),exports.run.apply(null,i)}catch(n){tracks.error(n,”ta.call – “+e,t)}return!1};var _ta_call_defer=function(e,t){t&&delete t.evt,exports.run.apply(null,arguments)};exports.run=function(e,t){var n=arguments,r=Array.prototype.slice.call(n,2);try{var o=exports.fn(e);if(“function”==typeof o){var a=o.apply(window,Array.prototype.slice.call(r));if(t&&t.onComplete){var u=exports.fn(t.onComplete);u&&u(a)}return a}t&&t.evt&&(t.evt.stopPropagation?t.evt.stopPropagation():t.evt.cancelBubble=!0,t.evt.preventDefault?t.evt.preventDefault():t.evt.returnValue=!1);var i=_makeClosure(t&&t.callback||exports.run,arguments);require([“trjs!ta/Core/TA.Load”],function(t){try{t.load(e,i)}catch(t){tracks.error(t,”ta.run – “+e)}})}catch(t){tracks.error(t,”ta.run – “+e)}return!1};var OneTimeFunctionQueue=function(e,t,n){function r(){u=!0,c()}var o,a=[],u=!!n,i=function(n,r){o&&o.start();try{n()}catch(n){try{tracks.error(n,”OneTimeFunctionQueue “+e+(t?”-after”:””)+(r?”-“+r:””))}catch(e){}}o&&o.end(r)},c=function(){if(a.sort(function(e,t){return e.priority-t.priority||e.subpriority-t.subpriority}),t){var e=1;a.forEach(function(t){setTimeout(i.bind(null,t.func,t.name),e++)})}else a.forEach(function(e){i(e.func,e.name)});a=[]};null!=e&&(window.addEventListener?window.addEventListener(e,r,!1):window.attachEvent&&(“DOMContentLoaded”==e?window.attachEvent(“onload”,r):”load”==e?window.attachEvent(“on”+e,function(){setTimeout(r,1)}):window.attachEvent(“on”+e,r))),this.addToQueue=function(t,n,r){return t?(“string”==typeof n&&(r=n,n=!1),void(u?i(t,r):(n=n||100+a.length,a.push({func:t,priority:n,name:r,subpriority:a.length})))):void tracks.error(null,”addToQueue for “+e+” queue – no function”)},this.executeQueue=function(){c()}},loaded=”undefined”!=typeof document&&”complete”===document.readyState,ready=”undefined”!=typeof document&&”interactive”===document.readyState||loaded,_readyQ=new OneTimeFunctionQueue(“DOMContentLoaded”,!1,ready),_loadQ=new OneTimeFunctionQueue(“load”,!1,loaded),_afterLoadQ=new OneTimeFunctionQueue(“load”,!0);ready||_loadQ.addToQueue(function(){_readyQ.executeQueue()},-999999999,”checkReadyQueue”),_loadQ.addToQueue(function(){_afterLoadQ.executeQueue()},999999999,”afterLoadQueue”),exports.queueForReady=function(e,t,n){_readyQ.addToQueue(e,t,n)},exports.queueForLoad=function(e,t,n){_loadQ.addToQueue(e,t,n)},exports.queueForAfterLoad=function(e,t){_afterLoadQ.addToQueue(e,0,t)},exports.fn=function(fn){switch(typeof fn){case”function”:return fn;case”string”:var f=!1;try{f=eval(fn)}catch(e){}if(!f){var ns=fn.split(“.”),n=ns.pop();try{ns=eval(ns.join(“.”)),f=ns&&ns._magic&&ns._magic.partial(n)}catch(e){}}if(f&&”function”==typeof f)return f}return null},exports.fireClick=function(e){if(document.createEvent){var t=document.createEvent(“MouseEvents”);t.initEvent(“click”,!0,!1),e.dispatchEvent(t)}else document.createEventObject?e.fireEvent(“onclick”):”function”==typeof e.onclick&&e.onclick()},exports.throttle=function(e,t,n,r){function o(){delete m_throttles[t],a.cb()}var a,u=(new Date).getTime();if(t in m_throttles){if(a=m_throttles[t],u-a.lastResetr?o():(a.lastReset=u,a.timeout=setTimeout(o,n))};var m_throttles={};return nsExporter.exportTo(exports,ta),exports}); define(“ta/Core/TA.LocalStorage”,[“vanillajs”,”common/trackingStreams”,”ns-exporter”],function(e,t,n){“use strict”;var r=!1,o=”taLsTest”,i=”1″,a=”TALocalStorageCurrentSessionId”,u=!1,s=”session-“,l=!1,c=[],f=[],v=[],g=function(){return!(!u&&!l)},m=function(e){return!!g()||(t.error(null,”Accessing localStorage session cookie before session logic intialized: “+e),!1)},S=function(e){return d(e,”value”)},y=function(e){return d(e,”now”)},d=function(e,t){if(!t)return null;try{var n,o=JSON.parse(r.getItem(e)||”0″);return o?o.ttl&&o.ttl+o.now<(new Date).getTime()?(r.removeItem(e),null):o.hasOwnProperty(t)?(r.setItem("512",o[t]),n=r.getItem("512"),r.removeItem("512"),n):null:null}catch(e){}return null},h=function(e,t){try{var n=JSON.parse(e||"0");return n&&n.hasOwnProperty(t)?n[t]:null}catch(e){return null}},w=function(e){try{var t=JSON.parse(r.getItem(e)||"0");return t?t.ttl&&t.ttl+t.now<(new Date).getTime()?(r.removeItem(e),null):t.value:null}catch(e){}return null},I=function(e){try{r.removeItem(e)}catch(e){}},p=function(e,t){var n=y(e);if(t&&n&&n<(new Date).getTime()-t)try{r.removeItem(e)}catch(e){}},O=function(e){try{var t=r.getItem(e);if(null!==t&&void 0!==t)return!0}catch(e){}return!1},T=function(e,t,n){try{r.setItem(e,JSON.stringify({ttl:n||0,now:(new Date).getTime(),value:t}))}catch(e){}},k=function(e){if(l=!0,!e)return t.error(null,"Attempting to initialize localStorage with invalid sesion key: "+e),!1;if(!V())return!1;if(u=S(a),!u||u!=e){u=e,T(a,u);var n=S("latestPageServlet");n&&T("sessionEntryServlet",n),E(),O(a)&&require.defined("ta/Core/TA.Store")&&require("ta/Core/TA.Store").store("isFirstSessionPageView",!0)}for(var r=0;r0;if(this.delegate&&this.delegate.hasListeners)return this.delegate.hasListeners(e)}return!1},t.prototype.emit=function(e,t){if(this.events[e]){var r=Array.prototype.slice.call(arguments,1);this.events[e].slice(0).forEach(function(t){if(t)try{t.apply(this,r)}catch(t){“string”==typeof t&&(t=new Error(t));var i=”Error in event handler for “+e;if(require.defined(“ta/util/Error”))require(“ta/util/Error”).record(t,i);else{var s=require.defined(“ta”)&&require(“ta”);s&&s.log&&s.log.error?s.log.error(t,i):s&&s.m&&s.m.recordJSError?s.m.recordJSError([t,i]):”undefined”!=typeof console&&(console.error||console.log)(i,t)}}},this)}else this.delegate&&this.delegate.emit&&this.delegate.emit.apply(delegate,arguments);return this},t}); define(“ta/registration/RegEvents”,[“mixins/Events”],function(e){return new e(“success”)}); define(“post_rollup_globals_shim”,[“page-model”,”ns-exporter”,”common/trackingStreams”,”ta/registration/RegEvents”],function(e,r,t,i){var n=e.session;i.on(“success”,function(){e.session.loggedIn=!0});var o={uid:n.uid,userLoggedIn:n.loggedIn,userSecurelyLoggedIn:n.securelyLoggedIn};r.exportTo(o,”ta”);try{var s=XMLHttpRequest.prototype,u=s.send;s.send=function(e){try{var r=new RegExp(“^(/[^/]|(http(s)?:)?//”+window.location.hostname+”)”);if(this._url&&r.test(this._url)){var t=n.uid;if(require.defined(“redux-init”)){var i=require(“redux-init”);i&&i.tracking&&i.tracking.uid&&(t=i.tracking.uid)}this.setRequestHeader(“X-Puid”,t)}}catch(e){}u.call(this,e)};var a=s.open;s.open=function(e,r){return this._url=r,a.apply(this,arguments)}}catch(e){t.error(e,”Error intercepting AJAX for tracking”)}}); define(“ta/Core/TA.PageVisibility”,[“vanillajs”],function(e){“use strict”;function n(){a=!1;for(var e in s)s.hasOwnProperty(e)&&s[e]()}function t(){a=!0;for(var e in f)f.hasOwnProperty(e)&&f[e]()}function d(){var e=document[c]?f:s;for(var n in e)e.hasOwnProperty(n)&&e[n]()}function i(){“undefined”==typeof document[c]?document.addEventListener?(document.addEventListener(“focus”,n,!1),document.addEventListener(“blur”,t,!1)):(document.attachEvent(“onfocus”,n),document.attachEvent(“onblur”,t)):document.addEventListener(r,d),m=!0}function o(){“undefined”==typeof document[c]?document.removeEventListener?(document.removeEventListener(“focus”,n,!1),document.removeEventListener(“blur”,t,!1)):(document.detachEvent(“onfocus”,n),document.detachEvent(“onblur”,t)):document.removeEventListener(r,d),a=!1,m=!1}function u(e,n){var t=e.indexOf(n);return t>=0?e.splice(t,1):null}var c,r,f=[],s=[],m=!1,a=!1;return”undefined”!=typeof document.hidden?(c=”hidden”,r=”visibilitychange”):”undefined”!=typeof document.mozHidden?(c=”mozHidden”,r=”mozvisibilitychange”):”undefined”!=typeof document.msHidden?(c=”msHidden”,r=”msvisibilitychange”):”undefined”!=typeof document.webkitHidden&&(c=”webkitHidden”,r=”webkitvisibilitychange”),{addFocusListener:function(e){s.push(e),m||i()},addBlurListener:function(e){f.push(e),m||i()},removeFocusListener:function(e){e?u(s,e):s.length=0,0===s.length&&0===f.length&&o()},removeBlurListener:function(e){e?u(f,e):f.length=0,0===s.length&&0===f.length&&o()},hidden:function(){return”undefined”!=typeof document.hidden?document.hidden:a}}}); define(“utils/bounceRateUtils”,[“ta/Core/TA.PageVisibility”,”common/trackingStreams”,”ta/Core/TA.LocalStorage”,”ta/util/SessionStorage”,”page-model”],function(e,t,n,r,a){“use strict”;function i(t){if(t&&t.length&&n.canUseSession()&&r.canUseSessionStore()){S=t;var i=c(t),f=a.session.hasReferral,g=f&&a.session.isExternalReferral,j=!window.performance||!performance.navigation||0===performance.navigation.type,v=!f&&j;if(v||g||!i)o(t),s(t,0);else if(!O(S)){var d=r.getObject(h);null!==d&&0!==d||(d=Date.now()-r.getObject(m)),r.setObject(m,Date.now()),s(t,d)}O(S)||(e.addFocusListener(l),e.addBlurListener(b),n.onValueChange(w,u))}}function o(e){r.setObject(d,v()),r.setObject(m,Date.now()),r.setObject(h,0);for(var t=0;t0&&(n=n.substring(0,n.indexOf(“:”))),n}function l(){var e=Array.prototype.slice.call(arguments);require([“trjs!ta/p13n/placements-ajax”],function(n){n.loadDynamicPlacement.apply(n,e)})}function c(){var e=Array.prototype.slice.call(arguments);require([“trjs!ta/p13n/placements-ajax”],function(n){n.loadDynamicPlacement.apply(n,e)})}var i=new t(function(e){var n={};if(e)for(var a in e)e.hasOwnProperty(a)&&(n[a]=e[a]);return n.requestAJAXPlacement||(n.requestAJAXPlacement=function(e,a,t,r){require([“trjs!ta/p13n/placements-ajax”],function(l){l.requestAJAXPlacement(n,e,a,t,r)})}),{placement:n}}),o={“define”:i.define,”redefine”:i.redefine,”load”:i.load,”evCall”:i.evCall,”loadDynamicPlacement”:l,”enableAutoRefresh”:c,”getTemplateBaseFromPlacementName”:r};return n.exportTo(o,”ta.p13n.placements”),o}); define(“utils/object/set-props”,[“vanillajs”],function(){“use strict”;return function(n,r){for(var t in r)r.hasOwnProperty(t)&&(n[t]=r[t]);return n}}); define(“utils/object/shallow-copy”,[“utils/object/set-props”,”vanillajs”],function(t){“use strict”;return function(r){var e;if(“object”!=typeof r||null===r)return r;if(r.constructor===Array){e=[];for(var n=0;n1?n-1:0),i=1;i1?t-1:0),r=1;r2?r-2:0),u=2;u2?r-2:0),u=2;u1?t-1:0),r=1;r=0&&e.push(n);return e}function a(t){var e=ta.page.getDates(t);return e&&e[0]?new n(e[0]):null}var u=”zu”,T={CHECKIN:{queryString:null,pathString:null},CHECKOUT:{queryString:null,pathString:null},STAYDATES:{children:[“CHECKIN”,”CHECKOUT”],queryString:”staydates”,pathString:u+”s”},EATERY:{queryString:”eaterydate”,pathString:u+”r”},DEPARTURE:{queryString:null,pathString:null},RETURN:{queryString:null,pathString:null},ROUNDTRIP:{children:[“DEPARTURE”,”RETURN”],queryString:”rtdates”,pathString:u+”t”},ONEWAYFLIGHT:{queryString:”oneway”,pathString:u+”o”},LEG_1:{queryString:”leg1date”,pathString:u+”1″},LEG_2:{queryString:”leg2date”,pathString:u+”2″},LEG_3:{queryString:”leg3date”,pathString:u+”3″},ATTRACTION:{queryString:”attrdate”,pathString:u+”a”},ATTRACTION_FROM:{queryString:null,pathString:null},ATTRACTION_TO:{queryString:null,pathString:null},ATTRACTIONRANGE:{children:[“ATTRACTION_FROM”,”ATTRACTION_TO”],queryString:”attrrange”,pathString:u+”e”},VPDATES:{children:[“VPDEPARTURE”,”VPRETURN”],queryString:”vpdates”,pathString:null},VPDEPARTURE:{queryString:null,pathString:null},VPRETURN:{queryString:null,pathString:null}};return T.getStartDateType=function(t){var e=i(t);if(0==e.length){var n=T[t].children;return n&&n.length>0?n[0]:t}return T[e[0]].children[0]},T.getEndDateType=function(t){var e=i(t);if(0==e.length){var n=T[t].children;return n&&n.length>0?n[n.length-1]:t}var r=T[e[0]];return r.children[r.children.length-1]},T.isChildDateType=function(t){return i(t).length>0},T.isSingleDateType=function(t){var e=T[t];return!(T.isChildDateType(t)||e&&e.children&&e.children.length>0)},T.getParents=i,T.isHotelDateType=function(t){return i(t).indexOf(“STAYDATES”)>=0},T.isRoundTripDateType=function(t){return i(t).indexOf(“ROUNDTRIP”)>=0},T.isAttractionRangeDateType=function(t){return i(t).indexOf(“ATTRACTIONRANGE”)>=0},T.isVacationPackagesDateType=function(t){return i(t).indexOf(“VPDATES”)>=0},T.allowsSameDayRange=function(t){return T.isAttractionRangeDateType(t)||T.isRoundTripDateType(t)},T.isMultiCityDateType=function(t){return”LEG_1″==t||”LEG_2″==t||”LEG_3″==t},T.isStartDateType=function(t){var e=i(t);return 0!=e.length&&0==T[e[0]].children.indexOf(t)},T.isEndDateType=function(t){var e=i(t);if(0==e.length)return!1;var n=T[e[0]];return n.children.indexOf(t)==n.children.length-1},T.getStartDate=function(t){var e=T.getStartDateType(t);return null==e?ta.page.getDates(t)[0]:ta.page.getDates(e)[0]},T.getEndDate=function(t){var e=T.getEndDateType(t);return null==e?ta.page.getDates(t)[0]:ta.page.getDates(e)[0]},T.getMinEnabledDate=function(t){if(T.isHotelDateType(t)||T.isRoundTripDateType(t)){var i=e.retrieve(“multiDP.minCheckInDate”);if(i)return new n(r.fromString(i))}else{if(“LEG_1″==t)return a(“ONEWAYFLIGHT”);if(“LEG_2″==t)return a(“LEG_1”)||a(“ONEWAYFLIGHT”);if(“LEG_3″==t)return a(“LEG_2”)||a(“LEG_1”)||a(“ONEWAYFLIGHT”);if(“ATTRACTION_TO”==t)return a(“ATTRACTION_FROM”)}return null},T.flattenType=function(t){var e=T[t];return e?e.children?e.children.slice(0):[t]:[]},T.getCorrespondingDateType=function(t){switch(t){case”CHECKIN”:return”CHECKOUT”;case”CHECKOUT”:return”CHECKIN”;case”DEPARTURE”:return”RETURN”;case”RETURN”:return”DEPARTURE”;case”ATTRACTION_FROM”:return”ATTRACTION_TO”;case”ATTRACTION_TO”:return”ATTRACTION_FROM”;case”VPDEPARTURE”:return”VPRETURN”;case”VPRETURN”:return”VPDEPARTURE”;default:return null}},T}); define(“mixins/page-dates/Base”,[“vanillajs”,”ta”,”mixins/page-dates/Utils”,”mixins/page-dates/DateTypeStore”],function(e,r,t,n){“use strict”;function a(e){return e instanceof Date&&!isNaN(e.getTime())}function i(e){if(!n[e])throw”Invalid date type: “+e}function s(e){var r=[];for(var t in n)n.hasOwnProperty(t)&&n[t].children&&n[t].children.indexOf(e)>=0&&r.push(t);return r}function o(e,r){var a=n[e],i=””;if(a.children)for(var s=0,o=a.children.length;s0?”_”:””)+t.dateToIso(r[a.children[s]])}else{if(“_”===r[e])return”_”;i+=t.dateToIso(r[e])}return i}function h(e,r){var t=n[e];if(t.children){for(var a=0,i=t.children.length;a=n}}function r(n){return function(){return t()n()},portrait:function(){return n()>t()},currentBreakpoints:function(){return u.filter(function(t){return”function”==typeof c[t]&&c[t]()})},is:function(t,n,e){var r=”function”!=typeof t&&c[t]?c[t]:t;return function(t,i){return r()?”undefined”!=typeof t?t:n:”undefined”!=typeof i?i:e}}};return c}); define(“mixins/page-dates/pop-calendar”,[“ta”,”common/trackingStreams”,”common/Radio”,”ta/support/Qualtrics”,”ta/Core/TA.Store”,”ta/Core/TA.LocalStorage”,”ta/util/SessionStorage”,”utils/responsive”],function(e,t,n,r,i,a,o,s){function d(){j=!1}function u(t){b=!!t.popFromDefault,D=!!t.popFromVisibleOnly,P=t.popFromVisibleOnlyBreakpoint,k=!!t.datesWereDefaulted,y=t.popCalendarType,T=!!t.hasMetaMarketingDefaultDates,E=!!t.qualtricsSurveyEnabled,O=!!t.isDetailPage,A=”Vacation_Packages”===window.pageServlet,e.page.on(“datepickerRejected”,d),e.page.on(“dateSelected”,d)}function c(e){if(a.enabled&&a.get(“popCalendarAfterRedirectedFromIB”))return a.remove(“popCalendarAfterRedirectedFromIB”),!0;if(!k||R)return!1;if(i.retrieve(“suppressCalendarPop”))return!1;if(!y)return!1;if(E&&r&&(r.canDisplay()||r.seenThisPageView())){if(!require.defined(“page-model”))return!1;if(require(“page-model”).isMobile)return!1}if(e&&D&&(!P||s.is(P,!0,!1)())&&!g(e))return!1;switch(y){case”doNot”:return!1;case”untilClosedPerServletType”:return!l();case”untilClosed”:return!p();case”always”:return!0}return b&&k}function p(){return o.canUseSessionStore()&&!!o.getObject(C)}function l(){var e=o.canUseSessionStore()&&o.getObject(C);return e&&!!e[A?”vp”:O?”detail”:”list”]}function f(){if(o.canUseSessionStore()){var e=o.getObject(C)||{};e[A?”vp”:O?”detail”:”list”]=!0,o.setObject(“pop-calendar-dismissed”,e),n(“pop-calendar”).emit(“dismissed”)}}function g(e){var t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)}function m(){return T}function S(n){j=!0,e.page.gatherDates(n),R=!0,t.trackEvent("DATEPICKER","auto-popped-calendar-shown",window.pageServlet),t.trackEvent("calendar","in_view","autopop")}function v(){return R}function h(){return j}function w(){k=!1}var C="pop-calendar-dismissed",b=!1,D=!1,P="",k=!1,E=!1,T=!1,y="",O=!1,R=!1,j=!1,A=!1;return{init:u,shouldPop:c,shouldPopMetaMarketing:m,popCalendar:S,wasPoppedThisPageLoad:v,isShowing:h,setUserEnteredDates:w,setDismissedThisSession:f}}); define("mixins/page-dates/default-dates",["ta","mixins/mixin","mixins/Events","mixins/page-dates/pop-calendar","mixins/page-dates/DateTypeStore","common/trackingStreams","vanillajs","ta/Core/TA.Event"],function(e,t,a,n,i,o,d,r){"use strict";function s(e){n.init(e),g=!!e.datesWereDefaulted,f=!!e.refreshLocalStorage,D=e.localStorageTTL,m=!0,S.emit("init")}function p(e){"function"==typeof e&&(m?e():S.on("init",e))}function u(t,a,d){function s(t){n.wasPoppedThisPageLoad()&&(S.emit("poppedCalendarDismissed",t),n.setDismissedThisSession(),e.page.off("datepickerRejected",s))}function p(){if(f&&(g&&o.trackEvent("DATEPICKER","undated_to_default_dated"),!a)){var t=n.shouldPop(f);(t||n.shouldPopMetaMarketing())&&(t&&S.emit("popFromDefault"),e.page.on("datepickerRejected",s),n.popCalendar(f))}}var u=d?d:"STAYDATES";if(e.page.usingUnifiedDates){e.page.hasDates(u)||e.page.clearDates(u),c=e.page.getDates(i.getStartDateType(u))[0],l=e.page.getDates(i.getEndDateType(u))[0];var f=t.querySelector('[data-datetype="'+i.getStartDateType(u)+'"]');e.page.on("dateSelected",function(a,i,d){var r,p=c&&l,f=e.page.getDates(u)[0],D=e.page.getDates(u)[1];if(t.contains(a)&&(!p&&e.page.hasDates(u)?r="undated_to_manually_dated":f==c&&D==l||(n.setUserEnteredDates(),e.page.off("datepickerRejected",s),g?(r="default_dated_to_manually_dated",g=!1):r="manually_dated_to_manually_dated"),c=f,l=D,r)){var m="";a&&a.getAttribute("data-picker-location")&&(m=a.getAttribute("data-picker-location"),document.querySelector("#PERSISTENT_TRIP_SEARCH_BAR.fixed")&&(m+="_persistent")),o.trackEvent("DATEPICKER",r,m)}}),"loading"===document.readyState?window.addEventListener("DOMContentLoaded",p):p(),r.on("specialOfferClosed",function(){a||f&&n.shouldPop(f)&&n.popCalendar(f)})}}var c,l,g=!1,f=!1,D=0,m=!1,S={init:s,onInit:p,apply:u,usingDefaults:function(){return g},shouldRefreshLocalStorage:function(){return f},getLocalStorageTTL:function(){return D}};return t(S,new a("popFromDefault"))}); define("ta/util/Deferred",["vanillajs","ns-exporter"],function(e,r){"use strict";function t(e){l.prototype[e]=function(r,t){return i(this,e,t?r.bind(t):r)}}for(var n=["success","failure","always","progress"],u={"resolved":["success","always"],"rejected":["failure","always"]},l=function(){},a=0;ae}function u(){return a.adults=97&&e=65&&e=48&&e”,0,0,0,0,0,0,”`”,”__2D__”,”X”,”<","slot",0,"ShowUrl","Owners",0,"[","q",0,"MemberProfile",0,"ShowUserReviews",'"',"Hotel",0,0,"Expedia","Vacation","Discount",0,"UserReview","Thumbnail",0,"__2F__","Inspiration","V","Map",":","@",0,"F","help",0,0,"Rental",0,"Picture",0,0,0,"hotels",0,"ftp://"],"x":[0,0,"J",0,0,"Z",0,0,0,";",0,"Text",0,"(","x","GenericAds","U",0,"careers",0,0,0,"D",0,"members","Search",0,0,0,"Post",0,0,0,"Q",0,"$",0,"K",0,"W",0,"Reviews",0,",","__2E__",0,0,0,0,0,0,0,"{","}",0,"Cheap",")",0,0,0,"#",".org"],"z":[0,"Hotels",0,0,"Icon",0,0,0,0,".net",0,0,"z",0,0,"pages",0,"geo",0,0,0,"cnt","~",0,0,"]","|",0,"tripadvisor","Images","BookingBuddy",0,"Commerce",0,0,"partnerKey",0,"area",0,"Deals","from","",0,"urlKey",0,"'",0,"WeatherUnderground",0,"MemberSign","Maps",0,"matchID","Packages","E","Amenities","Travel",".htm",0,"!","^","G"]},r="",a=0;a=200&&this.status=0&&w&&w>0)return H*w>=6e4?-1:(H*(w+1)>=6e4&&(T=!0),H);var e=w||0;return 0<=e&&e0?w:w+1)):(o.fireEvent(e,{},-1),l.reply("initialPollComplete",function(){return!0}),l.reply("polling_complete",function(){return!0}),l.emit("polling_complete"),o.fireEvent(R+"-polling-complete"))}function d(){N=N>0?N+1:1}function f(){if(N>1)return void(N-=1);N=0;var e=g||[];g=null;for(var t;t=e.shift();)try{t()}catch(e){}}function v(){return y}e=e||{};var h,m,g,w=1,y=0,E=!1,T=!1,x=0,P=null,S={},j=!1,A={},b={},q={},M=!!e.evaluateScripts,R=e.placement||”page”,N=0,H=e.pollTimeoutOverride||-1,L=Date.now(),C=e.tracker,O=(e.inspector,s[e.pollIntervalName||”normal”]||s.normal),X=function(e){return e?decodeURIComponent(e.replace(/+/g,” “)):e},U=function(e){var t,n;h=e.split(“#”)[0],m=h.split(“?”)[0],t=h.split(“?”)[1]||””,n=t.split(“&”);for(var r=0;r=0;t–){var n=e[t];delete A[n],E=!0}},Q=function(e,t){if(!t)return!1;for(var n=!1,r=Object.keys(t||{}),o=r.length-1;o>=0;o–){var a=r[o];e[a]!==t[a]&&(n=!0),e[a]=t[a]}return n&&(E=!0),n},z=function(e,t){if(!t)return!1;for(var n=Object.keys(t||{}),r=n.length-1;r>=0;r–){var o=n[r];e[o]=t[o]}},B=function(){$(!1)},G=function(e){var t,n,r,o=(e&&e.getAttribute(“data-paramNames”)||””).split(“,”);for(t=0;t=0?(j=!0,E&&y++,E=!1,r=++x,window.setTimeout(function(){ee(r)},i),a&&p()):(o.fireEvent(“hac-could-not-complete”),ne())}},ee=function(e){if(!P&&j&&e===x){if(N>0)return g=g||[],g.push(ee.bind(this,e)),void(window.console&&console.log&&console.log(“request held while updates are paused”));var r=++w,o=t.extend({},A,b),a=null;o.reqNum=r,o.isLastPoll=T,o.paramSeqId=y,o.waitTime=Date.now()-L,C&&C.start(r),q.UNKNOWN||(a=[],t.each(q,function(e,t){t&&a.push(e)}),o.changeSet=a.toString()),i.session.uid&&(o.puid=i.session.uid),j=!1,b={},S=q,q={};var l;try{l=new XMLHttpRequest}catch(e){try{l=new ActiveXObject(“MSXML2.XMLHTTP”)}catch(e){try{l=new ActiveXObject(“Microsoft.XMLHTTP”)}catch(e){throw new Error(“Can’t create XMLHttpRequest or similar”)}}}l.onreadystatechange=c.bind(l,r),l.open(“POST”,m,!0),”responseType”in l&&(l.responseType=”document”);try{l.setRequestHeader(“Content-Type”,”application/x-www-form-urlencoded; charset=utf-8″)}catch(e){}try{l.setRequestHeader(“X-Requested-With”,”XMLHttpRequest”)}catch(e){}try{l.setRequestHeader(“Accept”,”text/html, */*”)}catch(e){}l.send(n.toQueryString(o)),P=l}},te=function(e){if(N>0)return g=g||[],g.push(te.bind(this,e)),void(window.console&&console.log&&console.log(“update held while updates are paused”));var t;”string”==typeof e?(t=document.createElement(“div”),t.innerHTML=e):t=e;var n=j;if(P=null,S={},M){var r=t.querySelectorAll(“script”);r=r?Array.prototype.slice.call(r):[];for(var i=0;i0)return g=g||[],g.push(ne.bind(this)),void(window.console&&console.log&&console.log(“error held while updates are paused”));var e=j;P=null,S={},e?ee(++x):o.fireEvent(R+”-repoll-failed”),p()};return o.on(R+”-repoll-not-done”,B),o.on(R+”-repoll-ajax-params”,G),U(e.pageUrl||window.location.href),e.ajaxParams&&(A=t.extend(A,e.ajaxParams)),setTimeout(function(){J()||o.fireEvent(R+”-polling-complete”)},0),{setPageUrl:U,repoll:D,pause:d,resume:f,getAjaxParams:F,setAjaxParams:I,setAjaxParamsNoPoll:k,setAjaxParamsNoPollForSP:_,setOneTimeParams:W,removeAjaxParams:K,setNotDone:B,isUpdatePending:J,getLastRequestNum:V,setScriptsEval:Y,isScriptsEvalEnabled:Z,fireTargetEvents:a,getParamSeqId:v}};return c}); define(“commerce/offerclickEvents”,[“mixins/Events”,”vanillajs”],function(e){“use strict”;return new e(“beforeClick”,”afterClick”)}); define(“utils/stopevent”,[“vanillajs”],function(){return function(e){return e&&(e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,e.preventDefault?e.preventDefault():e.returnValue=!1),!1}}); define(“utils/waiton”,[“vanillajs”],function(){return function(n,i,t){function o(){–u0&&(e=setTimeout(function(){u=0,o()},t)))):void i()}}); define(“ta/popups/PollForPartnerLoad”,[“common/trackingStreams”],function(t){var e=function(n,E,r,a,o){n&&setTimeout(function(){var C=null,c=(new Date).getTime()-E.getTime();try{C=n.document}catch(t){}C?c>2e4?t.trackEvent(“COMMERCE_CLICK”,”PROVIDER_TIMEOUT”,r||””,c):n.closed?t.trackEvent(“COMMERCE_CLICK”,”PROVIDER_CLOSED”,r||””,c):e(n,E,r,a,o):t.trackEvent(“COMMERCE_CLICK”,”PROVIDER_LOADED”,(o||window.pageServlet||””)+”|”+(a||””)+”|”+(r||””),c)},100)};return e}); define(“ta/Browser”,[“vanillajs”,”ns-exporter”],function(e,n){var t,r={},i=function(){return navigator.userAgent.indexOf(“MSIE 10.0”)>=0},o=r.isIE11orHigher=function(){return navigator.userAgent.toLowerCase().indexOf(“trident/7.”)>-1||navigator.userAgent.toLowerCase().indexOf(“msie 11.”)>-1};return r.isIE9orHigher=function(){return navigator.appVersion.indexOf(“MSIE 9”)>=0||i()||o()},r.isIE10Metro=function(){return i()&&r.isIEMetro()},r.isIEMetro=function(){var e=null,n=o(),t=n?127:0,r=window.innerWidth==screen.width&&screen.height-window.innerHeight===t;try{e=!!new ActiveXObject(“htmlfile”)}catch(n){e=!1}return!e&&r&&(n||i())},r.isIE=function(){return navigator.userAgent.indexOf(“MSIE”)>=0},r.isChrome=function(){return/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor)},r.getFlashVersion=function(){if(“number”!=typeof t){var e;try{e=navigator.plugins[“Shockwave Flash”].description}catch(n){try{e=new ActiveXObject(“ShockwaveFlash.ShockwaveFlash”).GetVariable(“$version”)}catch(e){}}var n=(e||”0 r0″).match(/d+/g);t=Number(n[0]||”0.”+n[1])||0}return t},r.isChromeIncognito=function(e){var n=window.RequestFileSystem||window.webkitRequestFileSystem;return n&&”function”==typeof n?void n(window.TEMPORARY,100,function(){e(“normal”)},function(){e(“incognito”)}):void e(“undetermined”)},n.exportTo(r,”ta.browser”),r}); define(“utils/json-to-url”,[“vanillajs”],function(){“use strict”;return function(n){return n?Object.keys(n).map(function(e){return encodeURIComponent(e)+”=”+encodeURIComponent(n[e])}).join(“&”):””}}); define(“mobile/lite/ajax-request”,[“utils/json-to-url”,”vanillajs”],function(t){function e(t){var e=document.createElement(“a”);return e.href=t,e.protocol!==window.location.protocol||e.host!==window.location.hostname}return function(s,o){“object”==typeof s&&(o=s,s=o.url),o=o||{};var n=o.method||o.type||”GET”,r=”string”==typeof o.data?o.data:t(o.data);return new Promise(function(t,a){var i=new XMLHttpRequest;i.onreadystatechange=function(){this.readyState===XMLHttpRequest.DONE&&(200===this.status?(o.success&&o.success(this.responseText,this.status,i),t(this.responseText)):(o.error&&o.error(i,this.status,this.statusText),a(this.responseText)),o.complete&&o.complete(i,this.statusText))},”get”==n.toLowerCase()&&”string”==typeof r&&r.length>0&&(s+=(“?”==r[0]?””:”?”)+r,r=null),i.open(n,s,!o.synchronous),i.setRequestHeader(“Content-type”,”application/x-www-form-urlencoded”),e(s)||i.setRequestHeader(“X-Requested-With”,”XMLHttpRequest”),i.send(r)})}}); define(“utils/cookieutils”,[“vanillajs”,”mobile/lite/ajax-request”],function(t,e){“use strict”;var o=function(t){return”undefined”!=typeof t&&null!==t},n=function(t){return t.replace(/([-.*+?^${}()|[]/])/g,”$1″)},i=function(){var t=window.location.host.match(/.tripadvisor..*/);return null!=t?t=t[0]:null},a=function(t,e,n){if(o(n.doNotEscape)&&n.doNotEscape||(e=encodeURIComponent(e)),e+=n.domain?”; domain=”+n.domain:”; domain=”+i(),n.path&&(e+=”; path=”+n.path),n.duration){var a=new Date;a.setTime(a.getTime()+1e3*n.duration),e+=”; expires=”+a.toGMTString()}n.secure&&(e+=”; secure”);var r=”%1%”;o(n.ignoreVersion)&&n.ignoreVersion&&(r=””),document.cookie=t+”=”+r+e};return{addPidToCookie:function(t){o(t)&&0!==t.length&&a(“NPID”,t,{path:”/”,duration:5,ignoreVersion:!0})},roybatty:function(){var t,o=i(),n=window.taSecureToken;if(window.taEarlyRoyBattyStatus)window.taEarlyRoyBattyStatus>1&&ta&&ta.trackEventOnPage&&ta.trackEventOnPage(“early_roy_batty”,”confirm”,””,0,!0);else if(t=this.getCookie(“roybatty”)){var a=t.split(“,”);if(a&&2==a.length){var r=parseInt(a[1],10);document.setCookie(“roybatty”,n+”,”+r,{domain:o,ignoreVersion:!0,path:”/”})}}else document.setCookie(“roybatty”,n+”,1″,{domain:o,ignoreVersion:!0,path:”/”}),e({method:”POST”,url:”/CookiePingback”})},getCookie:function(t){var e=document.cookie.match(“(?:^|;)s*”+n(t)+”=([^;]*)”);return e?(e=e[1],0===e.indexOf(“%1%”)&&(e=e.substring(3)),decodeURIComponent(e)):null},setCookieInSeconds:a}}); define(“commerce/cookieSetter”,[“vanillajs”,”utils/cookieutils”],function(e,i){function o(){var e=require.defined(“page-model”)&&require(“page-model”);e&&e.session.uid&&i.setCookieInSeconds(n,e.session.uid,{duration:10,ignoreVersion:!0})}var n=”comm_puid”;return o}); define(“commerce/offerclick”,[“ta”,”mixins/mixin”,”commerce/offerclickEvents”,”utils/urlutils”,”utils/stopevent”,”utils/waiton”,”ta/popups/PollForPartnerLoad”,”ta/Browser”,”ta/util/Cookie”,”commerce/cookieSetter”],function(e,t,r,o,n,i,c,a,l,u){“use strict”;function f(e){if(“string”!=typeof e)return e;var t=o.asdf(e.trim()).replace(/&/g,”&”);if(“undefined”!=typeof window&&window.crPageServlet&&(t=t.replace(E,”$1from=HotelDateSearch_”+crPageServlet),E.test(t)||(t+=”&from=”+crPageServlet)),”undefined”!=typeof document&&document.location&&document.location.href){var r=o.getUrlPageLoc(document.location.href);r&&(t+=”&pageLocId=”+r)}var n=o.getUrlQueryArgs(t);return t=t.replace(P,””),{url:t,isBooking:t.indexOf(“/StartBooking”)>=0||t.indexOf(“/MobileHotelBookingRoomSelection”)>=0,ttP:n.tp,ttIK:n.ik,ttAOK:n.aok,slot:n.slot,providerName:n.p,ik:n.ik,locId:n.d||n.geo,area:n.area,contentId:n.src_0||n.src,trackingContext:n.btc,selectedPrice:n.priceShown,offerStr:n.gosox||””,openBehavior:n.ob}}function d(e){“function”==typeof e&&I.push(e)}function s(){_=!0}function m(t){return”same_tab”!==t.openBehavior&&((!t.isBooking||!a.isIE10Metro())&&”undefined”!=typeof e)}function p(){try{document.domain=document.domain}catch(e){return!0}return!1}function v(e,t){t=f(t);var r=p(),o=window.open(r?t.url:””,”_blank”);return!o&&”undefined”!=typeof Browser&&Browser.ie&&t.isBooking?(l.setPIDCookie(38822),void k(e,t)):(r||(o?o.location=t.url:window.location=t.url),I.forEach(function(r){r(e,t,function(){})}),void c(o,new Date,t.providerName,t.slot))}function k(t,r){r=f(r);var o=250;i(I.map(function(e){return e.bind(null,t,r)}),function(){“undefined”!=typeof e&&e.retrieve&&e.retrieve(“ta.isIE11orHigher”)?window.open(r.url,”_self”,null,!1):window.location.href=r.url},o)}function g(t,o,i,c,a){if(t&&!c&&n(t),i=f(i),_){if(i&&B===i.offerStr)return!1;setTimeout(function(){B=null},1e3),B=i&&i.offerStr}if(r.emit(“beforeClick”,i),e.store&&e.retrieve&&o&&i&&i.ttIK&&i.selectedPrice){var l=e.retrieve(“CLICK_PRICE_DOUBLE_CHECK”);l||(l={}),l[i.ttIK]=String(i.selectedPrice),e.store(“CLICK_PRICE_DOUBLE_CHECK”,l)}return require.defined(“ta/Core/TA.Event”)&&setTimeout(function(){try{require(“ta/Core/TA.Event”).fireEvent(“metaLinkClick”,o,i.isBooking?”TripAdvisor”:i.providerName,i.area,i.locId,i.contentId,”new_tab”,i.slot),i.isBooking&&require(“ta/Core/TA.Event”).fireEvent(“ibOfferClick”,o)}catch(e){require.defined(“ta/util/Error”)&&require(“ta/util/Error”).record(e,”Commerce click tracking failed”,null,{servlet:window.pageServlet,url:i.url,area:i.area})}},300),(!b||!b(i))&&(u(),”same_tab”===a?k(o,i):m(i)||”new_tab”===a?v(o,i):k(o,i),r.emit(“afterClick”,i),!1)}function w(e){b=e}function C(e,t){var r=t.getAttribute(“data-clicktoken”);r&&require([“ta/page”],function(){g(e,t,r)})}var E=new RegExp(“(&|?)from=[^&]*”),P=new RegExp(“(&|?)ob=[^&]*”),I=[],b=null,B=null,_=!1,S={expandToken:f,clickEvent:g,compElementClick:C,registerAsyncPreclick:d,setPreClickHandler:w,enableMultiTapPrevention:s};return t(S,r)}); define(“utils/browserutils”,[“vanillajs”],function(e){“use strict”;var o={},n=window.navigator?window.navigator.userAgent.toLowerCase():””,a=window.navigator?window.navigator.platform.toLowerCase():””,r=n.match(/(opera|ie|firefox|chrome|crios|trident|version)[s/:]([wd.]+)?.*?(safari|version[s/:]([wd.]+)|$)/)||[null,”unknown”,0],i=”ie”==r[1]&&document.documentMode;return”trident”===r[1]&&(r[1]=”ie”,r[2]=parseInt(r[2],10)+4),o.name=”version”==r[1]?r[3]:r[1],o.version=i||parseFloat(“opera”==r[1]&&r[4]?r[4]:r[2]),o.Platform={name:n.match(/ip(?:ad|od|hone)/)?”ios”:(n.match(/(?:webos|android)/)||a.match(/mac|win|linux/)||[“other”])[0]},o[o.name]=!0,o[o.name+parseInt(o.version,10)]=!0,o.Platform[o.Platform.name]=!0,o}); define(“historyinject/HistoryInject”,[“utils/browserutils”,”common/trackingStreams”],function(i,t){“use strict”;function n(i,n){if(!r(n))return!1;var o=i.options.pageAction||”back_button_clicked”,e=i.options.productAttr||””;t.setEvtCookie(i.module,o,e,””,i.backUrl),window.location.replace(n.state.backUrl)}function o(){return window.history&&”pushState”in window.history}function e(i,t){t&&t.call(i);var o=n.bind(null,i);return window.addEventListener(“popstate”,o),window.addEventListener(“hashchange”,o),!!i.isNewTab()&&(i.urlSuffix=i.options.query?i.originalSearch:i.originalHash,void i.updateState())}function r(i){return i.state&&i.state.backUrl}function a(){var t=null;return”ios”===i.Platform.name&&(i.chrome||i.crios)?t=”iOSMobileChrome”:i.android&&i.firefox&&(t=”androidFirefox”),t?new Promise(function(i){require([“trjs!historyinject/browser/”+t],function(t){i(t)})}):Promise.resolve(null)}function l(i,t){try{if(t&&t.backButtonUrl)return t.backButtonUrl;if(window.opener&&window.opener.location&&window.opener.location.pathname){if(window.opener.location.origin===window.location.origin){if(window.opener.location.href&&”/Search”===window.opener.location.pathname)return window.opener.location.href;if(“H_NEARBY_HISTORY_INJECT”!==i&&”EXP_NEARBY_HISTORY_INJECT”!==i&&”RESTAURANT_NEARBY_HISTORY_INJECT”!==i&&”R_R_HISTORY_INJECT”!==i&&”A_R_HISTORY_INJECT”!==i)return window.opener.location.pathname;if(window.opener.location.href&&window.opener.location.pathname.includes(“/Hotel_Review”))return window.opener.location.pathname}}else if(document.referrer&&document.referrer.length>0){var n=new URL(document.referrer);if(n.hostname===document.location.hostname){if(“H_NEARBY_HISTORY_INJECT”!==i&&”EXP_NEARBY_HISTORY_INJECT”!==i&&”RESTAURANT_NEARBY_HISTORY_INJECT”!==i&&”R_R_HISTORY_INJECT”!==i&&”A_R_HISTORY_INJECT”!==i)return n.pathname;if(window.opener.location.href&&window.opener.location.pathname.includes(“/Hotel_Review”))return n.pathname}}}catch(i){}return null}var c=function(i,t){this.originalPath=window.location.pathname,this.originalHash=window.location.hash,this.originalSearch=window.location.search,this.backUrl=null,this.backUrlPlaceholder=”-BackUrl”,this.urlSuffix=””,this.options=t||{},this.module=i,this.mixin=a(),this.backUrl=l(i,this.options)};return c.prototype.isNewTab=function(){return 1===window.history.length},c.prototype.updateState=function(){var i=this.originalPath+this.backUrlPlaceholder;if(!(this.backUrl.indexOf(“WidgetEmbed”)>=0)){if(this.backUrl.indexOf(“.htm”)>=0){var t=this.originalPath.split(“.htm”);i=t[0]+this.backUrlPlaceholder+”.htm”+t[1]}history.replaceState({backUrl:this.backUrl},document.title,i+this.urlSuffix),history.pushState({},document.title,this.originalPath+this.urlSuffix)}},c.prototype.init=function(){o()&&this.backUrl&&this.mixin.then(e.bind(null,this))},c}); define(“common/page-filters”,[“babel/babel-helpers”,”mixins/mixin”,”mixins/Events”],function(t,e,n){“use strict”;function r(t,e){var n=v[t];return n&&e(n)}function i(t,e,n,r){return v[t]=new e(t,n,r),this}function u(t){return r(t,function(t){return t.isModified()})}function o(e,n){var i=this;r(e,function(r){var u=r.get();r.set(n);var o=r.get();u!==o&&i.emit(“change”,t.defineProperty({},e,{from:u,to:o}))})}function c(e,n){var i=this;r(e,function(r){var u=r.get();r.clearAll(),n.forEach(function(t){return r.set(t)});var o=r.get();u!==o&&i.emit(“change”,t.defineProperty({},e,{from:u,to:o}))})}function s(t){return t?r(t,function(t){return t.get()}):Object.keys(v).reduce(function(t,e){return t[e]=v[e].get(),t},{})}function a(t,e){return!!(t&&e&&Array.isArray(e))&&r(t,function(t){return t.isSelected(e)})}function f(e,n){var i=this;r(e,function(r){var u=r.get();r.clear(n);var o=r.get();u!==o&&i.emit(“change”,t.defineProperty({},e,{from:u,to:o}))})}function l(e){var n=this;if(!e){var i=this.get(),u=Object.keys(v).reduce(function(t,e){var n=v[e];if(!n.excludeClearAll){var r=n.get();n.clearAll(),r!=n.get()&&(t[e]={from:r,to:n.get()})}return t},{});return void(JSON.stringify(i)!==JSON.stringify(u)&&this.emit(“change”,u))}r(e,function(r){var i=r.get();r.clearAll();var u=r.get();i!==u&&n.emit(“change”,t.defineProperty({},e,{from:i,to:u}))})}function h(t,e){return r(t,function(t){return t.parse(e)})}function p(t,e){return r(t,function(t){return t.format(e)})}var v={},d=”,”,y=”#”,g=function(t,e,n){var r=this,i=!1,u=e;this.param=t,this.excludeClearAll=n,this.set=function(t){i=i||u!==t,u=t},this.get=function(){return u},this.clear=function(t){return r.set(“”)},this.clearAll=function(){return r.set(“”)},this.parse=function(t){return t?[t]:[]},this.format=function(t){return t},this.isModified=function(t){return i},this.isSelected=function(t){return t.every(function(t){return u===t})}},m=function(t,e,n){var r=this,i=!1;this.parse=function(t){return”string”!=typeof t?[]:t.split(d).filter(function(t){return””!==t}).map(function(t){return t.split(y)}).filter(function(t){return t.length>0&&””!==t[0]}).map(function(t){return{key:t[0],value:t[1]||””}})},this.format=function(t){return Object.entries(t).map(function(t){return t.join(y)}).join(d)};var u=e?this.parse(e).reduce(function(t,e){return t[e.key]=e.value,t},{}):{};this.param=t,this.excludeClearAll=n,this.set=function(t){return r.parse(t).map(function(t){i=i||!u.hasOwnProperty(t.key)||u.hasOwnProperty(t.key)&&u[t.key]!==t.value,u[t.key]=t.value})},this.get=function(){return r.format(u)},this.clear=function(t){“string”==typeof t&&t.split(d).filter(function(t){return””!==t}).map(function(t){u.hasOwnProperty(t)&&(i=i||u.hasOwnProperty(t),delete u[t])})},this.clearAll=function(){return u={}},this.isModified=function(t){return i},this.isSelected=function(t){return t.every(function(t){return u.hasOwnProperty(t.key)&&u[t.key]===t.value})}},O=function(t,e,n){var r=!1;this.parse=function(t){return t.split(d).filter(function(t){return!!t})},this.format=function(t){return t.join(d)};var i=e?this.parse(e).reduce(function(t,e){return t[e]=!0,t},{}):{};this.param=t,this.excludeClearAll=n,this.set=function(t){var e=t.split(“,”);for(var n in e)if(e.hasOwnProperty(n)){var u=e[n];r=r||!i.hasOwnProperty(u),i[u]=!0}},this.get=function(){return Object.keys(i).join(d)},this.clear=function(t){var e=t.split(“,”);for(var n in e)if(e.hasOwnProperty(n)){var u=e[n];r=r||i.hasOwnProperty(u),delete i[u]}},this.clearAll=function(){r=r||Object.keys(i).length>0,i={}},this.isModified=function(t){return r},this.isSelected=function(t){return t.every(function(t){return i.hasOwnProperty(t)&&i[t]})}},A=function(t,e,n){var r=this;this.parse=function(t){},this.format=function(t){return””};var i=!1;this.param=t,this.excludeClearAll=n,this.set=function(t){return i=!0},this.get=function(){return null},this.clear=function(t){i&&(P.emit(“cleared-“+r.param),i=!1)},this.clearAll=function(){return r.clear(null)},this.isModified=function(t){return!1},this.isSelected=function(t){return!1}},P=e({SingleValueFilter:g,MultiValueFilter:O,FauxFilter:A,KeyValueFilter:m,register:i,set:o,isModified:u,setAll:c,get:s,isSelected:a,clear:f,clearAll:l,parse:h,format:p},new n(“change”));return P}); define(“sponsoredlisting/HotelsSponsoredListingPolling”,[“vanillajs”,”ta/Core/TA.FireEvent”],function(e,r){function s(e){e.removeAjaxParams([n]),r.fireEvent(“hotels.sponsored_listings_refreshed”)}var n=”sl_candidate_map”,o=function(e,r,s){var o,a,i=e.getAjaxParams()[n];o=i?JSON.parse(i):{};for(a in r)r.hasOwnProperty(a)&&(o[a]=r[a]);var t={};t[n]=JSON.stringify(o),e.setAjaxParamsNoPollForSP(t),s&&e.setNotDone()};return{updateSponsoredListingAjaxParam:o,refreshSponsoredListings:s}}); define(“hotels/ListFilters”,[“babel/babel-helpers”,”common/page-filters”,”sponsoredlisting/HotelsSponsoredListingPolling”],function(e,r,t){function o(e){if(!e)return!0;var t=Object.keys(e);return 0===t.length||t.some(function(t){return!r.isSelected(t,e[t])})}function n(){var e=r.get(),t=Object.keys(e).filter(function(r){return e[r]}).map(function(r){return r+”=”+e[r]});return t.join(“&”)}function i(e,i){function l(){var e=i.reloadUrl&&window.location.pathname!==i.reloadUrl&&o(i.urlFilters);if(e){if(“REDIRECT”===i.reloadUrlBehavior){var r=i.reloadUrl.indexOf(“?”)>=0?”&”:”?”,t=n(),l=””+i.reloadUrl+r+t;window.location=l}else”REPLACE”===i.reloadUrlBehavior?window.history&&window.history.replaceState&&window.history.replaceState(i.reloadUrl,””,i.reloadUrl):window.history&&window.history.pushState&&window.history.pushState(i.reloadUrl,””,i.reloadUrl);return i.reloadUrlBehavior}return null}function a(){for(var o=r.get(),n={offset:0},a=[“cat”,”zff”],s=0;s0?”-“+w.join(“-“)+”-“:””;window.__REDUX_STORE__.dispatch({type:”SET_FILTERS”,filters:p})}}i.filtersInit.forEach(function(e){var t=”multi”===e.type?r.MultiValueFilter:r.SingleValueFilter;r.register(e.name,t,e.value,”true”===e.excludeFromClearAll)}),r.on(“change”,a)}return{init:i}}); define(“utils/ResponsiveEvents”,[“mixins/Events”,”utils/responsive”,”utils/throttle”,”vanillajs”],function(n,e,t){“use strict”;function r(n,e,t){var r=n.filter(function(n){return e.indexOf(n)<0}),i=e.filter(function(e){return n.indexOf(e)<0});return t?r.reverse().concat(i.reverse()):r.concat(i)}function i(){var n=document.body.clientWidth;if(n!=o){var t=n>o,i=e.currentBreakpoints(),f=r(u,i,t);f.forEach(function(n){var e=t?”over-“:”under-“;c.emit(e+n)}),f.length&&c.emit(“breakpoint”,i[0]),u=i,o=n}}var o=document.documentElement.clientWidth,u=e.currentBreakpoints(),f=[“breakpoint”];e.breakpoints.forEach(function(n){f.push(“over-“+n,”under-“+n)});var c=n.create(f);return c.onOver=function(n,e){c.on(“over-“+n,e)},c.onUnder=function(n,e){c.on(“under-“+n,e)},c.offOver=function(n,e){c.off(“over-“+n,e)},c.offUnder=function(n,e){c.off(“under-“+n,e)},window.addEventListener(“resize”,t(i,100)),c}); define(“responsive/breakpoint-tracker”,[“babel/babel-helpers”,”common/trackingStreams”,”utils/ResponsiveEvents”,”utils/responsive”,”vanillajs”],function(e,n,t,i){“use strict”;function r(e){var t=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,r=”mobile”===e?320:i.widths[e];n.trackEvent(“Breakpoint”,r,t)}function o(){s||(r(i.currentBreakpoints()[0]),t.on(“breakpoint”,r),s=!0)}var s=!1;return{init:o}}); define(“ajax-request”,[“utils/json-to-url”,”utils/urlutils”],function(t,e){function r(t){var r=document.createElement(“a”);r.href=t;var s=e.getParts(r.href);return s.protocol!==window.location.protocol||s.host!==window.location.hostname}function s(t,e,s){try{r(t)||e.setRequestHeader(“X-Requested-With”,”XMLHttpRequest”)}catch(t){}try{var n=s[“content-type”]||”application/x-www-form-urlencoded; charset=utf-8″;e.setRequestHeader(“Content-Type”,n)}catch(t){}try{var o=s.accept||”text/html, */*”;e.setRequestHeader(“Accept”,o)}catch(t){}try{var a=s[“x-requested-by”];a&&e.setRequestHeader(“X-Requested-By”,a)}catch(t){}}function n(){try{return new XMLHttpRequest}catch(t){try{return new ActiveXObject(“MSXML2.XMLHTTP”)}catch(t){try{return new ActiveXObject(“Microsoft.XMLHTTP”)}catch(t){throw new Error(“Can’t create XMLHttpRequest or similar”)}}}}return function(e,r){“object”==typeof e&&(r=e,e=r.url),r=r||{};var o=r.method||r.type||”GET”,a=”string”==typeof r.data?r.data:t(r.data);return new Promise(function(t,c){var u=n(),i=!1;u.onreadystatechange=function(){i||u.readyState!==XMLHttpRequest.DONE||(i=!0,u.status>=200&&u.status0&&(r.error&&r.error(u,this.status,this.statusText),c(this.responseText)),r.complete&&r.complete(u,this.statusText))},”get”===o.toLowerCase()&&”string”==typeof a&&a.length>0&&(e+=(“?”===a[0]?””:”?”)+a,a=null),u.open(o,e,!r.synchronous),s(e,u,r),u.send(a)})}}); define(“utils/JsCapabilitiesTracker”,[“ta/util/Cookie”,”page-model”,”ajax-request”,”ta/Core/TA.LocalStorage”,”ta/util/SessionStorage”],function(e,t,o,a,r){“use strict”;function n(){var e=s(),a={gac:”Js_And_Cookie_Capabilities_Tracking”,gaa:e,gani:!0,gass:t.session.pageServlet,gasl:t.GEO_ID,gapu:t.session.uid};o({method:”POST”,url:”/GARecordCrawlable”,data:a,synchronous:!1})}function s(){var t=!!e.readRaw(i),o=!!window.chrome,n=!(!window.navigator||!window.navigator.geolocation),s=!!window.Worker,c=!!window.applicationCache,d=!(!window.history||!window.history.pushState),u=window.history&&”number”==typeof window.history.length?window.history.length:-1,g=document.createElement(“canvas”),l=!!g.getContext,w=!(!g.getContext||!g.getContext(“2d”))&&”function”==typeof g.getContext(“2d”).fillText,y=document.createElement(“video”),h=!!y.canPlayType,v=!!h&&””!==y.canPlayType(‘video/ogg; codecs=”theora, vorbis”‘),S=!!h&&””!==y.canPlayType(‘video/webm; codecs=”vp8, vorbis”‘),b=document.createElementNS&&document.createElementNS(“http://www.w3.org/2000/svg”,”svg”),m=!(!b||!b.createSVGRect),C=a.enabled,f=!(!a.enabled||!a.getObject(p)),T=r.canUseSessionStore(),k={hasRoybatty:t,hasChrome:o,supportGeolocation:n,supportWebWorker:s,supportOffline:c,supportHistory:d,historyLength:u,supportSvg:m,supportCanvas:l,supportCanvasText:w,supportVideo:h,supportOgg:v,supportWebM:S,supportLocalStorage:C,hasDefaultDatePops:f,supportSessionStorage:T};return JSON.stringify(k)}var i=”roybatty”,p=”ddservletpops”;return{track:n}}); define(“ta/util/trackHistoryInject”,[“common/trackingStreams”],function(t){return function(){window.history&&window.history.state&&(window.history.state.fromBackClick&&(delete window.history.state.fromBackClick,t.trackEventOnPageOnce(“commerce_history_injection”,”back_button_clicked”)),window.history.state.fromBABackClick&&(delete window.history.state.fromBABackClick,t.trackEventOnPageOnce(“ba_history_injection”,”back_button_clicked”)))}}); define(“common/poll-tracker”,[“babel/babel-helpers”,”mixins/mixin”,”mixins/Events”],function(n,t,e){“use strict”;function r(n){return n.reduce(function(n,t){return n.concat(t)})}function l(n){return n.pollGroups[n.pollGroups.length-1]}function u(n,t){for(var e=n.pollGroups.length-1;e>=0;e–){var r=n.pollGroups[e][t-1];if(r)return r}return null}function o(n){for(var t=0;t2&&void 0!==arguments[2]?arguments[2]:null;a.trackEvent(“map_pin”,t,c,n)}function i(){n(!0,null)}function o(t){a.trackEvent(“map_view”,”open_requested”,t)}function r(t){window.setTimeout(function(){n(!0,t.offsetWidth)},0)}function p(t,c){n(!1,t.offsetWidth),a.trackEvent(“map_view”,”map_close_num_pins”,c)}function l(t,n){var c={loaded:t,timeSpentOnMap:n};a.trackEvent(“map_view”,”map_close_load_test”,JSON.stringify(c))}function k(t){a.trackEvent(“map_view”,”map_impl”,t)}function u(t){c(“map_view”,”empty”,t)}function m(t,a){c(“map_view”,a?”redo_auto”:”redo”,t)}function _(){a.trackEvent(“map_view”,”grow”)}function v(){a.trackEvent(“map_view”,”shrink”)}function f(t){c(“map_move”,”pan”,t)}function d(t){c(“map_move”,”zoom_in”,t)}function s(t){c(“map_move”,”zoom_out”,t)}function M(t,a){e(“hover”,t,a)}function w(t,a){e(“click”,t,a)}function C(t){a.trackEvent(“map_detail_card”,”photo_click”,t,null)}function E(t){a.trackEvent(“map_detail_card”,”saveCTA_click”,t,null)}function h(t){a.trackEvent(“map_detail_card”,”title_click”,t,null)}function S(t){a.trackEvent(“map_card_cta”,”click”,t,null)}function O(t){a.trackEvent(“map_carousel”,”swipe”,t,null)}function P(t,n){a.trackEvent(“also_show”,t,n)}return{trackMapOpen:r,trackMapClose:p,trackMapFirstOpen:i,trackMapOpenRequested:o,trackRedoSearch:m,trackMapGrow:_,trackMapShrink:v,trackNoPins:u,trackMapPan:f,trackMapZoomIn:d,trackMapZoomOut:s,trackMapPinHover:M,trackMapPinClick:w,trackMapDetailCardPhotoClick:C,trackMapDetailCardSaveClick:E,trackMapDetailCardTitleClick:h,trackMapDetailCardCTAClick:S,trackCarouselSwipe:O,trackAlsoShowClick:P,trackMapLoadedWhenClosed:l,trackMapProvider:k}}); require([“ta/p13n/placements”],function(r){var a=r.define.bind(r,”map_provider_loader”,”handlers”,[“handlers”]);a([“placement”,”maps/v3/providers/providerShim”,”maps/v3/tracking”],function(r,a,e){“use strict”;function i(){var i=”trjs!”+r.params.map_impl;if(r.params.includeRollup){var p=”trjs!”+r.params.map_rollup;r.require([i,p],function(i,p){if(!p)throw”Unable to load map rollup”;i.configureLibrary(r.params.mapConfig||{}),e.trackMapProvider(r.params.map_rollup),a.registerProvider(i)})}else r.require([i],function(i){i.configureLibrary(r.params.mapConfig||{}),e.trackMapProvider(r.params.map_rollup),a.registerProvider(i)})}a.providerRequested()?i():a.on(“providerRequested”,i)})}); define(“utils/classnameUtils”,[“vanillajs”],function(){function s(s){return e[s]?e[s].lastIndex=0:e[s]=new RegExp(“(s|^)”+s+”(s|$)”,”g”),e[s]}var a={},e={};return a.hasClass=function(a,e){return!!a&&(a.classList?a.classList.contains(e):s(e).test(a.className))},a.addClass=function(s,e){s&&e&&(s.classList?s.classList.add(e):a.hasClass(s,e)||(s.className+=” “+e))},a.removeClass=function(a,e){a&&e&&(a.classList?a.classList.remove(e):a.className=a.className.replace(s(e),” “))},a.toggleClass=function(s,e,n){s&&(n||void 0===n&&!a.hasClass(s,e)?a.addClass(s,e):a.removeClass(s,e))},a.getParentByClassname=function(s,e){for(var n=s&&s.parentNode;n;n=n.parentNode)if(a.hasClass(n,e))return n;return null},a}); define(“dynamic-placement/loader”,[“babel/babel-helpers”,”ajax-request”,”page-model”,”utils/to-array”,”amdloaders”],function(e,t,a,r,n){“use strict”;function l(e){var t=document.createElement(“div”);t.innerHTML=e;var a=r(t.querySelectorAll(“style, link, script”)).reduce(function(e,t){return e[“STYLE”===t.tagName||”LINK”===t.tagName?”styles”:”scripts”].push(t),t.parentNode.removeChild(t),e},{styles:[],scripts:[]});return Object.assign(a,{html:t.innerHTML})}var s=1e4;return function(e,r){return t({url:”/DynamicPlacementAjax”,data:Object.assign({placementRollUps:e,geo:a.GEO_ID,detail:a.LOC_ID,occOffset:s++,updateType:”full”,metaReferer:a.session.pageServlet},n.getLoadedFilesParams(),r)}).then(l)}}); define(“dynamic-placement/dom-renderer”,[“babel/babel-helpers”,”amdloaders”],function(e,n){“use strict”;return function(e){return function(r){var t=r.scripts,l=r.styles,s=r.html;return n.installStyles(l),e.innerHTML+=s,n.installScripts(t)}}}); define(“maps/v3/map-loader”,[“babel/babel-helpers”,”dynamic-placement/loader”,”dynamic-placement/dom-renderer”],function(e,n,r){“use strict”;function a(){return o||(o={},o.promise=new Promise(function(e){o.resolve=e})),o}function t(e){s&&l&&a().resolve(e.querySelector(“.mapContainer”))}var o=null,l=!1,s=!1;return{waitForMap:function(){return a().promise},resolveBaseMapPlacement:function(e){l=!0,t(e)},resolveMapPageContainer:function(e){s=!0,t(e)},createMap:function(e,a,t){n(e,{servletName:a.servletName,servletClass:a.servletClass}).then(r(t))}}}); define(“maps/v3/models/eventTypes”,[“babel/babel-helpers”,”utils/objutils”],function(e,E){“use strict”;var n={PIN_CLICK:”pinClick”,PIN_HOVER_START:”pinHoverStart”,PIN_HOVER_END:”pinHoverEnd”,PIN_INTENT_HOVER:”pinHoverLong”,PIN_UPDATED:”pinUpdated”},t={CLICK:”mapClick”,CENTER_CHANGE:”centerChange”,PAN_START:”panStart”,ZOOM_CHANGE:”zoomChange”,RENDER_COMPLETE:”renderComplete”},R={PRERENDER:”preRender”,RENDER:”render”,POSTRENDER:”postRender”,BEFORE_CLOSE:”beforeClose”,CLOSE:”close”,AFTER_CLOSE:”afterClose”,LOAD_CONTENT_START:”loadContentStart”,CONTENT_RECEIVED:”contentReceived”,CONTENT_FAILED:”contentFailed”,LOAD_CONTENT_END:”loadContentEnd”,LOADING_START:”loadingStart”,LOADING_END:”loadingEnd”,REFRESH_CONTENT:”refreshContent”,DIMENSIONS_RESIZE:”dimensionsResize”,SIZE_CHANGE_REQUESTED:”sizeChangeRequested”,REDO_SEARCH_REQUESTED:”redoSearchRequested”,PIN_DATA_REQUESTED:”pinDataRequested”,DEMAND_LOAD_REQUESTED:”demandLoadRequested”,PIN_SELECTION_CHANGED:”pinTypeChanged”},C={CAROUSEL_CARD_SELECTED:”carouselCardSelected”},N=[];E.each(n,function(){N.push(this)}),E.each(t,function(){N.push(this)});var _={pin:n,map:t,state:R,providerEvents:N,external:C};return E.deepFreezeCopy(_)}); define(“maps/v3/mapStateController”,[“babel/babel-helpers”,”mixins/Events”,”utils/objutils”,”maps/v3/models/eventTypes”,”maps/v3/baselineShims/mapStateControllerShim”],function(n,t,e,i,a){“use strict”;function s(n){for(var t in n)if(n.hasOwnProperty(t)&&n[t])return!1;return!0}function o(n,t){return n+”:”+t}function p(){var n=this,i=new t(m),a={};this.on=i.on.bind(i),this.off=i.off.bind(i),this.emit=i.emit.bind(i),this.initialOpenMapOptions=null,this.loadingContent=!1,this.autoscaleEnabled=!0,this.autoscalingNow=!1,this.mapOpen=!1,this.cacheBustValue=null,this.mapHasOpened=!1,this.pinsShown=!1,this.openMap=function(t){t?n.initialOpenMapOptions=Object.assign({},n.initialOpenMapOptions,t):t=e.extend({},n.initialOpenMapOptions),n.mapHasOpened||(n.mapHasOpened=!0,t.refreshPrices=!0,n.emit(O.LOADING_START,t)),n.emit(O.PRERENDER,t),n.emit(O.RENDER,t),n.mapOpen=!0,n.emit(O.POSTRENDER,t)},this.closeMap=function(t){n.emit(O.BEFORE_CLOSE,t),n.emit(O.CLOSE,t),n.emit(O.AFTER_CLOSE,t),n.mapOpen=!1},this.toggleMap=function(t,e){“undefined”==typeof e&&(e=!n.mapOpen),e?n.openMap(t):n.closeMap(t)},this.on(O.LOAD_CONTENT_START,function(t,e){a[o(t,e)]=!0,n.loadingContent||(n.loadingContent=!0,n.emit(O.LOADING_START))}),this.on(O.LOAD_CONTENT_END,function(t,e){delete a[o(t,e)],n.loadingContent&&s(a)&&(n.loadingContent=!1,n.emit(O.LOADING_END,t,e))})}var O=i.state,l=e.deepFreeze({MAP_INIT:”mapInit”,DEMAND_LOAD_ON_INIT:”demandLoadOnInit”,PINS:”pins”,ROUTE:”route”}),r={},m=[];e.each(O,function(){m.push(this)});var u={forMap:function(n){if(r[n])return r[n];var t=new p;return r[n]=t}};return u.EVENT=O,u.CONTENT_TYPE=l,a.resolve(u),u}); define(“utils/HistoryManager”,[],function(){“use strict”;function t(){function t(){return(new Date).getTime()+””+Math.random()}function i(t){var i=t.state;if(!a&&i&&i.id){var e=i.id,s=n[e];s&&s(i.data)}}var n={},e={},a=!1;this.pushState=function(i,e,a,s){var r=t();n[r]=s,i.id=r,history.pushState(i,e,a)},this.replaceState=function(i,e,a,s){var r=t();n[r]=s,i.id=r,history.replaceState(i,e,a)},this.addCallback=function(t,i){e[t]||(e[t]=[]),e[t].push(i)},this.removeCallback=function(t,i){if(e[t]){var n=e[t].indexOf(i);n>=0&&e[t].splice(n,1)}},this.doCallbacks=function(t){e[t]&&e[t].each(function(t){t()})},this.isSupported=function(){return”undefined”!=typeof history&&”pushState”in history},this.disableCallbacks=function(t){a=t},window.addEventListener(“popstate”,i)}return t}); require([“ta/p13n/placements”],function(e){var t=e.define.bind(e,”dh_sort_filter_entry”,”handlers”,[“handlers”,”tablet/tablet”,”trcss!tablet/tablet”]);t([“babel/babel-helpers”,”placement”,”ta/page”,”ta/Core/TA.FireEvent”,”common/trackingStreams”,”common/page-filters”,”common/Radio”,”ta/prwidgets”,”utils/classnameUtils”,”maps/v3/map-loader”,”maps/v3/mapStateController”,”utils/HistoryManager”],function(e,t,r,o,l,a,n,i,s,c,d,u){function p(e){e&&(A.innerHTML=e.innerHTML,i.initWidgets(A),R=null)}function v(e,t){e&&t&&(t.innerHTML=e.innerHTML)}function m(e,t){var r=t&&t.querySelectorAll(“.toggle:checked”);v(e,t),r&&r.forEach(function(e){var t=document.getElementById(e.id);t&&(t.checked=!0)})}function b(e,t){if(!t||t.className.match(D))return!1;var r=t.getAttribute(“data-sortOrder”);if(r){f(r);var o=A.querySelector(“.sort-summary”),l=t.getAttribute(“data-label”);o&&l&&(o.innerHTML=l),x&&x.hide()}}function f(e){if(e){var t=window.location.pathname;t&&t.indexOf(L)>0&&(T.replaceState({},document.title,t.replace(L,””)),r.setRepollPageUrl(window.location.href)),r.setSortOrder(e);var o=A.querySelector(“.sort_dropdown”);if(o){var a=o.getAttribute(“data-url”);a&&window.location.href.indexOf(a)<0&&T.pushState({data:0},"",a)}l.trackEvent("sort_h","click",e);var n=Array.prototype.slice.call(A.querySelectorAll(".sort_option")),i=Array.prototype.slice.call(N.querySelectorAll(".sort_option"));n.concat(i).forEach(function(t){var r=t.className,o=r.replace(D,"");t.getAttribute("data-sortOrder")===e&&(o+=" active"),r!==o&&(t.className=o)})}}function h(e,t){var r=t.className;if(!r.match(I))return l.trackEvent("List_sort","click_open"),t.className=r+" loading",j.emit("openSort"),H?void require(["babel/babel-helpers","lib/jquery-amd","overlays/Overlay","overlays/position/fullscreen","overlays/styles/windowshade","overlays/styles/tray","overlays/options/closeOnWindowshadeClick","overlays/options/slideInOut"],function(e,o,l,a,n,i,s,c){t.className=r,x||(x=new l(E,a(),new i(null,null,"",null,null,N),n("dark",null,"fade_short"),c("from_bottom",500,100),s)),x.show(),o(N).find(".sort_option .toggle:checked").prop("checked",!1)}):void require(["babel/babel-helpers","lib/jquery-amd","utils/responsive","utils/ResponsiveEvents","overlays/Overlay","overlays/position/fullside","overlays/styles/windowshade","overlays/options/keepInDom","overlays/styles/modal","overlays/options/closeOnWindowshadeClick","overlays/options/slideInOut"],function(e,o,l,a,n,i,s,c,d,u,p){t.className=r,x||(x=new n(E,i.right(),new d(null,null,"collapsed_content",null,null,N),s("dark"),p("from_right"),u)),x.show()})}function y(e,t,r){var o=t.className;o.match(I)||(j.emit("openFilters"),t.className=o+" loading",require(["babel/babel-helpers","trjs!responsive/collapsibleLayout"],function(e,l){t.className=o,l.toggle(r).then(function(e){return e&&O.trigger("resize")})}),l.trackEvent("Filter_overall","in_view"))}function w(e,t){var r=t.getAttribute("data-param"),o=t.getAttribute("data-value"),l=t.getAttribute("data-tracker"),n=t.getAttribute("data-index");return r&&o&&(a.clear(r,o),C.trigger("externalClear",{paramName:r,value:o}),l&&require(["babel/babel-helpers","trjs!common/track-filter","trjs!common/filters-helper"],function(e,t,o){t(o.getFilterNameFromParam(r),"unselect_cloud",l,n)}),t.parentNode.removeChild(t)),!1}function g(e,t,r,o){if(l.trackEvent("sort_h",o?"hover_dropdown":"hover",r),H&&o){if(F[r])return void F[r].show();require(["babel/babel-helpers","trjs!overlays/Overlay","trjs!overlays/position","trjs!overlays/styles/tooltip","trjs!overlays/options/closeOnMouseAway","trjs!overlays/options/maxWidth"],function(e,o,l,a,n,i){var s=t&&t.querySelector(".content");s&&(F[r]=new o(t,[a(t,"left","light",s.innerHTML),l.left([t.parentElement]),i(200),n]),F[r].show())})}else require(["babel/babel-helpers","trjs!overlays/uiOverlay"],function(r,o){o(e,t)})}function _(e){require(["babel/babel-helpers","overlays/uiOverlay"],function(t,r){r(null,e)})}function k(e,t){R||require(["babel/babel-helpers","forms/select"],function(e,r){R=new r.Select,R.on("change",function(e){f(e)}),R.on("open",function(){F={},l.trackEvent("sort_h","dropdown_click","")}),R.init(t,!1,"div",!0)})}function q(e){"clear"===e.target.className&&(require(["babel/babel-helpers","trjs!common/track-filter"],function(e,t){t("overall_clear","unselect_link","clear_all",0)}),a.clearAll(),C.trigger("externalClearAll"))}function S(e,t,r,o){l.trackEvent("sort_h",o?"hover_dropdown":"hover",r)}var E=document.querySelector("#"+t.id),A=document.querySelector("#"+t.id+" .sort_filter_bar"),N=document.querySelector("#"+t.id+" .sort-flyout"),O=new n("web-component-price-slider"),C=new n("web-component-data-bridge"),j=new n("hotels-sort-filter-entry"),M="withDescHeaders",T=new u,H=!!document.querySelector("[data-sort-redesign]"),L="-jdistLow",F={},x=void 0,R=void 0,D=/ *bactiveb/,I=/ *bloadingb/;return o.on("update-"+t.name,p),o.on("update-"+t.name+"-mw-header",function(e){return v(e,document.querySelector("#"+t.id+" .mobile-header"))}),o.on("update-"+t.name+"-flyout",function(e){return m(e,N)}),s.hasClass(A,M)&&c.waitForMap().then(function(e){var r=d.forMap(e),o=".sort_filter_bar.withDescHeaders",l=".mobile-header .descriptive_header_text";r.on(d.EVENT.RENDER,function(){var e=document.querySelector("#"+t.id+" "+o),r=document.querySelector("#"+t.id+" "+l);s.addClass(e,"is-hidden-desktop"),s.addClass(r,"is-hidden")}),r.on(d.EVENT.CLOSE,function(){var e=document.querySelector("#"+t.id+" "+o),r=document.querySelector("#"+t.id+" "+l);s.removeClass(e,"is-hidden-desktop"),s.removeClass(r,"is-hidden")})}),{clickSort:b,openSort:h,removeFilter:w,openFilters:y,hoverTooltip:g,trackClickMobileTooltip:S,showMobileOptionModal:_,initSelect:k,descriptiveHeaderClick:q}})}); require(["ta/p13n/placements"],function(e){var t=e.define.bind(e,"dh_sort_filter_entry_wc_bridge","handlers",["handlers"]);t(["babel/babel-helpers","placement","ta/page","common/Radio","ta/Core/TA.Event"],function(e,t,r,n,a){var i=document.getElementById(t.id),o=n("web-component-data-bridge"),u="data-descriptive-header",d="data-empty-list-alert",l="data-highlight-all",c="data-sort-options",s="data-current-sort",p=function(){var e=i.querySelector("["+u+"]").innerHTML,t="true"===i.querySelector("["+d+"]").getAttribute(d),r="true"===i.querySelector("["+l+"]").getAttribute(l),n=i.querySelector("["+c+"]").getAttribute(c),a=i.querySelector("["+s+"]").getAttribute(s),p=n&&JSON.parse(n),g=a&&JSON.parse(a);o.reply("desc_header_text",function(){return{descHeaderText:e,emptyListAlert:t,highlightAll:r}}),o.reply("sort_options_ext",function(){return p}),o.reply("cur_sort_ext",function(){return g.sortOrder})},g=function(e){e&&e.innerHTML&&(i.querySelector(".update").innerHTML=e.innerHTML,p(),e.classList.contains("filters-update-speedup")||o.trigger("update"))};return p(),a.on("update-"+t.name,g),{}})}); define("utils/resize-invalidated-cache",["babel/babel-helpers"],function(e){"use strict";var t="__resize-cache",n=Date.now();return window.addEventListener("resize",function(){return n=Date.now()}),function(e){var a=e[t];return(null==a||a.timestamp-1&&r.trackEventOnPage("video_ad","rendered",d,0,!0)})}var a=[138260539160,138260553101,138260595789,138260598747,138260643731,138260673692,138260673698,138260679323,138260921161,138260922949,138260936071,138261110515];n.on("onAdRender",r),n.on("onAdRenderMW",r)})}); require(["ta/p13n/placements"],function(n){var e=n.define.bind(n,"hsx_h1","handlers",["handlers"]);e(["placement","ta/Core/TA.Event"],function(n,e){function t(e){var t=document.getElementById(n.id);t&&e&&e.innerHTML&&(t.innerHTML=e.innerHTML)}return e.on("update-"+n.name,t),{}})}); require(["ta/prwidgets"],function(e){var i=e.define.bind(e,"common_ad_resp","handlers",["handlers"]);i(["widget","ta/Core/TA.Event","utils/responsive","utils/ResponsiveEvents","utils/resize-invalidated-cache"],function(e,i,n,t,r){function a(e,n){if(o!==n){var t=e.find(".largeScreen"),r=t.find(".gptAd");r.toggleClass("inactive",!n),t.toggleClass("hidden",!n),void 0!==o&&i.fireEvent("adSizeChanged"),o=n}}function d(i){var d=i(e.element),o=r(n.mobile);t.onOver("mobile",function(){a(d,!0)}),t.onUnder("mobile",function(){a(d,!1)}),a(d,!o)}var o;require(["lib/jquery-amd"],d)})}); require(["ta/prwidgets"],function(e){var t=e.define.bind(e,"common_dates_cta","handlers",["handlers"]);t(["widget","ta/page","common/trackingStreams","ta/Core/TA.LocalStorage","utils/throttle"],function(e,t,a,o,n){function s(){a.trackEvent("Hotels_Dates_Cta","click","dates_cta_button"),i&&(window.Zepto&&window.scrollTo(0,0),u&&t.gatherDates(u))}function r(){d.classList.add("hidden"),a.trackEvent("Hotels_Dates_Cta","click","close_button"),o.set("userClosedDatesCta",!0,m)}function c(){if(l){var t=l(e.element),o=t.offset().top,n=t.height(),s=o+n,r=l(window).scrollTop(),i=r+l(window).height();o0;)r.appendChild(e.childNodes[0])},n.setContentElement=function(e,r,a){n.copy(e,r),a?e.parentNode&&e.parentNode.replaceChild(r,e):(e.innerHTML=””,e.appendChild(r))},n}); define(“utils/nodePreserve”,[“ta/util/ajaxPreserves”,”utils/to-array”],function(e,r){“use strict”;function t(e,r){if(e)for(e.innerHTML=””;r.firstChild;)e.appendChild(r.firstChild)}function a(e,r){r&&Array.prototype.forEach.call(r.querySelectorAll(“.node-preserve, .ajax_preserve”),function(r){var t=r.getAttribute(“data-ajax-preserve”);t&&(e[t]=r,r.parentNode&&r.parentNode.removeChild(r))})}function n(e,r){var a=r.getAttribute(“data-ajax-preserve”),n=e[a];n&&(r.parentNode&&r.parentNode.replaceChild(n,r),t(n,r),delete e[a])}function i(i,o,l){if(i&&o){var d={};l&&e.innerCopy(i,o),a(d,i),t(i,o),r(i.querySelectorAll(“[data-ajax-preserve]”)).forEach(n.bind(null,d))}}var o={};return o.nodePreserve=function(e,r){i(e,r,!1)},o.treePreserve=function(e,r){i(e,r,!0)},o}); define(“responsive/text-resizer”,[“babel/babel-helpers”,”utils/to-array”,”utils/classnameUtils”,”utils/throttle”,”utils/ResponsiveEvents”,”vanillajs”],function(t,e,i,r,n){function l(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document.body;return!t===document&&(t=document.body),e(t.querySelectorAll(“.”+p)).filter(function(t){return!!t[v]})}function u(e){e.style.fontSize=null;var i=(getComputedStyle(e)||{}).fontSize;if(!i)return{};var r=i.match(b),n=t.slicedToArray(r,3),l=(n[0],n[1]),u=n[2],o=parseFloat(l);return o&&o>.001&&z[u]?{originalSize:o,units:u,multiplier:1,minMult:Math.max(y,z[u]/o)}:{}}function o(t){if(t[v])return t[v];var e=u(t);return e.originalSize?(t[v]=Object.assign(e,{group:t.getAttribute(h),multApplied:1}),t[v]):null}function a(t){for(var e=0;e0)||t.scrollWidth<=t.clientWidth)return!1;var e=t[v],i=(parseFloat(t.style.paddingLeft)||0)+(parseFloat(t.style.paddingRight)||0),r=t.scrollWidth-i;if(r<1)return!1;var n=(t.clientWidth-i-2)/r;return n=Math.min(n,.95)*e.multiplier,nt.clientWidth&&(t[v].multiplier=t[v].minMult)}))}function c(t){var e=t[v];if(!(e&&e.multApplied!=e.multiplier&&e.multiplier>0))return!1;var i=Math.max(z[e.units],e.originalSize*e.multiplier);return t.style.fontSize=””+i+e.units,e.multApplied=e.multiplier,!0}function s(t){if(t&&t.length){var e={};t.forEach(function(t){var i=t[v];i.group?e[i.group]=1:c(t)}),Object.keys(e).length&&(t=l(document.body).filter(function(t){var i=t[v],r=i.group;return!!(i&&r&&e[r]&&i.multiplier>0)&&(e[r]>i.multiplier&&(e[r]=i.multiplier),!0)}),t.forEach(function(t){var i=t[v];i.multiplier=e[i.group],c(t)}))}}function f(t){if(t&&(E||(E=!0,f(document.body),t!==document&&t!==document.body))){var c=e(t.querySelectorAll(“.”+m));if(c.length){c.forEach(function(t){i.removeClass(t,m),i.addClass(t,p)});var h=[];c=c.filter(function(t){var e=o(t);return!!e||(h.push(t),!1)}),a(c),h.forEach(function(t){i.removeClass(t,p),i.addClass(t,m)}),s(c),S||(window.addEventListener(“resize”,r(function(){d(document.body)},50)),n.on(“breakpoint”,function(){l(document.body).forEach(function(t){return Object.assign(t[v],u(t))})}),S=!0)}}}function d(t){var e=l(t);a(e),s(e)}var m=”autoResize”,p=”__resizeWatch”,h=”data-sizegroup”,v=”__resizerContext”,g=4,y=.5,b=/^(d+(?:.d+)?)(.*)$/,z={“px”:8.5,”em”:.5,”pt”:6,”%”:50},E=!1,S=!1;return{init:f,refresh:d}}); require([“ta/p13n/placements”],function(e){var t=e.define.bind(e,”hsx_hotel_list_lite”,”handlers”,[“handlers”]);t([“placement”,”ta/prwidgets”,”ta/page”,”utils/nodePreserve”,”ta/Core/TA.Event”,”mobile/lite/image-loader”,”responsive/text-resizer”,”common/Radio”,”maps/v3/MapsPollingOpenState”],function(e,t,n,r,a,i,o,l,s){“use strict”;function d(e){C=e,e.classList.contains(“notDone”)&&a.fireEvent(“page-repoll-not-done”)}function u(e,t){g.indexOf(t)>=0&&l(“cug”).reply(“hasLowerMemberRate”,function(){var n=null!=e&&e.classList.contains(“hasLowerMemberRate”);return[t,n]})}function c(e,t){if(g.indexOf(t)>=0){var n=null!=e&&e.classList.contains(“hasLowerMemberRate”);l(“cug”).emit(“showBanner”,[t,n])}}function f(n){c(n,e.name),n.classList.contains(“notDone”)&&a.fireEvent(“page-repoll-not-done”),setTimeout(function(){if(e.params.unmount_react_roots){var a=v&&v.querySelectorAll(“.react-container”);a&&require([“@ta/platform.runtime”],function(e){Array.from(a).forEach(function(t){e.destroyRoot(t.id)})})}var i=v&&v.querySelectorAll(“.node-preserve”);r.treePreserve(v,n),n.remove&&n.remove();var l=v&&v.querySelectorAll(“.node-preserve”);Array.prototype.forEach.call(i,function(e){if(!v.contains(e)){var t=require.defined(“lib/jquery-amd”)&&require(“lib/jquery-amd”)(e).data(“overlay”);t&&t.destroy()}}),Array.prototype.forEach.call(l,function(e){var n=require.defined(“lib/jquery-amd”)&&require(“lib/jquery-amd”)(e).data(“overlay”);if(n){var r=n.sourceElement.querySelector(“.ui_options.hidden”);r&&(r.classList.remove(“hidden”),n.updateContent(r.innerHTML),t.initWidgets(n.contentElement))}}),o.init(v),t.initWidgets(v),require([“trjs!widget/saves”],function(e){e.updateSaveButtonsStatus()})},0)}function h(e){a.off(_,f),a.off(_,d),e?a.on(_,d):(a.on(_,f),C&&f(C),C=null)}function p(e){s.getMapOpenedData().mapOpened||h(e)}function m(e){var t=e&&e.slot?e.slot.getSlotElementId():”null”;55978451===e.advertiserId||t.includes(“footer”)||t.includes(“-ref”)||require([“trjs!ta/Core/TA.Record”],function(e){e.trackEventOnPageOnce(“hh_email_lander”,”ad_seen”,t)})}var g=[“hsx_hotel_list_lite:dusty_hotels_combined_sponsored”,”hsx_hotel_list_lite:dusty_ab_hotels_sponsored”,”hsx_hotel_list_lite:dusty_filtered_out_hotels_sponsored”],_=”update-“+e.name,v=document.getElementById(e.id),y=null!=v.firstChild&&v.firstChild.classList.contains(“disableListRefreshInMapView”),q=null!=v.firstChild?v.firstChild.getAttribute(“data-deviceType”):null,b=null!=v.firstChild&&v.firstChild.hasAttribute(“data-hhDisplayInvTest”),E=null!=v.firstChild&&v.firstChild.hasAttribute(“data-hhDisplayInvControl”),C=null;return u(v.firstChild,e.name),c(v.firstChild,e.name),o.init(v),a.on(_,f),e.params.wait_for_filters&&l(“collapsible-layout”).on(“toggle”,p),y&&l(“h-map”).on(“toggle-trigger-clicked”,h),document.querySelector(“#”+e.id+”> DIV.notDone”)&&a.fireEvent(“page-repoll-not-done”),b&&(window.googletag=window.googletag||{cmd:[]},googletag.cmd.push(function(){googletag.pubads().addEventListener(“slotRenderEnded”,m)})),E&&”mobile”===q?require([“trjs!ta/Core/TA.Record”],function(e){e.trackEventOnPageOnce(“hh_email_lander”,”ad_seen”,”gpt-ad-320×50-adhesion”),e.trackEventOnPageOnce(“hh_email_lander”,”ad_seen”,”gpt-ad-320×50-header”)}):E&&”desktop”===q?require([“trjs!ta/Core/TA.Record”],function(e){e.trackEventOnPageOnce(“hh_email_lander”,”ad_seen”,”gpt-ad-728×90-970×66-header”)}):E&&”tablet”===q&&require([“trjs!ta/Core/TA.Record”],function(e){e.trackEventOnPageOnce(“hh_email_lander”,”ad_seen”,”gpt-ad-728×90-header”)}),{}})}); define(“hotels/SpecialMessageUtil”,[“babel/babel-helpers”,”ta/util/SessionStorage”,”utils/responsive”,”utils/classnameUtils”],function(e,s,t,a){function r(e,s){var t=o();return!!t[e]&&(!s||!!t[e][s])}function i(e,s){a.removeClass(e,d),”BRAND_MESSAGING_DEFAULT”!==s&&”BRAND_MESSAGING_MULTIPLE_SITES”!==s||!t.mobile()||l(s)}function n(e,s,t,r){a.addClass(e,d),t&&!r||l(s,r)}function c(e){var s=e.querySelector(“[“+S+”]”);return s?s.getAttribute(S):””}function u(e){var s=e.querySelector(“[“+b+”]”);return!(!s||!s.getAttribute(b))}function l(e,t){var a=o();a[e]=a[e]||{},t&&(a[e][t]=!0);try{s.setObject(g,a)}catch(e){}}function o(){try{return s.getObject(g)||{}}catch(e){}return{}}var g=”dismissedMessages”,d=”collapsed”,S=”data-messageType”,b=”data-persist-once-per-geo”;return{displayMessage:i,dismissMessage:n,wasMessageDismissed:r,getMessageType:c,isMessagePersistableOncePerGeo:u}}); require([“ta/p13n/placements”],function(e){var s=e.define.bind(e,”hsx_special_messaging”,”handlers”,[“handlers”]);s([“placement”,”page-model”,”ta/Core/TA.FireEvent”,”ta/prwidgets”,”utils/nodePreserve”,”hotels/SpecialMessageUtil”,”common/Radio”],function(e,s,a,t,i,n,r){function l(e){if(e&&!n.wasMessageDismissed(e,p&&g)){var s=m.querySelector(“.hsx_special_messaging > .collapsed”);n.displayMessage(s,e)}}function c(e){var s=n.getMessageType(e);s&&s!==o&&!n.wasMessageDismissed(s,p&&g)&&(o=s,e&&e.getAttribute(“data-targetEvent”)!=d&&(e=e.querySelector(‘[data-targetEvent=”‘+d+'”]’)),e&&m&&(i.treePreserve(m,e),t.initWidgets(m),l(o)))}var d=”update-“+e.name,g=s.GEO_ID,m=document.getElementById(e.id),o=n.getMessageType(m),p=n.isMessagePersistableOncePerGeo(m);a.on(d,c),l(o);var u=/ *bhiddenb/;return r(“hsx_special_message”).on(“temporaryHide”,function(e){e?m.className.match(u)||(m.className=m.className+” hidden”):m.className=m.className.replace(u,””)}),{}})}); require([“ta/p13n/placements”],function(e){var n=e.define.bind(e,”masthead_h1″,”handlers”,[“handlers”]);n([“placement”,”ta/Core/TA.FireEvent”],function(e,n){“use strict”;function t(n){var t=document.getElementById(e.id);t&&(t.innerHTML=n.innerHTML)}var r=”true”===e.params.trackInView;return r&&require([“trjs!ta/util/Element”],function(n){n.trackWhenScrolledIntoView(“#”+e.id,[“masthead”,”in_view”])}),n.on(“update-“+e.name,t),{}})}); ]]>

  • ”,”hotels_h_social_proof_poicard_single_v2″:”u003cspan class=”{name_class}”>{userName}u003c/span> rated this hotel u003cspan class=”{rating_class}”>”{ratingCategory}”u003c/span>”,”attractions.coverpage.native.from_price.strong_tax_included”:”from u003cstrong>{price}u003c/strong>”,”member_event_on_review_with_date”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> wrote a review {3}”,”common_more_capital_ffffe27f”:”More”,”social_proof_multiple_connections_visited_hotels”:”u003cspan class=”{name_class}”>{userName}u003c/span> and {numConnections, plural, one{# more connection} other{# more connections}} have been to {geoName}. u003cspan class=”{see_link_class}”>See hotels they reviewedu003c/span>”,”hotels_h_social_proof_shelf_single”:”u003cspan class=”{name_class}”>{userName}u003c/span> has been to {geoName}. u003cspan class=”{see_link_class}”>See hotels they reviewedu003c/span>”,”mobile_dropdown_collapse”:”Collapse”,”cug_memberloyaltyrates_headertitlewithperiod”:”Get lower prices.”,”cug_memberloyaltyrates_headerbody”:”Sign in to Tripadvisor to see hotel loyalty program discounts.”,”cug_memberloyaltyrates_ctawithoutperiod”:”Sign in now”,”Tier2_Brand2_CopyE”:”u003cstrong>Like saving money?u003c/strong> We search up to 200 sites to help you save up to 30%”,”social_label_Member_liked_this”:”u003ca class=”{sMemberLinkClass}” href=”{sMemberLink}”>{sMember}u003c/a> liked this”,”social_label_Suggested_for_you”:”Suggested for you”,”social_label_Trending”:”Trending”,”social_publish_date_Today”:”Today”,”social_publish_date_Yesterday”:”Yesterday”,”mobile_reviews_plural”:”{0, plural, one{# review} other{# reviews}}”,”meta_ui_contact_accom_c2b”:”Contact accommodation for availability”,”contact_accommodation_for_availability”:”Contact accommodation for availability.”,”stat_modal_save_to_trip_v2″:”Save to a Trip”,”save_all_items_modal_header”:”Save all items to a Trip”,”stat_modal_create_a_trip_v2″:”Create a Trip”,”select_trip_header”:”Select a Trip”,”social_Saved”:”Saved”,”trips_save_CTA”:”Save”,”view_deal_button_cta”:”View deal”,”meta_visit_site”:”Visit Site”,”meta_continue”:”Continue”,”checkout_free_cancellation_emphasis”:”u003cspan class={0}>FREE CANCELLATIONu003c/span> until {1}”,”plus_new_subscriber_price_spotlight”:”Check out your member-only nightly rate”,”common_Close”:”Close”,”plus_hotels_callout_up_your_travel_v2″:”Up your travel with member discounts and perks for $99/year. u003ca href=”{0}”>Learn moreu003c/a>”,”plus_list_saving_tooltip_2″:”Member savings include taxes and fees.”,”plus_hr_module_plus_savings_v2″:”Members u003cspan class=”{0}”>save {1}u003c/span> on this stay”,”plus_save_on_this_stay”:”u003cspan class=”{0}”>Save {1}u003c/span> on this stay”,”plus_save_more_on_this_stay”:”u003cspan class=”{0}”>Save {1} or moreu003c/span> on this stay”,”plus_members_save_text”:”Members u003cspan class=”{0}”>save {1} or moreu003c/span> on this stay”,”attractions_free_cancellation”:”Free Cancellation”,”attractions.booking.reserve.now.pay.later”:”Reserve Now & Pay Later”,”rebrand_see_all”:”See all”,”plus_hotels_cta_book_with_plus”:”Book with Tripadvisor Plus”,”interstitial_cta_b”:”Sign in to view deals”,”plus_logged_out_savings_commerce_v2″:”Save {0} or more on this stay”,”plus_logged_in_savings_commerce”:”You save {0}”,”plus_perks_included”:”Perks included”,”plus_hr_module_plus_heading”:”Why book with Tripadvisor Plus?”,”affiliate_cta_book_get_rewards_v1″:”Book & Get Rewards”,”affiliate_merchandise_message_v1″:”Eligible for shopping rewards from loyalty sites”,”meta_ui_taxes_and_fees_14f6″:”taxes & fees”,”hotels_save_money”:”SAVE {0}”,”plus_hotels_header_perk”:”Perks and benefits “,”plus_save_on_this_stay_raw_v2″:”Save {savePriceText} on this stay”,”plus_hotels_callout_member_saving”:”Members save {saving} on this stay”,”plus_save_x_more_on_this_stay”:”Save {0} or more on this stay”,”plus_hotels_generic_saving_any_savings”:”Members save {savings} or more on this stay”,”plus_hotels_cta_book_now”:”Book Now”,”mv_photos_from_everyone”:”everyone”,”mv_photos_from_travelers”:”travelers”,”mv_photos_from_professionals”:”professionals”,”mv_photos_from_management”:”management”,”plus_paywall_header_1″:”Nice pick.”,”plus_paywall_header_discount”:”Save {savingsPrice} or more on {hotelName} with Tripadvisor Plus.”,”plus_paywall_header_perk”:”Enjoy {perk} when you book {hotelName} with Tripadvisor Plus.”,”plus_paywall_subheader_1″:”To unlock this rate, join now.”,”plus_paywall_subheader_2″:”Then, finish booking your trip to save.”,”plus_paywall_join_now”:”Join now”,”plus_paywall_benefits_header”:”What else comes with Plus?”,”plus_paywall_benefits_1″:”Member-only prices on {numHotels}+ hotels.”,”plus_paywall_benefits_2″:”Savings on experiences, flights, and rental cars.”,”plus_paywall_benefits_3″:”Sign up for {plusSubscriptionPrice} / year.”,”plus_paywall_benefits_4″:”Cancel for any reason within 30 days.”,”plus_paywall_learn_more”:”Learn more”,”fusion_tooltip_aria_label”:”Show tooltip with more information”,”plus_hotels_plus_tooltip_v2″:”Deals on hotels worldwide. Savings on tours and activities. Member perks and benefits. u003cb>$99u003c/b>/year.”,”plus_hotels_plus_tooltip_learn_more”:”Learn more”,”plus_checkout_billing_info_field”:”Billing information”,”plus_checkout_country_field”:”Country”,”plus_checkout_select_country”:”Select Country”,”plus_checkout_address_1_field”:”Address line 1″,”plus_checkout_error_state_address”:”Invalid address”,”plus_checkout_address_2_field”:”Address line 2″,”plus_checkout_city_field”:”City”,”plus_checkout_error_state_city”:”Invalid city”,”plus_checkout_state_field”:”State”,”plus_checkout_select_state”:”Select State”,”plus_checkout_postal_code_field”:”Postal code”,”plus_checkout_error_state_postal_code”:”Invalid postal code”,”plus_checkout_add_card”:”Add this card to your account for faster booking”,”plus_checkout_cards_modal_different_card”:”Use a different card”,”plus_checkout_cards_modal_expires_colon_date”:”Expires: {date}”,”plus_checkout_cards_modal_your_stored_cards”:”Your stored credit cards”,”plus_checkout_cards_modal_name_on_card”:”Name on card”,”plus_checkout_cards_modal_expires”:”Expires”,”plus_checkout_cards_modal_continue”:”Continue”,”plus_checkout_cards_modal_select_payment_method”:”Select a payment method”,”plus_checkout_cardholder_name_field”:”Cardholder name”,”plus_checkout_error_state_cardholder_name”:”Enter a valid cardholder name”,”plus_checkout_billing_address”:”Billing address:”,”plus_checkout_default_payment_method”:”Default payment method”,”plus_checkout_security_info”:”This form is encrypted and your information is always guaranteed secure.”,”plus_checkout_security_view_details”:”View Details”,”plus_checkout_security_tooltip”:”This form is secured with 256-bit SSL encryption”,”plus_checkout_payment_details_heading”:”Payment details”,”plus_checkout_change_payment_method_cta”:”Change payment method”,”plus_checkout_dates_range”:”{0} u2192 {1}”,”ib_more_info”:”More Info”,”plus_checkout_cards_modal_ending_in”:”ending in”,”plus_checkout_cards_modal_expires_space_date”:”Expires {date}”,”plus_checkout_traveler_details_heading”:”Traveler details”,”plus_checkout_first_name_field”:”First name”,”plus_checkout_error_state_first_name”:”Enter your first name”,”plus_checkout_last_name_field”:”Last name”,”plus_checkout_error_state_last_name”:”Enter your last name”,”plus_checkout_phone_number_field”:”Phone Number”,”plus_checkout_error_state_phone_number”:”Enter a valid phone number”,”plus_checkout_email_field”:”Email”,”plus_checkout_error_state_email”:”Enter a valid email”,”plus_checkout_hotel_email_disclaimer_text”:”Booking confirmation will be sent to {email}”,”plus_checkout_subscription_email_disclaimer_text”:”Subscription confirmation will be sent to {email}”,”embedded_content_terms_and_conditions_label”:”terms and conditions”,”embedded_content_third_party_notice”:”This content is hosted by a third party ({hostName}). By showing external content you accept the {termsUrl} of {hostName}.”,”embedded_content_show_content_label”:”Show external content”,”embedded_content_remember_choice_label”:”Remember my choice”,”stat_modal_view_trip_v2″:”View Trip”,”create_trip_success_toast_with_bold”:”u003cb>{TripName}u003c/b> created!”,”stat_modal_saved_to_tripname_with_bold”:”Saved to u003cb>{TripName}u003c/b>”,”stat_modal_undo”:”Undo”,”stat_modal_removed_from_tripname_with_bold_v3″:”Removed from u003ca href=”{TripLink}” class=”{TripClass}”>u003cb>{TripName}u003c/b>u003c/a>”,”stat_modal_change”:”Change”,”stat_modal_saved_to_tripname_with_bold_v3″:”Saved to u003ca href=”{TripLink}” class=”{TripClass}”>u003cb>{TripName}u003c/b>u003c/a>”,”m1_trips_my_saves_header”:”My Saves”,”stat_modal_removed_from_tripname”:”Removed from {sTripName}”,”m1_trips_save_success_stat_d2″:”Saved! Next, organize it in a Trip.”,”trips_inline_profanity_check”:”Public Trips cannot contain profanity”,”linkify_url_error”:”You have entered an inappropriate URL”,”trips_error_default_add_item_comment_v2″:”There was a problem adding a note to this Trip item. Please try again.”,”trips_error_default_add_note”:”There was a problem adding a note to this Trip. Please try again.”,”trip_note_update_error”:”There was a problem updating your Trip note. Please try again.”,”trips_error_default_update_comment”:”There was a problem updating this comment. Please try again.”,”trips_error_duplicate”:”You already have a Trip with this name.”,”trips_stat_modal_profanity_check_native”:”Your Trip could not be created because public Trips cannot contain profanity. Please try again.”,”create_trip_general_error_v2″:”There was a problem creating this Trip. Please try again.”,”trip_contains_profanity”:”Your Trip contains profanity and cannot be made public. Please modify your Trip and try again. Questions? View Tripadvisor’s u003ca href=”https://www.tripadvisorsupport.com/hc/articles/360008133913-Tripadvisor-s-Content-Policy”>Content Guidelinesu003c/a>.”,”trips_error_default_edit_privacy”:”There was a problem updating the privacy of this Trip. Please try again.”,”trips_error_default_edit_trip”:”There was a problem editing this Trip. Please try again.”,”new_trip_name_error_msg”:”Please select a new name for your Trip.”,”social_no_permission”:”You don’t have permission to take this action.”,”trips_error_save_trip_full”:”Oh no! Your Trip has too many items in it. Please remove some items and try saving again.”,”trips_error_default_add_item_to_trip”:”There was a problem adding the item to this Trip. Please try again.”,”trips_error_default_move_item”:”There was a problem moving this Trip item. Please try again.”,”trips_error_unsave”:”There was a problem removing this item from your Trip. Please try again.”,”stat_modal_general_error”:”There was a problem saving this item. Please try again.”,”m1_trips_unsave_error”:”There was a problem removing this item. Please try again.”,”trips_error_general_default”:”There was a problem with this Trip. Please try again.”,”social_loading_error_1″:”Whoops, something went wrong.”,”soical_loading_error_2″:”Give it another try, please.”,”mobile_try_again”:”Try again”,”stat_modal_trip_name”:”Trip name”,”trips_trip_name_character_count”:”{nCharacterCount} / 50 characters”,”stat_modal_name_exceeds_50″:”Trip name must not exceed 50 characters”,”trip_privacy_setting_header”:”Choose who can see your Trip”,”stat_modal_create”:”Create”,”trips_move_error”:”There was a problem moving this item. Please try again.”,”airm_mobile_show_more”:”Show more”,”create_trip_screen_privacy_private”:”Private”,”trips_privacy_explanation_new”:”Not visible to other Tripadvisor users and members, except for you and any friends with whom you share your Trip.”,”create_trip_screen_privacy_public”:”Public”,”create_trip_screen_privacy_public_explanation_v2″:”Visible to all travelers on Tripadvisor, including any friends you share your Trip with”,”trips_reported_explanation”:”Your Trip does not meet Tripadvisor’s u003ca href=”https://www.tripadvisorsupport.com/hc/articles/360008133913-Tripadvisor-s-Content-Policy”>Content Guidelinesu003c/a> for public Trips and has been set to private. It cannot be made public again.”,”trips_collaborator_privacy_modal”:”This Trip is {privacySetting}. Only the owner of the Trip can change this setting.”,”profile_update_error_username_too_short”:”{0} needs to be at least 3 characters”,”profile_update_error_username_too_long”:”{0} cannot be longer than 20 characters”,”mobile_profile_update_error_username_invalid_characters”:”Only use Latin characters (A-Z), numbers, underscore “_”, and dash “-“.”,”profile_update_error_username_already_exists”:”{0} has already been taken”,”profile_update_error_contains_profanity”:”Profanity is not allowed”,”profile_update_error_username_contains_ta_words”:”Words such as u201CStaffu201D, u201CAdminu201D, u201CTripadvisoru201D are not allowed.”,”social_edit_profile_username”:”Username”,”onboarding_social_name_screen_username_ghost_text”:”e.g. SavvyTraveler123″,”onboarding_social_name_screen_username_helper_text_period_814″:”This unique handle helps travelers search for you.”,”onboarding_social_name_screen_display_name_field_v2″:”Display name”,”mobile_profile_update_error_display_name_too_short”:”Display name needs to be at least 3 characters”,”profile_update_error_display_name_too_long”:”{0} cannot be longer than 40 characters”,”onboarding_social_name_screen_returning_header”:”Please confirm or update your profile information”,”onboarding_social_name_screen_display_name_ghost_text”:”e.g. John Doe”,”onboarding_social_name_screen_display_name_helper_text_period_814″:”This appears on your profile and any content you post.”,”onboarding_social_name_screen_cta”:”Confirm”,”onboarding_social_skip_link”:”Skip for now”,”2019_by_skipping_username_step”:”By skipping this step you will be given an automatically generated display name and @username”,”compliment_9bd”:”Sorry, an unexpected error has occurred. Please try again in a moment.”,”link_uploader_refresh”:”Refresh”,”btn_cancel”:”Cancel”,”common_price_range_currency_plus_v3″:”{0}u2013{1}+”,”common_price_range_v3″:”{0}u2013{1}”,”hsx_any_distance”:”Any distance”,”common_dist_mi”:”{0} mi”,”common_dist_km”:”{0} km”,”distance_from_poi”:”{0} from {1}”,”h_walkability_filter_pill_v2″:”walkability: {nMinWalkability} to {nMaxWalkability}”,”hotels_only”:”Hotels only”,”destination_driver_title_2″:”Heading to {geoName}?”,”destination_driver_description_2″:”Get the scoop from other travelers on the canu2019t-miss food, drinks, stays, and sights.”,”destination_driver_cta”:”Start exploring”,”brand_save_money_we_search_200″:”u003cb>Save money.u003c/b> We search 200+ sites for the lowest hotel prices.”,”ads_perf_dashboard_get_started_updated”:”Get Started”,”common_Cookie_consent_14f6″:”Cookie consent”,”footer_disclaimer_line1″:”This is the version of our website addressed to speakers of {language} in {country}. If you are a resident of another country or region, please select the appropriate version of Tripadvisor for your country or region in the drop-down menu.”,”footer_disclaimer_line1_no_country”:”This version of our website is addressed to speakers of {language} generally, except for when a specific version of our website exists for their country or region. You may use the drop-down menu to access other versions of Tripadvisor addressed to specific countries and regions.”,”footer_disclaimer_line2″:”TripAdvisor LLC makes no guarantees for availability of prices advertised on our sites and applications. Listed prices may require a stay of a particular length or have blackout dates, qualifications or other applicable restrictions. TripAdvisor LLC is not responsible for any content on external web sites that are not owned or operated by Tripadvisor.”,”footer_disclaimer_line2_estimates”:”Indicative hotel prices displayed on our u201CExploreu201D pages are estimates extrapolated from historic pricing data.”,”footer_disclaimer_line3″:”TripAdvisor LLC is not a booking agent or tour operator. When you book with one of our partners, please be sure to check their site for a full disclosure of all applicable fees.”,”common_26ec”:”u00A9 {0} TripAdvisor LLC”,”common_Allrightsreserved”:”All rights reserved.”,”photos_provided_by_2_1bed”:”Some photos provided by {0}.”,”common_more_ffffe87d”:”more”,”common_9bc”:”Currency”,”footer_region”:”Region”,”footer_about_ta_v2″:”About Tripadvisor”,”footer_explore_v2″:”Explore”,”footer_do_business_v2″:”Do Business With Us”,”footer_get_app_v2″:”Get The App”,”footer_ta_sites_v2″:”Tripadvisor Sites”,”help_center_topics_ffffe427″:”Popular Help Center Topics”,”common_ffffe429″:”Write a u003ca href=”{0}”>reviewu003c/a>”,”links_tahelphostname”:”https://www.tripadvisorsupport.com/hc/en-us”,”og_masthead_social_sharing_ffffe427″:”Social sharing”,”guidelines_and_policies_ffffe427″:”Guidelines and policies”,”are_you_an_owner_ffffe427″:”Are you an u003ca href=”{0}”>owner or representativeu003c/a>?”,”getlistednew_list_on_tripadvisor_ffffe427″:”List your business”,”respond_to_a_review_ffffe427″:”u003ca href=”{0}”>Respondu003c/a> to a review”,”visit_your_center_ffffe427″:”Visit your u003ca href=”{0}”>Management Centeru003c/a>”,”have_other_questions_ffffe427″:”Have Other Questions?”,”visit_the_help_center_ffffe427″:”Visit the u003ca href=”{0}”>Help Centeru003c/a>”,”common_TripAdvisor”:”Tripadvisor”,”articles_opf_title_v2″:”Travel Articles | Travel Tips, Insights, & Inspiration from Tripadvisor”,”articles_opf_meta_description”:”Browse through our articles to find useful travel tips and inspiration to plan your next trip. From must have travel products to breathtaking destinations, Tripadvisor has you covered!”,”com_fyf_p2_011″:”Back”,”common_Submit”:”Submit”,”common_Yes”:”Yes”,”common_No”:”No”,”social_report_level3_1″:”Enter the name of the correct listing. (required)”,”common_25f1″:”Search Tripadvisor”,”social_report_level3_2″:”Please explain why you think this review doesnu2019t belong on this listing. (required)”,”report_review_redirect_2_part_2″:”To edit or improve your business details please go to the u003ca href=”{sUrl}”>Improve this Listingu003c/a> link.”,”report_review_redirect_2_part_1″:”To edit or improve your business details please visit your u003ca href=”{sUrl}”>Management Centeru003c/a>”,”report_review_redirect_3″:”To report your business as closed please visit your u003ca href=”{sUrl}”>Management Centeru003c/a>”,”report_review_redirect_4_ver_2″:”To edit your response, first remove it then submit a new one. Visit the u003ca href=”{sUrl}”>Respond to Reviewsu003c/a> section in the Management Center, then click ‘delete response’ at the bottom.”,”report_review_redirect_5″:”To report a change of ownership or renovation please visit your u003ca href=”{sUrl}”>Business Representative Support Pageu003c/a> in your Management Center.”,”report_review_redirect_6″:”To report a photo please navigate to the photo at the top of the page and submit a report via the report flag.”,”report_review_redirect_7″:”We do not remove listings unless a business is u003cspan class=”{sEmphClass}”>permanently closedu003c/span>. For further information see our u003ca href=”{sUrl}”>Help Centeru003c/a>. “,”report_review_radio_desc_19″:”Do you know where this review belongs?”,”report_review_radio_desc_9″:”It contains profanity, sexually explicit comments, hate speech, prejudice, threats, or personal insults.”,”report_review_radio_desc_10″:”I believe an employee of a competing business or former employee of my business wrote this review.”,”report_review_radio_desc_11_ver_1″:”While reviewers may only write about an experience that happened within the past year, we do not remove old reviews.Older reviews have less impact on the Popularity Index.”,”report_review_radio_desc_12_part_1″:” Example: The review is titled “Excellent” but the overall rating is 1″,”report_review_radio_desc_12_part_2″:”The reviewer rated a category they did not experience. Example: “Sleep quality:2″ but reviewer did not stay. Overall ratings are NOT an average of sub-ratings.”,”report_review_radio_desc_13_ver_2″:”This reviewer had no experience of my business including the reservation process or check-in. (Tripadvisor does allow reviews of incidents/events that occur during the reservation process, check-in or upon arrival at the establishment.)”,”report_review_radio_desc_14_part_1″:” This person has 2 reviews with the same text, or copied text from another reviewer or source.”,”report_review_radio_desc_14_part_2″:”Reviewers are allowed to write one review of each experience of a business within our timeline guidelines.”,”report_review_radio_desc_15_ver_1″:”It contains advertising or promotions for another business.”,”report_review_radio_desc_16″:”Per our guidelines, each reviewer may only submit one review of an experience. But multiple travelers are entitled to write a review of the same experience and those reviews will not be removed if they meet guidelines.”,”report_review_radio_desc_17″:”We do not arbitrate factual disputes with reviewers. If you disagree with the content of a review please share your side of the story with a u003ca href=”{sUrl}”>Management Responseu003c/a>. “,”report_review_radio_desc_18″:”It contains information such as full names, email addresses, credit cards or passwords.”,”social_report_level2_redirect”:”To edit or improve this listing details please go to u003ca href=”{sUrl}”>Improve this Listingu003c/a>.”,”social_report_level2_1″:”We appreciate your concern; however, we do not fact check reviews. Property owners are able to respond to reviews – if you are an owner of this property please u003ca href=”{sUrl}”>claim your listingu003c/a>.”,”social_report_level2_3″:”Do you know where this photo belongs?”,”social_report_level2_4″:”Do you know where this video belongs?”,”trip_level_2_disagree_or_error”:”We appreciate your concern; however, we don’t remove trips because other users disagree with the content or because they contain errors. Learn more about our u003ca href=”{sUrl}”>Trips Guidelines.u003c/a>”,”qa_iap_label”:”Why are you reporting this?”,”iap_profile_report_from_post_lev2″:”All concerns related to a user’s contributions need to be reported directly from the individual post that violates u003ca href=”{sUrl} target=”_blank”>our guidelines.u003c/a>”,”iap_profile_general_support_lev2″:”Our u003ca href=”/GeneralSupport” target=”_blank”>General Support Formu003c/a> can help you address issues with your account.”,”iap_profile_report_from_inbox_lev2″:”Report messages directly from the message in your u003ca href=”/Inbox” target=”_blank”>inboxu003c/a>.”,”iap_profile_problem_with_pic_lev2″:”To report other photos posted by this user, please report directly from the photo(s).”,”explain_why_management_response_violates_guidelines”:”Please explain why you think this management response is inappropriate and does not meet u003ca href=”{link}” target=”_blank”>guidelinesu003c/a>.”,”common_OK”:”OK”,”social_report_ty2″:”Thank you!”,”social_report_ty2b”:”Your report has been submitted and someone from our team will look at it soon!”,”social_report_prof_err”:”Oh dear! Something went wrong. Perhaps refresh and try again.”,”report_problem_ffffff85″:”Report a problem”,”ur_rd_0characterminimum”:”{0} character minimum”,”ur_rd_0charactermaximum”:”{0} character maximum”,”trip_detail_edit_trip”:”Edit Trip”,”trips_organize_your_trip”:”Organize your Trip”,”trips_add_links_1″:”Add Links to Trip”,”trips_make_trip_public”:”Make Trip public”,”trips_make_trip_private”:”Make Trip private”,”social_report_1″:”Report this”,”trips_collaborators”:”Collaborators”,”trips_add_notes_1″:”Add Notes to Trip”,”copy_your_trip”:”Copy your Trip”,”trip_detail_delete_trp”:”Delete Trip”,”social_untag_me”:”Untag me”,”trips_delete_trip_confirmation_header”:”Delete Trip?”,”trips_delete_trip_confirmation_text_v2″:”Are you sure you want to delete this Trip? Deleting a Trip will delete all the items and notes you have added to it. The Trip cannot be retrieved once it is deleted.”,”stat_modal_cancel”:”Cancel”,”trips_delete_CTA”:”Delete”,”triplist_itineraryday_ffffe73c”:”Day {0}”,”insp_sponby”:”Sponsored by”,”common_Read_more”:”Read more”,”common_Readless”:”Read less”,”trips_dates_add_dates_cta”:”Add dates”,”trips_dates_trip_detail_days”:”{nItems, plural, one{# Day} other{# Days}}”,”trips_dates_date_from_date_to”:”{dateFrom} – {dateTo}”,”social_opengraph_trips_title”:”{tripName} | Trip By {userName}”,”trip_detail_add_description”:”Add Description”,”trip_detail_item_count_date_updated”:”{0, plural, one{# item} other{# items}}, updated {Date}”,”trips_empty_youve_created_trip”:”Youu2019ve created a Trip!”,”trips_empty_subtext”:”Start saving places you like, then organize your plans and view them on a map.”,”trips_empty_shelf_title”:”Save places youu2019ve recently viewed”,”trips_item_error_load”:”There was a problem loading items in this Trip.”,”exp_book_now_ap”:”Book Now”,”trips_dates_privacy_change_message”:”Make your Trip dates public?”,”trips_dates_privacy_change_message_body”:”All travelers on Tripadvisor will see the dates of your public Trip. You can choose to use days instead.”,”trips_dates_change_to_days”:”Change to days”,”trips_dates_privacy_change_dates”:”Continue with dates”,”trips_dates_menu_cancel”:”Cancel”,”trips_choose_who_can_see_trip”:”Choose who can see your Trip”,”trips_cancel_CTA”:”Cancel”,”change_cover_photo_trips”:”Change cover photo”,”required_ffffdbd1″:”required”,”trip_detail_description”:”Description”,”upload_profile_photo”:”+ Upload photo”,”cancel_profile_photo_selection”:”Cancel”,”save_profile_photo_selection”:”Save”,”mobile_upload_photo_8e0″:”Upload Photo”,”trips_read_more_notes”:”Read {0, plural, one{# more note} other{# more notes}}”,”common_Readmore”:”Read more”,”trips_delete_note_confirmation_header”:”Delete note?”,”trips_delete_note_confirmation_text”:”Are you sure you want to delete this note? This action cannot be undone.”,”trips_edit_note”:”Edit note”,”inbox_swipe_delete”:”Delete”,”trips_edit_CTA”:”Edit”,”trips_add_note”:”Add note”,”trips_dates_use_days_cta”:”Use days”,”trips_dates_use_dates_cta”:”Use dates”,”trips_dates_clear”:”Clear”,”trips_dates_use_days_or_dates”:”Create itinerary using dates or days”,”trips_dates_add_item”:”Add item”,”trips_remove_item_confirmation_header”:”Remove item?”,”trips_remove_item_confirmation_text”:”Are you sure you want to remove this item from your Trip?”,”saves_redesign_delete_trip_cancel_button”:”Cancel”,”trips_remove_item_remove”:”Remove”,”trips_move_to_top”:”Move to top”,”trips_move_to_bottom”:”Move to bottom”,”saves_remove_from_trip”:”Remove from trip”,”crm_social_tripadvisormember_10042018″:”A Tripadvisor member”,”trips_ugc_photo_by_v2″:”Photo by {displayName}”,”trips_ugc_location_name_and_n_others_v2″:”u003cb>{sLocationName}u003c/b> and u003cb>{nOtherLocations, plural, one{# other place} other{# other places}}u003c/b>”,”trips_ugc_video_by_v2″:”Video by {displayName}”,”trips_ugc_review_by_v2″:”Review by {displayName}”,”rd_forums_post_title_re”:”Re: {0}”,”trips_ugc_forum_question_by”:”Question by {displayName}”,”trips_ugc_forum_reply_by”:”Reply by {displayName}”,”trips_drag_and_drop”:”Drag and drop to organize”,”trips_date_add_days_inline_title”:”Days”,”sunday_52″:”Sunday”,”monday_52″:”Monday”,”tuesday_52″:”Tuesday”,”wednesday_52″:”Wednesday”,”thursday_52″:”Thursday”,”friday_52″:”Friday”,”saturday_52″:”Saturday”,”common_day_sun_abbr”:”Sun”,”common_day_mon_abbr”:”Mon”,”common_day_tue_abbr”:”Tue”,”common_day_wed_abbr”:”Wed”,”common_day_thu_abbr”:”Thu”,”common_day_fri_abbr”:”Fri”,”common_day_sat_abbr”:”Sat”,”common_month_year1″:”January {0}”,”common_month_year2″:”February {0}”,”common_month_year3″:”March {0}”,”common_month_year4″:”April {0}”,”common_month_year5″:”May {0}”,”common_month_year6″:”June {0}”,”common_month_year7″:”July {0}”,”common_month_year8″:”August {0}”,”common_month_year9″:”September {0}”,”common_month_year10″:”October {0}”,”common_month_year11″:”November {0}”,”common_month_year12″:”December {0}”,”common_month_year”:”Month Year”,”trips_dates_select_a_date”:”Select a date”,”saves_start_date”:”Start date”,”saves_end_date”:”End date”,”em_dash_date_format”:”— / — / —”,”trip_dates_unscheduled”:”Unscheduled”,”trips_unassigned”:”Unassigned”,”trips_dates_privacy_change_message_trip_currently_public”:”Are you sure you want to continue?”,”trips_dates_add_item_save”:”Done”,”trip_dates_choose_day”:”Choose day”,”trips_dates_move_items”:”Do you want to move items to another day?”,”trips_dates_move_from”:”Move from”,”trips_dates_move_to”:”Move to”,”copy_of_trip_name”:”Copy of {0}”,”trips_add_a_link_modal_educopy”:”Add links to helpful articles so you can reference them later”,”mobile_help_center_url”:”https://www.tripadvisorsupport.com/hc/en-us”,”trips_guidelines”:”Guidelines”,”link_inputfield_error_blacklist”:”Invalid URL. Tripadvisor does not recognize this as a trusted domain.”,”link_inputfield_error”:”Invalid URL. Please add the correct website address.”,”success_repost_link”:”Your link was posted!”,”linkpost_rate_limited_v2″:”Your link failed to upload. You have exceeded the limit of allowed links.”,”trips_general_error”:”There was an issue completing this action. Please try again later.”,”trips_insert_url_link_modal”:”u003cb>Insert URL belowu003c/b> (required)”,”trips_url_ghost_text”:”ex. www.tripadvisor.com”,”link_uploader_nextbutton”:”Next”,”trips_add_link_modal_CTA”:”Add link”,”mobile_profile_users_forum_post_reply”:”{0}’s reply”,”mobile_profile_users_forum_post_question”:”{0}’s question”,”mobile_profile_users_link_post”:”{0}’s link”,”mobile_profile_users_photo”:”{0}’s photo”,”mobile_profile_users_video”:”{0}’s video”,”mobile_profile_users_review”:”{0}’s review”,”trips_note_modal_header”:”Notes about {POIName}”,”trips_share_message_note”:”Share this note with friends via:”,”trips_link_card_share”:”Share this with friends via:”,”trips_share_message”:”Share this place with friends via:”,”trip_detail_remove_from_trip”:”Remove from Trip”,”trips_edit_your_note_overflow”:”Edit your note”,”trips_move_up”:”Move up”,”trips_move_down”:”Move down”,”common_Restaurant_3dd”:”Restaurant”,”common_Attraction_3dd”:”Attraction”,”attractions.tickets_and_tours”:”Tickets & Tours”,”common_Hotel”:”Hotel”,”AccommodationCategoryModelVacationRental”:”Vacation Rental”,”common_Accommodation”:”Accommodation”,”exp_admission_ticket_price”:”Admission Ticket {sPrice}”,”attractions.merchandising.from.price.with.span”:”from u003cspan>{sPrice}u003c/span>”,”trips_ugc_byline_v3″:”Posted by u003cspan class=”{classNames}”>{displayName}u003c/span>”,”trips_ugc_forum_reply_title_v3″:”u003ca class=”{classNames}” href=”{href}” target=”{linkTarget}”>{displayName}u003c/a> posted a reply”,”trips_ugc_forum_question_title_v3″:”u003ca class=”{classNames}” href=”{href}” target=”{linkTarget}”>{displayName}u003c/a> posted a question”,”trips_detail_forum_name”:”{forumName} forum”,”Date_of_visit”:”u003cspan class=”{0}”>Date of visit:u003c/span> {1}”,”Date_of_stay”:”u003cspan class=”{0}”>Date of stay:u003c/span> {1}”,”Date_of_experience”:”u003cspan class=”{0}”>Date of experience:u003c/span> {1}”,”trips_note_title_1″:”Note title”,”trips_required”:”required”,”trips_note_ghost_text_example”:”ex. Breakfast spots”,”trips_note_title_error”:”Please add note title to continue”,”trips_note_body_1″:”Note body”,”trips_note_modal_ghost_text_1″:”ex. Tips and recommendations for places to go”,”trips_note_body_error”:”Please add note body to continue”,”trips_save”:”Save”,”trips_day_header_item_count”:”{nItems, plural, one{# item} other{# items}}”,”trips_STA_poi_added”:”{POIName} has been added to u003cspan class=”{className}”>{TripName}u003c/span>”,”trips_STA_poi_removed”:”{POIName} has been removed from u003cspan class=”{className}”>{TripName}u003c/span>”,”dual_search_recently_viewed_all_caps”:”RECENTLY VIEWED”,”empty_trip_detail_search_tripadvisor”:”Search Tripadvisor”,”trips_STA_find_add_places”:”Find and add places”,”trips_privacy_options_modal_header”:”Privacy options”,”saves_Collaborators”:”Collaborators”,”trips_organize”:”Organize”,”trip_detail_search_title_mw”:”Search to add to Trip”,”trips_dates_select_item_to_add”:”Select item(s) to add”,”trips_dates_reschedule”:”Reschedule”,”places_in_this_content_type_link_v2″:”Places in this link”,”places_in_this_content_type_video”:”Places in this video”,”places_in_this_post”:”Places in this post”,”trips_dates_add_item_modal_title_day”:”Add to {sDate}”,”select_cover_photo”:”Select cover photo”,”copy_trip_modal_header”:”Copy Trip”,”trips_add_a_link_modal”:”Add a link”,”trips_trip_unavailable_trip_on_vacation”:”This Trip is on vacationu2026you should be too. “,”trips_trip_unavailable_invalid_permissions”:”You do not have permission to access this Trip. Please contact the Trip owner.”,”trips_try_again_error_CTA”:”Try again”,”error_page_browse_CTA”:”Browse Tripadvisor”,”social_untag_yourself”:”Untag yourself?”,”social_untag_confirmation_message”:”You’ll no longer be tagged on this post, but the content will still appear on Tripadvisor.”,”aao_delete_cancel_btn_fffff375″:”Cancel”,”social_remove_tag”:”Remove tag”,”trips_feature_unavailable_launch”:”Some content or features in your Trip may be temporarily unavailable as we work to improve the experience. We apologize for any inconvenience.”,”trips_STA_add_to_your_trip”:”Add to your Trip”,”trips_STA_search_places_add”:”Search for places to add”,”trips_trip_now_private_v2″:”Your Trip is now private. It is visible only to you and any friends you share your Trip with.”,”trips_trip_now_public_v2″:”Your Trip is now public. It is visible to all travelers on Tripadvisor.”,”successful_cover_photo_save”:”Your cover photo was successfully saved”,”trips_share_read_only”:”Invite your friends to u003cspan class='{className}’>view your Tripu003c/span>. Send an invite via:”,”trips_share_read_write”:”Invite friends to u003cspan class='{className}’>edit your Tripu003c/span>. Send an invite via:”,”trips_add_CTA”:”Add”,”trips_leave_trip_modal_header”:”Leave Trip?”,”trips_leave_trip_modal_body”:”Are you sure you want to leave this Trip? You will no longer be able to add or edit content.”,”trips_leave_CTA”:”Leave”,”trips_remove_collaborator_modal_header”:”Remove Collaborator?”,”trips_remove_collaborator_modal_body”:”Are you sure you want to remove this collaborator? They will no longer be able to add or edit content.”,”trips_remove_CTA”:”Remove”,”trips_owner”:”Owner”,”trips_unknown_user”:”Unknown user”,”trips_collaborator_removed_confirm”:”{UserName} was successfully removed from the Trip”,”mx_nearby”:”Nearby”,”dual_search_worldwide”:”Worldwide”,”mobile_no_results_found_8e0″:”No results found”,”typeAheadSearchFor_fffff81b”:”Search for “{0}””,”post_video_typeahead_placeholder_text_search”:”Search”,”post_video_location_typeahead_add_location”:”Add another location “,”more_link”:”More”,”delete_confirmation_description_review_0″:”Are you sure you want to delete this review? The review can not be retrieved once it is deleted.”,”delete_confirmation_description_photo_0″:”Are you sure you want to delete this photo? The photo can not be retrieved once it is deleted.”,”delete_confirmation_description_video_0″:”Are you sure you want to delete this video? The video can not be retrieved once it is deleted.”,”delete_confirmation_description_forum_post_0″:”Are you sure you want to delete this forum post? The forum post can not be retrieved once it is deleted.”,”delete_confirmation_description_link_post_0″:”Are you sure you want to delete this link? The link can not be retrieved once it is deleted.”,”delete_confirmation_description_repost_0″:”Are you sure you want to delete this repost? The repost can not be retrieved once it is deleted.”,”aao_delete_question_msg_fffff375″:”Are you sure you want to delete this question?”,”aao_delete_answer_msg_fffff375″:”Are you sure you want to delete this answer?”,”delete_confirmation_description_post_0″:”Are you sure you want to delete this post? The post can not be retrieved once it is deleted.”,”delete_confirmation_header_review_0″:”Delete review?”,”delete_confirmation_header_photo_0″:”Delete photo?”,”delete_confirmation_header_video_0″:”Delete video?”,”delete_confirmation_header_forum_post_0″:”Delete forum post?”,”delete_confirmation_header_link_post_0″:”Delete link?”,”delete_confirmation_header_repost_1″:”Delete repost?”,”delete_confirmation_header_post_0″:”Delete post?”,”social_Save”:”Save”,”link_share_share”:”Share”,”social_Coming_soon”:”Coming soon!”,”social_Helpful”:”Helpful”,”boosted_social”:”Boosted”,”boost_social”:”Boost”,”save_all_items”:”Save all items”,”common_Xof5bubbles”:”{0} of 5 bubbles”,”sng_a11y_zoom_level”:”Zoom level”,”trips_lander_title”:”Trips on Tripadvisor”,”trips_lander_md”:”Trips makes it easy to save travel plans, build wish lists and map out all your ideas for places to eat, things to do and where to stay u2014 and bring them with you, wherever you go.”,”trips_education_amazing_ideas_one_place”:”Trips: your amazing travel ideas, all in one place”,”trips_education_easy_save_orgaize_map_bring_with_you”:”Trips makes it easy to save, organize and map out all your ideas for places to eat, things to do and where to stay u2014 and bring them with you, wherever you go.”,”trips_lander_header”:”Traveling soon? Save your amazing ideas all in one place with Trips.”,”trips_lander_copy_1″:”Save traveler-recommended places for your trip”,”trips_lander_copy_2″:”View the things to do, restaurants and hotels you saved on a map”,”trips_lander_copy_3b”:”Easily access all your saves while traveling, wherever you go”,”empty_trip_home_get_started”:”Get started”,”trips_log_in_now”:”Log in now”,”mobile_feedback_subject”:”Tripadvisor beta feedback”,”mobile_feedback_body_info”:”Please provide feedback or describe the issue you are experiencing here:”,”mobile_feedback_title”:”Send beta feedback”,”ugc_uploader_trip_v2″:”Create trip”,”mob_ads_sponsored”:”Sponsored”,”common_Previous”:”Previous”,”common_Next”:”Next”,”trips_save_to_a_trip”:”Save to a trip”,”linkify_removed_v2″:”u003clink removed>”,”n_Helpful_votes_plural”:”{0} Helpful {0, plural, one{vote} other{votes}}”,”member_list_reposts”:”{0, plural, one{# Repost} other{# Reposts}}”,”n_saves_plural”:”{0} {0, plural, one{Save} other{Saves}}”,”share_sms_link”:”Check this out:”,”trips_share_email_subject”:”Check out my Trip on Tripadvisor!”,”trips_collaborate_invite_email_subject”:”Join my Trip on Tripadvisor!”,”link_share_sms_checkthisout”:”Check this out on Tripadvisor:”,”link_share_option_sms”:”Text message”,”share_email_subject”:”Check this out on Tripadvisor”,”ib_share_booking_download_app”:”Download the free Tripadvisor App.”,”app_download_url_secure”:”https://www.tripadvisor.com/apps”,”link_share_option_email”:”Email”,”link_share_email_subject”:”Check out {0} on Tripadvisor”,”mobile_here_is_a_place_i_found_8e0″:”Here is a place I found on Tripadvisor:”,”share_email_reviews”:”Here is a review I found on Tripadvisor:”,”share_email_photos”:”Here is a photo I found on Tripadvisor:”,”share_email_videos”:”Here is a video I found on Tripadvisor:”,”share_email_link_subject”:”Check this out”,”share_email_link”:”Check this out:”,”share_email_link_attribution”:”I found this on Tripadvisor.”,”share_email_forumtopic”:”Here is a forum topic I found on Tripadvisor:”,”share_email_forumreply”:”Here is a response I found in the Tripadvisor forums:”,”trips_share_email_hey”:”Hey,”,”trips_share_email_body_v2″:”I created a Trip on Tripadvisor! Check out “{tripName}”!”,”trips_collaborate_invite_email_body_v2″:”I created a Trip on Tripadvisor! Join and add your ideas to “{tripName}”!”,”trips_collaborate_invite_email_body_collaborator_version”:”Join and add your ideas to “{tripName}”!”,”trips_email_share_collaborator_version”:”Check out “{tripName}”!”,”link_share_link_copied”:”Link copied”,”link_share_option_clipboard”:”Copy link”,”carousel_progress_numbers”:”{photos}/{totalPhotos}”,”full_view”:”Full view”,”all_photos_parens”:”All photos ({nCount})”,”trips_byline_v2″:”By”,”trips_and_more”:”and more”,”attractions.cta_more_info”:”More Info”,”maps_zoom_in”:”Zoom in”,”maps_zoom_out”:”Zoom out”,”map_auto_search_label”:”Search as I move the map”,”meta_ui_contact_hotel_c2b”:”Contact hotel for availability”,”no_availailability_from_partners”:”No availability for your dates from our partners”,”board_basis_room_only”:”Room Only”,”board_basis_self_catering”:”Self Catering”,”board_basis_breakfast_included”:”Breakfast Included”,”board_basis_half_board”:”Half Board”,”board_basis_full_board”:”Full Board”,”board_basis_all_inclusive”:”All Inclusive”,”view_deal”:”View Deal”,”tags_category_tag_airport_transportation”:”Airport Transportation”,”num_night_stay_plus_flight_v2″:”{nNights, plural, one{# night} other{# night}} stay + flight”,”mobile_ib_nights_plural”:”{0, plural, one{# night} other{# nights}}”,”vp_per_person_short”:”pp”,”hotel_plus_flight”:”Hotel + Flight”,”view_all_n_deals_plural”:”View {0, plural, one{# deal} other{all # deals}}”,”view_all_deals_from_commerce_on_list_screen”:”View all {0} deals from {1}”,”collapse_deals”:”Collapse deals”,”exp_see_n_experiences_from_cost_cap”:”{0, plural, one {See # experience} other {See # experiences}} from {1}”,”ds_award_michelin_one_star_label”:”One MICHELIN Star”,”ds_award_michelin_two_star_label”:”Two MICHELIN Stars”,”ds_award_michelin_three_star_label”:”Three MICHELIN Stars”,”sng_award_michelin_plate”:”Michelin Plate”,”sng_award_michelin_bib”:”Michelin Bib Gourmand”,”sng_michelin_year”:”MICHELIN {0}”,”ds_award_michelin_text”:”MICHELIN”,”plus_hotel_savings_highlighted”:”u003cspan class=”{0}”>Save {1}u003c/span> on this stay”,”plus_hotel_generic_savings_highlighted”:”u003cspan class=”{0}”>Save {1}u003c/span> or more on this stay”,”plus_perks_message_only_map”:”Get member u003cspan class=”{0}”>perks and benefitsu003c/span> with your stay”,”plus_logged_in_discount_and_perks_map”:”u003cspan class=”{0}”>Save {1}u003c/span> and get perks with this stay”,”plus_logged_out_discount_and_perks_map_v2″:”u003cspan class=”{0}”>Save {1} or moreu003c/span> and get perks with this stay”,”plus_hotels_callout_discounts_perks”:”Discounts and perks included:”,”plus_hotels_perks_tooptip_and_more”:”And more”,”social_profile_ugc_cta”:”Share your travel advice”,”social_Message”:”Message”,”social_block_username_overflow”:”Block {displayName}”,”social_unblock_username_overflow”:”Unblock {displayName}”,”social_report_profile”:”Report Profile”,”social_unblock_btn”:”Unblock”,”social_profile_page_title”:”{displayname} ({username}) – Profile – Tripadvisor”,”social_profile_page_meta_description_v2″:”See travel reviews, photos, videos, trips, and more contributed by {username} on Tripadvisor.”,”memx_onboarding_unlock_TA”:”Unlock the best of Tripadvisor”,”Homepage_leftrail_subhead1″:”Save your favorite travel ideas and see them on a map”,”Homepage_leftrail_subhead2″:”Get price alerts and deals so you can travel your way”,”Homepage_leftrail_subhead3″:”Ask questions and get answers from travelers like you”,”civ_figs_signup_010″:”Sign Up”,”reg_and_join”:”JOIN”,”content_11228″:”Date”,”mw_Type”:”Type”,”common_Forum”:”Forum”,”mc_forum_topic_c8c”:”Topic”,”common_Re_topic_title”:”Re: {0}”,”common_Reply”:”Reply”,”hr_tabs_overview_tab_fffff660″:”Overview”,”get_to_know_geo_show_more2″:”Show more”,”get_to_know_geo_show_less”:”Show less”,”mw_js_positionPermissionDenied”:”Tripadvisor was denied permission to access your location. Give your browser and Tripadvisor permission to use your current location and try again.”,”social_opengraph_photo_title”:”{locationName} | {additionalLocationName} | Photo by {userName}”,”social_opengraph_photo_title_short”:”{locationName} | Photo by {userName}”,”provided_by_username”:”Provided by u003ca class=”{0}” href=”{1}”>{2}u003c/a>”,”discovery_sponsored_label”:”Sponsored”,”social_opengraph_video_title”:”Video by {username}”,”upload_video_processing_copy”:”Your post is processing. We will send you a notification when it is ready to view.”,”member_event_reposted_review”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> reposted a review”,”member_event_reposted_photo”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> reposted a photo”,”member_event_reposted_photo_v2″:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> reposted photos”,”member_event_reposted_video”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> reposted a video”,”member_event_reposted_forumpost”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> reposted a forum”,”member_event_reposted_linkpost”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> reposted a link”,”member_event_reposted_Trip”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> reposted a Trip”,”member_event_on_review”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> wrote a review”,”member_event_on_tip”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> wrote a tip”,”member_event_on_photo”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> posted a photo”,”feed_batched_photos_header_v2″:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> posted {4, plural, one{# photo} other{# photos}}”,”member_event_on_video”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> posted a video”,”member_event_on_forumpost_question”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> posted a question”,”member_event_on_forumpost_reply”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> posted a reply”,”member_event_on_linkpost”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> posted a link”,”member_event_on_Trip”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> created a Trip”,”trips_feed_trip_joined_v2″:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> joined a Trip”,”member_event_on_location_topic”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> asked a question”,”member_event_on_topic_posting”:”Answer from u003ca class=”{0}” href=”{1}”>{2}u003c/a>”,”member_event_on_tip_with_date”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> wrote a tip {3}”,”member_event_on_photo_with_date”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> posted a photo {3}”,”member_event_on_question_with_date”:”u003ca class=”{0}” href=”{1}”>{2}u003c/a> asked a question {3}”,”ugc_post_updated”:”Your post has been updated!”,”about_this_place”:”About this place”,”social_About_this_place_plural”:”About {0, plural, one{this place} other{these places}}”,”rs_storyboard_turn_off_autoplay”:”Turn off auto-play”,”video_can_not_preview”:”This video can not be previewed”,”social_unfollow”:”Unfollow”,”social_Follow”:”Follow”,”social_follow_toast_message”:”You are now following u003cspan class=”{sDisplayNameClass}”>{sDisplayName}u003c/span>”,”social_nowFollowing”:”Following”,”social_mobile_reason_for_sponsored”:”Sponsored”,”social_n_contributions_plural”:”u003cspan class=”{0}”>{1}u003c/span> {1, plural, one{contribution} other{contributions}}”,”social_n_followers_plural”:”u003cspan class=”{0}”>{1}u003c/span> {1, plural, one{follower} other{followers}}”,”post_photos_form_header”:”Post photos”,”post_a_video_modal_header”:”Post a video”,”n_Trips_plural”:”{0} {0, plural, one{Trip} other{Trips}}”,”n_videos_plural”:”{0} {0, plural, one{video} other{videos}}”,”n_photos_plural”:”{0} {0, plural, one{photo} other{photos}}”,”n_reviews_plural”:”{0} {0, plural, one{review} other{reviews}}”,”n_links_plural”:”{0} {0, plural, one{link} other{links}}”,”n_forum_posts_plural”:”{0} forum {0, plural, one{post} other{posts}}”,”n_reposts_plural”:”{0} {0, plural, one{repost} other{reposts}}”,”n_helpful_votes_plural”:”{0} helpful {0, plural, one{vote} other{votes}}”,”n_contributions_plural”:”{0} {0, plural, one{contribution} other{contributions}}”,”social_nCount_followers2″:”{0, plural, one{# follower} other{# followers}}”,”social_nCount_following2″:”{0, plural, one{# following} other{# following}}”,”social_memberstats_contributions”:”Contributions”,”social_memberstats_followers”:”Followers”,”social_Following”:”Following”,”social_Add_profile_photo”:”Add profile photo”,”social_change_profile_photo”:”Change profile photo”,”hotels_n_helpful_votes_plural”:”u003cspan class=”{0}”>{1}u003c/span> {1, plural, one{helpful vote} other{helpful votes}}”,”native_login_user_review_anonymous”:”A Tripadvisor Member”,”profile_joined_in”:”Joined in {0}”,”social_destination_expert_for”:”Destination expert for:”,”trips_see_more_CTA”:”See more”,”link_uploader_header”:”Post a link”,”link_uploader_postbutton_label”:”Post link”,”link_inputfield_label”:”Type or paste a website URL”,”listing_issue_generic_error_ffffeaf1″:”An error has occurred. Please try again.”,”link_uploader_locationlabel”:”Tag a location”,”common_Search”:”Search”,”remove_location_cf6″:”Remove location”,”link_uploader_commentlabel”:”Add a comment”,”link_uploader_commentdescription”:”Tell other travelers why this post is interesting.”,”link_uploader_guidelines”:”Guidelines”,”ds_textarea_minimum_characters”:”{numCount}/{numLimit} min characters”,”ds_textarea_maximum_characters”:”{numCount}/{numLimit} max characters”,”m2_trips_detail_date_display”:”{0} u2022 {1}”,”see_all_results_for”:”See all results for “{query}””,”common_Hotels”:”Hotels”,”common_Restaurants”:”Restaurants”,”common_Thingstodo”:”Things to do”,”common_Forums”:”Forums”,”common_Loading”:”Loading …”,”reg_back”:”Back”,”trip_planner_clear”:”Clear”,”post_photo_add_description_v2_part_2″:”Tell other travelers about your photo “,”post_video_add_description_v2_part_2”:”Tell other travelers about your video “,”post_video_500_max_characters”:”500 character maximum”,”post_video_character_count”:”{nCharacterCount} / 500 characters”,”photo_uploader_add_a_location_tag”:”Add a location tag”,”video_upload_add_tags”:”Add location tags”,”post_photo_tag_location_subtext”:”Make it easy for travelers to discover your photo “,”post_video_tag_location_subtext”:”Make it easy for travelers to discover your video “,”post_photo_video_count_text”:”Photo {nCurrentphotoCount} of {nTotalphotoCount}”,”post_video_video_count_text”:”Video {nCurrentVideoCount} of {nTotalVideoCount}”,”uploader_error_required_field”:”This field is required”,”post_video_required_fields_text”:”(required)”,”post_video_add_description_v2_part_1″:”Add a description “,”suggested_tags”:”Suggested tags:”,”flash_uploader_tips_and_guidelines_10d8″:”Tips & guidelines”,”post_photo_tips_guidelines”:”You can upload a maximum of 10 photos at a time”,”post_photo_accepted_formats”:”Accepted photo formats include .jpg .jpeg .gif and .png”,”file_size_limit_photo”:”File size should be less than {0}MB.”,”post_photo_more_info_2″:”For more information see our u003cspan>photo uploader guidelinesu003c/span>”,”post_photo_upload_photos_button”:”Upload photos”,”post_video_or_just_text”:”or”,”post_videodrag_and_drop_from_desktop”:”Drag and drop a file from your desktop “,”batch_media_choose_a_layout”:”Choose a layout:”,”batch_media_add_description_subtitle”:”Tell other travelers about your photos”,”batch_media_add_location_subtitle”:”Make it easy for travelers to discover your photos”,”common_Postphotos”:”Post photos”,”new_photos_terms_of_use”:”By uploading these photos,u00A0I verify that I am the owner of this content and I accept Tripadvisor’s u003ca href={link} target=’_blank’>Terms of Useu003c/a>”,”common_go_back_1cfb”:”Go Back”,”tavrs_common_save_and_continue_button”:”Save and continue”,”batch_media_posting”:”Posting…”,”batch_media_retry_upload”:”Retry your upload”,”post_video_didnt_tag_location”:”You didn’t tag a location “,”post_video_tag_location_push_2”:”Adding a tag can lead more travelers to your post – and increase your influence on Tripadvisor “,”uploader_error_add_tag”:”Add tag”,”uploader_button_post”:”Post”,”post_photo_unsupported_file”:”This file type is not supported. Please refer to Tripadvisor’s photo posting guidelines. “,”post_video_file_type_error”:”This file type is not supported. Please try a .mov, .mp4 or m4v file”,”file_size_too_big_photo_oops_message”:”This file size is not supported. Please make sure your file is less than {0}”,”post_video_size_error”:”This file size is not supported. Please make sure your file is less than 500MB “,”post_video_upload_videos_button”:”Upload videos”,”add_more_photos_mw_uploader”:”Add more photos”,”add_more_videos_mw_uploader”:”Add more videos”,”post_photo_upload_another_video”:”Drag and drop or u003c/> u003cspan class=”{sColorClass1}”>upload another photo u003c/span>”,”post_video_upload_another_video”:”Drag and drop or u003c/> u003cspan class=”{sColorClass1}”>upload another video u003c/span>”,”ugc_uploader_photo_v2″:”Post photo”,”ugc_uploader_photo_v3″:”Post photos”,”post_video_button”:”Post video”,”post_videos_button”:”Post videos”,”post_photo_upload_failed”:”Your photo upload failed. Please try again. “,”video_upload_fail”:”Oops! One or more of your videos failed to upload.”,”video_upload_max_number”:”You can upload a maximum of {nVideos} videos at a time”,”video_upload_video_formats_accepted”:”Accepted video formats include {sFileExtentions}”,”video_upload_more_info_guidelines_link”:”For more information see our u003cspan>video uploader guidelinesu003c/span>”,”success_repost_photo”:”Your photo was posted!”,”success_repost_video”:”Your video was posted!”,”view_post”:”View post”,”media_upload_description_profanity_error”:”Sorry, we can’t accept descriptions that use profanity”,”photo_upload_rate_limited_v2″:”Your photo failed to upload. You have exceeded the limit of photo uploads.”,”video_upload_rate_limited_v2″:”Your video failed to upload. You have exceeded the limit of video uploads.”,”video_upload_go_to_link_posting”:”Want to link to a video? You can do so from our u003cspan>link uploaderu003c/span>”,”new_photo_terms_of_use”:”By uploading this photo,u00A0I verify that I am the owner of this content and I accept Tripadvisor’s u003ca href={link} target=’_blank’>Terms of Useu003c/a>”,”new_videos_terms_of_use”:”By uploading these videos,u00A0I verify that I am the owner of this content and I accept Tripadvisor’s u003ca href={link} target=’_blank’>Terms of Useu003c/a>”,”new_video_terms_of_use”:”By uploading this video,u00A0I verify that I am the owner of this content and I accept Tripadvisor’s u003ca href={link} target=’_blank’>Terms of Useu003c/a>”,”content_upload_fail_try_again”:”Try again”,”ugc_edit_attempt_failure”:”Something went wrong. Please try editing again.”,”social_block_modal_cancel”:”Cancel”,”social_block_modal_more_v2″:”Tripadvisor is a public forum to post and share content. Blocking a user will not disable their ability to view your public content or your public profile page. “,”social_block_modal_more_hyperlink”:”u003ca class=”{className}” target=”{target}” href=”{href}”>Learn moreu003c/a> about what it means to block an account on Tripadvisor.”,”social_block_modal_notice”:”If you block {displayName}, they will no longer be able to:”,”social_block_modal_ex_follow_v2″:”Follow you on Tripadvisor”,”social_block_modal_ex_dm”:”Send you direct messages”,”social_block_modal_ex_repost_v2″:”Repost your contributions”,”social_block_toast”:”u003cspan class=”{className}”>{username}u003c/span> has been blocked”,”social_block_btn”:”Block”,”social_block_modal_title”:”Block {displayName}”,”social_unblock_modal_notice”:”If you unblock {displayName}, they will be able to:”,”social_unblock_modal_title”:”Unblock {displayName}”,”Date_of_travel”:”u003cspan class=”{0}”>Date of travel:u003c/span> {1}”,”cruise_review_sail_date”:”u003cspan class=”{0}”>Sail Date:u003c/span> {1}”,”rebrand_recommended_POI_list_shelf_title_with_placename”:”Because you viewed {poiName}”,”common_nPrice_per_adult_no_currency”:”u003cspan class=”{0}”>{1}u003c/span> u003cspan class=”{2}”>per adultu003c/span>”,”common_nPrice_per_night_no_currency”:”u003cspan class=”{0}”>{1}u003c/span>u003cspan class=”{2}”>/nightu003c/span>”,”unified_base_pricing_disclaimer_single_room_double_occupancy”:”Prices are the average nightly price provided by our partners and may not include all taxes and fees. Prices reflect 1 room, 2 guests. Taxes and fees that are shown are estimates only. Please see our partners for more details.”,”hotel_info_about_service”:”Information about your service”,”social_see_more”:”See all”,”date_range_medium_month_to_day_of_month”:”{sDateStart}-{nDayEnd}”,”social_category_search_num_filters”:”{0, plural, one{# filter} other{# filters}}”,”ugc_by_username_v2″:”By”,”trips_home_featuring_count_v3″:”Featuring: u003cspan class={0}>{1, plural, one{# place} other{# places}}u003c/span>”,”hotels.type_and_count”:”{0} ({1})”,”from_price_fffff32b”:”From {0}”,”rental_car_rate_card_pricing”:”From {currencyFare}/day”,”social_category_search_today”:”Today”,”social_category_search_yesterday”:”Yesterday”,”social_category_search_days_ago”:”{nDays} days ago”,”social_category_search_weeks_ago”:”{0, plural, one{# week ago} other{# weeks ago}}”,”Featuring_n_eateries_plural”:”Featuring: u003cspan class=”{0}”>{1} {1, plural, one{eatery} other{eateries}}u003c/span>”,”trips_home_featuring_count_v2″:”Featuring: u003cspan>{0, plural, one{# place} other{# places}}u003c/span>”,”videos_location_featuring_count_v2″:”Featuring: u003cspan class={0}>{1, plural, one{# place} other{# places}}u003c/span>”,”member_byline_link”:”u003cspan class=”{0}”>By u003c/span>u003ca class=”{1}” href=”{2}” target=”{3}”>{4}u003c/a>”,”mentions_profile_label_span”:”u003cspan class=”{prefixClassName}”>By u003c/span>u003cspan class=”{nameClassName}”>{name}u003c/span>”,”social_profile_contributions”:”{0, plural, one{# contribution} other{# contributions}}”,”mentions_profile_label_a_lower”:”u003cspan class=”{prefixClassName}”>by u003c/span>u003ca class=”{nameClassName}” href=”{url}”>{name}u003c/a>”,”mentions_profile_label_a”:”u003cspan class=”{prefixClassName}”>By u003c/span>u003ca class=”{nameClassName}” href=”{url}”>{name}u003c/a>”,”mentions_profile_label_span_lower”:”u003cspan class=”{prefixClassName}”>by u003c/span>u003cspan class=”{nameClassName}”>{name}u003c/span>”,”success_repost_review”:”Your review was posted!”,”success_repost_forum”:”Your forum was posted!”,”success_repost_trip”:”Your trip was posted!”,”success_repost_photos”:”Your photos were posted!”,”view_repost”:”View post”,”repost_failure_message”:”Your repost failed to upload. Please try again.”,”repost_rate_limited_v2″:”Your repost failed to upload. You have exceeded the limit of allowed reposts.”,”reposted”:”Reposted”,”social_repost_on_tripadvisor”:”Repost on Tripadvisor”,”social_repost”:”Repost”,”social_post_button”:”Post”,”saves_collab_optional”:”(optional)”,”show_full_post”:”Show full post”,”saves_modal_other_users_private_v2″:”{0, plural, one{# other traveler} other{# other travelers}} saved this to a private Trip”,”saves_modal_other_users_private_no_public”:”{0, plural, one{# traveler} other{# travelers}} saved this to a private Trip”,”mobile_profile_users_trip”:”{0}’s trip”,”mobile_profile_users_repost”:”{0}’s repost”,”social_proof_media_batch_photos_v2″:”{0}’s photos”,”mobile_profile_users_reposts_v3″:”{nReposts, plural, one{# Repost} other{# Reposts}}”,”mobile_profile_users_saves_v3″:”{nSaves, plural, one{# Save} other{# Saves}}”,”ds_contributor_author_one”:”By {authorName}”,”ds_contributor_authors_one_plus”:”By {authorName} +{numOtherAuthors}”,”ds_contributor_authors_two”:”By {authorName1} and {authorName2}”,”ds_contributor_authors_three”:”By {authorName1}, {authorName2}, and {authorName3}”,”ds_contributor_authors_three_plus”:”By {authorName1}, {authorName2}, {authorName3} +{numOtherAuthors}”,”About_TC_Winner”:”Travelers’ Choice {0} Winner”,”social_report_level2_6b”:”Please tell us more about your concern. (required)”,”social_report_level2_5″:”Is there any further information you'd like to add to help us understand your concern? (optional)”,”social_report_reason_photos2″:”It's a duplicate by the same member”,”report_review_radio_8″:”It’s posted to the wrong business”,”report_review_radio_21″:” This business is closed or doesn’t exist”,”report_review_radio_19″:”I want to report something else”,”report_review_radio_10″:”u00A0It’s written by an ex-employee or competitor”,”report_review_radio_9″:”u00A0It’s inappropriate or not family friendly”,”report_review_radio_16″:” Another reviewer already wrote about this experience”,”report_review_radio_13″:”This reviewer did not experience my business”,”report_review_radio_24″:”It contains commercial or promotional content”,”report_review_radio_12_ver_2″:”Review text is not consistent with rating given”,”iap_low_quality_ffffe4e2″:”Low quality”,”social_content_report_copyright_violation”:”It's a violation of copyright”,”report_review_radio_20″:” It’s biased or written by someone with an affiliation to the property”,”report_review_radio_11″:”It describes an experience more than 1 year ago”,”report_review_radio_18″:” It includes private information”,”iap_profane_explicit_or_hate_speech”:”It’s profane, sexually explicit or contains hate speech”,”iap_link_incorrect_outdated_broken”:”Link is incorrect, outdated, broken or unrelated to travel“,”iap_not_personal_experience”:”It does not describe a personal experience”,”iap_false_misleading_info”:”It contains false or misleading information”,”iap_promote_illegal_activity”:”It describes or promotes participation in illegal activities”,”iap_participate_illegal_activity”:”It shows participation in illegal activity”,”iap_link_illegal_activity”:”It contains or links to content that promotes illegal activity”,”iap_forums_self_promotion”:”Self-promotion, advertising, or solicitation”,”iap_forums_off_topic”:”Off-topic (wrong forum or language, or not travel-related)”,”iap_forums_spam”:”Spam (one of a series of commercial messages)”,”iap_forums_duplicate”:”Duplicate posting”,”iap_forums_harassment”:”Harassment of an individual or business”,”iap_forums_profanity_sex_violence_crime_hate”:”Profanity, sex, violence, crime, or hate speech”,”iap_forums_multiple_accounts_or_impersonation”:”Poster used multiple accounts or impersonated someone”,”iap_forums_personal_info”:”Personal information (like a last name or address)”,”iap_forums_copyrighted”:”Copyrighted or similar content copied without permission”,”iap_trips_copyrighted”:”It contains content that is copyrighted or similarly protected”,”iap_trips_not_travel_related”:”It isnu2019t travel related”,”iap_trips_error_or_disagree”:”I found an error / I disagree”,”iap_profile_problem_with_pic”:”Problem with profile photo or cover photo”,”iap_profile_problem_with_link”:”Problem with profile page bio or website link”,”iap_profile_username”:”Username is inappropriate”,”iap_profile_contribution”:”Problem with member’s contribution (review, photo, video, etc.)”,”iap_profile_problem_my_account”:”This is my account and there is an issue”,”iap_profile_unwanted_messages”:”Received unwanted messages in my inbox from this user”,”report_review_radio_1″:”I want to report this review”,”report_review_radio_2″:”I need to update my business or owner details”,”report_review_radio_3″:”I want to report my business closed”,”report_review_radio_4″:”I want to edit or remove my response”,”report_review_radio_5″:”I need to report a change of ownership or renovation”,”report_review_radio_6″:”I want to report a photo associated with this review”,”report_review_radio_7″:”I want to remove my listing”,”report_review_radio_17″:”u00A0I disagree with the information in this review”,”onetap_message_unlock”:”Unlock the best of Tripadvisor”,”onetap_subhead_signin_alerts_deals”:”Sign in to get price alerts and deals”,”terms_and_policy_links”:”By proceeding, you agree to our u003ca rel=”nofollow” class=”{2}” target=”_blank” href=”{0}”>Terms of Useu003c/a> and confirm you have read our u003ca rel=”nofollow” class=”{2}” target=”_blank” href=”{1}”>Privacy Policyu003c/a>.”,”I_live_in”:”I live in…”,”home_location_things_near_you”:”Tell us where you live to get great ideas for things to do near you.”,”onetap_message_subhead_to_get_the_most”:”Sign in to get the most out of Tripadvisor”,”plus_got_login_v2_new”:”Sign in to view member-only discounts on hotels worldwide”,”plus_gotspotlight_varA_header”:”Sign in to view Tripadvisor Plus deals”,”plus_gotspotlight_varB_copy”:”Sign in to see some seriously suite deals”,”plus_gotspotlight_varA_sub_text”:”u003cb>Tripadvisor Plusu003c/b> is an annual subscription that helps you save every time you book eligible hotels.”,”plus_gotspotlight_varA_header_text”:”Sign in to viewu003cbr />Tripadvisor Plus deals”,”phoenix_onboarding_name_header_v2″:”Let’s get the basics so we can give you the goods.”,”phoenix_onboarding_name_caption_v2″:”What should we call you?”,”phoenix_onboarding_name_ghost_v2″:”Your name”,”phoenix_onboarding_name_hometown_v2″:”Where do you live? (Optional)”,”phoenix_hometown_prefill_v2″:”Hometown”,”plus_name_prompt_done_v2″:”Done”,”plus_get_big_hotel_savings_with”:”Get big hotel savings with”,”plus_up_your_travel_with”:”Up your travel with”,”plus_sign_in_for_deals”:”Sign in for deals”,”common_Signin”:”Sign in”,”plus_footer_annual_subscription”:”u003cspan class=”{0}”>Tripadvisor Plusu003c/span> is an annual subscription that helps you save every time you book eligible hotels.”,”plus_footer_all_for_just”:”u003cspan class=”{0}”>Tripadvisor Plusu003c/span> is an annual subscription that saves you 10% on most experiences – all for just $99/year.”,”plus_footer_sign_in”:”Sign in for free to see exclusive Tripadvisor Plus hotel deals.”,”plus_education_gets_you”:”For $99/year, a Tripadvisor Plus subscription gets you…”,”plus_sticky_banner_savings”:”Savings of at least {minSavings}, on average, per stay”,”plus_education_perks”:”Hotel perks and 10% off most experiences”,”plus_education_benefits”:”Benefits on unlimited bookings”,”plus_educational_modal_summary”:”u003cb>Tripadvisor Plusu003c/b> is a travel membership with savings on hotels, experiences, flights, and rental cars all for $99/year.”,”plus_got_it”:”Got it”,”a11y_skip_link”:”Skip to main content”,”nav_rs_premium_contact_support”:”Call {sSupportPhoneNumber} with your ID: {nLocationId}”,”tavrs_view_profile”:”View profile”,”owners_managelisting_open”:”Open”,”abandon_cart_home_banner_2350″:”Still interested?”,”attractions.cart_recapture.abandoned_cart_overlay_cta”:”Visit your shopping cart to see the items you saved last time u2014 and check out when youu2019re ready.”,”attractions.cart_recapture.alert.headline”:”Now you can pick up where you left off!”,”attractions.cart_recapture.alert_body”:”Click here at any time to finish your booking. Be sure to log-in or register to access your cart from any device.”,”utility_nav_cart”:”Shopping Cart”,”attractions.cart_button_acc”:”Cart”,”inbox_title”:”Inbox”,”ip_view_profile_1cf1″:”View profile”,”global_nav_profile_my_business”:”My business”,”my_bookings_headtext_fffff9b3″:”Bookings”,”mem_account_info”:”Account info”,”common_Signout”:”Sign out”,”utility_nav_profile”:”Profile”,”trips_product_name”:”Trips”,”homepage_war_button”:”Write a review”,”plus_membership_menu_label”:”My Membership”,”plus_registration_menu_label”:”Join today”,”mixer_home_about”:”About”,”review_dropdown_label”:”Review”,”dmo_hdr_alerts”:”Alerts”,”insurance_title”:”Insurance”,”mem_settings”:”Settings”,”mw_common_menu_fffffd37″:”Menu”,”mobile_back_8e0″:”Back”,”mobile_search_filter_clear_26e8″:”Clear”,”dual_search_popular_destinations”:”POPULAR DESTINATIONS”,”mobile_offline_megabyte_ffffec6c”:”{0} MB”,”mobile_delete”:”Delete”,”post_photo_add_description_v2_part_1″:”Add a description “,”confirmed_booker_upload_photo”:”Upload a photo”,”post_photo_or_just_text”:”or”,”post_photo_drag_and_drop_from_desktop”:”Drag and drop a file from your desktop “,”social_confirm_close_photo_post”:”Are you sure you want to close out of your photo post?”,”hrm_onboarding_flyout_autoreviewcollection”:”Let us do the work for you to collect more reviews! Connect and enable your provider to get started.”,”hrm_onboarding_flyout_donotshowagain”:”Do not show again”,”hrm_onboarding_flyout_customizecampaigns”:”Create a review collection campaign with our optimized templates that can be customized to make them your own.”,”hrm_onboarding_flyout_partners”:”Save precious time by responding to reviews across Tripadvisor, Google and Facebook all on the same page.”,”hrm_flyoutupsell_hr”:”Hi {sUserDisplayName}! Unlock our reputation management solutions to help impact your Tripadvisor bubble score and ranking.”,”hrm_flyoutupsell_cta_tryitforfree”:”Try it for free”,”hrm_flyoutupsell_managementcenter”:”Unlock our reputation management solutions to collect more reviews and give travelers confidence to book.”,”hrm_flyoutupsell_cta_starttrial”:”Start a free trial”,”hrm_flyoutupsell_ownerresponse”:”Save time by responding to reviews across Tripadvisor, Google, and Facebook all on the same page.”,”hrm_flyoutupsell_reviewcollection”:”Let us collect more reviews for you with even less effort. More reviews means more opportunities to impact your ranking and increase your visibility on Tripadvisor.”,”member_support_reviews”:”Reviews”,”hotels_nav_respond_to_reviews”:”Respond to Reviews”,”hrm_reviewresponse_thirdparty_custom_rating_scale_text_v2″:”{rating} out of {highestRating}”,”rs_reputation_filter_accounts_ta”:”Tripadvisor”,”hrm_reviewresponse_third_party_bcom”:”Booking.com”,”rs_reputation_filter_accounts_google”:”Google”,”rs_reputation_filter_accounts_fb”:”Facebook”,”hrm_reviewresponse_third_party_expe”:”Expedia”,”TAFlights_filter_title_reset”:”Reset”,”ta_filters”:”Filters”,”show_n_results”:”Show {0, plural, one{# result} other{# results}}”,”h_show_results”:”Show results”,”res_view_details_done”:”Done”,”h_filters_apply”:”Apply”,”popular_brands”:”Popular brands”,”popular_hotels”:”Popular hotels”,”hotel_class_filter_updated_label_plural”:”{nStar, plural, one{#-star} other{#-star}}”,”plus_x_more_symbol_only”:”+{0}”,”price_slider_plus_short”:”{0} +”,”sng_a11y_min_price”:”Minimum price”,”sng_a11y_max_price”:”Maximum price”,”sng_a11y_min_walkability”:”Minimum walkability score”,”sng_a11y_max_walkability”:”Maximum walkability score”,”plus_filter_show_only_stays”:”Show only stays with member offers”,”walkability_explanation2″:”Places to stay are graded on a 0-100 scale. The higher the grade, the easier it is for travelers to find restaurants and things to do within walking distance.”,”ts_hotel_filter_tooltip”:”Shows hotels and stays actively taking safety measures like added sanitation procedures, mask-wearing guidelines, and more. Learn more at our u003ca target=”_blank” href=”https://www.tripadvisor.com/travel-safe”>Travel Safe hubu003c/a>.”,”filters_show_all”:”Show all”,”filters_show_less”:”Show less”,”filters_show_more”:”Show more”,”ampersand_up”:”& up”,”select_all_filters”:”Select all”,”deselect_all_filters”:”Deselect all”,”mobile_kilometers_short_form”:”km”,”mobile_miles_short_form”:”mi”,”sng_a11y_max_distance”:”Maximum distance”,”h_distance_filter_search_placeholder”:”Search for more locations”,”hotels_popular_locations”:”Popular locations”,”cx_sponsored_social_out_of_geo_header”:”Discover this featured destination for your next trip”,”cx_sponsored_social_in_geo_header”:”Plan a trip to remember in {sGeo}”,”tourism_sponsored_by_ffffe8c8″:”Sponsored by”,”CPM_AdOps_Ad”:”Ad”,”cx_sponsored_social_by”:”By u003cspan {attrs}>{userDisplayName}u003c/span>”,”mobile_sort_8e0″:”Sort”,”poi_sort_by”:”Sort by”,”airm_sortBy”:”Sort by:”,”payments_partners_impact_order_accoms_room_types_vary”:”Payments made by partners impact the order of the accommodations listed and the order of prices displayed. Room types may vary.”,”cma_disclaimer_teaser_msg”:”How payments to us impact the order of prices displayed. Room types may vary.”,”cma_disclaimer_message”:”The listings of booking offers for each property take into account the compensation paid to us by our partners. Prices shown may be for varying room types. Prices displayed are the lowest available, corresponding to the least expensive room type available, as provided from our partners as of the time of the useru2019s search.”,”Disclaimer_Hotel_Sort_Hamon_FR”:”Listing of accommodations on Tripadvisor is free and may not be exhaustive. Accommodations cannot pay for a better organic ranking. Advertised listings are listed for a fee and marked as u201CSponsoredu201D. u003cbr>n- u201CTraveler Rankingu201D ranks the results on the basis of the u2018Popularity Indexu2019 based on the quality, date and quantity of reviews an establishment receives from users. u003cbr>n- u201CBest Valueu201D ranks the results using Tripadvisor data, including traveler ratings, rates, availability, frequency of booking, location and user preferences. u003cbr>n- u201CLowest pricesu201D ranks the results according to the prices offered by our partners. u003cbr>n- u201CDistanceu201D ranks results based on their distance from the city center and availability. u003cbr>n- u201CJust for youu201D ranks results that best match user preferences and browsing history on Tripadvisor. u003cbr>nWhen price offers are displayed, they are based on data provided by our participating partners and may not be exhaustive. The order of the price offers may depend in part on our participating partnersu2019 bids in the u201Ccost-per-clicku201D auction system.”,”hamon_law_more_info”:”More information”,”mw_sort_Filter”:”Filter”,”list”:”List”,”map”:”Map”,”rd_hd_viewMap”:”View map”,”low_prices_for”:”Low prices for”,”lowest_prices_for”:”Lowest prices for”,”meta_check_in_c2b”:”Check In”,”meta_check_out_c2b”:”Check Out”,”hac_guests_label_ffffdfce”:”Guests”,”cx_trips_view_cta”:”View your Trip”,”mem_pf_928″:”Age”,”airm_child_ba9″:”Child {0}”,”mobile_sherpa_rooms_ffffeaf4″:”Rooms”,”mobile_sherpa_guests_ffffeaf4″:”Adults”,”common_children”:”Children”,”com_mc_update”:”Update”,”trip_search_traveler_info_text”:”u003cspan class=”{sRoomInfoClass}”>{nNumRooms, plural, one{# room} other{# rooms}}u003c/span>, u003cspan class=”{sAdultInfoClass}”>{nNumAdults, plural, one{# adult} other{# adults}}u003c/span>, u003cspan class=”{sChildInfoClass}”>{nNumChildren, plural, one{# child} other{# children}}u003c/span>”,”Select_dates_to_check_prices_and_availability”:”Select dates to check prices and availability”,”mob_popped_calendar_cta”:”Select a date to continue”,”select_from_pop_dates”:”Select from popular dates:”,”oracle_date_range”:”{checkIn} – {checkOut}”,”price_heatmap_avg_daily_rates_range”:”Average daily rates: {0} – {1}”,”price_heatmap_lowest_prices_2″:”Lowest priced dates”,”price_heatmap_lowest_prices_explanation”:”Hotel prices for these dates are the cheapest to book from our partners and fall within the lowest 33% of dates shown.”,”price_heatmap_lowest_prices_explanation_hide”:”Hide”,”book_nineplus_rooms”:”Book 9+ rooms”,”relative_dates_today_fffff175″:”today”,”relative_dates_yesterday_fffff175″:”yesterday”,”relative_dates_days_fffff175″:”{0} days ago”,”relative_dates_one_week_fffff175″:”1 week ago”,”relative_dates_weeks_fffff175″:”{0} weeks ago”,”plus_date_picker_header”:”Select your travel dates to unlock Tripadvisor Plus deals”,”plus_date_picker_body”:”u003cspan class=”{0}”>Tripadvisor Plusu003c/span> is an annual membership offering that helps you save every time you book.”,”close_map”:”Close Map”,”filter_ffffe84e”:”Filter”,”aw_done_ffffe1e5″:”Done”,”map_no_results_title”:”Sorry we couldn’t find any results”,”expand_search_area”:”Expand Search Area”,”map_no_results_also_try”:”You could also try:”,”map_no_results_remove_filters”:”removing your filters”,”map_no_results_change_dates”:”changing your dates”,”qa_mobile_header_list”:”List”,”map_no_results_suggestions_mobile”:”You can try removing your filters, changing your dates, or expanding your search area.”,”map_no_results_suggestions_without_expanding_area_mobile”:”You can try removing your filters or changing your dates”,”p13n_radius_show_nearby_filter_header”:”Show nearby”,”hotels_map_also_show_transit”:”Transit”,”best_places_around”:”Find the best places around”,”showing_nearby”:”Showing nearby ({0})”,”map_search_redo_search_button_text”:”Search this area”,”phoenix_maps_accessibility_locate_me”:”Locate me”,”seo_empty_photo_prompt”:”Have you been to {0}?”,”ur_rd_WriteReview”:”Write Review”,”sbx_survey_prompt_text”:”Can you tell us about your Tripadvisor experience?”,”sbx_take_survey”:”Take survey”,”sanitation_checklist_covid19_travel_safe_v2″:”Travel safe during u003cspan style=”white-space: nowrap;”>COVID-19u003c/span>”,”safety.more_info”:”More info”,”taking_safety_measures”:”Taking safety measures”},”features”:{“housekeeping_mw_ux_updates”:false,”cug_banner”:false,”hotels_socialproof_shelf”:false,”hotels_recently_viewed_shelf”:true,”enable_fallback_tier_two_messaging”:true,”suppress_tier_2_messaging”:false,”react_tracking_impressions”:true,”media_preview_focal_point”:false,”hotels_recent_viewed_shelf_mas”:true,”trips_skip_check_whitelist_public_trips”:true,”trips_heart_icon”:true,”trips_bookmark”:true,”trips_pop_stat_modal”:true,”hr_dark_green_icons”:true,”hotel_offer_primary_cta_visit_site”:false,”hotel_offer_primary_cta_continue”:false,”om_affiliate_commerce_button_CTA”:false,”free_cancellation_larger_text_below_price”:false,”free_cancellation_larger_text”:true,”free_cancellation_red_pill”:false,”plus_hotel_review_copy_test”:false,”only_plus_members_see_exact_savings”:true,”optimus_paywall”:false,”price_opacity_percent_bands”:false,”optimus_hr_roomgrid”:false,”optimus_hr_redesign”:false,”optimus_paywall_modal”:false,”optimus_paywall_hr_confirmation_modal”:false,”black_strikethrough”:false,”commerce_link_strategy_underline_prices”:true,”pay_in_installments_msg”:false,”hr_ib_exclude_taxes_and_fees”:true,”bcom_partner_photos”:true,”phoenix_plus”:false,”optimus”:true,”optimus_new_members”:true,”optimus_banner_test_control”:false,”optimus_banner_test_a”:false,”optimus_banner_test_b”:false,”optimus_lower_savings_threshold”:false,”fusion_lithium_restaurant_review_page”:false,”fusion_lithium_hotel_review_page”:false,”restaurant_list_consolidation”:false,”home_lithium”:true,”nearby_lithium”:true,”tourism_lithium”:true,”travel_advice”:true,”curated_shelves_preview”:true,”cruise_better_by_sea”:false,”account_merge”:true,”forum_home_lithium”:true,”tourism_management_center”:false,”tripadvisor_text_lander”:false,”mc_redesign_core”:false,”product_management”:false,”places_sift_tracking”:true,”trips_2018_collab”:true,”trips_2018_writes”:true,”t12368_project_nova_all_servlets”:true,”social_at_referencing_profile_links”:true,”trips_2018_reordering”:true,”trip_links”:true,”trip_notes”:true,”trips_duplicate”:true,”trips_dates_web”:true,”sponsored_trip”:true,”trips_save_ugc_links”:true,”trips_save_ugc_reviews”:true,”trips_save_ugc_videos”:true,”trips_save_ugc_photos”:true,”trips_save_ugc_reposts”:true,”trips_save_ugc”:true,”social_at_reference_ugc_editor”:true,”add_commerce_to_my_trips”:true,”trips_item_overflow_reorder”:true,”mobile_web”:false,”attraction_product_mapped_parent_geo”:true,”trips_saves_heart”:true,”trip_detail_typeahead_search”:true,”trip_detail_fab_search”:true,”trip_detail_fab”:true,”dummy_cache_on_client”:false,”rubicon_header_bidding”:true,”amazon_header_bidding”:true,”apr_lithium_control”:false,”social_likes_enabled”:true,”dd_brand_refresh”:false,”hr_disable_cpm_ads”:false,”timed_refresh_after_15s”:false,”linkify_urls”:true,”trip_savers_modal”:true,”social_ugc_share”:true,”social_boosting_enabled”:true,”social_block_enabled”:true,”social_report_profile_iap_enabled”:true,”unified_inbox_writes_enabled”:true,”unified_inbox_private_messaging”:true,”daodao_unify_nav_links_title”:false,”trips_2018_home_profile”:true,”ml_geo_photo_sort_order_from_db”:true,”rex_seo_geo_overview_mod_tests_toggle”:true,”allow_dmo_dfp_ad_shelf”:false,”show_foreign_member_profile”:false,”social_report_iap_enabled”:true,”social_report_repost_iap_enabled”:true,”social_edit_enabled”:true,”social_delete_enabled”:true,”social_follow_enabled”:true,”social_profile_contribution_count_enabled”:true,”media_geo_suggestions_enabled”:false,”media_location_suggestions_enabled”:true,”web_batch_media_photo_uploader”:false,”media_photo_upload_use_s3″:false,”media_video_upload_use_s3″:true,”social_link_posting_enabled”:true,”availabilityCheckStrategy_oracleDefault”:true,”hamon_fr”:false,”attraction_prices_in_shelves”:true,”curated_trips_attractions”:false,”curated_trips_restaurants”:false,”trip_modal_home”:true,”social_reposts”:true,”facebook_onetap_mobile”:false,”facebook_onetap_desktop”:false,”hr_defer_facebook_sdk”:false,”h_defer_facebook_sdk”:true,”optimus_footer”:false,”home_location_prompt_master”:true,”optimus_date_picker_test_a”:false,”optimus_date_picker_test_b”:false,”qualtrics_surveys_any”:false,”disable_reg_dialog_for_hardgate”:false,”account_screen_onb_control”:false,”ml_hard_gate_model_v1_reevaluate_on_page_view”:false,”ml_hard_gate_dt_v1_master”:false,”ml_hard_gate_dt_v2_master”:false,”ml_hard_gate_dt_v3_master”:false,”ml_hard_gate_master”:false,”ml_hard_gate_dt”:false,”hard_gate_excl_disable_domain_direct”:false,”ungate_sponsored_listing_clicks”:true,”review_detail_hard_gate_master_dt”:false,”review_detail_hard_gate_dt_other_servlets”:false,”ml_hard_gate_targeting_logic”:false,”ml_hard_gate_no_reqlo”:false,”mw_hard_gate_ghost”:false,”optimus_footer_control”:false,”mobile_fixed_ad”:false,”account_screen_onb”:false,”post_signup_attr_promo_onetap”:false,”onetap_onboarding”:false,”post_signup_attr_promo_explicit_preferences”:false,”optimus_got_spotlight_test_variant_a”:false,”optimus_got_spotlight_test_variant_b”:false,”optimus_got_plus_banner”:false,”reg_emailoptin”:false,”google_onetap_contextual_message_mobile_lithium”:false,”google_onetap_contextual_message_desktop_lithium”:true,”post_signup_attr_promo_masthead_join”:false,”core_reg_flow_name”:true,”shopping_cart_desktop”:true,”saves”:true,”trips_2018″:true,”unified_inbox_v2″:true,”breadcrumbs_and_masthead_h1_on_new_tourism”:false,”persistent_header_unscoped_bu_home”:true,”global_nav_links_test”:false,”breadcrumbs_as_global_nav”:false,”quicklinks_sorting_model”:false,”t4b_management_center_full_story_sampled”:false,”t4b_management_center_full_story”:true,”hrm_beta_full_story”:true,”hrm_plg_visibility_part1″:true,”hrm_plg_visibility_part2″:true,”pixel_loading_tracing”:false,”pixel_loading_timings”:false,”housekeeping_ux_updates”:true,”desktop_web”:true,”hotels_filters_reskin”:true,”entry_point_update”:true,”hotel_filters_fullscreen”:false,”pricing_mode_filter”:true,”boost_selected_filter_options_to_top”:false,”hotels_walkability_filters”:false,”optimus_for_default_dates”:false,”distance_filter_without_search”:true,”info_icons_over_question_icons”:true,”cma_disclaimer”:false,”exposed_text_legal_disclaimers”:false,”datepicker_field_prominence_tests”:true,”hotels_persistent_datepicker_mw_v1″:false,”hotels_persistent_datepicker_mw_v2″:false,”au_safe_commerce_messaging”:false,”datepicker_field_prominence_retest_v1″:false,”datepicker_ghost_default_dates”:false,”seo_image_carousel_tags_data_nosnippet”:false,”mw_datepicker_scroll_into_view”:false,”datepicker_display_default_dates”:false,”oracle_geo_heatmap”:true,”calendar_header_messaging_test”:false,”hr_yellow_brick_edu_variant_a”:false,”hr_yellow_brick_edu_variant_b”:false,”hp_link_cta_threshold_8″:true,”om_btb_gating_atf”:false,”hotel_mapview_transit”:true,”hotel_mapview_proximity”:false,”wc_maps_photo_carousel_DT”:true,”hr_maps_rich_content_hotelname”:true,”hr_mediaviewer_display_360_photos”:true,”image_carousel_ssr_all_images”:false,”image_carousel_ssr_7_images”:false,”seo_image_carousel_v3″:true,”image_carousel_ssr_10_images”:false,”vr_seo_machine_translated_markup_detail_page”:false,”qualtrics_site_brand_experience_surveys_journey”:false,”qualtrics_site_brand_experience_surveys_bu”:true,”t9944_sbx_2_bu”:true,”t9945_sbx_2_journey”:false,”mw_lists_delineation_and_medium_pic_photo”:false,”hotels_medium_photo_peek”:false,”hotels_photo_no_indicator_dots”:false,”hotels_media_mas_carousels_render_when_almost_visible”:true,”tc_2020_botb”:true,”optimus_hotel_card_variant_no_whitespace”:false,”tc_is_registered”:true,”hotels_merch_flag_tweaks”:true,”saves_hotspot_button”:false,”sentryio_js”:false,”prod_runtime_tracking”:false},”apolloCache”:null,”urqlCache”:{“28675700”:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g148424-d151383-Reviews-Cape_Santa_Maria_Beach_Resort_Villas-Long_Island_Out_Islands_Bahamas.html”}}]}},”28705037″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g2059452-d151421-Reviews-Augusta_Bay_Bahamas-George_Town_Great_Exuma_Out_Islands_Bahamas.html”}}]}},”28705070″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147417-d151422-Reviews-Comfort_Suites_Paradise_Island-Paradise_Island_New_Providence_Island_Bahamas.html”}}]}},”28706093″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Paid stay-at-home policy for staff with symptoms”,”tagInformation”:{“tagId”:21924,”localizedName”:”Paid stay-at-home policy for staff with symptoms”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147427-d151430-Reviews-Fernandez_Bay_Village-Cat_Island_Out_Islands_Bahamas.html”}}]}},”28738928″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147429-d151505-Reviews-Exuma_Palms_Hotel-Great_Exuma_Out_Islands_Bahamas.html”}}]}},”28782587″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Doctors available 24/7″,”tagInformation”:{“tagId”:21930,”localizedName”:”Doctors available 24/7″}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g1937793-d151678-Reviews-The_Dunmore_Hotel_Residences-Dunmore_Town_Harbour_Island_Out_Islands_Bahamas.html”}}]}},”28816115″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-out”,”tagInformation”:{“tagId”:21929,”localizedName”:”Contactless check-out”}},{“name”:”Doctors available 24/7″,”tagInformation”:{“tagId”:21930,”localizedName”:”Doctors available 24/7″}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147420-d151751-Reviews-Bell_Channel_Inn-Freeport_Grand_Bahama_Island_Bahamas.html”}}]}},”28856672″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g676266-d151899-Reviews-Lofty_Fig_Villas-Marsh_Harbour_Great_Abaco_Island_Abaco_Islands_Out_Islands_Bahamas.html”}}]}},”28887098″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147420-d151947-Reviews-Royal_Islander-Freeport_Grand_Bahama_Island_Bahamas.html”}}]}},”34596527″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d156301-Reviews-Towne_Hotel-Nassau_New_Providence_Island_Bahamas.html”}}]}},”66090156″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:1339,”mediaList”:[{“type”:”p”,”mediaId”:361195855,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/15/87/69/4f/island-seas-resort.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/15/87/69/4f/island-seas-resort.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/15/87/69/4f/island-seas-resort.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/15/87/69/4f/island-seas-resort.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/15/87/69/4f/island-seas-resort.jpg”,”width”:250,”height”:188},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/15/87/69/4f/island-seas-resort.jpg”,”width”:550,”height”:413},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/15/87/69/4f/island-seas-resort.jpg”,”width”:960,”height”:720}]},{“type”:”p”,”mediaId”:361195858,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/15/87/69/52/island-seas-resort.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/15/87/69/52/island-seas-resort.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/15/87/69/52/island-seas-resort.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/15/87/69/52/island-seas-resort.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/15/87/69/52/island-seas-resort.jpg”,”width”:250,”height”:141},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/15/87/69/52/island-seas-resort.jpg”,”width”:550,”height”:309},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/15/87/69/52/island-seas-resort.jpg”,”width”:960,”height”:540}]}]}}}},”142176276″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:1263,”mediaList”:[{“type”:”p”,”mediaId”:463932297,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”,”width”:1024,”height”:683},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”,”width”:1280,”height”:853}]},{“type”:”p”,”mediaId”:87611769,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/05/38/d9/79/sandyport-beaches-resort.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/05/38/d9/79/sandyport-beaches-resort.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/05/38/d9/79/sandyport-beaches-resort.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/05/38/d9/79/sandyport-beaches-resort.jpg”,”width”:250,”height”:166},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/05/38/d9/79/sandyport-beaches-resort.jpg”,”width”:550,”height”:366},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/05/38/d9/79/sandyport-beaches-resort.jpg”,”width”:1024,”height”:682},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/05/38/d9/79/sandyport-beaches-resort.jpg”,”width”:2000,”height”:1333}]}]}}}},”146218070″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Paid stay-at-home policy for staff with symptoms”,”tagInformation”:{“tagId”:21924,”localizedName”:”Paid stay-at-home policy for staff with symptoms”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-in”,”tagInformation”:{“tagId”:21928,”localizedName”:”Contactless check-in”}},{“name”:”Contactless check-out”,”tagInformation”:{“tagId”:21929,”localizedName”:”Contactless check-out”}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g148423-d181715-Reviews-Pink_Sands_Resort-Harbour_Island_Out_Islands_Bahamas.html”}}]}},”787720193″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:384,”mediaList”:[{“type”:”p”,”mediaId”:441829509,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1a/55/c8/85/andros-beach-club.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1a/55/c8/85/andros-beach-club.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1a/55/c8/85/andros-beach-club.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1a/55/c8/85/andros-beach-club.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1a/55/c8/85/andros-beach-club.jpg”,”width”:250,”height”:165},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1a/55/c8/85/andros-beach-club.jpg”,”width”:550,”height”:362},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1a/55/c8/85/andros-beach-club.jpg”,”width”:1024,”height”:674},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1a/55/c8/85/andros-beach-club.jpg”,”width”:1280,”height”:843}]},{“type”:”p”,”mediaId”:441829484,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1a/55/c8/6c/andros-beach-club.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1a/55/c8/6c/andros-beach-club.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1a/55/c8/6c/andros-beach-club.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1a/55/c8/6c/andros-beach-club.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1a/55/c8/6c/andros-beach-club.jpg”,”width”:250,”height”:166},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1a/55/c8/6c/andros-beach-club.jpg”,”width”:550,”height”:366},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1a/55/c8/6c/andros-beach-club.jpg”,”width”:1024,”height”:682},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1a/55/c8/6c/andros-beach-club.jpg”,”width”:1280,”height”:852}]}]}}}},”791834752″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Paid stay-at-home policy for staff with symptoms”,”tagInformation”:{“tagId”:21924,”localizedName”:”Paid stay-at-home policy for staff with symptoms”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-in”,”tagInformation”:{“tagId”:21928,”localizedName”:”Contactless check-in”}},{“name”:”Doctors available 24/7″,”tagInformation”:{“tagId”:21930,”localizedName”:”Doctors available 24/7″}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147417-d529827-Reviews-Hotel_Riu_Palace_Paradise_Island-Paradise_Island_New_Providence_Island_Bahamas.html”}}]}},”826049845″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d535351-Reviews-A_Stone_s_Throw_Away-Nassau_New_Providence_Island_Bahamas.html”}}]}},”907592032″:{“data”:{“locations”:[{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Mahogany Hill, Nassau New Providence Island”,”postalCode”:null},”name”:”The Island House”,”telephone”:”+1 242-698-6300″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/18/28/20/bd/the-island-house.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/18/28/20/bd/the-island-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/18/28/20/bd/the-island-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/18/28/20/bd/the-island-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/18/28/20/bd/the-island-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/18/28/20/bd/the-island-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/18/28/20/bd/the-island-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/18/28/20/bd/the-island-house.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”The Mall Drive, Freeport F-42549 Grand Bahama Island”,”postalCode”:”F-42549″},”name”:”Royal Islander”,”telephone”:”+1 242-351-6000″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/05/63/76/ed/royal-islander.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/05/63/76/ed/royal-islander.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/05/63/76/ed/royal-islander.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/05/63/76/ed/royal-islander.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/05/63/76/ed/royal-islander.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/05/63/76/ed/royal-islander.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/05/63/76/ed/royal-islander.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Paradise Island Dr, SS 6202 New Providence Island”,”postalCode”:”SS 6202″},”name”:”Comfort Suites Paradise Island”,”telephone”:”+1 242-363-3680″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/14/91/68/a2/relax-by-the-pool.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/14/91/68/a2/relax-by-the-pool.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/14/91/68/a2/relax-by-the-pool.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/14/91/68/a2/relax-by-the-pool.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/14/91/68/a2/relax-by-the-pool.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/14/91/68/a2/relax-by-the-pool.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/14/91/68/a2/relax-by-the-pool.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/14/91/68/a2/relax-by-the-pool.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”West Bay Street at Nassau Street, Nassau New Providence Island”,”postalCode”:null},”name”:”Holiday Inn Express & Suites Nassau”,”telephone”:”+1 242-322-1515″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/d1/46/5b/hotel-exterior.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1c/d1/46/5b/hotel-exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1c/d1/46/5b/hotel-exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1c/d1/46/5b/hotel-exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1c/d1/46/5b/hotel-exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1c/d1/46/5b/hotel-exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1c/d1/46/5b/hotel-exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1c/d1/46/5b/hotel-exterior.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Capt. Ernest A. Dean Highway Abaco, Bahamas, Schooner Bay 99999 Great Abaco Island”,”postalCode”:”99999″},”name”:”The Sandpiper Inn & Cottages”,”telephone”:”+1 242-699-2056″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0a/4e/f6/e6/photo4jpg.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0a/4e/f6/e6/photo4jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0a/4e/f6/e6/photo4jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0a/4e/f6/e6/photo4jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0a/4e/f6/e6/photo4jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/0a/4e/f6/e6/photo4jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0a/4e/f6/e6/photo4jpg.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Jolly Roger Drive P.O. Box F-43819, Freeport 42452 Grand Bahama Island”,”postalCode”:”42452″},”name”:”Taino Beach Resort & Clubs”,”telephone”:”+1 242-350-2200″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-s/01/fb/c6/68/pool-view.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/01/fb/c6/68/pool-view.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/01/fb/c6/68/pool-view.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/01/fb/c6/68/pool-view.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/01/fb/c6/68/pool-view.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Chapel Street Harbour Island”,”postalCode”:””},”name”:”Pink Sands Resort”,”telephone”:”+1 855-855-9621″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c8/a6/a7/drone.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1c/c8/a6/a7/drone.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1c/c8/a6/a7/drone.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1c/c8/a6/a7/drone.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1c/c8/a6/a7/drone.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1c/c8/a6/a7/drone.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/1c/c8/a6/a7/drone.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”40 George Street P.O. Box N-4808, Nassau New Providence Island”,”postalCode”:””},”name”:”Towne Hotel”,”telephone”:”+1 242-322-8450″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0a/bd/cb/f7/pool–v11555954.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/100/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/200/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/500/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/550/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/600/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/660/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/730/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/800/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/890/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/980/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1070/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1180/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1300/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1430/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1560/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1700/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1850/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2000/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2150/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2300/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2450/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0a/bd/cb/f7/pool–v11555954.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2600/0a/bd/cb/f7/pool–v11555954.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Queens Hwy, George Town Great Exuma”,”postalCode”:””},”name”:”Augusta Bay Bahamas”,”telephone”:”+1 242-336-2251″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/05/1d/c8/a8/augusta-bay-bahamas.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/05/1d/c8/a8/augusta-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/05/1d/c8/a8/augusta-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/05/1d/c8/a8/augusta-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/05/1d/c8/a8/augusta-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/05/1d/c8/a8/augusta-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/05/1d/c8/a8/augusta-bay-bahamas.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Tropical Garden Road Gambier Heights, Nassau SS5412 New Providence Island”,”postalCode”:”SS5412″},”name”:”A Stone’s Throw Away”,”telephone”:”+1 242-327-7030″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0a/9e/a9/a3/suite–v11554487.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/100/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/200/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/500/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/550/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/600/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/660/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/730/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/800/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/890/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/980/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1070/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1180/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1300/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1430/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1560/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1700/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/1850/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2000/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2150/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2300/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2450/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0a/9e/a9/a3/suite–v11554487.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/oyster/2600/0a/9e/a9/a3/suite–v11554487.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”One Bay Street, Nassau New Providence Island”,”postalCode”:””},”name”:”British Colonial Hilton Nassau”,”telephone”:”+1 242-302-9000″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/d2/52/56/exterior.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1c/d2/52/56/exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1c/d2/52/56/exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1c/d2/52/56/exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1c/d2/52/56/exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1c/d2/52/56/exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-p/1c/d2/52/56/exterior.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/1c/d2/52/56/exterior.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Sandyport Drive, Nassau New Providence Island”,”postalCode”:null},”name”:”Sandyport Beach Resort”,”telephone”:”+1 242-327-4279″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1b/a7/0b/89/the-lagoon-beach-at-sandyport.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Queen’s Hwy. George Town Great Exuma”,”postalCode”:””},”name”:”Exuma Palms Hotel”,”telephone”:”+1 242-358-4040″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/11/4b/53/d8/out-door-zbar.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/11/4b/53/d8/out-door-zbar.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/11/4b/53/d8/out-door-zbar.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/11/4b/53/d8/out-door-zbar.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/11/4b/53/d8/out-door-zbar.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/11/4b/53/d8/out-door-zbar.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/11/4b/53/d8/out-door-zbar.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/11/4b/53/d8/out-door-zbar.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Kings Road Lucaya, Freeport 43817 Grand Bahama Island”,”postalCode”:”43817″},”name”:”Bell Channel Inn”,”telephone”:”+1 242-373-1053″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/13/48/9f/19/view-from-the-bell-channel.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/13/48/9f/19/view-from-the-bell-channel.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/13/48/9f/19/view-from-the-bell-channel.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/13/48/9f/19/view-from-the-bell-channel.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/13/48/9f/19/view-from-the-bell-channel.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/13/48/9f/19/view-from-the-bell-channel.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/13/48/9f/19/view-from-the-bell-channel.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/13/48/9f/19/view-from-the-bell-channel.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”6307 Casino Drive, 6307 New Providence Island”,”postalCode”:”6307″},”name”:”Hotel Riu Palace Paradise Island”,”telephone”:”+1 242-363-3500″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1b/4f/36/fe/hotel-riu-palace-paradise.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1b/4f/36/fe/hotel-riu-palace-paradise.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1b/4f/36/fe/hotel-riu-palace-paradise.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1b/4f/36/fe/hotel-riu-palace-paradise.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1b/4f/36/fe/hotel-riu-palace-paradise.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1b/4f/36/fe/hotel-riu-palace-paradise.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1b/4f/36/fe/hotel-riu-palace-paradise.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1b/4f/36/fe/hotel-riu-palace-paradise.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”896 West Bay Street Palm Shores, Nassau New Providence Island”,”postalCode”:null},”name”:”Golden Palm Bed & Breakfast”,”telephone”:null,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/12/c9/df/c7/love-beach.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/12/c9/df/c7/love-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/12/c9/df/c7/love-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/12/c9/df/c7/love-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/12/c9/df/c7/love-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/12/c9/df/c7/love-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/12/c9/df/c7/love-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/12/c9/df/c7/love-beach.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Sears Hill Road, Nassau New Providence Island”,”postalCode”:null},”name”:”HumesHouse Hostel @ HillCrest”,”telephone”:null,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/16/c1/a9/9c/humeshouse-hostel-hillcrest.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/16/c1/a9/9c/humeshouse-hostel-hillcrest.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/16/c1/a9/9c/humeshouse-hostel-hillcrest.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/16/c1/a9/9c/humeshouse-hostel-hillcrest.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/16/c1/a9/9c/humeshouse-hostel-hillcrest.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/16/c1/a9/9c/humeshouse-hostel-hillcrest.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/16/c1/a9/9c/humeshouse-hostel-hillcrest.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Shanna Bay, Orange Creek Cat Island”,”postalCode”:””},”name”:”Shannas Cove Resort”,”telephone”:”+1 242-359-9668″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1a/9e/b4/ec/shannas-cove-resort.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1a/9e/b4/ec/shannas-cove-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1a/9e/b4/ec/shannas-cove-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1a/9e/b4/ec/shannas-cove-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1a/9e/b4/ec/shannas-cove-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1a/9e/b4/ec/shannas-cove-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-p/1a/9e/b4/ec/shannas-cove-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1a/9e/b4/ec/shannas-cove-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1a/9e/b4/ec/shannas-cove-resort.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Joe Sound Creek # 1 Old Bight, general delivery Cat Island”,”postalCode”:”general delivery”},”name”:”Rollezz Villas Beach Resort”,”telephone”:”+1 305-280-5719″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/11/cf/17/1f/rollezz-villas-beach.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/11/cf/17/1f/rollezz-villas-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/11/cf/17/1f/rollezz-villas-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/11/cf/17/1f/rollezz-villas-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/11/cf/17/1f/rollezz-villas-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/11/cf/17/1f/rollezz-villas-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/11/cf/17/1f/rollezz-villas-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/11/cf/17/1f/rollezz-villas-beach.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Private Beach Kemp’s Bay, 3691454 Andros”,”postalCode”:”3691454″},”name”:”Andros Beach Club”,”telephone”:”+1 954-681-4818″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1a/55/c8/85/andros-beach-club.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1a/55/c8/85/andros-beach-club.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1a/55/c8/85/andros-beach-club.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1a/55/c8/85/andros-beach-club.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1a/55/c8/85/andros-beach-club.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1a/55/c8/85/andros-beach-club.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1a/55/c8/85/andros-beach-club.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1a/55/c8/85/andros-beach-club.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Jacaranda Drive, Cigatoo Estates Cigatoo Estates, Governor's Harbour 00000 Eleuthera”,”postalCode”:”00000″},”name”:”Villa Allamanda, Eleuthera”,”telephone”:”+1 242-332-3934″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/07/37/8a/0c/84-va-exterior-garden.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/07/37/8a/0c/84-va-exterior-garden.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/07/37/8a/0c/84-va-exterior-garden.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/07/37/8a/0c/84-va-exterior-garden.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/07/37/8a/0c/84-va-exterior-garden.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/07/37/8a/0c/84-va-exterior-garden.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/07/37/8a/0c/84-va-exterior-garden.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Fresh Creek Andros”,”postalCode”:null},”name”:”Small Hope Bay Lodge”,”telephone”:”+1 242-368-2014″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Hill & Bay Street, EL-27234 Harbour Island”,”postalCode”:”EL-27234″},”name”:”Rock House”,”telephone”:”+1 242-456-8957″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-s/02/71/f2/57/rock-house.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/02/71/f2/57/rock-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/02/71/f2/57/rock-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/02/71/f2/57/rock-house.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/02/71/f2/57/rock-house.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”George Town Great Exuma”,”postalCode”:””},”name”:”Saint Francis Resort & Marina”,”telephone”:”+1 242-557-9629″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1a/c3/ab/ad/saint-francis-resort.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1a/c3/ab/ad/saint-francis-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1a/c3/ab/ad/saint-francis-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1a/c3/ab/ad/saint-francis-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1a/c3/ab/ad/saint-francis-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1a/c3/ab/ad/saint-francis-resort.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/1a/c3/ab/ad/saint-francis-resort.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Queens Highway, 29243 Great Exuma”,”postalCode”:”29243″},”name”:”Paradise Bay Bahamas”,”telephone”:”+1 242-358-5229″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1b/37/30/ec/paradise-bay-bahamas.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1b/37/30/ec/paradise-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1b/37/30/ec/paradise-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1b/37/30/ec/paradise-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1b/37/30/ec/paradise-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1b/37/30/ec/paradise-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1b/37/30/ec/paradise-bay-bahamas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1b/37/30/ec/paradise-bay-bahamas.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”East Bay Street, Marsh Harbour ab20437 Great Abaco Island”,”postalCode”:”ab20437″},”name”:”Lofty Fig Villas”,”telephone”:”+1 242-367-2681″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/01/c2/6e/f0/lofty-fig-villas.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/01/c2/6e/f0/lofty-fig-villas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/01/c2/6e/f0/lofty-fig-villas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/01/c2/6e/f0/lofty-fig-villas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/01/c2/6e/f0/lofty-fig-villas.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/01/c2/6e/f0/lofty-fig-villas.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Porgy Bay Bimini”,”postalCode”:null},”name”:”WildQuest”,”telephone”:”+1 242-347-2374″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/e9/e4/59/2-of-the-wild-dolphins.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1c/e9/e4/59/2-of-the-wild-dolphins.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1c/e9/e4/59/2-of-the-wild-dolphins.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1c/e9/e4/59/2-of-the-wild-dolphins.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1c/e9/e4/59/2-of-the-wild-dolphins.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1c/e9/e4/59/2-of-the-wild-dolphins.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1c/e9/e4/59/2-of-the-wild-dolphins.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1c/e9/e4/59/2-of-the-wild-dolphins.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Colebrook Lane, Dunmore Town 27122 Harbour Island”,”postalCode”:”27122″},”name”:”The Dunmore Hotel & Residences”,”telephone”:”+1 242-333-2200″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/18/61/4f/d3/photo1jpg.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/18/61/4f/d3/photo1jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/18/61/4f/d3/photo1jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/18/61/4f/d3/photo1jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/18/61/4f/d3/photo1jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/18/61/4f/d3/photo1jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/18/61/4f/d3/photo1jpg.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/18/61/4f/d3/photo1jpg.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Galliot Cay Long Island”,”postalCode”:””},”name”:”Cape Santa Maria Beach Resort & Villas”,”telephone”:”+1 800-926-9704″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/07/d2/b5/3c/cape-santa-maria-beach.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/07/d2/b5/3c/cape-santa-maria-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/07/d2/b5/3c/cape-santa-maria-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/07/d2/b5/3c/cape-santa-maria-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/07/d2/b5/3c/cape-santa-maria-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/07/d2/b5/3c/cape-santa-maria-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/07/d2/b5/3c/cape-santa-maria-beach.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/07/d2/b5/3c/cape-santa-maria-beach.jpg”}]}]}}},{“streetAddress”:{“country”:”Caribbean”,”fullAddress”:”Fernandez Bay New Bight Cat Island”,”postalCode”:””},”name”:”Fernandez Bay Village”,”telephone”:”+1 954-302-7422″,”mediaAlbum”:{“album”:{“mediaList”:[{“photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-s/02/5c/ae/47/clubhouse-restaurant.jpg?w=100&h=100&s=1″},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/02/5c/ae/47/clubhouse-restaurant.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/02/5c/ae/47/clubhouse-restaurant.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/02/5c/ae/47/clubhouse-restaurant.jpg”},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/02/5c/ae/47/clubhouse-restaurant.jpg”}]}]}}}]}},”945475835″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:3123,”mediaList”:[{“type”:”p”,”mediaId”:287954776,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/11/29/d7/58/the-cove-pool.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/11/29/d7/58/the-cove-pool.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/11/29/d7/58/the-cove-pool.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/11/29/d7/58/the-cove-pool.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/11/29/d7/58/the-cove-pool.jpg”,”width”:250,”height”:175},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/11/29/d7/58/the-cove-pool.jpg”,”width”:550,”height”:386},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/11/29/d7/58/the-cove-pool.jpg”,”width”:1024,”height”:718},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/11/29/d7/58/the-cove-pool.jpg”,”width”:2000,”height”:1402}]},{“type”:”p”,”mediaId”:263617428,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0f/b6/7b/94/exterior-at-night-time.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0f/b6/7b/94/exterior-at-night-time.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0f/b6/7b/94/exterior-at-night-time.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/0f/b6/7b/94/exterior-at-night-time.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0f/b6/7b/94/exterior-at-night-time.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0f/b6/7b/94/exterior-at-night-time.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/0f/b6/7b/94/exterior-at-night-time.jpg”,”width”:1024,”height”:682},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0f/b6/7b/94/exterior-at-night-time.jpg”,”width”:2000,”height”:1333}]}]}}}},”983854959″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d7393370-Reviews-The_Island_House-Nassau_New_Providence_Island_Bahamas.html”}}]}},”1282115822″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}},{“name”:”24-hour minimum vacancy between guests”,”tagInformation”:{“tagId”:21918,”localizedName”:”24-hour minimum vacancy between guests”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147420-d242124-Reviews-Island_Seas_Resort-Freeport_Grand_Bahama_Island_Bahamas.html”}}]}},”1323931755″:{“data”:{“canViewOptimusFeatures”:false}},”1358201942″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Paid stay-at-home policy for staff with symptoms”,”tagInformation”:{“tagId”:21924,”localizedName”:”Paid stay-at-home policy for staff with symptoms”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-out”,”tagInformation”:{“tagId”:21929,”localizedName”:”Contactless check-out”}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d260690-Reviews-Sandyport_Beach_Resort-Nassau_New_Providence_Island_Bahamas.html”}}]}},”1365166361″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g148423-d266228-Reviews-Rock_House-Harbour_Island_Out_Islands_Bahamas.html”}}]}},”1402004954″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147420-d274455-Reviews-Taino_Beach_Resort_Clubs-Freeport_Grand_Bahama_Island_Bahamas.html”}}]}},”1532422502″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:124,”mediaList”:[{“type”:”p”,”mediaId”:483477083,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/d1/46/5b/hotel-exterior.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1c/d1/46/5b/hotel-exterior.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1c/d1/46/5b/hotel-exterior.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1c/d1/46/5b/hotel-exterior.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1c/d1/46/5b/hotel-exterior.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1c/d1/46/5b/hotel-exterior.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/1c/d1/46/5b/hotel-exterior.jpg”,”width”:1024,”height”:683},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/1c/d1/46/5b/hotel-exterior.jpg”,”width”:1280,”height”:854}]},{“type”:”p”,”mediaId”:293096500,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/11/78/4c/34/holiday-inn-express-suites.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/11/78/4c/34/holiday-inn-express-suites.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/11/78/4c/34/holiday-inn-express-suites.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/11/78/4c/34/holiday-inn-express-suites.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/11/78/4c/34/holiday-inn-express-suites.jpg”,”width”:250,”height”:166},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/11/78/4c/34/holiday-inn-express-suites.jpg”,”width”:550,”height”:366},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/11/78/4c/34/holiday-inn-express-suites.jpg”,”width”:1024,”height”:681},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/11/78/4c/34/holiday-inn-express-suites.jpg”,”width”:2000,”height”:1331}]}]}}}},”2003745859″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147425-d608598-Reviews-Andros_Beach_Club-Andros_Out_Islands_Bahamas.html”}}]}},”2034683029″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Paid stay-at-home policy for staff with symptoms”,”tagInformation”:{“tagId”:21924,”localizedName”:”Paid stay-at-home policy for staff with symptoms”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g12349522-d611851-Reviews-Saint_Francis_Resort_Marina-Stocking_Island_George_Town_Great_Exuma_Out_Islands_Baham.html”}}]}},”2082664424″:{“data”:{“locations”:[null]}},”2156160868″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d13806793-Reviews-Golden_Palm_Bed_Breakfast-Nassau_New_Providence_Island_Bahamas.html”}}]}},”2161501501″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-in”,”tagInformation”:{“tagId”:21928,”localizedName”:”Contactless check-in”}},{“name”:”Contactless check-out”,”tagInformation”:{“tagId”:21929,”localizedName”:”Contactless check-out”}},{“name”:”Doctors available 24/7″,”tagInformation”:{“tagId”:21930,”localizedName”:”Doctors available 24/7″}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147417-d649623-Reviews-The_Cove_at_Atlantis-Paradise_Island_New_Providence_Island_Bahamas.html”}}]}},”2396680499″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147427-d1655865-Reviews-Shannas_Cove_Resort-Cat_Island_Out_Islands_Bahamas.html”}}]}},”2482001077″:{“data”:{“locations”:[{“name”:”Bahamas”}],”insightProfile”:{“locations”:[{“location”:{“locationId”:147414,”parentId”:147237,”name”:”Bahamas”,”url”:”/Tourism-g147414-Bahamas-Vacations.html”,”HOTELS_URL”:”/Hotels-g147414-Bahamas-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g147414-Activities-Bahamas.html”,”RESTAURANTS_URL”:”/Restaurants-g147414-Bahamas.html”,”isGeo”:true,”locationV2″:{“placeType”:”ISLAND_GROUP”,”names”:{“longOnlyHierarchyTypeahead”:”Caribbean, North America”,”longOnlyHierarchyTypeaheadV2″:”Caribbean, North America”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g147414-Reviews-Bahamas-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:2975,”maxHeight”:580,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/15/33/f5/58/bahamas.jpg?w={width}&h={height}&s=1″}},”placeType”:”ISLAND_GROUP”}}]},”popularDestinations”:[{“locationId”:295424,”parentId”:2630221,”name”:”Dubai”,”url”:”/Tourism-g295424-Dubai_Emirate_of_Dubai-Vacations.html”,”HOTELS_URL”:”/Hotels-g295424-Dubai_Emirate_of_Dubai-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g295424-Activities-Dubai_Emirate_of_Dubai.html”,”RESTAURANTS_URL”:”/Restaurants-g295424-Dubai_Emirate_of_Dubai.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”United Arab Emirates, Middle East”,”longOnlyHierarchyTypeaheadV2″:”Emirate of Dubai, United Arab Emirates”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g295424-Reviews-Dubai_Emirate_of_Dubai-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:5472,”maxHeight”:3648,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1b/51/ca/8d/caption.jpg?w={width}&h={height}&s=1&cx=2985&cy=1423&chk=v1_ee80618899fd7d7544dd”}},”placeType”:”MUNICIPALITY”},{“locationId”:297549,”parentId”:297545,”name”:”Hurghada”,”url”:”/Tourism-g297549-Hurghada_Red_Sea_and_Sinai-Vacations.html”,”HOTELS_URL”:”/Hotels-g297549-Hurghada_Red_Sea_and_Sinai-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g297549-Activities-Hurghada_Red_Sea_and_Sinai.html”,”RESTAURANTS_URL”:”/Restaurants-g297549-Hurghada_Red_Sea_and_Sinai.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Egypt, Africa”,”longOnlyHierarchyTypeaheadV2″:”Red Sea and Sinai, Egypt”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g297549-Reviews-Hurghada_Red_Sea_and_Sinai-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:5184,”maxHeight”:1012,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/15/33/fc/eb/hurghada.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:297962,”parentId”:297960,”name”:”Antalya”,”url”:”/Tourism-g297962-Antalya_Turkish_Mediterranean_Coast-Vacations.html”,”HOTELS_URL”:”/Hotels-g297962-Antalya_Turkish_Mediterranean_Coast-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g297962-Activities-Antalya_Turkish_Mediterranean_Coast.html”,”RESTAURANTS_URL”:”/Restaurants-g297962-Antalya_Turkish_Mediterranean_Coast.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”Turkey, Europe”,”longOnlyHierarchyTypeaheadV2″:”Turkish Mediterranean Coast, Turkey”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g297962-Reviews-Antalya_Turkish_Mediterranean_Coast-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:3630,”maxHeight”:710,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/15/33/fd/3c/antalya.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”},{“locationId”:312725,”parentId”:13098613,”name”:”Belek”,”url”:”/Tourism-g312725-Belek_Serik_District_Turkish_Mediterranean_Coast-Vacations.html”,”HOTELS_URL”:”/Hotels-g312725-Belek_Serik_District_Turkish_Mediterranean_Coast-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g312725-Activities-Belek_Serik_District_Turkish_Mediterranean_Coast.html”,”RESTAURANTS_URL”:”/Restaurants-g312725-Belek_Serik_District_Turkish_Mediterranean_Coast.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Turkey, Europe”,”longOnlyHierarchyTypeaheadV2″:”Turkish Mediterranean Coast, Turkey”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g312725-Reviews-Belek_Serik_District_Turkish_Mediterranean_Coast-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:1575,”maxHeight”:983,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0a/cd/d5/11/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:297555,”parentId”:297556,”name”:”Sharm El Sheikh”,”url”:”/Tourism-g297555-Sharm_El_Sheikh_South_Sinai_Red_Sea_and_Sinai-Vacations.html”,”HOTELS_URL”:”/Hotels-g297555-Sharm_El_Sheikh_South_Sinai_Red_Sea_and_Sinai-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g297555-Activities-Sharm_El_Sheikh_South_Sinai_Red_Sea_and_Sinai.html”,”RESTAURANTS_URL”:”/Restaurants-g297555-Sharm_El_Sheikh_South_Sinai_Red_Sea_and_Sinai.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Egypt, Africa”,”longOnlyHierarchyTypeaheadV2″:”Red Sea and Sinai, Egypt”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g297555-Reviews-Sharm_El_Sheikh_South_Sinai_Red_Sea_and_Sinai-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:5967,”maxHeight”:1167,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/15/33/fc/ed/sharm-el-sheikh.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:297968,”parentId”:297967,”name”:”Side”,”url”:”/Tourism-g297968-Side_Manavgat_Turkish_Mediterranean_Coast-Vacations.html”,”HOTELS_URL”:”/Hotels-g297968-Side_Manavgat_Turkish_Mediterranean_Coast-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g297968-Activities-Side_Manavgat_Turkish_Mediterranean_Coast.html”,”RESTAURANTS_URL”:”/Restaurants-g297968-Side_Manavgat_Turkish_Mediterranean_Coast.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”Turkey, Europe”,”longOnlyHierarchyTypeaheadV2″:”Turkish Mediterranean Coast, Turkey”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g297968-Reviews-Side_Manavgat_Turkish_Mediterranean_Coast-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:4128,”maxHeight”:2322,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0f/89/33/c6/20160829-172606-largejpg.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”},{“locationId”:147293,”parentId”:3458428,”name”:”Punta Cana”,”url”:”/Tourism-g147293-Punta_Cana_La_Altagracia_Province_Dominican_Republic-Vacations.html”,”HOTELS_URL”:”/Hotels-g147293-Punta_Cana_La_Altagracia_Province_Dominican_Republic-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g147293-Activities-Punta_Cana_La_Altagracia_Province_Dominican_Republic.html”,”RESTAURANTS_URL”:”/Restaurants-g147293-Punta_Cana_La_Altagracia_Province_Dominican_Republic.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Dominican Republic, Caribbean”,”longOnlyHierarchyTypeaheadV2″:”La Altagracia Province, Dominican Republic”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g147293-Reviews-Punta_Cana_La_Altagracia_Province_Dominican_Republic-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:3600,”maxHeight”:2402,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c2/7b/93/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:186338,”parentId”:186217,”name”:”London”,”url”:”/Tourism-g186338-London_England-Vacations.html”,”HOTELS_URL”:”/Hotels-g186338-London_England-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g186338-Activities-London_England.html”,”RESTAURANTS_URL”:”/Restaurants-g186338-London_England.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”England, United Kingdom”,”longOnlyHierarchyTypeaheadV2″:”England, United Kingdom”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g186338-Reviews-London_England-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:6000,”maxHeight”:4000,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c0/b1/4b/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”},{“locationId”:150813,”parentId”:659488,”name”:”Tulum”,”url”:”/Tourism-g150813-Tulum_Yucatan_Peninsula-Vacations.html”,”HOTELS_URL”:”/Hotels-g150813-Tulum_Yucatan_Peninsula-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g150813-Activities-Tulum_Yucatan_Peninsula.html”,”RESTAURANTS_URL”:”/Restaurants-g150813-Tulum_Yucatan_Peninsula.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Quintana Roo, Mexico”,”longOnlyHierarchyTypeaheadV2″:”Yucatan Peninsula, Mexico”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g150813-Reviews-Tulum_Yucatan_Peninsula-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:5760,”maxHeight”:2944,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1b/36/37/eb/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:60763,”parentId”:28953,”name”:”New York City”,”url”:”/Tourism-g60763-New_York_City_New_York-Vacations.html”,”HOTELS_URL”:”/Hotels-g60763-New_York_City_New_York-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g60763-Activities-New_York_City_New_York.html”,”RESTAURANTS_URL”:”/Restaurants-g60763-New_York_City_New_York.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”New York, United States”,”longOnlyHierarchyTypeaheadV2″:”New York, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g60763-Reviews-New_York_City_New_York-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:2520,”maxHeight”:2068,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c5/7c/68/caption.jpg?w={width}&h={height}&s=1&cx=950&cy=1766&chk=v1_9ee2771da71f55a7ac6a”}},”placeType”:”CITY”},{“locationId”:60634,”parentId”:29220,”name”:”Lahaina”,”url”:”/Tourism-g60634-Lahaina_Maui_Hawaii-Vacations.html”,”HOTELS_URL”:”/Hotels-g60634-Lahaina_Maui_Hawaii-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g60634-Activities-Lahaina_Maui_Hawaii.html”,”RESTAURANTS_URL”:”/Restaurants-g60634-Lahaina_Maui_Hawaii.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”Hawaii, United States”,”longOnlyHierarchyTypeaheadV2″:”Hawaii, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g60634-Reviews-Lahaina_Maui_Hawaii-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:1843,”maxHeight”:1200,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/ba/91/11/caption.jpg?w={width}&h={height}&s=1&cx=739&cy=546&chk=v1_1a4816aa5a9ecbd0c68e”}},”placeType”:”CITY”},{“locationId”:150812,”parentId”:659488,”name”:”Playa del Carmen”,”url”:”/Tourism-g150812-Playa_del_Carmen_Yucatan_Peninsula-Vacations.html”,”HOTELS_URL”:”/Hotels-g150812-Playa_del_Carmen_Yucatan_Peninsula-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g150812-Activities-Playa_del_Carmen_Yucatan_Peninsula.html”,”RESTAURANTS_URL”:”/Restaurants-g150812-Playa_del_Carmen_Yucatan_Peninsula.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Quintana Roo, Mexico”,”longOnlyHierarchyTypeaheadV2″:”Yucatan Peninsula, Mexico”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g150812-Reviews-Playa_del_Carmen_Yucatan_Peninsula-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:3000,”maxHeight”:2002,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c0/ad/21/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:45963,”parentId”:28949,”name”:”Las Vegas”,”url”:”/Tourism-g45963-Las_Vegas_Nevada-Vacations.html”,”HOTELS_URL”:”/Hotels-g45963-Las_Vegas_Nevada-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g45963-Activities-Las_Vegas_Nevada.html”,”RESTAURANTS_URL”:”/Restaurants-g45963-Las_Vegas_Nevada.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”Nevada, United States”,”longOnlyHierarchyTypeaheadV2″:”Nevada, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g45963-Reviews-Las_Vegas_Nevada-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:1200,”maxHeight”:800,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c0/87/b0/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”},{“locationId”:150807,”parentId”:1575485,”name”:”Cancun”,”url”:”/Tourism-g150807-Cancun_Yucatan_Peninsula-Vacations.html”,”HOTELS_URL”:”/Hotels-g150807-Cancun_Yucatan_Peninsula-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g150807-Activities-Cancun_Yucatan_Peninsula.html”,”RESTAURANTS_URL”:”/Restaurants-g150807-Cancun_Yucatan_Peninsula.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Quintana Roo, Mexico”,”longOnlyHierarchyTypeaheadV2″:”Yucatan Peninsula, Mexico”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g150807-Reviews-Cancun_Yucatan_Peninsula-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:1225,”maxHeight”:1633,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/ae/5d/ec/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:240327,”parentId”:659488,”name”:”Puerto Morelos”,”url”:”/Tourism-g240327-Puerto_Morelos_Yucatan_Peninsula-Vacations.html”,”HOTELS_URL”:”/Hotels-g240327-Puerto_Morelos_Yucatan_Peninsula-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g240327-Activities-Puerto_Morelos_Yucatan_Peninsula.html”,”RESTAURANTS_URL”:”/Restaurants-g240327-Puerto_Morelos_Yucatan_Peninsula.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Quintana Roo, Mexico”,”longOnlyHierarchyTypeaheadV2″:”Yucatan Peninsula, Mexico”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g240327-Reviews-Puerto_Morelos_Yucatan_Peninsula-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:2048,”maxHeight”:1536,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0e/97/2c/bd/photo0jpg.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:60982,”parentId”:29222,”name”:”Honolulu”,”url”:”/Tourism-g60982-Honolulu_Oahu_Hawaii-Vacations.html”,”HOTELS_URL”:”/Hotels-g60982-Honolulu_Oahu_Hawaii-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g60982-Activities-Honolulu_Oahu_Hawaii.html”,”RESTAURANTS_URL”:”/Restaurants-g60982-Honolulu_Oahu_Hawaii.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”Hawaii, United States”,”longOnlyHierarchyTypeaheadV2″:”Hawaii, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g60982-Reviews-Honolulu_Oahu_Hawaii-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:4700,”maxHeight”:3133,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c1/a0/72/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”},{“locationId”:152515,”parentId”:150773,”name”:”Cabo San Lucas”,”url”:”/Tourism-g152515-Cabo_San_Lucas_Los_Cabos_Baja_California-Vacations.html”,”HOTELS_URL”:”/Hotels-g152515-Cabo_San_Lucas_Los_Cabos_Baja_California-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g152515-Activities-Cabo_San_Lucas_Los_Cabos_Baja_California.html”,”RESTAURANTS_URL”:”/Restaurants-g152515-Cabo_San_Lucas_Los_Cabos_Baja_California.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”Baja California Sur, Mexico”,”longOnlyHierarchyTypeaheadV2″:”Baja California, Mexico”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g152515-Reviews-Cabo_San_Lucas_Los_Cabos_Baja_California-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:3024,”maxHeight”:4032,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/bf/72/8e/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”},{“locationId”:34439,”parentId”:28930,”name”:”Miami Beach”,”url”:”/Tourism-g34439-Miami_Beach_Florida-Vacations.html”,”HOTELS_URL”:”/Hotels-g34439-Miami_Beach_Florida-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g34439-Activities-Miami_Beach_Florida.html”,”RESTAURANTS_URL”:”/Restaurants-g34439-Miami_Beach_Florida.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”Florida, United States”,”longOnlyHierarchyTypeaheadV2″:”Florida, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g34439-Reviews-Miami_Beach_Florida-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:1440,”maxHeight”:1071,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/cc/e1/67/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”},{“locationId”:34515,”parentId”:1591089,”name”:”Orlando”,”url”:”/Tourism-g34515-Orlando_Florida-Vacations.html”,”HOTELS_URL”:”/Hotels-g34515-Orlando_Florida-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g34515-Activities-Orlando_Florida.html”,”RESTAURANTS_URL”:”/Restaurants-g34515-Orlando_Florida.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”Florida, United States”,”longOnlyHierarchyTypeaheadV2″:”Florida, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g34515-Reviews-Orlando_Florida-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:2520,”maxHeight”:1680,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c0/b2/d2/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:34345,”parentId”:34340,”name”:”Key West”,”url”:”/Tourism-g34345-Key_West_Florida_Keys_Florida-Vacations.html”,”HOTELS_URL”:”/Hotels-g34345-Key_West_Florida_Keys_Florida-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g34345-Activities-Key_West_Florida_Keys_Florida.html”,”RESTAURANTS_URL”:”/Restaurants-g34345-Key_West_Florida_Keys_Florida.html”,”isGeo”:true,”locationV2″:{“placeType”:”ISLAND”,”names”:{“longOnlyHierarchyTypeahead”:”Florida, United States”,”longOnlyHierarchyTypeaheadV2″:”Florida, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g34345-Reviews-Key_West_Florida_Keys_Florida-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:5616,”maxHeight”:3744,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c2/97/1e/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”ISLAND”},{“locationId”:60750,”parentId”:28926,”name”:”San Diego”,”url”:”/Tourism-g60750-San_Diego_California-Vacations.html”,”HOTELS_URL”:”/Hotels-g60750-San_Diego_California-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g60750-Activities-San_Diego_California.html”,”RESTAURANTS_URL”:”/Restaurants-g60750-San_Diego_California.html”,”isGeo”:true,”locationV2″:{“placeType”:”MUNICIPALITY”,”names”:{“longOnlyHierarchyTypeahead”:”California, United States”,”longOnlyHierarchyTypeaheadV2″:”California, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g60750-Reviews-San_Diego_California-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:5472,”maxHeight”:3647,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1b/48/a5/2c/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”MUNICIPALITY”},{“locationId”:54359,”parentId”:659476,”name”:”Myrtle Beach”,”url”:”/Tourism-g54359-Myrtle_Beach_South_Carolina-Vacations.html”,”HOTELS_URL”:”/Hotels-g54359-Myrtle_Beach_South_Carolina-Hotels.html”,”ATTRACTIONS_URL”:”/Attractions-g54359-Activities-Myrtle_Beach_South_Carolina.html”,”RESTAURANTS_URL”:”/Restaurants-g54359-Myrtle_Beach_South_Carolina.html”,”isGeo”:true,”locationV2″:{“placeType”:”CITY”,”names”:{“longOnlyHierarchyTypeahead”:”South Carolina, United States”,”longOnlyHierarchyTypeaheadV2″:”South Carolina, United States”},”vacationRentalsRoute”:{“url”:”/VacationRentals-g54359-Reviews-Myrtle_Beach_South_Carolina-Vacation_Rentals.html”}},”thumbnail”:{“photoSizeDynamic”:{“maxWidth”:3868,”maxHeight”:2578,”urlTemplate”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/bf/69/b0/caption.jpg?w={width}&h={height}&s=1″}},”placeType”:”CITY”}]}},”2567375245″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g2698766-d6483216-Reviews-Villa_Allamanda_Eleuthera-Governor_s_Harbour_Eleuthera_Out_Islands_Bahamas.html”}}]}},”2634074783″:{“data”:{“currency”:{“code”:”EUR”,”name”:”Euros”,”symbol”:”u20AC”}}},”2751520306″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g8020830-d9556811-Reviews-The_Sandpiper_Inn_Cottages-Schooner_Bay_Great_Abaco_Island_Abaco_Islands_Out_Islands_.html”}}]}},”2799976988″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Paid stay-at-home policy for staff with symptoms”,”tagInformation”:{“tagId”:21924,”localizedName”:”Paid stay-at-home policy for staff with symptoms”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-in”,”tagInformation”:{“tagId”:21928,”localizedName”:”Contactless check-in”}},{“name”:”Contactless check-out”,”tagInformation”:{“tagId”:21929,”localizedName”:”Contactless check-out”}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}},{“name”:”24-hour minimum vacancy between guests”,”tagInformation”:{“tagId”:21918,”localizedName”:”24-hour minimum vacancy between guests”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147427-d7808499-Reviews-Rollezz_Villas_Beach_Resort-Cat_Island_Out_Islands_Bahamas.html”}}]}},”2902948614″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147426-d2052671-Reviews-WildQuest-Bimini_Out_Islands_Bahamas.html”}}]}},”3006563816″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d8538010-Reviews-Holiday_Inn_Express_Suites_Nassau-Nassau_New_Providence_Island_Bahamas.html”}}]}},”3076704943″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:2593,”mediaList”:[{“type”:”p”,”mediaId”:483545686,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/d2/52/56/exterior.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1c/d2/52/56/exterior.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1c/d2/52/56/exterior.jpg”,”width”:137,”height”:205},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1c/d2/52/56/exterior.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1c/d2/52/56/exterior.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1c/d2/52/56/exterior.jpg”,”width”:300,”height”:450},{“url”:”https://media-cdn.tripadvisor.com/media/photo-p/1c/d2/52/56/exterior.jpg”,”width”:550,”height”:825},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/1c/d2/52/56/exterior.jpg”,”width”:682,”height”:1023}]},{“type”:”p”,”mediaId”:374398866,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/16/50/df/92/british-colonial-hilton.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/16/50/df/92/british-colonial-hilton.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/16/50/df/92/british-colonial-hilton.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/16/50/df/92/british-colonial-hilton.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/16/50/df/92/british-colonial-hilton.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/16/50/df/92/british-colonial-hilton.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/16/50/df/92/british-colonial-hilton.jpg”,”width”:1024,”height”:683},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/16/50/df/92/british-colonial-hilton.jpg”,”width”:1280,”height”:854}]}]}}}},”3077934622″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:924,”mediaList”:[{“type”:”p”,”mediaId”:182232622,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”,”width”:250,”height”:140},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”,”width”:550,”height”:308},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”,”width”:1024,”height”:573},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0a/dc/a6/2e/one-of-our-gorgeous-beaches.jpg”,”width”:3344,”height”:1872}]},{“type”:”p”,”mediaId”:248321249,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg”,”width”:1024,”height”:683},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0e/cd/14/e1/all-our-cabin-are-beachfront.jpg”,”width”:2000,”height”:1335}]}]}}}},”3107646700″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:1318,”mediaList”:[{“type”:”p”,”mediaId”:345073826,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/14/91/68/a2/relax-by-the-pool.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/14/91/68/a2/relax-by-the-pool.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/14/91/68/a2/relax-by-the-pool.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/14/91/68/a2/relax-by-the-pool.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/14/91/68/a2/relax-by-the-pool.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/14/91/68/a2/relax-by-the-pool.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/14/91/68/a2/relax-by-the-pool.jpg”,”width”:1024,”height”:683},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/14/91/68/a2/relax-by-the-pool.jpg”,”width”:1280,”height”:853}]},{“type”:”p”,”mediaId”:193426887,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0b/87/75/c7/lobby.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0b/87/75/c7/lobby.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0b/87/75/c7/lobby.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0b/87/75/c7/lobby.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0b/87/75/c7/lobby.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/0b/87/75/c7/lobby.jpg”,”width”:1024,”height”:682},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0b/87/75/c7/lobby.jpg”,”width”:2000,”height”:1333}]}]}}}},”3225159700″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:615,”mediaList”:[{“type”:”p”,”mediaId”:482911911,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/1c/c8/a6/a7/drone.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/1c/c8/a6/a7/drone.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/1c/c8/a6/a7/drone.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/1c/c8/a6/a7/drone.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/1c/c8/a6/a7/drone.jpg”,”width”:250,”height”:141},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/1c/c8/a6/a7/drone.jpg”,”width”:550,”height”:309},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/1c/c8/a6/a7/drone.jpg”,”width”:1023,”height”:575}]},{“type”:”p”,”mediaId”:298149635,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/11/c5/67/03/beach-cabana-at-pink.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/11/c5/67/03/beach-cabana-at-pink.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/11/c5/67/03/beach-cabana-at-pink.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/11/c5/67/03/beach-cabana-at-pink.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/11/c5/67/03/beach-cabana-at-pink.jpg”,”width”:250,”height”:161},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/11/c5/67/03/beach-cabana-at-pink.jpg”,”width”:550,”height”:354},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/11/c5/67/03/beach-cabana-at-pink.jpg”,”width”:1024,”height”:659},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/11/c5/67/03/beach-cabana-at-pink.jpg”,”width”:2000,”height”:1288}]}]}}}},”3691702997″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-in”,”tagInformation”:{“tagId”:21928,”localizedName”:”Contactless check-in”}},{“name”:”Contactless check-out”,”tagInformation”:{“tagId”:21929,”localizedName”:”Contactless check-out”}},{“name”:”Doctors available 24/7″,”tagInformation”:{“tagId”:21930,”localizedName”:”Doctors available 24/7″}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147429-d1758836-Reviews-Paradise_Bay_Bahamas-Great_Exuma_Out_Islands_Bahamas.html”}}]}},”3804680941″:{“data”:{“mediaAlbum”:{“status”:200,”statusMessage”:”OK”,”album”:{“albumId”:-125,”subAlbumId”:null,”translationKey”:”photos_module_carousel_view_all_photos_plain”,”dataStrategy”:”a”,”offset”:0,”totalMediaCount”:131,”mediaList”:[{“type”:”p”,”mediaId”:405283005,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/18/28/20/bd/the-island-house.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/18/28/20/bd/the-island-house.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/18/28/20/bd/the-island-house.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-i/18/28/20/bd/the-island-house.jpg”,”width”:180,”height”:200},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/18/28/20/bd/the-island-house.jpg”,”width”:242,”height”:205},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/18/28/20/bd/the-island-house.jpg”,”width”:531,”height”:450},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/18/28/20/bd/the-island-house.jpg”,”width”:1024,”height”:868},{“url”:”https://media-cdn.tripadvisor.com/media/photo-m/1280/18/28/20/bd/the-island-house.jpg”,”width”:1280,”height”:1085}]},{“type”:”p”,”mediaId”:190000616,”photoSizes”:[{“url”:”https://dynamic-media-cdn.tripadvisor.com/media/photo-o/0b/53/2d/e8/tih-lap-pool-and-lounge.jpg?w=100&h=100&s=1″,”width”:0,”height”:0},{“url”:”https://media-cdn.tripadvisor.com/media/photo-t/0b/53/2d/e8/tih-lap-pool-and-lounge.jpg”,”width”:50,”height”:50},{“url”:”https://media-cdn.tripadvisor.com/media/photo-l/0b/53/2d/e8/tih-lap-pool-and-lounge.jpg”,”width”:150,”height”:150},{“url”:”https://media-cdn.tripadvisor.com/media/photo-f/0b/53/2d/e8/tih-lap-pool-and-lounge.jpg”,”width”:250,”height”:167},{“url”:”https://media-cdn.tripadvisor.com/media/photo-s/0b/53/2d/e8/tih-lap-pool-and-lounge.jpg”,”width”:550,”height”:367},{“url”:”https://media-cdn.tripadvisor.com/media/photo-w/0b/53/2d/e8/tih-lap-pool-and-lounge.jpg”,”width”:1024,”height”:683},{“url”:”https://media-cdn.tripadvisor.com/media/photo-o/0b/53/2d/e8/tih-lap-pool-and-lounge.jpg”,”width”:3500,”height”:2333}]}]}}}},”3857475235″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d15363567-Reviews-HumesHouse_Hostel_HillCrest-Nassau_New_Providence_Island_Bahamas.html”}}]}},”4096189549″:{“data”:{“footerLinks”:{“aboutUsLinks”:[{“preLocalizedAnchorText”:”About Us”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”about_us”,”url”:”https://tripadvisor.mediaroom.com/us-about-us”},{“preLocalizedAnchorText”:”Press”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”press”,”url”:”https://tripadvisor.mediaroom.com/us-contact-us”},{“preLocalizedAnchorText”:”Resources and Policies”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”resources_and_policies”,”url”:”https://tripadvisor.mediaroom.com/us-resources”},{“preLocalizedAnchorText”:”Investor Relations”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”investor_relations”,”url”:”http://ir.tripadvisor.com”},{“preLocalizedAnchorText”:”Content Integrity”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”content_integrity”,”url”:”https://tripadvisor.mediaroom.com/US-content-integrity-policy”}],”businessLinks”:[{“preLocalizedAnchorText”:”Owners”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”claim_listing_click”,”url”:”/Owners?m=58397″},{“preLocalizedAnchorText”:”Business Advantage”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”business_advantage_click”,”url”:”/business/businessadvantage?args=-m57398″},{“preLocalizedAnchorText”:”Sponsored Placements”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”sponsored_placements_click”,”url”:”/business/sponsored-placements?args=-m58399″},{“preLocalizedAnchorText”:”Advertise with Us”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”advertise”,”url”:”/MediaKit”},{“preLocalizedAnchorText”:”Become an Affiliate”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”affiliate”,”url”:”/affiliates”}],”restaurantLinks”:[{“preLocalizedAnchorText”:”Manage Your Business”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”rs_footer_manage_your_business_click”,”url”:”/Owners”},{“preLocalizedAnchorText”:”Advertise Your Restaurant”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”rs_footer_click_advertise_your_restaurant”,”url”:”/Restaurant_Ads”},{“preLocalizedAnchorText”:”Tripadvisor Premium”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”rs_footer_click_ta_premium”,”url”:”/Premium”},{“preLocalizedAnchorText”:”More Resources”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”rs_footer_click_more_resources”,”url”:”/ForRestaurants”}],”exploreLinks”:[{“preLocalizedAnchorText”:”About Us”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”about_us”,”url”:”https://tripadvisor.mediaroom.com/us-about-us”,”isObfuscated”:null},{“preLocalizedAnchorText”:”Help Center”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”help_center”,”url”:”https://www.tripadvisorsupport.com/hc/en-us”,”isObfuscated”:null},{“preLocalizedAnchorText”:”Tripadvisor Plus”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”ta_plus”,”url”:”/Plus”,”isObfuscated”:null}],”legalLinks”:[{“preLocalizedAnchorText”:”Terms of Use”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”terms_of_use”,”url”:”https://tripadvisor.mediaroom.com/us-terms-of-use”,”isObfuscated”:null},{“preLocalizedAnchorText”:”Privacy and Cookies Statement”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”privacy_policy”,”url”:”https://tripadvisor.mediaroom.com/us-privacy-policy”,”isObfuscated”:null},{“preLocalizedAnchorText”:”Cookie consent”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”cookie_consent”,”url”:”modal://cookie-consent”,”isObfuscated”:null},{“preLocalizedAnchorText”:”Site Map”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”site_map”,”url”:”/SiteIndex-g147237-Caribbean.html”,”isObfuscated”:null},{“preLocalizedAnchorText”:”How the site works”,”localizedAnchorText”:null,”newWindow”:null,”trackAction”:”hamon_law”,”url”:”/pages/serviceEN.html”,”isObfuscated”:null}],”appLinks”:[{“preLocalizedAnchorText”:”iPhone App”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”ios_app”,”url”:”/ShowUrl-a_partnerKey.1-a_url.http%3A__2F____2F__itunes__2E__apple__2E__com__2F__us__2F__app__2F__tripadvisor__2F__id284876795__3F__mt%3D8__26__pt%3D14124__26__ct%3DBrand__5F__AppPage__5F__0__5F__63742-a_urlKey.f72bae0add77e606d.html”},{“preLocalizedAnchorText”:”Android App”,”localizedAnchorText”:null,”newWindow”:true,”trackAction”:”android_app”,”url”:”/ShowUrl-a_partnerKey.1-a_url.https%3A__2F____2F__play__2E__google__2E__com__2F__store__2F__apps__2F__details__3F__id%3Dcom__2E__tripadvisor__2E__tripadvisor__26__hl%3Den__26__referrer%3Dutm__5F__download__5F__tracking%253DBrand__5F__AppPage__5F__0__5F__63742-a_urlKey.70bb05c81415ae292.html”}],”socialLinks”:[{“preLocalizedAnchorText”:”Facebook”,”localizedAnchorText”:null,”iconUrl”:”/img2/social/icons/facebook_20x20.png”,”trackAction”:”facebook”,”url”:”/ShowUrl-a_partnerKey.1-a_url.http%3A__2F____2F__www__2E__facebook__2E__com__2F__TripAdvisor-a_urlKey.15090f72418302936.html”},{“preLocalizedAnchorText”:”Twitter”,”localizedAnchorText”:null,”iconUrl”:”/img2/social/icons/twitter_20x20.png”,”trackAction”:”twitter”,”url”:”/ShowUrl-a_partnerKey.1-a_url.https%3A__2F____2F__twitter__2E__com__2F__TripAdvisor-a_urlKey.44b19b8408425e091.html”},{“preLocalizedAnchorText”:”Pinterest”,”localizedAnchorText”:null,”iconUrl”:”/img2/social/icons/pinterest_20x20.png”,”trackAction”:”pinterest”,”url”:”/ShowUrl-a_partnerKey.1-a_url.https%3A__2F____2F__www__2E__pinterest__2E__com__2F__tripadvisorus__2F__-a_urlKey.dc384df7d23fa0257.html”},{“preLocalizedAnchorText”:”Instagram”,”localizedAnchorText”:null,”iconUrl”:”/img2/social/icons/instagram_20x20.png”,”trackAction”:”instagram”,”url”:”/ShowUrl-a_partnerKey.1-a_url.https%3A__2F____2F__instagram__2E__com__2F__tripadvisor__2F__-a_urlKey.95e728d4c18d14f29.html”}],”partnerLinks”:[{“preLocalizedLink”:”Discover your dream destination with u003ca target=”_blank” class=”inlineLink” href=”https://www.jetsetter.com/”>Jetsetteru003c/a>”,”localizedLink”:null,”trackAction”:”sites_jetsetter”},{“preLocalizedLink”:”Book the best restaurants with u003ca target=”_blank” class=”inlineLink” href=”https://www.thefork.com/”>TheForku003c/a>”,”localizedLink”:null,”trackAction”:”sites_thefork”},{“preLocalizedLink”:”Book tours and attraction tickets on u003ca target=”_blank” class=”inlineLink” href=”https://www.viator.com/”>Viatoru003c/a>”,”localizedLink”:null,”trackAction”:”sites_viator”},{“preLocalizedLink”:”Read cruise reviews on u003ca target=”_blank” class=”inlineLink” href=”https://www.cruisecritic.com/”>Cruise Criticu003c/a>”,”localizedLink”:null,”trackAction”:”sites_cruisecritic”},{“preLocalizedLink”:”Get airline seating charts on u003ca target=”_blank” class=”inlineLink” href=”https://www.seatguru.com/”>Seat Guruu003c/a>”,”localizedLink”:null,”trackAction”:”sites_seatguru”},{“preLocalizedLink”:”Find vacation rentals on u003ca target=”_blank” class=”inlineLink” href=”https://www.flipkey.com/”>FlipKeyu003c/a>”,”localizedLink”:null,”trackAction”:”sites_flipkey”},{“preLocalizedLink”:”Search for holiday rentals on u003ca target=”_blank” class=”inlineLink” href=”https://www.holidaylettings.co.uk/”>Holiday Lettingsu003c/a>”,”localizedLink”:null,”trackAction”:”sites_holidaylettings”},{“preLocalizedLink”:”Find a vacation home on u003ca target=”_blank” class=”inlineLink” href=”https://www.vacationhomerentals.com/”>Vacation Home Rentalsu003c/a>”,”localizedLink”:null,”trackAction”:”sites_vr”},{“preLocalizedLink”:”Plan and book your next trip with u003ca target=”_blank” class=”inlineLink” href=”https://www.helloreco.com/”>Reco Trip Designersu003c/a>”,”localizedLink”:null,”trackAction”:”sites_reco”}]}}},”4292730609″:{“data”:{“safetyInfo”:[{“safetyTags”:[{“name”:”All linens sanitized in high-temperature wash”,”tagInformation”:{“tagId”:21919,”localizedName”:”All linens sanitized in high-temperature wash”}},{“name”:”Face masks required for guests in public areas”,”tagInformation”:{“tagId”:21920,”localizedName”:”Face masks required for guests in public areas”}},{“name”:”Face masks required for staff in public areas”,”tagInformation”:{“tagId”:21921,”localizedName”:”Face masks required for staff in public areas”}},{“name”:”Floors marked for social distancing”,”tagInformation”:{“tagId”:21922,”localizedName”:”Floors marked for social distancing”}},{“name”:”Hand sanitizer available to guests & staff”,”tagInformation”:{“tagId”:21923,”localizedName”:”Hand sanitizer available to guests & staff”}},{“name”:”Paid stay-at-home policy for staff with symptoms”,”tagInformation”:{“tagId”:21924,”localizedName”:”Paid stay-at-home policy for staff with symptoms”}},{“name”:”Regularly sanitized high-traffic areas”,”tagInformation”:{“tagId”:21925,”localizedName”:”Regularly sanitized high-traffic areas “}},{“name”:”Staff required to regularly wash hands “,”tagInformation”:{“tagId”:21926,”localizedName”:”Staff required to regularly wash hands “}},{“name”:”Regular temperature checks for staff”,”tagInformation”:{“tagId”:21927,”localizedName”:”Regular temperature checks for staff”}},{“name”:”Contactless check-out”,”tagInformation”:{“tagId”:21929,”localizedName”:”Contactless check-out”}},{“name”:”Doctors available 24/7″,”tagInformation”:{“tagId”:21930,”localizedName”:”Doctors available 24/7″}},{“name”:”Individually wrapped toiletries”,”tagInformation”:{“tagId”:21931,”localizedName”:”Individually wrapped toiletries”}},{“name”:”24-hour minimum vacancy between guests”,”tagInformation”:{“tagId”:21918,”localizedName”:”24-hour minimum vacancy between guests”}}]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147416-d148122-Reviews-British_Colonial_Hilton_Nassau-Nassau_New_Providence_Island_Bahamas.html”}}]}},”4293960288″:{“data”:{“safetyInfo”:[{“safetyTags”:[]}],”locations”:[{“placeType”:”ACCOMMODATION”,”route”:{“url”:”/Hotel_Review-g147425-d149298-Reviews-Small_Hope_Bay_Lodge-Andros_Out_Islands_Bahamas.html”}}]}},”156401003945857″:{“data”:{“currentLocale”:{“pointOfSaleName”:”United States”,”ietfLocale”:”en”,”languageName”:”English”,”country”:{“locationId”:191,”name”:”United States”}}}}},”redux”:{“i18n”:{“locale”:”en_US”,”language”:”en”,”ietfLocale”:”en-US”,”isRtl”:false,”distanceUnit”:”MILES”,”firstDayOfWeek”:0},”api”:{“requests”:{“_data_1_0_recenthotels_locationsInGeo_geo_147414”:{“loading”:false,”result”:[“/data/1.0/recenthotels/locationsInGeo?geo=147414″],”url”:”/data/1.0/recenthotels/locationsInGeo?geo=147414″},”_data_1_0_brand_header_servlet_Hotels_viewportCategory_DESKTOP_geoId_147414_pageName_Hotels_isTaReferrer_false”:{“loading”:false,”result”:[“/data/1.0/brand/header?servlet=Hotels&viewportCategory=DESKTOP&geoId=147414&pageName=Hotels&isTaReferrer=false”],”url”:”/data/1.0/brand/header?servlet=Hotels&viewportCategory=DESKTOP&geoId=147414&pageName=Hotels&isTaReferrer=false”},”_data_1_0_hotelOracle_147414_heatMap”:{“loading”:false,”result”:[“/data/1.0/hotelOracle/147414/heatMap”],”url”:”/data/1.0/hotelOracle/147414/heatMap”}},”responses”:{“/data/1.0/recenthotels/locationsInGeo?geo=147414”:{“data”:{“hotels”:[],”localized_title”:””,”needsPoll”:false},”error”:null},”/data/1.0/brand/header?servlet=Hotels&viewportCategory=DESKTOP&geoId=147414&pageName=Hotels&isTaReferrer=false”:{“data”:{“adjustForSmartBanner”:false,”showGeopill”:true,”numLines”:2,”isPersistentHeader”:false,”usePersistentIcons”:true,”hideLogo”:false,”liteHeader”:false},”error”:null},”/data/1.0/hotelOracle/147414/heatMap”:{“data”:{“hotelId”:null,”items”:[{“date”:”2021-08-31″,”priceUSD”:23366},{“date”:”2021-08-30″,”priceUSD”:22971},{“date”:”2021-08-29″,”priceUSD”:23066},{“date”:”2021-08-28″,”priceUSD”:22024},{“date”:”2021-08-27″,”priceUSD”:22140},{“date”:”2021-08-26″,”priceUSD”:25960},{“date”:”2021-08-25″,”priceUSD”:22376},{“date”:”2021-08-24″,”priceUSD”:22984},{“date”:”2021-08-23″,”priceUSD”:24360},{“date”:”2021-08-22″,”priceUSD”:22826},{“date”:”2021-08-21″,”priceUSD”:23698},{“date”:”2021-08-20″,”priceUSD”:21711},{“date”:”2021-08-19″,”priceUSD”:21748},{“date”:”2021-08-18″,”priceUSD”:22555},{“date”:”2021-08-17″,”priceUSD”:22559},{“date”:”2021-08-16″,”priceUSD”:22833},{“date”:”2021-08-15″,”priceUSD”:22171},{“date”:”2021-08-14″,”priceUSD”:22238},{“date”:”2021-08-13″,”priceUSD”:22536},{“date”:”2021-08-12″,”priceUSD”:21224},{“date”:”2021-08-11″,”priceUSD”:22964},{“date”:”2021-08-10″,”priceUSD”:23100},{“date”:”2021-08-09″,”priceUSD”:23361},{“date”:”2021-08-08″,”priceUSD”:23044},{“date”:”2021-08-07″,”priceUSD”:22530},{“date”:”2021-08-06″,”priceUSD”:22722},{“date”:”2021-08-05″,”priceUSD”:23949},{“date”:”2021-08-04″,”priceUSD”:23849},{“date”:”2021-08-03″,”priceUSD”:24467},{“date”:”2021-08-02″,”priceUSD”:23083},{“date”:”2021-08-01″,”priceUSD”:23782},{“date”:”2021-09-30″,”priceUSD”:18922},{“date”:”2021-09-29″,”priceUSD”:21784},{“date”:”2021-09-28″,”priceUSD”:20174},{“date”:”2021-09-27″,”priceUSD”:20196},{“date”:”2021-09-26″,”priceUSD”:20294},{“date”:”2021-09-25″,”priceUSD”:19873},{“date”:”2021-09-24″,”priceUSD”:20852},{“date”:”2021-09-23″,”priceUSD”:18974},{“date”:”2021-09-22″,”priceUSD”:19578},{“date”:”2021-09-21″,”priceUSD”:20247},{“date”:”2021-09-20″,”priceUSD”:22003},{“date”:”2021-09-19″,”priceUSD”:20944},{“date”:”2021-09-18″,”priceUSD”:22275},{“date”:”2021-09-17″,”priceUSD”:20971},{“date”:”2021-09-16″,”priceUSD”:21231},{“date”:”2021-09-15″,”priceUSD”:21436},{“date”:”2021-09-14″,”priceUSD”:21048},{“date”:”2021-09-13″,”priceUSD”:21311},{“date”:”2021-09-12″,”priceUSD”:20791},{“date”:”2021-09-11″,”priceUSD”:19039},{“date”:”2021-09-10″,”priceUSD”:20256},{“date”:”2021-09-09″,”priceUSD”:19528},{“date”:”2021-09-08″,”priceUSD”:21625},{“date”:”2021-09-07″,”priceUSD”:21109},{“date”:”2021-09-06″,”priceUSD”:25238},{“date”:”2021-09-05″,”priceUSD”:21586},{“date”:”2021-09-04″,”priceUSD”:20835},{“date”:”2021-09-03″,”priceUSD”:20830},{“date”:”2021-09-02″,”priceUSD”:22135},{“date”:”2021-09-01″,”priceUSD”:21701},{“date”:”2021-10-31″,”priceUSD”:21067},{“date”:”2021-10-30″,”priceUSD”:18550},{“date”:”2021-10-29″,”priceUSD”:21886},{“date”:”2021-10-28″,”priceUSD”:23976},{“date”:”2021-10-27″,”priceUSD”:21819},{“date”:”2021-10-26″,”priceUSD”:23753},{“date”:”2021-10-25″,”priceUSD”:22945},{“date”:”2021-10-24″,”priceUSD”:19828},{“date”:”2021-10-23″,”priceUSD”:23096},{“date”:”2021-10-22″,”priceUSD”:21245},{“date”:”2021-10-21″,”priceUSD”:21667},{“date”:”2021-10-20″,”priceUSD”:17331},{“date”:”2021-10-19″,”priceUSD”:20123},{“date”:”2021-10-18″,”priceUSD”:20758},{“date”:”2021-10-17″,”priceUSD”:20927},{“date”:”2021-10-16″,”priceUSD”:18909},{“date”:”2021-10-15″,”priceUSD”:21168},{“date”:”2021-10-14″,”priceUSD”:22959},{“date”:”2021-10-13″,”priceUSD”:20891},{“date”:”2021-10-12″,”priceUSD”:19714},{“date”:”2021-10-11″,”priceUSD”:21639},{“date”:”2021-10-10″,”priceUSD”:21696},{“date”:”2021-10-09″,”priceUSD”:22066},{“date”:”2021-10-08″,”priceUSD”:20895},{“date”:”2021-10-07″,”priceUSD”:22575},{“date”:”2021-10-06″,”priceUSD”:20247},{“date”:”2021-10-05″,”priceUSD”:21108},{“date”:”2021-10-04″,”priceUSD”:21676},{“date”:”2021-10-03″,”priceUSD”:21075},{“date”:”2021-10-02″,”priceUSD”:20623},{“date”:”2021-10-01″,”priceUSD”:24325},{“date”:”2021-11-07″,”priceUSD”:23040},{“date”:”2021-11-06″,”priceUSD”:21516},{“date”:”2021-11-05″,”priceUSD”:22425},{“date”:”2021-11-04″,”priceUSD”:21201},{“date”:”2021-11-03″,”priceUSD”:21541},{“date”:”2021-11-02″,”priceUSD”:23008},{“date”:”2021-11-01″,”priceUSD”:21954},{“date”:”2021-05-31″,”priceUSD”:23886},{“date”:”2021-05-30″,”priceUSD”:25090},{“date”:”2021-05-29″,”priceUSD”:22289},{“date”:”2021-05-28″,”priceUSD”:23002},{“date”:”2021-05-27″,”priceUSD”:24894},{“date”:”2021-05-26″,”priceUSD”:27394},{“date”:”2021-05-25″,”priceUSD”:25954},{“date”:”2021-05-24″,”priceUSD”:25121},{“date”:”2021-05-23″,”priceUSD”:25909},{“date”:”2021-05-22″,”priceUSD”:25518},{“date”:”2021-05-21″,”priceUSD”:24910},{“date”:”2021-05-20″,”priceUSD”:28502},{“date”:”2021-05-19″,”priceUSD”:23492},{“date”:”2021-05-18″,”priceUSD”:22593},{“date”:”2021-05-17″,”priceUSD”:25234},{“date”:”2021-05-16″,”priceUSD”:24451},{“date”:”2021-05-15″,”priceUSD”:25022},{“date”:”2021-05-14″,”priceUSD”:22951},{“date”:”2021-05-13″,”priceUSD”:26957},{“date”:”2021-05-12″,”priceUSD”:26565},{“date”:”2021-05-11″,”priceUSD”:24628},{“date”:”2021-05-10″,”priceUSD”:26098},{“date”:”2021-05-09″,”priceUSD”:25234},{“date”:”2021-05-08″,”priceUSD”:26522},{“date”:”2021-05-07″,”priceUSD”:23129},{“date”:”2021-06-30″,”priceUSD”:24236},{“date”:”2021-06-29″,”priceUSD”:24844},{“date”:”2021-06-28″,”priceUSD”:24069},{“date”:”2021-06-27″,”priceUSD”:23309},{“date”:”2021-06-26″,”priceUSD”:22594},{“date”:”2021-06-25″,”priceUSD”:21784},{“date”:”2021-06-24″,”priceUSD”:22923},{“date”:”2021-06-23″,”priceUSD”:24365},{“date”:”2021-06-22″,”priceUSD”:23378},{“date”:”2021-06-21″,”priceUSD”:24187},{“date”:”2021-06-20″,”priceUSD”:24718},{“date”:”2021-06-19″,”priceUSD”:22010},{“date”:”2021-06-18″,”priceUSD”:22423},{“date”:”2021-06-17″,”priceUSD”:22326},{“date”:”2021-06-16″,”priceUSD”:26436},{“date”:”2021-06-15″,”priceUSD”:24742},{“date”:”2021-06-14″,”priceUSD”:23973},{“date”:”2021-06-13″,”priceUSD”:24978},{“date”:”2021-06-12″,”priceUSD”:23112},{“date”:”2021-06-11″,”priceUSD”:22100},{“date”:”2021-06-10″,”priceUSD”:24334},{“date”:”2021-06-09″,”priceUSD”:24765},{“date”:”2021-06-08″,”priceUSD”:23842},{“date”:”2021-06-07″,”priceUSD”:23393},{“date”:”2021-06-06″,”priceUSD”:25445},{“date”:”2021-06-05″,”priceUSD”:22995},{“date”:”2021-06-04″,”priceUSD”:23374},{“date”:”2021-06-03″,”priceUSD”:24507},{“date”:”2021-06-02″,”priceUSD”:20915},{“date”:”2021-06-01″,”priceUSD”:23320},{“date”:”2021-07-31″,”priceUSD”:22055},{“date”:”2021-07-30″,”priceUSD”:23696},{“date”:”2021-07-29″,”priceUSD”:22743},{“date”:”2021-07-28″,”priceUSD”:24014},{“date”:”2021-07-27″,”priceUSD”:21253},{“date”:”2021-07-26″,”priceUSD”:23127},{“date”:”2021-07-25″,”priceUSD”:22474},{“date”:”2021-07-24″,”priceUSD”:22034},{“date”:”2021-07-23″,”priceUSD”:23791},{“date”:”2021-07-22″,”priceUSD”:22408},{“date”:”2021-07-21″,”priceUSD”:22842},{“date”:”2021-07-20″,”priceUSD”:21216},{“date”:”2021-07-19″,”priceUSD”:23618},{“date”:”2021-07-18″,”priceUSD”:22311},{“date”:”2021-07-17″,”priceUSD”:22832},{“date”:”2021-07-16″,”priceUSD”:22568},{“date”:”2021-07-15″,”priceUSD”:23406},{“date”:”2021-07-14″,”priceUSD”:21867},{“date”:”2021-07-13″,”priceUSD”:24802},{“date”:”2021-07-12″,”priceUSD”:22768},{“date”:”2021-07-11″,”priceUSD”:23307},{“date”:”2021-07-10″,”priceUSD”:23675},{“date”:”2021-07-09″,”priceUSD”:22056},{“date”:”2021-07-08″,”priceUSD”:23838},{“date”:”2021-07-07″,”priceUSD”:23733},{“date”:”2021-07-06″,”priceUSD”:22925},{“date”:”2021-07-05″,”priceUSD”:23909},{“date”:”2021-07-04″,”priceUSD”:26049},{“date”:”2021-07-03″,”priceUSD”:21948},{“date”:”2021-07-02″,”priceUSD”:23130},{“date”:”2021-07-01″,”priceUSD”:22265}],”percentiles”:[{“percentileType”:”CALENDAR_MONTH”,”startDate”:”2021-05-01″,”endDate”:”2021-06-01″,”pricesUSD”:{“rangeHigh”:28502,”min”:22289,”low”:24910,”rangeLow”:22289},”pricesDisplay”:{“rangeHigh”:”u20AC237″,”min”:”u20AC184″,”low”:”u20AC207″,”rangeLow”:”u20AC184″}},{“percentileType”:”CALENDAR_MONTH”,”startDate”:”2021-06-01″,”endDate”:”2021-07-01″,”pricesUSD”:{“rangeHigh”:26436,”min”:20915,”low”:23112,”rangeLow”:20915},”pricesDisplay”:{“rangeHigh”:”u20AC219″,”min”:”u20AC174″,”low”:”u20AC192″,”rangeLow”:”u20AC174″}},{“percentileType”:”CALENDAR_MONTH”,”startDate”:”2021-07-01″,”endDate”:”2021-08-01″,”pricesUSD”:{“rangeHigh”:26049,”min”:21216,”low”:22474,”rangeLow”:21216},”pricesDisplay”:{“rangeHigh”:”u20AC216″,”min”:”u20AC176″,”low”:”u20AC186″,”rangeLow”:”u20AC176″}},{“percentileType”:”CALENDAR_MONTH”,”startDate”:”2021-08-01″,”endDate”:”2021-09-01″,”pricesUSD”:{“rangeHigh”:25960,”min”:21224,”low”:22555,”rangeLow”:21224},”pricesDisplay”:{“rangeHigh”:”u20AC215″,”min”:”u20AC176″,”low”:”u20AC187″,”rangeLow”:”u20AC176″}},{“percentileType”:”CALENDAR_MONTH”,”startDate”:”2021-09-01″,”endDate”:”2021-10-01″,”pricesUSD”:{“rangeHigh”:25238,”min”:18922,”low”:20256,”rangeLow”:18922},”pricesDisplay”:{“rangeHigh”:”u20AC209″,”min”:”u20AC157″,”low”:”u20AC168″,”rangeLow”:”u20AC157″}},{“percentileType”:”CALENDAR_MONTH”,”startDate”:”2021-10-01″,”endDate”:”2021-11-01″,”pricesUSD”:{“rangeHigh”:24325,”min”:17331,”low”:20895,”rangeLow”:17331},”pricesDisplay”:{“rangeHigh”:”u20AC202″,”min”:”u20AC144″,”low”:”u20AC173″,”rangeLow”:”u20AC144″}},{“percentileType”:”CALENDAR_MONTH”,”startDate”:”2021-11-01″,”endDate”:”2021-12-01″,”pricesUSD”:{“rangeHigh”:24354,”min”:19590,”low”:21821,”rangeLow”:19590},”pricesDisplay”:{“rangeHigh”:”u20AC202″,”min”:”u20AC162″,”low”:”u20AC181″,”rangeLow”:”u20AC162″}}],”popularDates”:null},”error”:null}}},”page”:{“name”:”HOTELS”,”pageOffset”:0,”requestNumber”:1,”sort”:”recommended”,”filters”:”-cat1,2,3-“,”geoId”:147414},”travelerInfo”:{“preferences”:{“currency”:”EUR”},”hotels”:{“stayDates”:”2021_5_16_2021_5_17″,”guests”:”1_2″,”defaultDates”:true,”travelerType”:null},”vr”:{“start”:”2021/05/16″,”end”:”2021/05/17″,”adults”:2,”children”:0},”attractions”:{“singleDate”:””,”fromDate”:””,”toDate”:””,”attractionPaxAdults”:0,”attractionPaxChildren”:0},”restaurants”:{“date”:”2021-05-07″,”time”:”8:00 PM”,”partySize”:”2″,”isDefault”:true,”displayDate”:”Fri, 5/7″},”home”:{“fromDate”:”2021-05-16″,”toDate”:”2021-05-17″,”defaultDates”:true,”fuzzyDates”:false},”flights”:{“oneWayDate”:”2021-05-21″,”departureDate”:”2021-05-21″,”returnDate”:”2021-05-28″,”originAirportCode”:null,”destinationAirportCode”:null}},”auth”:{“isMember”:false,”csrfToken”:”TNI1625!AKs+ODPpdY6nFz+hl92Tmw4vFEBusF6QLpQQLCBppJPFwPCtEd7spo9aZ/oLVMW2wBzqyvYQhIge2f30MlDGOd0c300FJDGm0wvrqOz7dDj1kYr6sdX4U9sTWV2FX2oEQzWM9Ly+CNYFOZWe79DtGi3QdIzjdeCuGFZbcErE1eGl”,”altSessId”:”356CB93597FC9F69E962BE68390EEA6C”,”loggedInUserId”:null,”captcha”:null,”fbApi”:{“apiVersion”:”v6.0″,”facebookConnectApiKey”:”162729813767876″,”facebookConnectAppId”:”162729813767876″,”facebookConnectAppName”:”tripadvisor”,”taServerTime”:1620407544,”skipFacebookSessionCheck”:false,”sdkUrl”:”//connect.facebook.net/en_US/sdk.js”,”facebookPermissions”:”email,user_hometown,user_friends,user_likes,user_location,user_status,user_photos”}},”route”:{“geo”:”147414″,”page”:”Hotels”},”lithiumRoute”:[{“page”:”Hotels”,”params”:{“geoId”:147414},”path”:”/Hotels-g147414-Bahamas-Hotels.html”,”fragment”:””},{“uid”:”YJV0@AokK4sAAJ7dS6QAAAAN”}],”overlays”:{“global”:null,”fab”:null,”locals”:{},”toasts”:[]},”meta”:{“initialServletName”:”Hotels”,”device”:{“viewportCategory”:”DESKTOP”,”userAgentCategory”:”DESKTOP”,”os”:{“family”:”UNKNOWN”,”majorVersion”:-1},”browser”:{“family”:”UNKNOWN”,”majorVersion”:55},”securityToken”:”696f7a3c4d92e01a8d4872b0194f79da38f21180808cd42c4c3a15fc62ee67b4″},”readonlyMode”:false,”initialRelativeUrl”:”/Hotels-g147414-Bahamas-Hotels.html”,”initialAbsoluteUrl”:”https://www.tripadvisor.com/Hotels-g147414-Bahamas-Hotels.html”,”baseUrl”:”https://www.tripadvisor.com”,”imageCdnUrl”:”https://static.tacdn.com”,”cookieDomain”:”.tripadvisor.com”,”taUnique”:”web122a.185.206.161.58.17947D0EBA9″,”isTaReferrer”:false,”referrerUrl”:”http://www.bing.com/”,”forceFullSite”:false,”environment”:”Live”,”isNativeWebview”:false,”commerceCountryId”:187275,”impressionData”:{“pageLoadUid”:”YJV0@AokK4sAAJ7dS6QAAAAN”},”lineItemsByLoc”:{}},”tracking”:{“mcid”:10570,”uid”:”YJV0@AokK4sAAJ7dS6QAAAAN”,”analytics”:{“cv”:[[“_deleteCustomVar”,1],[“_deleteCustomVar”,47],[“_setCustomVar”,12,”Country”,”Caribbean-147237″,3],[“_setCustomVar”,25,”Continent”,”North America-19″,3],[“_setCustomVar”,20,”PP”,”–“,3],[“_deleteCustomVar”,11],[“_deleteCustomVar”,13],[“_deleteCustomVar”,19],[“_deleteCustomVar”,14],[“_deleteCustomVar”,8],[“_deleteCustomVar”,10]],”url”:”/Hotels”},”searchSessionId”:”6BA71A1164D24CE2964C829AA76AA93B1620407544907ssid”,”sessionId”:”6BA71A1164D24CE2964C829AA76AA93B”,”uniqueId”:”web122a.185.206.161.58.17947D0EBA9″,”serverName”:”www.tripadvisor.com”,”hostName”:”web122a.a.tripadvisor.com”,”vcsRevision”:1489824,”vcsBranch”:”releases/PRODUCTION_1489579_20210503_0401″,”drsInfo”:”ABC.66*AFIL.34*ATTPromo.21*AUC.6*BBML.28*BMP.90*BRDTTD.92*Brand.47*CAKE.66*CAR.25*COM.24*CRS.13*Community.80*Content.7*CoreX.49*EATPIZZA.99*EID.8*EXP.10*Engage.77*FDP.90*FDS.17*FDU.26*FLTMERCH.76*FLTREV.59*Filters.57*Flights.61*HRATF.82*HSX.15*HSXB.12*IBEX.10*ING.75*INT1.2*INT2.49*ITR.49*L10N.62*ML.52*ML6.52*MM.38*MOBILEAPP.-1*MOF.46*MPS.26*MTA.38*Me2.82*Mem.10*Mobile.42*MobileCore.69*Notifications.73*Other.60*P13N.10*PIE.7*PLS.38*POS.22*PRT.10*RDS1.15*RDS2.28*RDS3.34*RDS4.54*RDS5.86*RET.84*REV.43*REVB.47*REVH.29*REVM.26*REVSD.86*REVSP.20*REVXS.9*RNA.0*RSE1.31*RSE2.73*Rooms.64*S3PO.96*SD40.19*SE2O.38*SEM.35*SEO.29*SORT1.89*Sales.8*Search.64*SiteX.69*Surveys.16*T4B.22*TGT.8*TRP.25*TTD.66*TX.10*Timeline.2*VP.22*VR.95*YM.10*YMB.41″,”uvmScore”:””,”retargetingUrl”:”www.tamgrt.com/RT”,”domainName”:”www.tripadvisor.com”}},”assets”:[“/assets/XjkW5l.25ac167e.es5.js”,”/assets/peh_3a.bc501d37.es5.js”,”/assets/lMO0v3.e2d16dfd.es5.css”,”/assets/RH7wJe.97c20467.es5.css”,”/assets/jb_4W2.c9d529f8.es5.css”,”/assets/Q7TAd7.6125b137.es5.css”,”/assets/Ov85iR.230ee430.es5.css”,”/assets/VANuRt.8997c24d.es5.css”,”/assets/ANe_04.afaa0261.es5.css”,”/assets/m5ZZFI.1a84d8e4.es5.css”,”/assets/pyY-iJ.c4adc0c0.es5.css”,”/assets/_qQcW3.835070a5.es5.css”,”/assets/eDFcUX.4b85e950.es5.css”,”/assets/V08PS7.c5f2a790.es5.css”,”/assets/5-GvUO/vIwuL7.66b5f504.es5.css”,”/assets/5KqyYa.3493750c.es5.css”,”/assets/VP50Wc.4185a83a.es5.css”,”/assets/MsxLpS.c17c142d.es5.css”,”/assets/7yGKf-.efeca958.es5.css”,”/assets/iuYvTO.3b88501b.es5.css”,”/assets/DjNvou.1ee10d09.es5.css”,”/assets/PCLJ0D/Fs8FZj.1a5fb82e.es5.css”,”/assets/iekllc.3606017a.es5.css”,”/assets/W3_c4H.6b93e7f1.es5.css”,”/assets/Ly5eaD.596cb8ab.es5.css”,”/assets/z2XL6d.2e50207e.es5.css”,”/assets/xegF5W.82772ecc.es5.css”,”/assets/MG7IEl.3264b127.es5.js”,”/assets/cDcdfi.b67060d5.es5.js”,”/assets/faye7n.de884460.es5.js”,”/assets/h74DsO.4626ab7d.es5.js”,”/assets/RiHMo-.49f1437e.es5.js”,”/assets/lMO0v3.e2d16dfd.es5.js”,”/assets/nIW_Rw.244a15df.es5.js”,”/assets/-i3PJS.5e777e53.es5.js”,”/assets/6hYgtn.19810b60.es5.js”,”/assets/OnmvvE.fad6f206.es5.js”,”/assets/535agn.d944ed87.es5.js”,”/assets/B7vHz6.d2625015.es5.js”,”/assets/N4pTU2.28d819b6.es5.js”,”/assets/aunxON.c9563d4d.es5.js”,”/assets/Jk5sjx.3b4ae2d0.es5.js”,”/assets/pLbCP4.8004bbbf.es5.js”,”/assets/UhC_bI.571310bc.es5.js”,”/assets/fsml46.ad05f62f.es5.js”,”/assets/2R4xv2.7feaef0a.es5.js”,”/assets/xZoNdB.233373cb.es5.js”,”/assets/drdfeZ.04efb37e.es5.js”,”/assets/rf6OMe.66935774.es5.js”,”/assets/UWCmG6.9e06df66.es5.js”,”/assets/rKB8Wf.010a322c.es5.js”,”/assets/XtxvfD.fea9ece2.es5.js”,”/assets/vmXh3M.0379b116.es5.js”,”/assets/E8NZou.138849fd.es5.js”,”/assets/MGkW-Q.61bfe16e.es5.js”,”/assets/OyezR0.203fe89e.es5.js”,”/assets/vuC2Rl.e436d555.es5.js”,”/assets/fflEqf.89528b7d.es5.js”,”/assets/17wlKY.93dfd002.es5.js”,”/assets/YwNsO_.6a232f49.es5.js”,”/assets/CWppnH.65380337.es5.js”,”/assets/vq6MSq.2adbb73e.es5.js”,”/assets/RH7wJe.97c20467.es5.js”,”/assets/jb_4W2.c9d529f8.es5.js”,”/assets/0DsHEV.344f853b.es5.js”,”/assets/Q7TAd7.6125b137.es5.js”,”/assets/F8raOV.fb830154.es5.js”,”/assets/oo669z.eddf1d8f.es5.js”,”/assets/Ov85iR.230ee430.es5.js”,”/assets/SfdMbo.bf76f0a5.es5.js”,”/assets/VANuRt.8997c24d.es5.js”,”/assets/mv7yXI.4b1885e1.es5.js”,”/assets/jaCyxS.d210d963.es5.js”,”/assets/5-GvUO.66b5f504.es5.js”,”/assets/5X2em-.91312e8e.es5.js”,”/assets/DbN8HP.a180712b.es5.js”,”/assets/b3xEaf.9008e034.es5.js”,”/assets/gsKhh7.616525be.es5.js”,”/assets/vWxBAe.9bddb5b3.es5.js”,”/assets/nvMJfD.fcd7172f.es5.js”,”/assets/asW43G.5bf8236f.es5.js”,”/assets/1x56sm.fd145920.es5.js”,”/assets/c9QfOM.c3f50280.es5.js”,”/assets/l6BSGt.0c9d5c85.es5.js”,”/assets/dROhDJ.b13f13a3.es5.js”,”/assets/BLrxBS.85325a11.es5.js”,”/assets/6NeHQy.857831a4.es5.js”,”/assets/b57PJQ.49dd90ed.es5.js”,”/assets/jmIMrC.3a9d8195.es5.js”,”/assets/n3D4ip.fda54c35.es5.js”,”/assets/QZqymc.375e75f3.es5.js”,”/assets/30t50h.67234d12.es5.js”,”/assets/ANe_04.afaa0261.es5.js”,”/assets/m5ZZFI.1a84d8e4.es5.js”,”/assets/jSLlaY.ecf849e9.es5.js”,”/assets/6RAaot.b33ae619.es5.js”,”/assets/pyY-iJ.c4adc0c0.es5.js”,”/assets/gGW5sO.5982c105.es5.js”,”/assets/_qQcW3.835070a5.es5.js”,”/assets/eDFcUX.4b85e950.es5.js”,”/assets/O8LbtK.7e19481e.es5.js”,”/assets/V08PS7.c5f2a790.es5.js”,”/assets/Dg5_-9.9dbfa26d.es5.js”,”/assets/f9x1OV.a7eef909.es5.js”,”/assets/5-GvUO/vIwuL7.66b5f504.es5.js”,”/assets/T7FcVR.b93a7773.es5.js”,”/assets/38xMQJ.fc3bd0fe.es5.js”,”/assets/w4JHTr.e3ff1a12.es5.js”,”/assets/NJheb1.482f8a95.es5.js”,”/assets/PCLJ0D.1a5fb82e.es5.js”,”/assets/I81Q5L.69dfd2bf.es5.js”,”/assets/5KqyYa.3493750c.es5.js”,”/assets/VP50Wc.4185a83a.es5.js”,”/assets/MsxLpS.c17c142d.es5.js”,”/assets/7yGKf-.efeca958.es5.js”,”/assets/MHKLZN.bb8bc1d1.es5.js”,”/assets/_cZwhS.7dc2fce4.es5.js”,”/assets/iuYvTO.3b88501b.es5.js”,”/assets/DjNvou.1ee10d09.es5.js”,”/assets/PCLJ0D/Fs8FZj.1a5fb82e.es5.js”,”/assets/iekllc.3606017a.es5.js”,”/assets/W3_c4H.6b93e7f1.es5.js”,”/assets/Ly5eaD.596cb8ab.es5.js”,”/assets/_Z-1K3.ae4414b7.es5.js”,”/assets/vd4nty.65e71399.es5.js”,”/assets/z2XL6d.2e50207e.es5.js”,”/assets/xegF5W.82772ecc.es5.js”,”/assets/4Z07E2.fcdb4d33.es5.js”,”/assets/_g8cls.95e46c8c.es5.js”,”/assets/8xs-IB.1a20257c.es5.js”,”/assets/wAve59.6cbc1abd.es5.css”,”/assets/bO7DmF.d71f878d.es5.css”,”/assets/cBPvJq.a58eda59.es5.css”,”/assets/U3jxzU.681e366c.es5.css”,”/assets/MBK0so.018635ce.es5.css”,”/assets/wAve59.6cbc1abd.es5.js”,”/assets/hxnqL3.b479eb25.es5.js”,”/assets/LGU7YR.04f28dbf.es5.js”,”/assets/sERCEg.16eff77d.es5.js”,”/assets/bO7DmF.d71f878d.es5.js”,”/assets/cBPvJq.a58eda59.es5.js”,”/assets/iZ1Bsx.eb355224.es5.js”,”/assets/YtS4jD.4fde9ae1.es5.js”,”/assets/U3jxzU.681e366c.es5.js”,”/assets/4kVXmt.af051460.es5.js”,”/assets/MBK0so.018635ce.es5.js”,”/assets/g9oDmO.4148bc97.es5.css”,”/assets/Hgrhyo.7056c64f.es5.css”,”/assets/bsx_H5.057816bf.es5.css”,”/assets/KwOV1Z.0fb73cc5.es5.css”,”/assets/bQlCOz.98bd60b5.es5.css”,”/assets/AoLEtg.0352589f.es5.css”,”/assets/g9oDmO.4148bc97.es5.js”,”/assets/pT-O8u.3affc186.es5.js”,”/assets/iLImXn.69267b1d.es5.js”,”/assets/Hgrhyo.7056c64f.es5.js”,”/assets/CSOnVf.6ff1b771.es5.js”,”/assets/bsx_H5.057816bf.es5.js”,”/assets/KwOV1Z.0fb73cc5.es5.js”,”/assets/bQlCOz.98bd60b5.es5.js”,”/assets/AoLEtg.0352589f.es5.js”,”/assets/4CrHtN.bdf8807f.es5.css”,”/assets/OC9u-G.26d71f57.es5.css”,”/assets/oiya90.3ad5696c.es5.css”,”/assets/MCrJhI.bf1889af.es5.css”,”/assets/meOI_T.8bec79df.es5.css”,”/assets/4J6GHD.9215d909.es5.css”,”/assets/QLckY2.391ecead.es5.css”,”/assets/MNKFIS.2cd714c1.es5.css”,”/assets/4CrHtN.bdf8807f.es5.js”,”/assets/OC9u-G.26d71f57.es5.js”,”/assets/oiya90.3ad5696c.es5.js”,”/assets/MCrJhI.bf1889af.es5.js”,”/assets/meOI_T.8bec79df.es5.js”,”/assets/4J6GHD.9215d909.es5.js”,”/assets/QLckY2.391ecead.es5.js”,”/assets/MNKFIS.2cd714c1.es5.js”,”/assets/FttHiS.bd3d1d14.es5.js”,”/assets/Z_Ebpb.ae808caf.es5.js”,”/assets/a4q8MG.4d4761cc.es5.js”,”/assets/h7E4Ym.d60ce7fd.es5.js”,”/assets/nPqO2d.433718c4.es5.js”,”/assets/zXGKDf.3bfd6d41.es5.js”,”/assets/xsqNye.c8ac61dc.es5.js”,”/assets/griB9b.cf06bcf1.es5.js”,”/assets/EkR174/gGjYrO.4be1e798.es5.css”,”/assets/EkR174/1KM6P8.4be1e798.es5.css”,”/assets/dX3eZQ.58f38c3b.es5.css”,”/assets/EkR174/0e7qB0.4be1e798.es5.css”,”/assets/7vyllf.471d6020.es5.css”,”/assets/Kv5xL1.98eb2949.es5.css”,”/assets/TkeYrn.a9b55d89.es5.css”,”/assets/uWZ6Id.13f144c6.es5.css”,”/assets/PHZx4_.959a6aa3.es5.css”,”/assets/S07X1M/57pCYe.f21213a3.es5.css”,”/assets/ENvJHX.20af8fed.es5.css”,”/assets/oPZBqR.a219806f.es5.css”,”/assets/L2wXtu.c61b2748.es5.css”,”/assets/V_I8wA.331f72b4.es5.css”,”/assets/dAea-m.70d69602.es5.css”,”/assets/7bbexq.e104d0c8.es5.css”,”/assets/AFIA6D.f7bfaa17.es5.css”,”/assets/SzaY02.5ba7cbe7.es5.css”,”/assets/E1X9WP.4ae679a1.es5.css”,”/assets/jPSRY1.91a5b849.es5.css”,”/assets/1jVxH0.e643f4be.es5.css”,”/assets/uDwkMq.9263728c.es5.css”,”/assets/-bPXQG.906df337.es5.css”,”/assets/Xi-2HZ.caab41ab.es5.css”,”/assets/fZR2pj.72828234.es5.css”,”/assets/EkR174/gGjYrO.4be1e798.es5.js”,”/assets/EkR174/1KM6P8.4be1e798.es5.js”,”/assets/dX3eZQ.58f38c3b.es5.js”,”/assets/EkR174/0e7qB0.4be1e798.es5.js”,”/assets/OkJwbt.3a6cb84a.es5.js”,”/assets/mHPUmd.9de2e1fd.es5.js”,”/assets/7vyllf.471d6020.es5.js”,”/assets/x5AnXu.f4f911f5.es5.js”,”/assets/2NwMnm.613a92f8.es5.js”,”/assets/-2hM2s.89a61825.es5.js”,”/assets/v_y45t.a85d4224.es5.js”,”/assets/S07X1M.f21213a3.es5.js”,”/assets/BWm3Dg.e5206013.es5.js”,”/assets/thFMrK.e5b68b70.es5.js”,”/assets/Kv5xL1.98eb2949.es5.js”,”/assets/TkeYrn.a9b55d89.es5.js”,”/assets/0uWw9s.77957db4.es5.js”,”/assets/uWZ6Id.13f144c6.es5.js”,”/assets/PHZx4_.959a6aa3.es5.js”,”/assets/S07X1M/57pCYe.f21213a3.es5.js”,”/assets/kYmwth.5e76dabd.es5.js”,”/assets/ENvJHX.20af8fed.es5.js”,”/assets/ETqDaL.68bc9a79.es5.js”,”/assets/mT-Pb2.8926402f.es5.js”,”/assets/oPZBqR.a219806f.es5.js”,”/assets/L2wXtu.c61b2748.es5.js”,”/assets/qKFflQ.a43aed5d.es5.js”,”/assets/1yEXVQ.414d38f1.es5.js”,”/assets/ABlMo4.b398cdd5.es5.js”,”/assets/-WwUo-.8b7821de.es5.js”,”/assets/V_I8wA.331f72b4.es5.js”,”/assets/dAea-m.70d69602.es5.js”,”/assets/7bbexq.e104d0c8.es5.js”,”/assets/AFIA6D.f7bfaa17.es5.js”,”/assets/SzaY02.5ba7cbe7.es5.js”,”/assets/8fiGCU.32d1594d.es5.js”,”/assets/E1X9WP.4ae679a1.es5.js”,”/assets/jPSRY1.91a5b849.es5.js”,”/assets/1jVxH0.e643f4be.es5.js”,”/assets/uDwkMq.9263728c.es5.js”,”/assets/-bPXQG.906df337.es5.js”,”/assets/Xi-2HZ.caab41ab.es5.js”,”/assets/ivxRiU.a6c3be7a.es5.js”,”/assets/O-HcBE.91c1fbf8.es5.js”,”/assets/gYZdI4.f0f0c534.es5.js”,”/assets/Erjc5t.7ec43519.es5.js”,”/assets/fZR2pj.72828234.es5.js”,”/assets/onLc8Z.accc6f56.es5.js”,”/assets/IuX4Ar.6738e56f.es5.js”,”/assets/NeFhoP.3df9b208.es5.css”,”/assets/5pSFLX.424036b8.es5.css”,”/assets/lUWIhR.a1d28c91.es5.css”,”/assets/T18SZK.7c75e304.es5.css”,”/assets/idtHKM.5a063fcf.es5.css”,”/assets/QlZAVV.8e27423b.es5.css”,”/assets/HZtvHO.8a04b79c.es5.css”,”/assets/vF730k.c8a2f335.es5.css”,”/assets/EaDX1r.593e87e7.es5.css”,”/assets/miRpRf.29c68b13.es5.css”,”/assets/xmsC7X.52161d41.es5.css”,”/assets/PiTJFd.77ffe649.es5.css”,”/assets/6nM-E7.b9b00c56.es5.css”,”/assets/LFeTN6.0918242f.es5.css”,”/assets/ox3X6I.0c6e2755.es5.css”,”/assets/NeFhoP.3df9b208.es5.js”,”/assets/p55fed.15505e9b.es5.js”,”/assets/5pSFLX.424036b8.es5.js”,”/assets/lUWIhR.a1d28c91.es5.js”,”/assets/T18SZK.7c75e304.es5.js”,”/assets/kfxuer.25440573.es5.js”,”/assets/qK4vTI.af1a93a3.es5.js”,”/assets/RYK9JE.1f6684c6.es5.js”,”/assets/idtHKM.5a063fcf.es5.js”,”/assets/QlZAVV.8e27423b.es5.js”,”/assets/HZtvHO.8a04b79c.es5.js”,”/assets/vF730k.c8a2f335.es5.js”,”/assets/EaDX1r.593e87e7.es5.js”,”/assets/miRpRf.29c68b13.es5.js”,”/assets/FnrCe6.f1b7fbe4.es5.js”,”/assets/2Ol0i2.edae2968.es5.js”,”/assets/PCbs_l.9e91db97.es5.js”,”/assets/xmsC7X.52161d41.es5.js”,”/assets/U-DhDC.05af9ed9.es5.js”,”/assets/eFKnUp.e834624e.es5.js”,”/assets/PiTJFd.77ffe649.es5.js”,”/assets/fTyhRT.bcf6431c.es5.js”,”/assets/JFHNGL.923fcce8.es5.js”,”/assets/9I0t-6.409f274e.es5.js”,”/assets/6nM-E7.b9b00c56.es5.js”,”/assets/c_rvp5.0b5a1cc1.es5.js”,”/assets/LFeTN6.0918242f.es5.js”,”/assets/RXx5aI.7cbd01a8.es5.js”,”/assets/wLDeDm.502cda11.es5.js”,”/assets/Ckp-bW.5f97aafd.es5.js”,”/assets/ox3X6I.0c6e2755.es5.js”,”/assets/WkP2XE.4a89a78c.es5.js”,”/assets/6KWcSB.9e4bd730.es5.js”,”/assets/EkR174.4be1e798.es5.css”,”/assets/EkR174.4be1e798.es5.js”,”/assets/6yFYDi.f130e39e.es5.css”,”/assets/6HtwZc.ebc9efee.es5.css”,”/assets/vdGG-X.83724613.es5.css”,”/assets/REpc0H.15a9fce4.es5.css”,”/assets/QnohJ2.bff5d896.es5.css”,”/assets/W8QPlr.cf6e288e.es5.css”,”/assets/ts_HYm.7c202b45.es5.css”,”/assets/wI4zXS.6570ac22.es5.css”,”/assets/T7afzM.9eb4b431.es5.css”,”/assets/6yFYDi.f130e39e.es5.js”,”/assets/S2VEpX.377e7a27.es5.js”,”/assets/6HtwZc.ebc9efee.es5.js”,”/assets/vdGG-X.83724613.es5.js”,”/assets/REpc0H.15a9fce4.es5.js”,”/assets/OiNFvE.42ac083e.es5.js”,”/assets/QnohJ2.bff5d896.es5.js”,”/assets/W8QPlr.cf6e288e.es5.js”,”/assets/Bf1Sux.bef36280.es5.js”,”/assets/ts_HYm.7c202b45.es5.js”,”/assets/n4rOEs.42d9977b.es5.js”,”/assets/wc54S1.c27cfc56.es5.js”,”/assets/d9h_j1.9fdd585f.es5.js”,”/assets/wI4zXS.6570ac22.es5.js”,”/assets/S-RL4Q.1acb545c.es5.js”,”/assets/9eU7bn.f1406ede.es5.js”,”/assets/T7afzM.9eb4b431.es5.js”,”/assets/s_AKoQ.4dfa5e8e.es5.js”,”/assets/jP-Ceu.a01db762.es5.js”,”/assets/LgmAJW.4532b991.es5.js”,”/assets/lYfRy0.3b65dc88.es5.js”,”/assets/iv0HPR.5ac6f38d.es5.js”,”/assets/bk1Dsb.c2d0683c.es5.js”,”/assets/ZFWRaT.43fad88e.es5.css”,”/assets/mlSX5R.d60ef9ce.es5.css”,”/assets/mGqah_.a9e68124.es5.css”,”/assets/tV1cF7.eaed6670.es5.css”,”/assets/liWOeo.585b2461.es5.css”,”/assets/ZFWRaT.43fad88e.es5.js”,”/assets/mlSX5R.d60ef9ce.es5.js”,”/assets/D8rGz0.170964ae.es5.js”,”/assets/mGqah_.a9e68124.es5.js”,”/assets/tV1cF7.eaed6670.es5.js”,”/assets/liWOeo.585b2461.es5.js”,”/assets/3mlAaP.c7619587.es5.js”,”/assets/6hAP4j.22e7ce00.es5.css”,”/assets/MlvYp6.6bbf373f.es5.js”,”/assets/MlvYp6/DYousL.6bbf373f.es5.js”,”/assets/6hAP4j.22e7ce00.es5.js”,”/assets/HKQFPT.66b1166f.es5.js”,”/assets/mxARhC.b93e49cd.es5.js”,”/assets/BqoTCX.24780ac1.es5.css”,”/assets/zPgUM0.b92697a7.es5.css”,”/assets/Ah3slv.99cb054a.es5.css”,”/assets/qfSfGN.bc70de2e.es5.css”,”/assets/k2HuE9.88cf7f10.es5.css”,”/assets/Za7u2_.e25fe58b.es5.css”,”/assets/BqoTCX.24780ac1.es5.js”,”/assets/wU942v.b59cc448.es5.js”,”/assets/w2XwHO.eeef27c5.es5.js”,”/assets/zPgUM0.b92697a7.es5.js”,”/assets/HDgDKt.99a678cb.es5.js”,”/assets/Ah3slv.99cb054a.es5.js”,”/assets/MWFqPp.dabfe37f.es5.js”,”/assets/Oc3sTL.f30ce1dd.es5.js”,”/assets/qfSfGN.bc70de2e.es5.js”,”/assets/k2HuE9.88cf7f10.es5.js”,”/assets/Za7u2_.e25fe58b.es5.js”,”/assets/cmhYcA.f35b2bf1.es5.js”,”/assets/e374ol.b8bd956b.es5.css”,”/assets/JjsMlI.75050d12.es5.css”,”/assets/HbmgZZ.620156a8.es5.css”,”/assets/x4gvL_.a68ee767.es5.css”,”/assets/DtZPgN.643b6e75.es5.css”,”/assets/jbxuyk.406e6c0b.es5.css”,”/assets/F24sfv.33dce9ed.es5.css”,”/assets/BsnOle.35ccb783.es5.css”,”/assets/x9N_Dh.ad03c917.es5.css”,”/assets/wPStQ3.b6263af1.es5.css”,”/assets/e374ol.b8bd956b.es5.js”,”/assets/JjsMlI.75050d12.es5.js”,”/assets/HbmgZZ.620156a8.es5.js”,”/assets/x4gvL_.a68ee767.es5.js”,”/assets/pZzSdK.88ccf0a8.es5.js”,”/assets/DtZPgN.643b6e75.es5.js”,”/assets/jbxuyk.406e6c0b.es5.js”,”/assets/F24sfv.33dce9ed.es5.js”,”/assets/BsnOle.35ccb783.es5.js”,”/assets/x9N_Dh.ad03c917.es5.js”,”/assets/wPStQ3.b6263af1.es5.js”,”/assets/Knxjr7.b2ed13d3.es5.js”,”/assets/40rCF9.118df8fe.es5.js”,”/assets/SMVlF-.67d6b9fa.es5.js”,”/assets/5aXXJV.d430e2d5.es5.js”,”/assets/QZysVi.a3fe6f83.es5.css”,”/assets/mjTUZq.7a0abdbf.es5.css”,”/assets/QZysVi.a3fe6f83.es5.js”,”/assets/mjTUZq.7a0abdbf.es5.js”,”/assets/_KhVZh.4bda1833.es5.js”,”/assets/fSRrv3.4c15b570.es5.js”,”/assets/SSbwxm.e04a8145.es5.css”,”/assets/UNzP-1.5427b73f.es5.css”,”/assets/WjZ7ZM.0eaece36.es5.css”,”/assets/uW7u9D.cc0b49e9.es5.css”,”/assets/FVQ3zY.131d8615.es5.css”,”/assets/SSbwxm.e04a8145.es5.js”,”/assets/UNzP-1.5427b73f.es5.js”,”/assets/WjZ7ZM.0eaece36.es5.js”,”/assets/byvhe4.3e0543f9.es5.js”,”/assets/uW7u9D.cc0b49e9.es5.js”,”/assets/FVQ3zY.131d8615.es5.js”,”/assets/325u3W.bd50ad55.es5.js”,”/assets/V7qLvM.b3f821df.es5.css”,”/assets/cFqhC1.6e341163.es5.css”,”/assets/AjUfyu.68df2b89.es5.css”,”/assets/V7qLvM.b3f821df.es5.js”,”/assets/cFqhC1.6e341163.es5.js”,”/assets/AjUfyu.68df2b89.es5.js”,”/assets/t7RFOq.4f293e82.es5.js”,”/assets/-xj2Ol.ad20e65b.es5.css”,”/assets/n69w9j.eaf422af.es5.js”,”/assets/5uMSix.365b7543.es5.js”,”/assets/-xj2Ol.ad20e65b.es5.js”,”/assets/FgJHmE.7d7567d4.es5.js”,”/assets/H5mpt_.1a4080ce.es5.css”,”/assets/DCBGY9.752cc41e.es5.css”,”/assets/7Aj2pc.510308aa.es5.css”,”/assets/dhsgkP.cb15c186.es5.css”,”/assets/Jb1HNR.6182c6a9.es5.css”,”/assets/u0KQ1z.4373e945.es5.css”,”/assets/s1eoNx.9e3ffbb4.es5.css”,”/assets/H5mpt_.1a4080ce.es5.js”,”/assets/DCBGY9.752cc41e.es5.js”,”/assets/7Aj2pc.510308aa.es5.js”,”/assets/dhsgkP.cb15c186.es5.js”,”/assets/Jb1HNR.6182c6a9.es5.js”,”/assets/-IO4YY.16011a77.es5.js”,”/assets/u0KQ1z.4373e945.es5.js”,”/assets/lfA4fx.4d5ade3f.es5.js”,”/assets/PbGVd2.46f664eb.es5.js”,”/assets/s1eoNx.9e3ffbb4.es5.js”,”/assets/CwU70X.630f3a0a.es5.js”,”/assets/zdk9wF.0dd916c6.es5.js”,”/assets/_wYjwe.0c4d5c51.es5.js”,”/assets/nrVmZz.b3fa46e3.es5.js”,”/assets/zlqOrw.42ab2dca.es5.css”,”/assets/zlqOrw.42ab2dca.es5.js”,”/assets/lmr1u9.7ea387d4.es5.js”,”/assets/eOSA73.207942d6.es5.css”,”/assets/Jbh1_o.d399b8bf.es5.js”,”/assets/eOSA73.207942d6.es5.js”,”/assets/GVTdZB.2c30819c.es5.js”],”bundles”:[“XjkW5l”,”peh_3a”,”MG7IEl”,”cDcdfi”,”faye7n”,”h74DsO”,”RiHMo-“,”lMO0v3″,”nIW_Rw”,”-i3PJS”,”6hYgtn”,”OnmvvE”,”535agn”,”B7vHz6″,”N4pTU2″,”aunxON”,”Jk5sjx”,”pLbCP4″,”UhC_bI”,”fsml46″,”2R4xv2″,”xZoNdB”,”drdfeZ”,”rf6OMe”,”UWCmG6″,”rKB8Wf”,”XtxvfD”,”vmXh3M”,”E8NZou”,”MGkW-Q”,”OyezR0″,”vuC2Rl”,”fflEqf”,”17wlKY”,”YwNsO_”,”CWppnH”,”vq6MSq”,”RH7wJe”,”jb_4W2″,”0DsHEV”,”Q7TAd7″,”F8raOV”,”oo669z”,”Ov85iR”,”SfdMbo”,”VANuRt”,”mv7yXI”,”jaCyxS”,”5-GvUO”,”5X2em-“,”DbN8HP”,”b3xEaf”,”gsKhh7″,”vWxBAe”,”nvMJfD”,”asW43G”,”1x56sm”,”c9QfOM”,”l6BSGt”,”dROhDJ”,”BLrxBS”,”6NeHQy”,”b57PJQ”,”jmIMrC”,”n3D4ip”,”QZqymc”,”30t50h”,”ANe_04″,”m5ZZFI”,”jSLlaY”,”6RAaot”,”pyY-iJ”,”gGW5sO”,”_qQcW3″,”eDFcUX”,”O8LbtK”,”V08PS7″,”Dg5_-9″,”f9x1OV”,”5-GvUO/vIwuL7″,”T7FcVR”,”38xMQJ”,”w4JHTr”,”NJheb1″,”PCLJ0D”,”I81Q5L”,”5KqyYa”,”VP50Wc”,”MsxLpS”,”7yGKf-“,”MHKLZN”,”_cZwhS”,”iuYvTO”,”DjNvou”,”PCLJ0D/Fs8FZj”,”iekllc”,”W3_c4H”,”Ly5eaD”,”_Z-1K3″,”vd4nty”,”z2XL6d”,”xegF5W”,”4Z07E2″,”_g8cls”,”8xs-IB”,”wAve59″,”hxnqL3″,”LGU7YR”,”sERCEg”,”bO7DmF”,”cBPvJq”,”iZ1Bsx”,”YtS4jD”,”U3jxzU”,”4kVXmt”,”MBK0so”,”g9oDmO”,”pT-O8u”,”iLImXn”,”Hgrhyo”,”CSOnVf”,”bsx_H5″,”KwOV1Z”,”bQlCOz”,”AoLEtg”,”4CrHtN”,”OC9u-G”,”oiya90″,”MCrJhI”,”meOI_T”,”4J6GHD”,”QLckY2″,”MNKFIS”,”FttHiS”,”Z_Ebpb”,”a4q8MG”,”h7E4Ym”,”nPqO2d”,”zXGKDf”,”xsqNye”,”griB9b”,”EkR174/gGjYrO”,”EkR174/1KM6P8″,”dX3eZQ”,”EkR174/0e7qB0″,”OkJwbt”,”mHPUmd”,”7vyllf”,”x5AnXu”,”2NwMnm”,”-2hM2s”,”v_y45t”,”S07X1M”,”BWm3Dg”,”thFMrK”,”Kv5xL1″,”TkeYrn”,”0uWw9s”,”uWZ6Id”,”PHZx4_”,”S07X1M/57pCYe”,”kYmwth”,”ENvJHX”,”ETqDaL”,”mT-Pb2″,”oPZBqR”,”L2wXtu”,”qKFflQ”,”1yEXVQ”,”ABlMo4″,”-WwUo-“,”V_I8wA”,”dAea-m”,”7bbexq”,”AFIA6D”,”SzaY02″,”8fiGCU”,”E1X9WP”,”jPSRY1″,”1jVxH0″,”uDwkMq”,”-bPXQG”,”Xi-2HZ”,”ivxRiU”,”O-HcBE”,”gYZdI4″,”Erjc5t”,”fZR2pj”,”onLc8Z”,”IuX4Ar”,”NeFhoP”,”p55fed”,”5pSFLX”,”lUWIhR”,”T18SZK”,”kfxuer”,”qK4vTI”,”RYK9JE”,”idtHKM”,”QlZAVV”,”HZtvHO”,”vF730k”,”EaDX1r”,”miRpRf”,”FnrCe6″,”2Ol0i2″,”PCbs_l”,”xmsC7X”,”U-DhDC”,”eFKnUp”,”PiTJFd”,”fTyhRT”,”JFHNGL”,”9I0t-6″,”6nM-E7″,”c_rvp5″,”LFeTN6″,”RXx5aI”,”wLDeDm”,”Ckp-bW”,”ox3X6I”,”WkP2XE”,”6KWcSB”,”EkR174″,”6yFYDi”,”S2VEpX”,”6HtwZc”,”vdGG-X”,”REpc0H”,”OiNFvE”,”QnohJ2″,”W8QPlr”,”Bf1Sux”,”ts_HYm”,”n4rOEs”,”wc54S1″,”d9h_j1″,”wI4zXS”,”S-RL4Q”,”9eU7bn”,”T7afzM”,”s_AKoQ”,”jP-Ceu”,”LgmAJW”,”lYfRy0″,”iv0HPR”,”bk1Dsb”,”ZFWRaT”,”mlSX5R”,”D8rGz0″,”mGqah_”,”tV1cF7″,”liWOeo”,”3mlAaP”,”MlvYp6″,”MlvYp6/DYousL”,”6hAP4j”,”HKQFPT”,”mxARhC”,”BqoTCX”,”wU942v”,”w2XwHO”,”zPgUM0″,”HDgDKt”,”Ah3slv”,”MWFqPp”,”Oc3sTL”,”qfSfGN”,”k2HuE9″,”Za7u2_”,”cmhYcA”,”e374ol”,”JjsMlI”,”HbmgZZ”,”x4gvL_”,”pZzSdK”,”DtZPgN”,”jbxuyk”,”F24sfv”,”BsnOle”,”x9N_Dh”,”wPStQ3″,”Knxjr7″,”40rCF9″,”SMVlF-“,”5aXXJV”,”QZysVi”,”mjTUZq”,”_KhVZh”,”fSRrv3″,”SSbwxm”,”UNzP-1″,”WjZ7ZM”,”byvhe4″,”uW7u9D”,”FVQ3zY”,”325u3W”,”V7qLvM”,”cFqhC1″,”AjUfyu”,”t7RFOq”,”n69w9j”,”5uMSix”,”-xj2Ol”,”FgJHmE”,”H5mpt_”,”DCBGY9″,”7Aj2pc”,”dhsgkP”,”Jb1HNR”,”-IO4YY”,”u0KQ1z”,”lfA4fx”,”PbGVd2″,”s1eoNx”,”CwU70X”,”zdk9wF”,”_wYjwe”,”nrVmZz”,”zlqOrw”,”lmr1u9″,”Jbh1_o”,”eOSA73″,”GVTdZB”],”lazyLoadedModules”:[“g9oDmO”,”wAve59″,”EkR174/gGjYrO”,”4CrHtN”],”renders”:[{“id”:”component_12″,”props”:{},”package”:”onLc8Z”},{“id”:”hotel-list-promo-banner_component_2″,”props”:{},”package”:”ZFWRaT”},{“id”:”component_6″,”props”:{},”package”:”BqoTCX”},{“id”:”component_8″,”props”:{},”package”:”cmhYcA”},{“id”:”component_18″,”props”:{},”package”:”t7RFOq”},{“id”:”@ta/trips.save-to-trip:location:649623_component_24″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:649623},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:149298_component_27″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:149298},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:260690_component_30″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:260690},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:181715_component_33″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:181715},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151422_component_36″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151422},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:608598_component_39″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:608598},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:242124_component_42″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:242124},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:7393370_component_45″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:7393370},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:148122_component_48″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:148122},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:8538010_component_51″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:8538010},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151505_component_54″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151505},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:274455_component_57″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:274455},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151751_component_60″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151751},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:535351_component_63″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:535351},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151947_component_66″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151947},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:9556811_component_69″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:9556811},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:15363567_component_72″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:15363567},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:156301_component_75″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:156301},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151383_component_78″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151383},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:6483216_component_81″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:6483216},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:7808499_component_84″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:7808499},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:529827_component_87″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:529827},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151421_component_90″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151421},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:13806793_component_93″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:13806793},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:2052671_component_96″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:2052671},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151899_component_99″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151899},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:611851_component_102″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:611851},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:1758836_component_105″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:1758836},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:1655865_component_108″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:1655865},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:266228_component_111″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:266228},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151678_component_114″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151678},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”},{“id”:”@ta/trips.save-to-trip:location:151430_component_117″,”props”:{“object”:{“__typename”:”LocationInformation”,”locationId”:151430},”widgetStyle”:”listing”,”tooltipCopy”:null,”toastCopy”:null,”toastCopySubhead”:null,”allowPopStatModal”:false},”package”:”zlqOrw”}],”hydrations”:[{“id”:”component_16″,”props”:{},”package”:”NeFhoP”},{“id”:”component_7″,”props”:{},”package”:”EkR174″},{“id”:”component_1″,”props”:{},”package”:”6yFYDi”},{“id”:”component_4″,”props”:{},”package”:”MlvYp6″},{“id”:”component_5″,”props”:{},”package”:”mxARhC”},{“id”:”component_9″,”props”:{“initialSelectedFilters”:[{“param”:”zfd”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zfb”,”trackingName”:”brand”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zfc”,”trackingName”:”hotel_class”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zfn”,”trackingName”:”neighborhood”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”distFrom”,”trackingName”:”Filters_location”,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”zff”,”trackingName”:”style”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zft”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”cat”,”trackingName”:”accommodation”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:”1,2,3″,”displayValues”:{}},{“param”:”pop”,”trackingName”:”popular”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”amen”,”trackingName”:”amenities”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”catTag”,”trackingName”:”accommodation”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”pRange”,”trackingName”:”Filters_price”,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”df”,”trackingName”:”deals”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”blender_tag”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”distFromPnt”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”bs”,”trackingName”:”brand”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”wlk”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”ns”,”trackingName”:”brand”,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”hsf”,”trackingName”:”safety_measures”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”trating”,”trackingName”:”ta_rating”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}}],”filterCountsEnabled”:true,”geoId”:147414,”initialAvailableFilters”:[{“choices”:[{“value”:”1″,”label”:”Properties taking safety measures”,”tracker”:”Covid19_hotel”,”count”:268,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false}],”filterType”:”checkbox”,”index”:0,”paramName”:”hsf”,”showCounts”:false,”title”:”COVID-19″,”trackingName”:”safety_measures”,”visible”:true},{“choices”:[{“value”:”2″,”label”:”Free cancellation”,”tracker”:”FreeCancellation”,”count”:1,”disabled”:false,”infoTipText”:”Free cancellation is a deal-level filter that applies to a specific partner offer, as displayed below the partneru2019s offer in an individual property. Other offers for the same property may have different benefits.”,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:true,”selected”:false,”additiveCounts”:false},{“value”:”3″,”label”:”Reserve now, pay at stay”,”tracker”:”PayAtStay”,”count”:1,”disabled”:false,”infoTipText”:”Reserve now, pay at stay is a deal-level filter that applies to a specific partner offer, as displayed below the partneru2019s offer in an individual property. Other offers for the same property may have different benefits.”,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”1″,”label”:”Properties with special offers”,”tracker”:”SpecialOffers”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false}],”filterType”:”checkbox”,”index”:1,”paramName”:”df”,”showCounts”:false,”title”:”Deals”,”trackingName”:”deals”,”visible”:true},{“choices”:[],”filterType”:”price”,”index”:2,”numNights”:1,”numRooms”:1,”paramName”:”pRange”,”previewText”:null,”pricingModes”:[{“value”:”BASE_RATE”,”displayValue”:”Price per night”,”disclaimerText”:”This price includes the nightly price of the room rate charged to the consumer, excluding taxes and other fees. “,”isDefault”:true},{“value”:”ALL_IN_RATE”,”displayValue”:”Price + taxes and fees”,”disclaimerText”:”This price includes the nightly price of the room rate charged to the consumer, including taxes and other fees that are known and certain based on the data provided by the user.”,”isDefault”:false},{“value”:”ALL_IN_FULL_STAY”,”displayValue”:”Total stay + taxes and fees”,”disclaimerText”:”This price includes the total stay price of the room rate charged to the consumer for the duration of the stay, including taxes and other fees that are known and certain based on the data provided by the user.”,”isDefault”:false}],”rangeMax”:578,”selectedPricingMode”:”BASE_RATE”,”title”:”Price”,”trackingName”:”Filters_price”,”visible”:true},{“choices”:[{“value”:”trating_4″,”label”:”4 bubbles & up”,”tracker”:”4 Bubbles and Up”,”count”:59,”disabled”:false,”bubbleRating”:4,”displayRatingAsBubbles”:true,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false},{“value”:”amen_9179″,”label”:”Breakfast included”,”tracker”:”Free Breakfast”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false},{“value”:”zfc_9572″,”label”:”5 stars”,”tracker”:”5 Star”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false},{“value”:”catTag_21371″,”label”:”Hotels”,”tracker”:”Hotels & Motels – Lodging Type”,”count”:24,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false}],”filterType”:”checkbox”,”index”:3,”paramName”:”pop”,”previewText”:””,”showCounts”:false,”title”:”Popular”,”trackingName”:”popular”,”visible”:true},{“choices”:[{“value”:”9672″,”label”:”Resorts”,”tracker”:”Resort”,”displayLink”:”/Hotels-g147414-zff8-Bahamas-Hotels.html”,”count”:27,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”21371″,”label”:”Hotels”,”tracker”:”Hotels & Motels – Lodging Type”,”displayLink”:”/Hotels-g147414-Bahamas-Hotels.html”,”count”:24,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”21372″,”label”:”B&Bs & Inns”,”tracker”:”B&Bs & Inns – Lodging Type”,”displayLink”:”/Hotels-g147414-c2-Bahamas-Hotels.html”,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”16545″,”label”:”All-inclusives”,”tracker”:”All Inclusive – Parent”,”displayLink”:”/Hotels-g147414-zft16545-Bahamas-Hotels.html”,”count”:15,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9256″,”label”:”Villas”,”tracker”:”Villa”,”displayLink”:”/Hotels-g147414-c3-zff22-Bahamas-Hotels.html”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9250″,”label”:”Condos”,”tracker”:”Condo”,”displayLink”:”/Hotels-g147414-c3-zff28-Bahamas-Hotels.html”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”21373″,”label”:”Specialty lodgings”,”tracker”:”Specialty Lodging – Lodging Type”,”displayLink”:”/Hotels-g147414-c3-Bahamas-Hotels.html”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9212″,”label”:”Cottages”,”tracker”:”Cottage”,”displayLink”:”/Hotels-g147414-c3-zff38-Bahamas-Hotels.html”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9261″,”label”:”Hostels”,”tracker”:”Hostel”,”displayLink”:”/Hotels-g147414-c3-zff26-Bahamas-Hotels.html”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9200″,”label”:”Lodges”,”tracker”:”Lodge”,”displayLink”:”/Hotels-g147414-c3-zff17-Bahamas-Hotels.html”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false}],”filterType”:”checkbox”,”index”:4,”linkOption”:{“value”:”6″,”label”:”View Vacation Rentals”,”tracker”:”VR”,”displayLink”:”/VacationRentals-g147414-Reviews-Bahamas-Vacation_Rentals.html”,”count”:0,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},”paramName”:”catTag”,”showCounts”:true,”title”:”Property types”,”trackingName”:”accommodation”,”visible”:true},{“choices”:[{“value”:”9176″,”label”:”Free Wifi”,”tracker”:”Free Wifi”,”count”:57,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9179″,”label”:”Breakfast included”,”tracker”:”Free Breakfast”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”6217″,”label”:”Pool”,”tracker”:”Pool”,”count”:52,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9163″,”label”:”Free parking”,”tracker”:”Free Parking”,”count”:61,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11290″,”label”:”Adult pool”,”tracker”:”Adult Pool”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18884″,”label”:”Adults Only”,”tracker”:”Adults Only – Amenities”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9658″,”label”:”Air conditioning”,”tracker”:”Air Conditioning”,”count”:74,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9170″,”label”:”Airport transportation”,”tracker”:”Airport Transportation”,”count”:26,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18895″,”label”:”Badminton”,”tracker”:”Badminton”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9166″,”label”:”Bar/Lounge”,”tracker”:”Bar/Lounge”,”count”:59,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”21778″,”label”:”Beach Access”,”tracker”:”Beach Access – Amenities”,”count”:62,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9156″,”label”:”Beachfront”,”tracker”:”Beach”,”count”:49,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18900″,”label”:”Bicycle Rental”,”tracker”:”Bicycle Rental”,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18903″,”label”:”Bicycles Available”,”tracker”:”Bicycles Available”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18907″,”label”:”Boating”,”tracker”:”Boating”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18912″,”label”:”Bowling”,”tracker”:”Bowling”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18915″,”label”:”Bridal Suite”,”tracker”:”Bridal Suite”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9187″,”label”:”Business center”,”tracker”:”Business Center”,”count”:20,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18918″,”label”:”Cable / Satellite TV”,”tracker”:”Cable / Satellite TV”,”count”:18,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18919″,”label”:”Canoeing”,”tracker”:”Canoeing – Amenities”,”count”:13,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9171″,”label”:”Casino”,”tracker”:”Casino”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18932″,”label”:”Coffee / Tea Maker”,”tracker”:”Coffee / Tea Maker”,”count”:21,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18931″,”label”:”Coffee Shop”,”tracker”:”Coffee Shop – Amenities”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9667″,”label”:”Conference Facilities”,”tracker”:”Conference Facilities”,”count”:15,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18944″,”label”:”Diving”,”tracker”:”Diving”,”count”:22,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”16305″,”label”:”Electric vehicle charging station”,”tracker”:”Electric Vehicle Charging Station”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9188″,”label”:”Fitness center”,”tracker”:”Fitness Center”,”count”:28,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9162″,”label”:”Free Internet”,”tracker”:”Free Internet”,”count”:66,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”12118″,”label”:”Free Shuttle or Taxi Services”,”tracker”:”Free Shuttle or Taxi Services”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18979″,”label”:”Game Room”,”tracker”:”Game Room”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9183″,”label”:”Golf course”,”tracker”:”Golf Course”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18991″,”label”:”Hiking”,”tracker”:”Hiking – Amenities”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”18993″,”label”:”Horseback Riding”,”tracker”:”Horseback Riding – Amenities”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9182″,”label”:”Hot Tub”,”tracker”:”Hot tub”,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11289″,”label”:”Infinity Pool”,”tracker”:”Infinity Pool”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”12122″,”label”:”Kids Stay Free”,”tracker”:”Kids Stay Free”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9168″,”label”:”Kitchenette”,”tracker”:”Kitchenette”,”count”:38,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11274″,”label”:”Lazy River”,”tracker”:”Lazy River”,”count”:2,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”19024″,”label”:”Mini Golf”,”tracker”:”Mini Golf”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11259″,”label”:”Ocean View”,”tracker”:”Ocean View”,”count”:41,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9167″,”label”:”Pet friendly”,”tracker”:”Pets Allowed”,”count”:14,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”19047″,”label”:”Pool with View”,”tracker”:”Pool with View”,”count”:10,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11282″,”label”:”Poolside Bar”,”tracker”:”Poolside Bar”,”count”:25,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11441″,”label”:”Private Beaches”,”tracker”:”Private Beach”,”count”:30,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9165″,”label”:”Restaurant”,”tracker”:”Restaurant”,”count”:62,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11257″,”label”:”Rooftop Bar”,”tracker”:”Rooftop Bar”,”count”:4,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11267″,”label”:”Rooftop Pool”,”tracker”:”Rooftop Pool”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11275″,”label”:”Rooftop Terrace”,”tracker”:”Rooftop Terrace”,”count”:2,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9157″,”label”:”Shuttle Bus Service”,”tracker”:”Shuttle Bus Service”,”count”:15,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”19081″,”label”:”Snorkeling”,”tracker”:”Snorkeling – Amenities”,”count”:28,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9169″,”label”:”Spa”,”tracker”:”Spa”,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9160″,”label”:”Suites”,”tracker”:”Suites”,”count”:48,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11261″,”label”:”Swimup Bar”,”tracker”:”Swimup Bar”,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9185″,”label”:”Tennis Court”,”tracker”:”Tennis Court”,”count”:14,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”11276″,”label”:”Water Park”,”tracker”:”Water Park”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”19124″,”label”:”Water Sport Equipment Rentals”,”tracker”:”Water Sport Equipment Rentals”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9164″,”label”:”Wheelchair access”,”tracker”:”Wheelchair access”,”count”:33,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”19127″,”label”:”Windsurfing”,”tracker”:”Windsurfing – Amenities”,”count”:2,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”19131″,”label”:”Yoga Classes”,”tracker”:”Yoga Classes – Amenities”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”19132″,”label”:”Yoga Room”,”tracker”:”Yoga Room”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false}],”filterType”:”checkbox”,”index”:5,”paramName”:”amen”,”placeholderText”:”e.g., free WiFi, breakfast included”,”previewText”:””,”showCounts”:false,”title”:”Amenities”,”trackingName”:”amenities”,”visible”:true},{“choices”:[],”filterType”:”distanceFrom”,”index”:6,”maxDistanceOption”:25,”paramName”:”distFrom”,”placeholderText”:”e.g., Blue Lagoon Island”,”poiTypes”:[“attr”,”air”,”uni”,”train”,”hotel”,”eat”,”theme_park”,”shop”,”general_hospital”,”port”,”ferry”,”corp”],”presetPOI”:[{“war_url”:”/UserReview-g147416-d149861-Blue_Lagoon_Island-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”blue lagoon island”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d149861-Reviews-Blue_Lagoon_Island-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Blue Lagoon Island, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d149861-Reviews-Blue_Lagoon_Island-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Blue Lagoon Island, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Blue Lagoon Island”,”name”:”Blue Lagoon Island”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:149861,”coords”:”25.098429,-77.267975″},{“war_url”:”/UserReview-g147417-d147618-Marine_Habitat_at_Atlantis-Paradise_Island_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”marine habitat at atlantis”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147417-d147618-Reviews-Marine_Habitat_at_Atlantis-Paradise_Island_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Marine Habitat at Atlantis, Paradise Island, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147417-d147618-Reviews-Marine_Habitat_at_Atlantis-Paradise_Island_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Marine Habitat at Atlantis, Paradise Island, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Paradise Island”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147417,”grandparent_place_type”:10011,”highlighted_name”:”Marine Habitat at Atlantis”,”name”:”Marine Habitat at Atlantis”,”parent_place_type”:10010,”parent_ids”:[147417,147415,147414,147237,19,1],”geo_name”:”Paradise Island, Bahamas”},”value”:147618,”coords”:”25.0831,-77.31181″},{“war_url”:”/UserReview-g147420-d1961289-Count_Basie_Square-Freeport_Grand_Bahama_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”count basie square”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147420-d1961289-Reviews-Count_Basie_Square-Freeport_Grand_Bahama_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Count Basie Square, Freeport, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147420-d1961289-Reviews-Count_Basie_Square-Freeport_Grand_Bahama_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Count Basie Square, Freeport, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Freeport”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147420,”grandparent_place_type”:10011,”highlighted_name”:”Count Basie Square”,”name”:”Count Basie Square”,”parent_place_type”:10004,”parent_ids”:[147420,147419,147414,147237,19,1],”geo_name”:”Freeport, Bahamas”},”value”:1961289,”coords”:”26.513472,-78.64228″},{“war_url”:”/UserReview-g147416-d1007837-Aquaventure-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”aquaventure”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d1007837-Reviews-Aquaventure-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Aquaventure, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d1007837-Reviews-Aquaventure-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Aquaventure, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Aquaventure”,”name”:”Aquaventure”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:1007837,”coords”:”25.086084,-77.32378″},{“war_url”:”/UserReview-g147416-d1219528-Sea_Lion_Encounter_at_Blue_Lagoon-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”sea lion encounter at blue lagoon”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d1219528-Reviews-Sea_Lion_Encounter_at_Blue_Lagoon-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Sea Lion Encounter at Blue Lagoon, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d1219528-Reviews-Sea_Lion_Encounter_at_Blue_Lagoon-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Sea Lion Encounter at Blue Lagoon, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Sea Lion Encounter at Blue Lagoon”,”name”:”Sea Lion Encounter at Blue Lagoon”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:1219528,”coords”:”25.09906,-77.26872″},{“war_url”:”/UserReview-g147420-d149314-Port_Lucaya_Marketplace-Freeport_Grand_Bahama_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”port lucaya marketplace”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147420-d149314-Reviews-Port_Lucaya_Marketplace-Freeport_Grand_Bahama_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Port Lucaya Marketplace, Freeport, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147420-d149314-Reviews-Port_Lucaya_Marketplace-Freeport_Grand_Bahama_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Port Lucaya Marketplace, Freeport, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Freeport”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147420,”grandparent_place_type”:10011,”highlighted_name”:”Port Lucaya Marketplace”,”name”:”Port Lucaya Marketplace”,”parent_place_type”:10004,”parent_ids”:[147420,147419,147414,147237,19,1],”geo_name”:”Freeport, Bahamas”},”value”:149314,”coords”:”26.5196,-78.65442″},{“war_url”:”/UserReview-g147416-d147519-Parliament_Square-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”parliament square”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d147519-Reviews-Parliament_Square-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Parliament Square, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d147519-Reviews-Parliament_Square-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Parliament Square, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Parliament Square”,”name”:”Parliament Square”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:147519,”coords”:”25.0779,-77.34056″},{“war_url”:”/UserReview-g147420-d3519712-Port_Lucaya_Marina-Freeport_Grand_Bahama_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”port lucaya marina”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147420-d3519712-Reviews-Port_Lucaya_Marina-Freeport_Grand_Bahama_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Port Lucaya Marina, Freeport, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147420-d3519712-Reviews-Port_Lucaya_Marina-Freeport_Grand_Bahama_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Port Lucaya Marina, Freeport, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Freeport”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147420,”grandparent_place_type”:10011,”highlighted_name”:”Port Lucaya Marina”,”name”:”Port Lucaya Marina”,”parent_place_type”:10004,”parent_ids”:[147420,147419,147414,147237,19,1],”geo_name”:”Freeport, Bahamas”},”value”:3519712,”coords”:”26.5196,-78.65442″}],”previewText”:”e.g., Blue Lagoon Island”,”title”:”Distance from”,”trackingName”:”Filters_location”,”units”:”mi”,”useDistSlider”:true,”visible”:true},{“filterType”:”walkability”,”index”:7,”paramName”:”wlk”,”previewText”:null,”title”:”Walkability”,”trackingName”:null,”visible”:true},{“choices”:[{“value”:”5″,”label”:”5 bubbles “,”tracker”:”5 Bubbles”,”count”:14,”selected”:false,”additiveCounts”:false,”disabled”:false},{“value”:”4″,”label”:”4 bubbles & up”,”tracker”:”4 Bubbles and Up”,”count”:59,”selected”:false,”additiveCounts”:false,”disabled”:false},{“value”:”3″,”label”:”3 bubbles & up”,”tracker”:”3 Bubbles and Up”,”count”:79,”selected”:false,”additiveCounts”:false,”disabled”:false},{“value”:”2″,”label”:”2 bubbles & up”,”tracker”:”2 Bubbles and Up”,”count”:81,”selected”:false,”additiveCounts”:false,”disabled”:false}],”filterType”:”trating”,”index”:9,”paramName”:”trating”,”previewText”:null,”title”:”Traveler rating”,”trackingName”:”ta_rating”,”visible”:true},{“choices”:[{“value”:”9572″,”label”:”5 stars”,”tracker”:”5″,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9566″,”label”:”4 stars”,”tracker”:”4″,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9568″,”label”:”3 stars”,”tracker”:”3″,”count”:39,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9569″,”label”:”2 stars”,”tracker”:”2″,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false}],”filterType”:”checkbox”,”index”:10,”paramName”:”zfc”,”showCounts”:false,”title”:”Hotel class”,”trackingName”:”hotel_class”,”visible”:true},{“choices”:[{“value”:”5184″,”label”:”Budget”,”tracker”:”Budget”,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9654″,”label”:”Mid-range”,”tracker”:”Mid-range”,”count”:54,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9650″,”label”:”Luxury”,”tracker”:”Luxury”,”count”:13,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”6216″,”label”:”Family-friendly”,”tracker”:”Family”,”count”:39,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”6296″,”label”:”Business”,”tracker”:”Business”,”count”:16,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”5951″,”label”:”Modern”,”tracker”:”Modern”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false},{“value”:”9624″,”label”:”Romantic”,”tracker”:”Romantic”,”count”:42,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false,”selected”:false,”additiveCounts”:false}],”filterType”:”checkbox”,”index”:11,”paramName”:”zff”,”showCounts”:false,”title”:”Style”,”trackingName”:”style”,”visible”:true},{“filterType”:”hotelBrandSearch”,”index”:12,”modalText”:”Brands and Properties”,”paramName”:”bs”,”placeholderText”:”Search brand or property name”,”poiTypes”:[“hotel”],”presetBrands”:[{“scope”:”brands”,”name”:”Hilton Hotels”,”count”:2,”details”:{“name”:”Hilton Hotels”,”id”:”9220″},”type”:”BRAND”,”value”:”9220″},{“scope”:”brands”,”name”:”Margaritaville”,”count”:1,”details”:{“name”:”Margaritaville”,”id”:”19247″},”type”:”BRAND”,”value”:”19247″},{“scope”:”brands”,”name”:”Marriott Autograph Collection”,”count”:1,”details”:{“name”:”Marriott Autograph Collection”,”id”:”9279″},”type”:”BRAND”,”value”:”9279″},{“scope”:”brands”,”name”:”Hyatt”,”count”:1,”details”:{“name”:”Hyatt”,”id”:”9254″},”type”:”BRAND”,”value”:”9254″},{“scope”:”brands”,”name”:”RIU Hotels & Resorts”,”count”:1,”details”:{“name”:”RIU Hotels & Resorts”,”id”:”9348″},”type”:”BRAND”,”value”:”9348″},{“scope”:”brands”,”name”:”Preferred Hotels & Resorts”,”count”:1,”details”:{“name”:”Preferred Hotels & Resorts”,”id”:”9645″},”type”:”BRAND”,”value”:”9645″},{“scope”:”brands”,”name”:”Courtyard”,”count”:1,”details”:{“name”:”Courtyard”,”id”:”9228″},”type”:”BRAND”,”value”:”9228″},{“scope”:”brands”,”name”:”Comfort Suites”,”count”:1,”details”:{“name”:”Comfort Suites”,”id”:”9247″},”type”:”BRAND”,”value”:”9247″},{“scope”:”brands”,”name”:”Holiday Inn Express”,”count”:1,”details”:{“name”:”Holiday Inn Express”,”id”:”9290″},”type”:”BRAND”,”value”:”9290″},{“scope”:”brands”,”name”:”SLS Hotels”,”count”:1,”details”:{“name”:”SLS Hotels”,”id”:”10507″},”type”:”BRAND”,”value”:”10507″},{“scope”:”brands”,”name”:”Wyndham”,”count”:1,”details”:{“name”:”Wyndham”,”id”:”9229″},”type”:”BRAND”,”value”:”9229″},{“scope”:”brands”,”name”:”Warwick Hotels and Resorts”,”count”:1,”details”:{“name”:”Warwick Hotels and Resorts”,”id”:”9317″},”type”:”BRAND”,”value”:”9317″}],”presetPOI”:null,”previewText”:null,”title”:”Brands”,”trackingName”:”brand”,”visible”:true}],”initialMainListMatchCount”:457},”package”:”e374ol”},{“id”:”component_10″,”props”:{},”package”:”40rCF9″},{“id”:”component_11″,”props”:{“mediaAlbumClient”:”hj”,”offset”:0,”dataStrategy”:”ta”,”locationIds”:[7393370,151947,151422,8538010,9556811,274455,181715,156301,151421,535351,148122,260690,151505,151751,529827,13806793,15363567,1655865,7808499,608598,6483216,149298,266228,611851,1758836,151899,2052671,151678,151383,151430]},”package”:”5aXXJV”},{“id”:”component_13″,”props”:{“initialSelectedFilters”:[{“param”:”zfd”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zfb”,”trackingName”:”brand”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zfc”,”trackingName”:”hotel_class”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zfn”,”trackingName”:”neighborhood”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”distFrom”,”trackingName”:”Filters_location”,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”zff”,”trackingName”:”style”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”zft”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”cat”,”trackingName”:”accommodation”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:”1,2,3″,”displayValues”:{}},{“param”:”pop”,”trackingName”:”popular”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”amen”,”trackingName”:”amenities”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”catTag”,”trackingName”:”accommodation”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”pRange”,”trackingName”:”Filters_price”,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”df”,”trackingName”:”deals”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”blender_tag”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”distFromPnt”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”bs”,”trackingName”:”brand”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”wlk”,”trackingName”:null,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”ns”,”trackingName”:”brand”,”excludeFromClearAll”:false,”filterType”:”single”,”value”:””,”displayValues”:{}},{“param”:”hsf”,”trackingName”:”safety_measures”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}},{“param”:”trating”,”trackingName”:”ta_rating”,”excludeFromClearAll”:false,”filterType”:”multi”,”value”:””,”displayValues”:{}}],”initialSortName”:”Best Value”,”initialDescHeader”:”u003cspan class=’highlight’>457 propertiesu003c/span> in Bahamas”,”initialAvailableFilters”:[{“choices”:[{“value”:”1″,”label”:”Properties taking safety measures”,”tracker”:”Covid19_hotel”,”count”:268,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false}],”filterType”:”checkbox”,”index”:0,”paramName”:”hsf”,”showCounts”:false,”title”:”COVID-19″,”trackingName”:”safety_measures”,”visible”:true},{“choices”:[{“value”:”2″,”label”:”Free cancellation”,”tracker”:”FreeCancellation”,”count”:1,”disabled”:false,”infoTipText”:”Free cancellation is a deal-level filter that applies to a specific partner offer, as displayed below the partneru2019s offer in an individual property. Other offers for the same property may have different benefits.”,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:true},{“value”:”3″,”label”:”Reserve now, pay at stay”,”tracker”:”PayAtStay”,”count”:1,”disabled”:false,”infoTipText”:”Reserve now, pay at stay is a deal-level filter that applies to a specific partner offer, as displayed below the partneru2019s offer in an individual property. Other offers for the same property may have different benefits.”,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”1″,”label”:”Properties with special offers”,”tracker”:”SpecialOffers”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false}],”filterType”:”checkbox”,”index”:1,”paramName”:”df”,”showCounts”:false,”title”:”Deals”,”trackingName”:”deals”,”visible”:true},{“choices”:[],”filterType”:”price”,”index”:2,”numNights”:1,”numRooms”:1,”paramName”:”pRange”,”previewText”:null,”pricingModes”:[{“value”:”BASE_RATE”,”displayValue”:”Price per night”,”disclaimerText”:”This price includes the nightly price of the room rate charged to the consumer, excluding taxes and other fees. “,”isDefault”:true},{“value”:”ALL_IN_RATE”,”displayValue”:”Price + taxes and fees”,”disclaimerText”:”This price includes the nightly price of the room rate charged to the consumer, including taxes and other fees that are known and certain based on the data provided by the user.”,”isDefault”:false},{“value”:”ALL_IN_FULL_STAY”,”displayValue”:”Total stay + taxes and fees”,”disclaimerText”:”This price includes the total stay price of the room rate charged to the consumer for the duration of the stay, including taxes and other fees that are known and certain based on the data provided by the user.”,”isDefault”:false}],”rangeMax”:578,”selectedPricingMode”:”BASE_RATE”,”title”:”Price”,”trackingName”:”Filters_price”,”visible”:true},{“choices”:[{“value”:”trating_4″,”label”:”4 bubbles & up”,”tracker”:”4 Bubbles and Up”,”count”:59,”disabled”:false,”bubbleRating”:4,”displayRatingAsBubbles”:true,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”amen_9179″,”label”:”Breakfast included”,”tracker”:”Free Breakfast”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”zfc_9572″,”label”:”5 stars”,”tracker”:”5 Star”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”catTag_21371″,”label”:”Hotels”,”tracker”:”Hotels & Motels – Lodging Type”,”count”:24,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false}],”filterType”:”checkbox”,”index”:3,”paramName”:”pop”,”previewText”:””,”showCounts”:false,”title”:”Popular”,”trackingName”:”popular”,”visible”:true},{“choices”:[{“value”:”9672″,”label”:”Resorts”,”tracker”:”Resort”,”displayLink”:”/Hotels-g147414-zff8-Bahamas-Hotels.html”,”count”:27,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”21371″,”label”:”Hotels”,”tracker”:”Hotels & Motels – Lodging Type”,”displayLink”:”/Hotels-g147414-Bahamas-Hotels.html”,”count”:24,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”21372″,”label”:”B&Bs & Inns”,”tracker”:”B&Bs & Inns – Lodging Type”,”displayLink”:”/Hotels-g147414-c2-Bahamas-Hotels.html”,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”16545″,”label”:”All-inclusives”,”tracker”:”All Inclusive – Parent”,”displayLink”:”/Hotels-g147414-zft16545-Bahamas-Hotels.html”,”count”:15,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9256″,”label”:”Villas”,”tracker”:”Villa”,”displayLink”:”/Hotels-g147414-c3-zff22-Bahamas-Hotels.html”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9250″,”label”:”Condos”,”tracker”:”Condo”,”displayLink”:”/Hotels-g147414-c3-zff28-Bahamas-Hotels.html”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”21373″,”label”:”Specialty lodgings”,”tracker”:”Specialty Lodging – Lodging Type”,”displayLink”:”/Hotels-g147414-c3-Bahamas-Hotels.html”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9212″,”label”:”Cottages”,”tracker”:”Cottage”,”displayLink”:”/Hotels-g147414-c3-zff38-Bahamas-Hotels.html”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9261″,”label”:”Hostels”,”tracker”:”Hostel”,”displayLink”:”/Hotels-g147414-c3-zff26-Bahamas-Hotels.html”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9200″,”label”:”Lodges”,”tracker”:”Lodge”,”displayLink”:”/Hotels-g147414-c3-zff17-Bahamas-Hotels.html”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false}],”filterType”:”checkbox”,”index”:4,”linkOption”:{“value”:”6″,”label”:”View Vacation Rentals”,”tracker”:”VR”,”displayLink”:”/VacationRentals-g147414-Reviews-Bahamas-Vacation_Rentals.html”,”count”:0,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},”paramName”:”catTag”,”showCounts”:true,”title”:”Property types”,”trackingName”:”accommodation”,”visible”:true},{“choices”:[{“value”:”9176″,”label”:”Free Wifi”,”tracker”:”Free Wifi”,”count”:57,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9179″,”label”:”Breakfast included”,”tracker”:”Free Breakfast”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”6217″,”label”:”Pool”,”tracker”:”Pool”,”count”:52,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9163″,”label”:”Free parking”,”tracker”:”Free Parking”,”count”:61,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11290″,”label”:”Adult pool”,”tracker”:”Adult Pool”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18884″,”label”:”Adults Only”,”tracker”:”Adults Only – Amenities”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9658″,”label”:”Air conditioning”,”tracker”:”Air Conditioning”,”count”:74,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9170″,”label”:”Airport transportation”,”tracker”:”Airport Transportation”,”count”:26,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18895″,”label”:”Badminton”,”tracker”:”Badminton”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9166″,”label”:”Bar/Lounge”,”tracker”:”Bar/Lounge”,”count”:59,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”21778″,”label”:”Beach Access”,”tracker”:”Beach Access – Amenities”,”count”:62,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9156″,”label”:”Beachfront”,”tracker”:”Beach”,”count”:49,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18900″,”label”:”Bicycle Rental”,”tracker”:”Bicycle Rental”,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18903″,”label”:”Bicycles Available”,”tracker”:”Bicycles Available”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18907″,”label”:”Boating”,”tracker”:”Boating”,”count”:11,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18912″,”label”:”Bowling”,”tracker”:”Bowling”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18915″,”label”:”Bridal Suite”,”tracker”:”Bridal Suite”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9187″,”label”:”Business center”,”tracker”:”Business Center”,”count”:20,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18918″,”label”:”Cable / Satellite TV”,”tracker”:”Cable / Satellite TV”,”count”:18,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18919″,”label”:”Canoeing”,”tracker”:”Canoeing – Amenities”,”count”:13,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9171″,”label”:”Casino”,”tracker”:”Casino”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18932″,”label”:”Coffee / Tea Maker”,”tracker”:”Coffee / Tea Maker”,”count”:21,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18931″,”label”:”Coffee Shop”,”tracker”:”Coffee Shop – Amenities”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9667″,”label”:”Conference Facilities”,”tracker”:”Conference Facilities”,”count”:15,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18944″,”label”:”Diving”,”tracker”:”Diving”,”count”:22,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”16305″,”label”:”Electric vehicle charging station”,”tracker”:”Electric Vehicle Charging Station”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9188″,”label”:”Fitness center”,”tracker”:”Fitness Center”,”count”:28,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9162″,”label”:”Free Internet”,”tracker”:”Free Internet”,”count”:66,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”12118″,”label”:”Free Shuttle or Taxi Services”,”tracker”:”Free Shuttle or Taxi Services”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18979″,”label”:”Game Room”,”tracker”:”Game Room”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9183″,”label”:”Golf course”,”tracker”:”Golf Course”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18991″,”label”:”Hiking”,”tracker”:”Hiking – Amenities”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”18993″,”label”:”Horseback Riding”,”tracker”:”Horseback Riding – Amenities”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9182″,”label”:”Hot Tub”,”tracker”:”Hot tub”,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11289″,”label”:”Infinity Pool”,”tracker”:”Infinity Pool”,”count”:6,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”12122″,”label”:”Kids Stay Free”,”tracker”:”Kids Stay Free”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9168″,”label”:”Kitchenette”,”tracker”:”Kitchenette”,”count”:38,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11274″,”label”:”Lazy River”,”tracker”:”Lazy River”,”count”:2,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”19024″,”label”:”Mini Golf”,”tracker”:”Mini Golf”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11259″,”label”:”Ocean View”,”tracker”:”Ocean View”,”count”:41,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9167″,”label”:”Pet friendly”,”tracker”:”Pets Allowed”,”count”:14,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”19047″,”label”:”Pool with View”,”tracker”:”Pool with View”,”count”:10,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11282″,”label”:”Poolside Bar”,”tracker”:”Poolside Bar”,”count”:25,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11441″,”label”:”Private Beaches”,”tracker”:”Private Beach”,”count”:30,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9165″,”label”:”Restaurant”,”tracker”:”Restaurant”,”count”:62,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11257″,”label”:”Rooftop Bar”,”tracker”:”Rooftop Bar”,”count”:4,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11267″,”label”:”Rooftop Pool”,”tracker”:”Rooftop Pool”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11275″,”label”:”Rooftop Terrace”,”tracker”:”Rooftop Terrace”,”count”:2,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9157″,”label”:”Shuttle Bus Service”,”tracker”:”Shuttle Bus Service”,”count”:15,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”19081″,”label”:”Snorkeling”,”tracker”:”Snorkeling – Amenities”,”count”:28,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9169″,”label”:”Spa”,”tracker”:”Spa”,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9160″,”label”:”Suites”,”tracker”:”Suites”,”count”:48,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11261″,”label”:”Swimup Bar”,”tracker”:”Swimup Bar”,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9185″,”label”:”Tennis Court”,”tracker”:”Tennis Court”,”count”:14,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”11276″,”label”:”Water Park”,”tracker”:”Water Park”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”19124″,”label”:”Water Sport Equipment Rentals”,”tracker”:”Water Sport Equipment Rentals”,”count”:5,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9164″,”label”:”Wheelchair access”,”tracker”:”Wheelchair access”,”count”:33,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”19127″,”label”:”Windsurfing”,”tracker”:”Windsurfing – Amenities”,”count”:2,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”19131″,”label”:”Yoga Classes”,”tracker”:”Yoga Classes – Amenities”,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”19132″,”label”:”Yoga Room”,”tracker”:”Yoga Room”,”count”:1,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false}],”filterType”:”checkbox”,”index”:5,”paramName”:”amen”,”placeholderText”:”e.g., free WiFi, breakfast included”,”previewText”:””,”showCounts”:false,”title”:”Amenities”,”trackingName”:”amenities”,”visible”:true},{“choices”:[],”filterType”:”distanceFrom”,”index”:6,”maxDistanceOption”:25,”paramName”:”distFrom”,”placeholderText”:”e.g., Blue Lagoon Island”,”poiTypes”:[“attr”,”air”,”uni”,”train”,”hotel”,”eat”,”theme_park”,”shop”,”general_hospital”,”port”,”ferry”,”corp”],”presetPOI”:[{“war_url”:”/UserReview-g147416-d149861-Blue_Lagoon_Island-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”blue lagoon island”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d149861-Reviews-Blue_Lagoon_Island-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Blue Lagoon Island, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d149861-Reviews-Blue_Lagoon_Island-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Blue Lagoon Island, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Blue Lagoon Island”,”name”:”Blue Lagoon Island”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:149861,”coords”:”25.098429,-77.267975″},{“war_url”:”/UserReview-g147417-d147618-Marine_Habitat_at_Atlantis-Paradise_Island_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”marine habitat at atlantis”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147417-d147618-Reviews-Marine_Habitat_at_Atlantis-Paradise_Island_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Marine Habitat at Atlantis, Paradise Island, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147417-d147618-Reviews-Marine_Habitat_at_Atlantis-Paradise_Island_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Marine Habitat at Atlantis, Paradise Island, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Paradise Island”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147417,”grandparent_place_type”:10011,”highlighted_name”:”Marine Habitat at Atlantis”,”name”:”Marine Habitat at Atlantis”,”parent_place_type”:10010,”parent_ids”:[147417,147415,147414,147237,19,1],”geo_name”:”Paradise Island, Bahamas”},”value”:147618,”coords”:”25.0831,-77.31181″},{“war_url”:”/UserReview-g147420-d1961289-Count_Basie_Square-Freeport_Grand_Bahama_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”count basie square”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147420-d1961289-Reviews-Count_Basie_Square-Freeport_Grand_Bahama_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Count Basie Square, Freeport, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147420-d1961289-Reviews-Count_Basie_Square-Freeport_Grand_Bahama_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Count Basie Square, Freeport, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Freeport”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147420,”grandparent_place_type”:10011,”highlighted_name”:”Count Basie Square”,”name”:”Count Basie Square”,”parent_place_type”:10004,”parent_ids”:[147420,147419,147414,147237,19,1],”geo_name”:”Freeport, Bahamas”},”value”:1961289,”coords”:”26.513472,-78.64228″},{“war_url”:”/UserReview-g147416-d1007837-Aquaventure-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”aquaventure”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d1007837-Reviews-Aquaventure-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Aquaventure, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d1007837-Reviews-Aquaventure-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Aquaventure, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Aquaventure”,”name”:”Aquaventure”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:1007837,”coords”:”25.086084,-77.32378″},{“war_url”:”/UserReview-g147416-d1219528-Sea_Lion_Encounter_at_Blue_Lagoon-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”sea lion encounter at blue lagoon”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d1219528-Reviews-Sea_Lion_Encounter_at_Blue_Lagoon-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Sea Lion Encounter at Blue Lagoon, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d1219528-Reviews-Sea_Lion_Encounter_at_Blue_Lagoon-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Sea Lion Encounter at Blue Lagoon, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Sea Lion Encounter at Blue Lagoon”,”name”:”Sea Lion Encounter at Blue Lagoon”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:1219528,”coords”:”25.09906,-77.26872″},{“war_url”:”/UserReview-g147420-d149314-Port_Lucaya_Marketplace-Freeport_Grand_Bahama_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”port lucaya marketplace”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147420-d149314-Reviews-Port_Lucaya_Marketplace-Freeport_Grand_Bahama_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Port Lucaya Marketplace, Freeport, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147420-d149314-Reviews-Port_Lucaya_Marketplace-Freeport_Grand_Bahama_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Port Lucaya Marketplace, Freeport, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Freeport”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147420,”grandparent_place_type”:10011,”highlighted_name”:”Port Lucaya Marketplace”,”name”:”Port Lucaya Marketplace”,”parent_place_type”:10004,”parent_ids”:[147420,147419,147414,147237,19,1],”geo_name”:”Freeport, Bahamas”},”value”:149314,”coords”:”26.5196,-78.65442″},{“war_url”:”/UserReview-g147416-d147519-Parliament_Square-Nassau_New_Providence_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”parliament square”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147416-d147519-Reviews-Parliament_Square-Nassau_New_Providence_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Parliament Square, Nassau, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147416-d147519-Reviews-Parliament_Square-Nassau_New_Providence_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Parliament Square, Nassau, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Nassau”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147416,”grandparent_place_type”:10011,”highlighted_name”:”Parliament Square”,”name”:”Parliament Square”,”parent_place_type”:10015,”parent_ids”:[147416,147415,147414,147237,19,1],”geo_name”:”Nassau, Bahamas”},”value”:147519,”coords”:”25.0779,-77.34056″},{“war_url”:”/UserReview-g147420-d3519712-Port_Lucaya_Marina-Freeport_Grand_Bahama_Island_Bahamas.html”,”autobroadened”:”false”,”normalized_name”:”port lucaya marina”,”type”:”ATTRACTION”,”title”:”Attractions”,”document_id”:null,”is_vr”:false,”url”:”/Attraction_Review-g147420-d3519712-Reviews-Port_Lucaya_Marina-Freeport_Grand_Bahama_Island_Bahamas.html”,”urls”:[{“url_type”:”attr”,”name”:”Port Lucaya Marina, Freeport, Bahamas”,”type”:”ATTRACTION”,”url”:”/Attraction_Review-g147420-d3519712-Reviews-Port_Lucaya_Marina-Freeport_Grand_Bahama_Island_Bahamas.html”}],”is_broad”:false,”scope”:”global”,”name”:”Port Lucaya Marina, Freeport, Bahamas”,”data_type”:”LOCATION”,”details”:{“placetype”:10021,”parent_name”:”Freeport”,”grandparent_name”:”Bahamas”,”grandparent_id”:147414,”parent_id”:147420,”grandparent_place_type”:10011,”highlighted_name”:”Port Lucaya Marina”,”name”:”Port Lucaya Marina”,”parent_place_type”:10004,”parent_ids”:[147420,147419,147414,147237,19,1],”geo_name”:”Freeport, Bahamas”},”value”:3519712,”coords”:”26.5196,-78.65442″}],”previewText”:”e.g., Blue Lagoon Island”,”title”:”Distance from”,”trackingName”:”Filters_location”,”units”:”mi”,”useDistSlider”:true,”visible”:true},{“filterType”:”walkability”,”index”:7,”paramName”:”wlk”,”previewText”:null,”title”:”Walkability”,”trackingName”:null,”visible”:true},{“choices”:[{“value”:”5″,”label”:”5 bubbles “,”tracker”:”5 Bubbles”,”count”:14},{“value”:”4″,”label”:”4 bubbles & up”,”tracker”:”4 Bubbles and Up”,”count”:59},{“value”:”3″,”label”:”3 bubbles & up”,”tracker”:”3 Bubbles and Up”,”count”:79},{“value”:”2″,”label”:”2 bubbles & up”,”tracker”:”2 Bubbles and Up”,”count”:81}],”filterType”:”trating”,”index”:9,”paramName”:”trating”,”previewText”:null,”title”:”Traveler rating”,”trackingName”:”ta_rating”,”visible”:true},{“choices”:[{“value”:”9572″,”label”:”5 stars”,”tracker”:”5″,”count”:3,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9566″,”label”:”4 stars”,”tracker”:”4″,”count”:17,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9568″,”label”:”3 stars”,”tracker”:”3″,”count”:39,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9569″,”label”:”2 stars”,”tracker”:”2″,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false}],”filterType”:”checkbox”,”index”:10,”paramName”:”zfc”,”showCounts”:false,”title”:”Hotel class”,”trackingName”:”hotel_class”,”visible”:true},{“choices”:[{“value”:”5184″,”label”:”Budget”,”tracker”:”Budget”,”count”:8,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9654″,”label”:”Mid-range”,”tracker”:”Mid-range”,”count”:54,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9650″,”label”:”Luxury”,”tracker”:”Luxury”,”count”:13,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”6216″,”label”:”Family-friendly”,”tracker”:”Family”,”count”:39,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”6296″,”label”:”Business”,”tracker”:”Business”,”count”:16,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”5951″,”label”:”Modern”,”tracker”:”Modern”,”count”:7,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false},{“value”:”9624″,”label”:”Romantic”,”tracker”:”Romantic”,”count”:42,”disabled”:false,”bubbleRating”:0,”displayRatingAsBubbles”:false,”starRating”:0,”displayRatingAsStars”:false,”highlighted”:false}],”filterType”:”checkbox”,”index”:11,”paramName”:”zff”,”showCounts”:false,”title”:”Style”,”trackingName”:”style”,”visible”:true},{“filterType”:”hotelBrandSearch”,”index”:12,”modalText”:”Brands and Properties”,”paramName”:”bs”,”placeholderText”:”Search brand or property name”,”poiTypes”:[“hotel”],”presetBrands”:[{“scope”:”brands”,”name”:”Hilton Hotels”,”count”:2,”details”:{“name”:”Hilton Hotels”,”id”:”9220″},”type”:”BRAND”,”value”:”9220″},{“scope”:”brands”,”name”:”Margaritaville”,”count”:1,”details”:{“name”:”Margaritaville”,”id”:”19247″},”type”:”BRAND”,”value”:”19247″},{“scope”:”brands”,”name”:”Marriott Autograph Collection”,”count”:1,”details”:{“name”:”Marriott Autograph Collection”,”id”:”9279″},”type”:”BRAND”,”value”:”9279″},{“scope”:”brands”,”name”:”Hyatt”,”count”:1,”details”:{“name”:”Hyatt”,”id”:”9254″},”type”:”BRAND”,”value”:”9254″},{“scope”:”brands”,”name”:”RIU Hotels & Resorts”,”count”:1,”details”:{“name”:”RIU Hotels & Resorts”,”id”:”9348″},”type”:”BRAND”,”value”:”9348″},{“scope”:”brands”,”name”:”Preferred Hotels & Resorts”,”count”:1,”details”:{“name”:”Preferred Hotels & Resorts”,”id”:”9645″},”type”:”BRAND”,”value”:”9645″},{“scope”:”brands”,”name”:”Courtyard”,”count”:1,”details”:{“name”:”Courtyard”,”id”:”9228″},”type”:”BRAND”,”value”:”9228″},{“scope”:”brands”,”name”:”Comfort Suites”,”count”:1,”details”:{“name”:”Comfort Suites”,”id”:”9247″},”type”:”BRAND”,”value”:”9247″},{“scope”:”brands”,”name”:”Holiday Inn Express”,”count”:1,”details”:{“name”:”Holiday Inn Express”,”id”:”9290″},”type”:”BRAND”,”value”:”9290″},{“scope”:”brands”,”name”:”SLS Hotels”,”count”:1,”details”:{“name”:”SLS Hotels”,”id”:”10507″},”type”:”BRAND”,”value”:”10507″},{“scope”:”brands”,”name”:”Wyndham”,”count”:1,”details”:{“name”:”Wyndham”,”id”:”9229″},”type”:”BRAND”,”value”:”9229″},{“scope”:”brands”,”name”:”Warwick Hotels and Resorts”,”count”:1,”details”:{“name”:”Warwick Hotels and Resorts”,”id”:”9317″},”type”:”BRAND”,”value”:”9317″}],”presetPOI”:null,”previewText”:null,”title”:”Brands”,”trackingName”:”brand”,”visible”:true}]},”package”:”QZysVi”},{“id”:”component_14″,”props”:{“offsetTop”:”106″,”size”:”300×250-300×600″,”minWidth”:”295″,”narrowSize”:”160×600″},”package”:”SSbwxm”},{“id”:”component_15″,”props”:{“hotels”:[{“longitude”:-73.93247,”latitude”:22.69673},{“longitude”:-74.23381,”latitude”:22.206732},{“longitude”:-73.87837,”latitude”:22.542826},{“longitude”:-74.22111,”latitude”:22.220707},{“longitude”:-76.82236,”latitude”:24.591858},{“longitude”:-74.53772,”latitude”:24.060736},{“longitude”:-74.53314,”latitude”:24.071144},{“longitude”:-74.48919,”latitude”:23.958906},{“longitude”:-74.53746,”latitude”:24.059723},{“longitude”:-74.55631,”latitude”:23.95987},{“longitude”:-75.78603,”latitude”:23.5177},{“longitude”:-75.91632,”latitude”:23.61459},{“longitude”:-75.80428,”latitude”:23.52912},{“longitude”:-75.88281,”latitude”:23.590712},{“longitude”:-75.7666,”latitude”:23.5},{“longitude”:-75.76586,”latitude”:23.506926},{“longitude”:-75.9157,”latitude”:23.627172},{“longitude”:-75.80538,”latitude”:23.525831},{“longitude”:-75.91759,”latitude”:23.622904},{“longitude”:-75.78643,”latitude”:23.518097}],”zoom”:11,”geoPoint”:{“longitude”:-77.35199,”latitude”:25.043304},”disableWhileLoading”:false,”toggleType”:”STATIC_MAP”},”package”:”mjTUZq”},{“id”:”component_17″,”props”:{},”package”:”V7qLvM”},{“id”:”component_19″,”props”:{},”package”:”n69w9j”},{“id”:”@ta/brand.qualtrics-survey_component_20″,”props”:{},”package”:”n69w9j”},{“id”:”@ta/brand.qualtrics-survey_component_21″,”props”:{},”package”:”n69w9j”},{“id”:”@ta/brand.qualtrics-survey_component_22″,”props”:{},”package”:”n69w9j”},{“id”:”photo-carousel-with-ribbon_component_23″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:1,”locationId”:649623,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”bd1e5189-eb88-4def-9f33-4e5da2f91c9e”,”ribbons”:[],”isSponsored”:true},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:649623_component_25″,”props”:{“locationId”:649623},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_26″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:2,”locationId”:149298,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”14bdcfae-4e4d-404a-b5fe-852502b1af2c”,”ribbons”:[{“text”:”2020 Travelers’ Choice”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”tc”},{“text”:”All Inclusive”,”tooltip”:”This accommodation offers all inclusive options. Availability and additional pricing details can be found on our partner sites.”,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”ai”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:149298_component_28″,”props”:{“locationId”:149298},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_29″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:3,”locationId”:260690,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”07c95bfd-3260-4cb9-9074-b956df8c11a3″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:260690_component_31″,”props”:{“locationId”:260690},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_32″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:4,”locationId”:181715,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”2e6a1ecc-0814-4537-8564-9fd28a7ec78c”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:181715_component_34″,”props”:{“locationId”:181715},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_35″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:5,”locationId”:151422,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”57e9d66d-1877-42df-9742-8ce386e7511b”,”ribbons”:[{“text”:”Breakfast included”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”bi”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151422_component_37″,”props”:{“locationId”:151422},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_38″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:6,”locationId”:608598,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”81244372-1ac1-4a62-bfcc-a30ec22afb04″,”ribbons”:[{“text”:”2020 Travelers’ Choice”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”tc”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:608598_component_40″,”props”:{“locationId”:608598},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_41″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:7,”locationId”:242124,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”e561ceaf-2477-486a-9867-579d1c40b59c”,”ribbons”:[],”isSponsored”:true},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:242124_component_43″,”props”:{“locationId”:242124},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_44″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:8,”locationId”:7393370,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”dbb25bb0-ac45-4ca0-853f-b4c51d1476ad”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:7393370_component_46″,”props”:{“locationId”:7393370},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_47″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:9,”locationId”:148122,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”9977fe3e-cd83-4aea-bf3a-1629aa2aadb1″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:148122_component_49″,”props”:{“locationId”:148122},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_50″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:10,”locationId”:8538010,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”97fd4135-6d6d-46a8-99d1-a5e13d7b076f”,”ribbons”:[{“text”:”Breakfast included”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”bi”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:8538010_component_52″,”props”:{“locationId”:8538010},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_53″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:11,”locationId”:151505,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”8e57fd3c-c117-428b-b70d-510e30d5973c”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151505_component_55″,”props”:{“locationId”:151505},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_56″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:12,”locationId”:274455,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”fb58fdd7-a5c6-4050-8037-e65849ce6121″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:274455_component_58″,”props”:{“locationId”:274455},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_59″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:13,”locationId”:151751,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”b99026e7-c493-4816-ba3d-fbbd9eec6002″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151751_component_61″,”props”:{“locationId”:151751},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_62″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:14,”locationId”:535351,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”01b458cb-063f-46e4-a0fb-4b5a78720b23″,”ribbons”:[{“text”:”Breakfast included”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”bi”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:535351_component_64″,”props”:{“locationId”:535351},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_65″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:15,”locationId”:151947,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”1d5f9e81-9b43-41ea-8e91-aec458a54931″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151947_component_67″,”props”:{“locationId”:151947},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_68″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:16,”locationId”:9556811,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”69d8ee40-a542-4359-9e3f-4b524e623764″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:9556811_component_70″,”props”:{“locationId”:9556811},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_71″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:17,”locationId”:15363567,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”3c668ef7-4b7a-432b-bf2e-21c84193453f”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:15363567_component_73″,”props”:{“locationId”:15363567},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_74″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:18,”locationId”:156301,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”31a929bb-d6aa-4011-acba-345c23b3cf62″,”ribbons”:[{“text”:”Breakfast included”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”bi”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:156301_component_76″,”props”:{“locationId”:156301},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_77″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:19,”locationId”:151383,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”c23b7429-2876-4678-8173-23f5d76db394″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151383_component_79″,”props”:{“locationId”:151383},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_80″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:20,”locationId”:6483216,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”0a1a9077-435a-478b-a98c-b1da4590d2bb”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:6483216_component_82″,”props”:{“locationId”:6483216},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_83″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:21,”locationId”:7808499,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”ddbd9efb-9bd5-43f8-bf2c-7eb3d247be4b”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:7808499_component_85″,”props”:{“locationId”:7808499},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_86″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:22,”locationId”:529827,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”7830907b-2a81-45a8-a827-05aee745201a”,”ribbons”:[{“text”:”Best Seller”,”tooltip”:”This is one of the most booked hotels in Bahamas over the last 60 days.”,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”bs”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:529827_component_88″,”props”:{“locationId”:529827},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_89″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:23,”locationId”:151421,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”655f4fdd-e966-4ed6-a39a-815cb9f62f23″,”ribbons”:[{“text”:”Breakfast included”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”bi”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151421_component_91″,”props”:{“locationId”:151421},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_92″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:24,”locationId”:13806793,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”10126bf8-18b5-4ec5-b5db-77d3aa572399″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:13806793_component_94″,”props”:{“locationId”:13806793},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_95″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:25,”locationId”:2052671,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”0ebb2279-1602-42da-a4ec-194d43599fbf”,”ribbons”:[{“text”:”All Inclusive”,”tooltip”:”This accommodation offers all inclusive options. Availability and additional pricing details can be found on our partner sites.”,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”ai”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:2052671_component_97″,”props”:{“locationId”:2052671},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_98″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:26,”locationId”:151899,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”ebd88c15-9372-4e50-bee8-2b33d6d16833″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151899_component_100″,”props”:{“locationId”:151899},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_101″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:27,”locationId”:611851,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”ae3a75db-27db-4f36-afe6-36047940f1ad”,”ribbons”:[{“text”:”Top Rated”,”tooltip”:”This is one of the highest rated properties in Bahamas”,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”tr”},{“text”:”All Inclusive”,”tooltip”:”This accommodation offers all inclusive options. Availability and additional pricing details can be found on our partner sites.”,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”ai”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:611851_component_103″,”props”:{“locationId”:611851},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_104″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:28,”locationId”:1758836,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”93c8f64e-f960-4499-9902-f83199fdc74d”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:1758836_component_106″,”props”:{“locationId”:1758836},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_107″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:29,”locationId”:1655865,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”463385b8-0e83-407d-97c2-17228a6c7931″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:1655865_component_109″,”props”:{“locationId”:1655865},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_110″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:30,”locationId”:266228,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”d681897e-f3fc-4ce2-98d2-2cea57445403″,”ribbons”:[{“text”:”Breakfast included”,”tooltip”:null,”showIcon”:false,”showOnMobile”:true,”color”:null,”icon”:null,”snippet”:null,”idmSURUrl”:null,”idmAspectTrackingText”:null,”type”:”bi”}],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:266228_component_112″,”props”:{“locationId”:266228},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_113″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:31,”locationId”:151678,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”d8c065bb-ac9d-403c-8bc4-46698298682e”,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151678_component_115″,”props”:{“locationId”:151678},”package”:”Jbh1_o”},{“id”:”photo-carousel-with-ribbon_component_116″,”props”:{“isPageLoad”:true,”thumbnailOnly”:false,”shadowTrackRibbons”:[],”impressionKey”:”9901753c60804ac2ae9cdbe696cc03e0″,”listIndex”:32,”locationId”:151430,”dataStrategy”:”a”,”useImageTag”:true,”maxRibbonCount”:2,”listingKey”:”0151c69f-c70c-49b8-a7d8-ff3895ab4161″,”ribbons”:[],”isSponsored”:false},”package”:”H5mpt_”},{“id”:”@ta/hotels.list-sanitization-icon:151430_component_118″,”props”:{“locationId”:151430},”package”:”Jbh1_o”},{“id”:”component_3″,”props”:{},”package”:”GVTdZB”}],”ssrPreloadedModules”:[“QZysVi/nBtf9e”,”RSaHg-“,”xJD91H”,”EkR174/X0Nl9C”,”-i3PJS”,”1lTcUI”,”EkR174/gGjYrO”,”PCLJ0D/6Vq8GY”,”hiEEdo”,”9cEmQ6″,”rH30tE”,”5-GvUO/gmVWZD”,”6gU0uK”,”PCLJ0D/YtE_eG”,”thFMrK/RQFZYD”,”4CrHtN”,”q9bHm9″,”bsx_H5″,”wPStQ3″,”S07X1M/v-c-G4″,”wAve59″,”neHaXV”,”x5AnXu/xbE271″,”lMO0v3/GzJMLX”,”pBQaod”,”m7h4d5″,”g9oDmO”,”VXzhcp/czmiNy”,”a3FWKi”,”Pcs5Nw”,”454gno”,”MlvYp6/X2gdwD”,”oN8Ht7/95Lu0z”,”5W0bHx”,”KOcTBB”,”fmDsJ-“,”kNh38S”,”7YQBl2/BWxTmr”,”j5kmnF”]}};(this.$WP=this.$WP||[]).push([‘@ta/features’,function(e){return [function(){e(‘default’,__WEB_CONTEXT__.pageManifest.features);},[]]},[]]);]]> 2 && arguments[2] !== undefined ? arguments[2] : new Date().getTime() + DEFAULT_TTL_HOUR; var store = _getStore() || {}; _setDataByCallbackWithStore(key, processCallback, ttl, store); _saveStore(store); } function _setDataByCallbackWithStore(uefKey, processCallback, ttl, store) { if (!_isFunction(processCallback)) { return; } var data = processCallback.call(null, store.hasOwnProperty(uefKey) && store[uefKey] || {}); if (!data) { return; } data.ttl = ttl; store[uefKey] = data; } function findDataWithCallback(key, dataConsumer) { var deleteKeyAfterReading = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var store = _getStore(); if (!store) { return; } _consumeDataWithStore(key, dataConsumer, deleteKeyAfterReading, store); _saveStore(store); } function _consumeDataWithStore(uefKey, dataConsumer, deleteEventTracking, store) { if (!_isFunction(dataConsumer)) { return; } var data = store.hasOwnProperty(uefKey) && store[uefKey]; if (!data) { return; } dataConsumer.call(null, data); if (deleteEventTracking) { delete store[uefKey]; } } function _getStore() { if (!taLocalStorage || !taLocalStorage.enabled) { return null; } var store = taLocalStorage.getObject(STORE_KEY); _cleanDeadKeysFromStore(store); return store; } function _cleanDeadKeysFromStore(storeRef) { if (storeRef) { var dateTimeNow = new Date().getTime(); for (var key in storeRef) { if (storeRef.hasOwnProperty(key)) { var data = storeRef[key]; if (data && data.ttl && data.ttl 3 && arguments[3] !== undefined ? arguments[3] : null; if (!locationId || !eventDestinationImpressionKey) { return; } if (_trackOnServlet) { var currentServlet = window.pageServlet; if (currentServlet && currentServlet.indexOf(_trackOnServlet) = 0; } function _sendGARecord( overrideTrkFn, locationId, url, eventDestinationImpressionKey, usrEventObjContainingListImpression) { if (!eventDestinationImpressionKey || !usrEventObjContainingListImpression || !usrEventObjContainingListImpression.ik) { return; } if (_isFunction(overrideTrkFn)) { overrideTrkFn.call(null, eventDestinationImpressionKey, _pageAction, usrEventObjContainingListImpression.ik, locationId); } else if (_trackingFn) { _trackingFn.call(null, eventDestinationImpressionKey, _pageAction, usrEventObjContainingListImpression.ik, locationId, url); } else { require([‘babel/babel-helpers’, ‘trjs!ta/Core/TA.Record’], function (babelHelpers, taRecord) { taRecord.addGARecordMevt(eventDestinationImpressionKey, _pageAction, usrEventObjContainingListImpression.ik, locationId, url); }); } } function _buildUEFKey(locationId) { if (!locationId) { return; } var dateArray = ta && ta.page && ta.page.getDates && ta.page.getDates(‘STAYDATES’); if (dateArray && !Array.isArray(dateArray)) { return; } var dates = dateArray.filter(function (e) { return e instanceof Date; }); if (!dates || dates.length !== 2) { return null; } var localCheckIn = dates[0]; var localCheckOut = dates[1]; var ciString = ” + localCheckIn.getYear() + localCheckIn.getMonth() + localCheckIn.getDate(); var coString = ” + localCheckOut.getYear() + localCheckOut.getMonth() + localCheckOut.getDate(); return ” + _pageAction + ciString + coString + locationId; } return { shouldTrackForIBClickThru: shouldTrackForIBClickThru, processEvent: processEvent, processAndTrackClickThrough: processAndTrackClickThrough, trackEvent: trackEvent }; } function _isFunction(func) { return func instanceof Function; } function _buildClickThruUEFData(impressionKey, dataInStoreRef) { if (!dataInStoreRef) { dataInStoreRef = {}; } dataInStoreRef[EVT_DATA_KEY] = impressionKey; return dataInStoreRef; } return LocationDateSpecificClickThru; }); define(‘hotels/listingKeyPlugin’, [‘babel/babel-helpers’, ‘utils/cookieutils’], function (babelHelpers, cookieUtils) { var LISTING_KEY_COOKIE_NAME = ‘hotelListingKey’; var _setListingKeyCookie = function _setListingKeyCookie(listingKey) { return cookieUtils.setCookieInSeconds(LISTING_KEY_COOKIE_NAME, listingKey, { duration: 10, ignoreVersion: true }); }; return { setListingKeyCookie: _setListingKeyCookie }; }); define(‘hotels/listingClick’, [‘vanillajs’, ‘utils/waiton’, ‘ta/Core/TA.FireEvent’, ‘hotels/listingKeyPlugin’], function(vanillajs, waitOn, taFireEvent, listingKeyPlugin) { var ASYNC_ACTIONS_TIMEOUT = 250; var LISTING_CLICK_EVENT = ‘hotels.listing_click’; var _preclickActions = []; var registerAsyncPreclick = function(action) { if (typeof action === ‘function’) { _preclickActions.push(action); } }; var clickEvent = function(elem, listingKey, redirectAction, isNewTab) { taFireEvent.fireEvent(LISTING_CLICK_EVENT, elem, listingKey); listingKeyPlugin.setListingKeyCookie(listingKey); if (isNewTab) { redirectAction(); _preclickActions.forEach(function (action) { action(elem, listingKey, function() {}); }); } else { var boundActions = _preclickActions.map(function(action) { return action.bind(null, elem, listingKey); }); waitOn(boundActions, redirectAction, ASYNC_ACTIONS_TIMEOUT); } }; return { LISTING_CLICK_EVENT: LISTING_CLICK_EVENT, registerAsyncPreclick: registerAsyncPreclick, clickEvent: clickEvent }; }); define(‘hotels/hotelinfocard/Events’, [‘mixins/Events’], function(Events) { ‘use strict’; return new Events( ‘toggleButtonClicked’, ‘infoCardToggled’, ‘infoCardExpanded’, ‘tabActivated’, ‘twoColumnTabDataLoaded’, ‘dealsTabDataLoaded’, ‘deferredContentLoaded’ ); }); define(‘hotels/tracking/clickthrough’, [‘babel/babel-helpers’, ‘common/trackingStreams’], function (babelHelpers, tracking) { var TRACK_SERVLETS = { “Hotels”: “H”, “SmartDeals”: “SD”, “MobileSmartDeals”: “MSD”, “HotelHighlight”: “HH”, “MobileHotelHighlight”: “MHH”, “HotelsNear”: “HN”, “HotelsList”: “HL” }; function track(elmtType, listingKey, impressionKey, locationId, trackingTreePlacementName, isNewTab) { var pageServlet = window.pageServlet; var source = TRACK_SERVLETS[pageServlet]; if (!listingKey) { tracking.error(‘Missing listing key on click through to Hotel Review. This is a major data concern and should not be ignored.’); return; } if (!source || !impressionKey || !locationId) { return; } var elmtKeys = { “lk”: listingKey, “ik”: impressionKey, “lid”: locationId, “et”: elmtType, “ttpn”: trackingTreePlacementName }; require([‘babel/babel-helpers’, ‘trjs!ta/Core/TA.Record’], function (babelHelpers, taRecord) { if (isNewTab) { taRecord.trackInteractions(pageServlet, elmtKeys, “LISTING_TO_HR_CLICK”); } else { taRecord.addInteractionsMEVT(source, elmtKeys, “LHR”); } }); } return { track: track }; }); define(‘hotels/ClickSourceTracking’, [“common/trackingStreams”], function(tracking) { var CLICK_SOURCE = { Photo: { trackingName: “hotelcell_thumbnail”, clickThrough: true }, HotelName: { trackingName: “hotelcell_name”, clickThrough: true }, ReviewCount: { trackingName: “hotelcell_reviews”, clickThrough: true }, ReviewCountNoAnchor: { trackingName: “hotelcell_reviews”, clickThrough: true }, HotelListing: { trackingName: “hotelcell_listing”, clickThrough: true }, Distance: { trackingName: “hotelcell_distance”, clickThrough: false }, CarouselArrow: { trackingName: “hotelcell_carousel_arrow”, clickThrough: false }, ChevronPrice: { trackingName: “hotelcell_chevron_price”, clickThrough: true }, PriceMessage: { trackingName: “hotelcell_price_message”, clickThrough: true }, PriceMessageOpenTextLinks: { trackingName: “hotelcell_price_message”, clickThrough: true }, BubbleRating: { trackingName: “hotelcell_bubble_rating”, clickThrough: true }, BubbleRatingTrackingOnly: { trackingName: “hotelcell_bubble_rating”, clickThrough: false }, HotelInfoCardToggle: { trackingName: “hotelcell_info_card_toggle”, clickThrough: false }, OtherIcon: {trackingName: “hotelcell_icon”, clickThrough: false }, OtherIconLabel: {trackingName: “hotelcell_icon_label”, clickThrough: false }, PopIndex: {trackingName: “hotelcell_popindex”, clickThrough: false }, SavingsAlert: {trackingName: “hotelcell_savings”, clickThrough: false }, SocialProof: {trackingName:”hotelcell_social_proof”, clickThrough: false }, ViewAllDeals: {trackingName: “hotelcell_viewall”, clickThrough: false }, ViewAllDealsClose: {trackingName: “hotelcell_viewallclose”, clickThrough: false }, ViewAllDealsClickThrough: {trackingName: “hotelcell_viewall”, clickThrough: true }, MetaOther: {trackingName: “hotelcell_meta_other”, clickThrough: false }, IndicatorDot: { trackingName: “hotelcell_carousel_dot_click”, clickThrough: false }, SaveToTripBookmark: {trackingName: “hotelcell_bookmark”, clickThrough: false}, AspectHighlight: { trackingName: “hotelcell_aspects”, clickThrough: false}, UnavailableHLink: {trackingName: “unavailable_h_link”, clickThrough: true}, TcBadge: { trackingName: “tc_badge”, clickThrough: false }, SponsoredPill: { trackingName: “sponsored_pill”, clickThrough: false }, UnavailableTextLink: { trackingName: “unavailable_link”, clickThrough: false }, NoAvailMessage: { trackingName: “no_avail_message”, clickThrough: false }, UnavailableDropdownTextLink: { trackingName: “unavailable_dropdown_link”, clickThrough: false }, UnavailableDropdownTextLinkIcon: { trackingName: “unavailable_dropdown_link_icon”, clickThrough: false }, AccommodationCategoryLabel: { trackingName: “accommodation_category_label”, clickThrough: false }, SpecialOfferIcon: { trackingName: “special_offer_icon”, clickThrough: false }, SpecialOfferLabel: { trackingName: “special_offer_label”, clickThrough: false }, SpecialMessageContainer: { trackingName: “special_message_container”, clickThrough: false }, SpecialMessageIcon: { trackingName: “special_message_icon”, clickThrough: false }, SpecialMessageLabel: { trackingName: “special_message_label”, clickThrough: false }, NeighborhoodLabel: { trackingName: “neighborhood_label”, clickThrough: false }, NeighborhoodIcon: { trackingName: “neighborhood_icon”, clickThrough: false }, HRHotelName: { trackingName: “hr_hotel_name”, clickThrough: false }, HRHeaderPopIndex: { trackingName: “hr_header_pop_index”, clickThrough: false }, HRTripSearchLabel: { trackingName: “hr_trip_search_label”, clickThrough: false }, HRSavingsAlert: { trackingName: “hr_savings_alert”, clickThrough: false }, HRUrgencyAlert: { trackingName: “hr_urgency_alert”, clickThrough: false }, HRMetaHeader: { trackingName: “hr_meta_header”, clickThrough: false }, HRMetaDisclaimer: { trackingName: “hr_meta_disclaimer”, clickThrough: false }, UnavailableHRTextLink: { trackingName: “unavailable_hr_link”, clickThrough: false }, UnavailableHRTextLinkIcon: { trackingName: “unavailable_hr_link_icon”, clickThrough: false }, UnavailableHRMobileTextLink: { trackingName: “unavailable_hr_mobile_link”, clickThrough: false }, UnavailableHRMobileTextLinkIcon: { trackingName: “unavailable_hr_mobile_link_icon”, clickThrough: false } }; function _findClickInfo(el, parent) { while (el && el.getAttribute) { if (el.getAttribute(‘data-clickSource’)) { return { ‘source’: el.getAttribute(‘data-clickSource’), ‘label’: el.getAttribute(‘data-clickSourceLabel’) }; } if (el === parent) { break; } el = el.parentNode; } return {}; } function _findAttribute(attribute, el, parent) { while (el && el.getAttribute) { var atThisLevel = el.getAttribute(attribute); if (atThisLevel) { return atThisLevel; } if (el === parent) { break; } el = el.parentNode; } return null; } function _getTrackingName(id) { return CLICK_SOURCE[id] && CLICK_SOURCE[id].trackingName || “unknown:” + id; } function _getClickThrough(id) { return !!(CLICK_SOURCE[id] && CLICK_SOURCE[id].clickThrough); } function _trackSource(source, action, label) { return tracking.trackEvent(_getTrackingName(source), action, label); } function _trackElement(el, parent, action, label) { var info = _findClickInfo(el, parent); if (info.source) { _trackSource(info.source, action || “CLICK”, label || info.label); } } return { findClickInfo: _findClickInfo, findAttribute: _findAttribute, trackingName: _getTrackingName, clickThrough: _getClickThrough, trackSource: _trackSource, trackElement: _trackElement }; } ); define(‘ta/util/openNewTab’, [‘utils/browserutils’, ‘ta/Browser’, ‘ta/util/Cookie’], function(Browser, taBrowser, taCookie) { return function(url) { var win; if (!taBrowser.isIE10Metro()) { if (Browser.ie && !taBrowser.isIE9orHigher()) { win = window.open(url, ‘_blank’, ‘location=yes,resizable=yes,menubar=yes,scrollbars=yes,toolbar=yes,width=’ + document.documentElement.clientWidth + ‘,height=’ + document.documentElement.clientHeight); } else { win = window.open(url, ‘_blank’); } } if (!win || win.closed || typeof win.closed===’undefined’) { taCookie.setPIDCookie(38821); window.location = url; return false; } return win; } }); require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’meta_hsx_responsive_listing’,’handlers’,[‘handlers’]); /*jshint nonew: false, unused: vars */ define([“widget”, “common/trackingStreams”, “utils/throttle”, “utils/debounce”, “utils/VisibilityChecker”, “hotels/tracking/UEF-LocationDateSpecificClickThru”, “hotels/listingClick”, ‘utils/responsive’, ‘hotels/hotelinfocard/Events’, ‘hotels/tracking/clickthrough’, ‘hotels/recentlyViewedHotels’, ‘hotels/ClickSourceTracking’, ‘widget/components’, ‘ta/Core/TA.FireEvent’, ‘ta/util/openNewTab’, ‘common/trackingStreams’, ‘ta/Core/TA.LocalStorage’], function (globalContext, widget, tracking, throttle, debounce, VisibilityChecker, UEFClickThruTracker, hotelListingClick, Responsive, infoCardEvents, clickthrough, recentlyViewedHotels, clickSourceTracking, Components, taFireEvent, openNewTab, trackingStreams, localStorage) { var RESPONSIVE_LISTING_RENDERED_EVENT = ‘hotels.responsive_listing_rendered’; var RESPONSIVE_LISTING_SP_CLICK = ‘hotels.responsive_sp_click’; var isLBInterstitialCurrentlyDisplayedKey = ‘isLBInterstitialCurrentlyDisplayed’; var clickThruTracker = new UEFClickThruTracker({ pageAction: “ct_l2hr” // click thru list to hr }); var EVENT_NAME_BEST_SELLER_SEEN = ‘bestSellerSeen’; var EVENT_NAME_BEST_SELLER_EXISTS = ‘bestSellerExists’; var PAGE_PROPERTY_BEST_SELLER_SEEN = ‘in_view’; var PAGE_PROPERTY_BEST_SELLER_EXISTS = ‘loaded’; var CLASSNAME_RECENTLY_VIEWED = “recently_viewed”; var _listing = widget.element.querySelector(“.listing”); var _listingIdElmt = widget.element.querySelector(“[data-locationId]”); var _locId = _listingIdElmt && _listingIdElmt.getAttribute(‘data-locationId’) || 0; var _trackRecentlyViewed = _listing.hasAttribute(“data-show-recently-viewed”); var _showRecentlyViewed = _listing.getAttribute(“data-show-recently-viewed”) === “true”; var _isRecentlyViewedOnPageload = !!_listing.getAttribute(“data-is-recently-viewed”); _fireListingRenderEvent(); // names of click sources that direct to #REVIEWS var REVIEW_LINK_SOURCES = [‘ReviewCount’, ‘BubbleRating’]; // This fireEvent is used to notify hotels_sponsored_listing_data/handlers.js function _fireListingRenderEvent() { var _metaListing = widget.element.querySelector(“.meta_listing”); var listingKey = _metaListing && _metaListing.getAttribute(‘data-listingKey’); taFireEvent.fireEvent(RESPONSIVE_LISTING_RENDERED_EVENT, _metaListing, listingKey); } function _generateTrackingList() { return Object.keys(globalContext.trackIndices).map(function (i) { return “.prw_” + widget.name + ” [data-index=”” + i + “”]”; }); } function listingClick(event, elem) { var isReviewClick = false; var info = {}; var isHotelsMetaListingContent = Components.contains(event.target, elem, ‘@ta/hotels.hotels-meta-listing-content’); // This is a fairly meh hack as we shouldn’t be relying on data-attributes for tracking webcomponents. if (Components.contains(event.target, elem, ‘@ta/trips.save-to-trip’)) { info = { source: ‘SaveToTripBookmark’ }; } else if (Components.contains(event.target, elem, ‘@ta/hotels.list-optimus-offer’)) { info = { source: ‘ListOptimusOffer’ }; } else if (isHotelsMetaListingContent) { info = { source: ‘HotelsMetaListingContent’ }; } else { info = clickSourceTracking.findClickInfo(event.target); } var listing = widget.element.querySelector(“.meta_listing”); var detailUrl = listing && listing.getAttribute(‘data-url’); // HOT-33322 for feature clickable_hotel_cells_white_space – we want clickable whitespace for the whole cell if ((!info.source || info.source === ‘PopIndex’) && listing.hasAttribute(‘data-clickableWhitespaceDT’) && detailUrl) { var _listingKey = listing.getAttribute(‘data-listingKey’); hotelListingClick.clickEvent(event.target, _listingKey, function () { tracking.trackEvent(‘hotel_cell_white_space’, ‘click’, ”); openNewTab(detailUrl); }, true); return; } if (!info.source) { clickSourceTracking.trackSource(“HotelListing”); //do not use the data-clicksource=”HotelListing” on DW since it will make the whole cell clickable. if (event.target.href) { window.open(event.target.href, event.target.target || “_blank”); } return; } else if (info.source === ‘HotelInfoCardToggle’) { // HotelInfoCardToggle has its own handler return; } var url = detailUrl; if (!url) { return false; } var locid = listing.getAttribute(‘data-locationId’); var index = listing.getAttribute(‘data-index’); var impressionKey = listing.getAttribute(‘data-impKey’); var listingKey = listing.getAttribute(‘data-listingKey’); var trackingTreePlacementName = listing.getAttribute(‘data-ttpn’); var amenityRibbonTrackingProperties = listing.getAttribute(‘data-amenityRibbonTrackingProperties’); if (!isHotelsMetaListingContent) { clickSourceTracking.trackSource(info.source, locid, info.label); } var shouldTrack = !listing.hasAttribute(‘data-noClickTrack’); if (shouldTrack && clickSourceTracking.clickThrough(info.source)) { clickthrough.track(info.source, listingKey, impressionKey, locid, trackingTreePlacementName, true); } if (REVIEW_LINK_SOURCES.indexOf(info.source) >= 0) { url += “#REVIEWS”; isReviewClick = true; } else if (Responsive.mobile() && (info.source === “ViewAllDealsClickThrough” || info.source === “PriceMessageOpenTextLinks”)) { // Adding this hash to the url shows all deals on HR clickthrough. // Not sure why poiHeading was the naming choice here. url += “#poiHeading”; } else if (Responsive.mobile() && info.source === “PriceMessageCheckRatesExpand” && url.indexOf(‘?’) === -1 && url.indexOf(‘#’) === -1) { url += “?expandDeals#CHECK_RATES_CONT”; } else if (info.source === “ViewAllDeals” || info.source === “ViewAllDealsClose”) { return; } if (!clickSourceTracking.clickThrough(info.source) && !Responsive.mobile()) { return; } // Bookmark clicks should not be tracked as a listing click or navigate away from the page if (Components.contains(event.target, elem, ‘@ta/trips.save-to-trip’)) { return; } // Do not track a listing click or navigate to /HR since optimus offer clicks go to the Optimus hotel checkout page if (Components.contains(event.target, elem, ‘@ta/hotels.list-optimus-offer’)) { return; } // The fully React-based listing content component needs to be in full control of its own click behavior if (isHotelsMetaListingContent) { return; } // record user interaction with the listing cell for recently viewed tracking (HOT-23280) _trackRecentlyViewedClick(info); // HOT-31902 test an above widget indicating a top property based on tag if (listing.hasAttribute(‘data-highScoredTagComparisons’)) { var above = widget.element.querySelector(‘.highest-scored-hotel-with-tag’); var comparisonType = above && above.getAttribute(‘data-type’); tracking.trackEvent(comparisonType, ‘click’, ‘HR’); } // HOT-35460 – track HR clicks on properties with amenity flags if (amenityRibbonTrackingProperties) { amenityRibbonTrackingProperties.split(‘,’).forEach(function (trackingProperty) { tracking.trackEvent(trackingProperty, ‘click’); }); } hotelListingClick.clickEvent(event.target, listingKey, function () { // If SPTestAction is not decided in backend, // there should not be any additional/alternative behavior when the function listingClick is triggered. // So, follow the original behavior. if (!elem.hasAttribute(‘data-SPTestAction’)) { clickThruTracker.processAndTrackClickThrough(locid, impressionKey, url); tracking.setEvtCookie(‘Reviews’, info.source, locid, index, url); window.open(url, “_blank”); } // If SPTestAction is explicitly defined, use the private method to define that additional behavior. else { var testAction = elem.getAttribute(‘data-SPTestAction’); var testRecord = elem.getAttribute(‘data-SPTestRecord’); var currentElemListingKey = elem.getAttribute(‘data-listingKey’); var BAWebElem = elem.querySelector(‘[data-link]’); var BAWebLink = BAWebElem == null ? null : BAWebElem.getAttribute(‘data-link’); // Track the respective testing GARecords only when it is necessary. if (testAction != null || testAction !== “error”) { if (testRecord.includes(“E1”) && !isReviewClick) { _addGARecord(“responsive_listing”, “Generate_More_SP_External_Clicks_Test_V1”, _locId, false); } if (testRecord.includes(“E2”) && _isGARecordNeeded(testAction, BAWebLink) && !isReviewClick) { _addGARecord(“responsive_listing”, “Generate_More_SP_External_Clicks_Test_V2”, _locId, true); } if (testRecord.includes(“E3”) && _isGARecordNeeded(testAction, BAWebLink)) { _addGARecord(“responsive_listing”, “Generate_More_SP_External_Clicks_Test_V3”, _locId, true); } } taFireEvent.fireEvent(RESPONSIVE_LISTING_SP_CLICK, _locId, testAction, currentElemListingKey, event, url, BAWebLink, index, info, impressionKey, isReviewClick); } }, true); return false; } /** * This tracks an event either synchronously or not, depending on the sync argument * Synchronous tracking must be used for commerce clicks, since these may change the current page location, halting async JS * We may still lose those clicks if they happen before the session storage initializes and the TA.Record module defer-loads * @param moduleName the module that the event happened * @param action event action that should be recorded in GARecord * @param attr attribute that allows to distinguish one record from another. For ex) locationId * @param sync boolean -> true if the record should be synchronized with other actions; else false */ function _addGARecord(moduleName, action, attr, sync) { if (sync && require.defined(‘ta/Core/TA.Record’)) { require(‘ta/Core/TA.Record’).trackEventOnPage(moduleName, action, attr); } else { trackingStreams.trackEvent(moduleName, action, attr); } } /** * This tracks whether we need to fire GARecord in SP Value Prop Test. * @param testAction necessary action for what tabs should be open with listingClick function * @param BAWebLink BA website url * @returns {boolean} true if the record should be inserted; else false * @private */ function _isGARecordNeeded(testAction, BAWebLink) { if (testAction.includes(‘Meta’)) { return true; } return BAWebLink != null; } ta.queueForReady(initializeIdmTracking); ta.queueForReady(prepareLeaveBehindXSell); if (localStorage.enabled) { localStorage.remove(isLBInterstitialCurrentlyDisplayedKey); } // (SEO-9567) – Fire tracking events when IDM-eligible hotels are loaded, in-view, and clicked (even in control, when the IDM isn’t visible) function initializeIdmTracking() { if (widget.element.classList.contains(‘idm_eligible’)) { var pageProperty = widget.element.getAttribute(‘data-idm-pageProperty’); var rankText = widget.element.getAttribute(‘data-idm-rankText’); var mainText = widget.element.getAttribute(‘data-idm-text’); trackIdm(pageProperty, rankText, mainText); } if (widget.element.getAttribute(‘data-idm2-pageProperty’)) { var _pageProperty = widget.element.getAttribute(‘data-idm2-pageProperty’); var _rankText = widget.element.getAttribute(‘data-idm2-rankText’); var _mainText = widget.element.getAttribute(‘data-idm2-text’); trackIdm(_pageProperty, _rankText, _mainText); } var aspectTrackingText = widget.element.getAttribute(‘data-idm-badge-aspect-tracking-text’); if (aspectTrackingText) { trackIdmBadge(aspectTrackingText); } } function trackIdm(pageProperty, rankText, mainText) { // Track that the IDM has loaded ta.trackEventOnPage(pageProperty, ‘load_’ + rankText, mainText); // Fire a tracking event when the IDM is in view require([“babel/babel-helpers”, ‘trjs!ta/util/Element’], function (babelHelpers, taElement) { taElement.trackWhenScrolledIntoView(widget.element, [pageProperty, ‘in_view_’ + rankText, mainText]); }); // Fire a tracking event if any of the links within the IDM-eligible hotel is clicked var clicksToTrack = widget.element.querySelectorAll(‘a, .metaOffer’); if (clicksToTrack) { Array.prototype.forEach.call(clicksToTrack, function (clickable) { var clickType = clickable.classList.contains(“idm_link”) ? ‘link_click_’ : ‘click_’; clickable.addEventListener(“click”, function (e) { ta.trackEventOnPage(pageProperty, clickType + rankText, mainText); }); }); } } function trackIdmBadge(aspectTrackingText) { // Fire a tracking event when the IDM is in view require([“babel/babel-helpers”, ‘trjs!ta/util/Element’], function (babelHelpers, taElement) { taElement.trackWhenScrolledIntoView(widget.element, [‘idm-absa’, ‘in_view’, aspectTrackingText]); }); // Fire a tracking event if any of the links within the IDM-eligible hotel is clicked var clicksToTrack = widget.element.querySelectorAll(‘a, .metaOffer’); if (clicksToTrack) { Array.prototype.forEach.call(clicksToTrack, function (clickable) { clickable.addEventListener(“click”, function (e) { ta.trackEventOnPage(‘idm-absa’, ‘click’, aspectTrackingText); }); }); } } function localStorageIncludesLocId(localStorageKey) { var obj = localStorage.getObject(localStorageKey); return !!(obj && obj.includes && obj.includes(_locId)); } function prepareLeaveBehindXSell() { var xsellId = “xsell-lb-” + _locId; var bridgeElm = document.getElementById(“lb-xsell-wc-bridge”); var localStorageClickedId = ‘lb-clicked-id’; var activeXsellsHRKey = ‘activeXsellsHR’; var activeXsellsMetaKey = ‘activeXsellsMeta’; if (localStorage.enabled && !widget.element.querySelector(“#” + xsellId)) { // If the user is returning to the page, check local storage for the most recently clicked hotel to potentially display a cross-sell if (Responsive.mobile() && localStorage.get(localStorageClickedId) === _locId) { createLeaveBehindXSell(xsellId, bridgeElm, true); localStorage.remove(localStorageClickedId); } if (localStorage.has(activeXsellsHRKey) && localStorageIncludesLocId(activeXsellsHRKey)) { createLeaveBehindXSell(xsellId, bridgeElm, false); } if (localStorage.has(activeXsellsMetaKey) && localStorageIncludesLocId(activeXsellsMetaKey)) { createLeaveBehindXSell(xsellId, bridgeElm, true); } } // If the user is returning to the page, check local storage for the most recently clicked hotel to potentially display a cross-sell if (Responsive.mobile() && localStorage.enabled && localStorage.get(localStorageClickedId) === _locId) { createLeaveBehindXSell(xsellId, bridgeElm, true); localStorage.remove(localStorageClickedId); } var clicksToTrack = widget.element.querySelectorAll(‘a, .metaOffer, .external_website_link_v1 .isLink’); if (clicksToTrack && bridgeElm) { Array.prototype.forEach.call(clicksToTrack, function (clickable) { clickable.addEventListener(“click”, function (e) { var clickElement = e.toElement || e.srcElement; if (clickElement && clickElement.dataset && clickElement.dataset.clicksource === “CarouselArrow”) { return; } var isMetaClick = clickable.classList.contains(“metaOffer”) || clickable.classList.contains(“isLink”); var xsellElm = widget.element.querySelector(“#” + xsellId); if (!xsellElm) { if (localStorage.enabled) { // Store the list of active Xsells in local storage so that they persist if the page continues to update with new results var activeXsellsKey = isMetaClick ? activeXsellsMetaKey : activeXsellsHRKey; var activeXsells = localStorage.has(activeXsellsKey) ? localStorage.getObject(activeXsellsKey) : []; activeXsells.push(_locId); localStorage.set(activeXsellsKey, activeXsells); if (Responsive.mobile()) { // If the user navigates away via a meta link, store the ID of the clicked hotel in local storage // in order to display the cross-sell once they return (within 1 hour) localStorage.set(localStorageClickedId, _locId, 3600000); } } createLeaveBehindXSell(xsellId, bridgeElm, isMetaClick); } }); }); } } function createLeaveBehindXSell(xsellId, bridgeElm, isMetaClick) { require([“babel/babel-helpers”, ‘@ta/platform.runtime’], function (babelHelpers, runtime) { runtime.importBundle(‘@ta/cross-sells.leave-behind-component’).then(function () { var titleWrapElm = widget.element.getElementsByClassName(“title_wrap”)[0]; var listingTitleElm = widget.element.getElementsByClassName(“listing_title”)[0]; var hotelName = titleWrapElm ? titleWrapElm.innerText : listingTitleElm ? listingTitleElm.innerText : null; if (!hotelName) { return; } var _widget$element$getEl = widget.element.getElementsByClassName(“meta_listing”), _widget$element$getEl2 = babelHelpers.slicedToArray(_widget$element$getEl, 1), belowListingEm = _widget$element$getEl2[0]; var elm = document.createElement(‘div’); elm.id = xsellId; belowListingEm.parentNode.insertBefore(elm, belowListingEm.nextSibling); var trackingPrefix = isMetaClick ? “meta” : “hr”; var xsellIndex = document.querySelectorAll(‘[id^=”xsell-lb-“]’).length; var position = _listingIdElmt.getAttribute(“data-index”); var display = bridgeElm.getAttribute(“data-showxsell”); var leaveBehindXsellUIType = bridgeElm.getAttribute(“data-leaveBehindXsellUIType”); var shouldShowUI = true; if (leaveBehindXsellUIType !== ‘SHELF’ && window && window.event) { shouldShowUI = !(window.event.ctrlKey || window.event.metaKey) && !localStorage.has(isLBInterstitialCurrentlyDisplayedKey); } if (leaveBehindXsellUIType && shouldShowUI) { var pageAttr = getPageAttribute(leaveBehindXsellUIType, trackingPrefix, xsellIndex, position); localStorage.set(isLBInterstitialCurrentlyDisplayedKey, true); runtime.createRoot(xsellId, ‘@ta/cross-sells.leave-behind-component’, { locationId: _locId, hotelName: hotelName, blenderTag: bridgeElm.getAttribute(“data-pagetagname”), blenderTagIds: bridgeElm.getAttribute(“data-blenderTagIds”), pageAttr: pageAttr, display: display, displayMessages: bridgeElm.getAttribute(“data-showxsellmsgs”), poiId: bridgeElm.getAttribute(“data-poiid”), poiName: bridgeElm.getAttribute(“data-poiname”), milesFromPoi: bridgeElm.getAttribute(“data-maxxselldist”), leaveBehindXsellUIType: leaveBehindXsellUIType, onClose: function onClose(event) { closeLeaveBehindXsell(runtime, xsellId, elm, pageAttr, leaveBehindXsellUIType); } }); if (display) { _listingIdElmt.parentNode.parentNode.classList.add(“boxShadow”); } } }); }); } function getPageAttribute(leaveBehindXsellUIType, trackingPrefix, xsellIndex, position) { if (leaveBehindXsellUIType && leaveBehindXsellUIType !== ‘SHELF’) { if (leaveBehindXsellUIType === ‘INTERSTITIAL’) { return trackingPrefix + “-lb-interstitial-” + xsellIndex + “-position-” + position; } else if (leaveBehindXsellUIType === ‘INTERSTITIAL_WITH_COMPARISON_GRID’) { return trackingPrefix + “-lb-interstitial-comparison-grid-” + xsellIndex + “-position-” + position; } else if (leaveBehindXsellUIType === ‘INTERSTITIAL_WITH_BRAND_MESSAGING_LIGHTBOX’) { return trackingPrefix + “-lb-interstitial-brand-messaging-” + xsellIndex + “-position-” + position; } } else if (leaveBehindXsellUIType === ‘SHELF’) { return trackingPrefix + “-shelf-” + xsellIndex + “-position-” + position; } } function closeLeaveBehindXsell(runtime, xsellId, elm, pageAttr, leaveBehindXsellUIType) { runtime.destroyRoot(xsellId); elm.remove(); tracking.trackEvent(leaveBehindXsellUIType === ‘SHELF’ ? ‘osm-pc-leave-behind’ : ‘osm-pc-interstitial’, ‘closed’, pageAttr); if (leaveBehindXsellUIType !== ‘SHELF’) { localStorage.remove(isLBInterstitialCurrentlyDisplayedKey); } var viewTrackedXsellsKey = ‘viewTrackedXsells’; var viewTrackedXsells = localStorage.getObject(viewTrackedXsellsKey) || []; viewTrackedXsells = viewTrackedXsells.filter(function (value, index, arr) { value != _locId; }); localStorage.set(viewTrackedXsellsKey, viewTrackedXsells); } function recordBestSellerEvent( /*String*/eventName, /*String*/pageAction) { var metaListingElement = widget.element.querySelector(‘.meta_listing’); if (metaListingElement && metaListingElement.hasAttribute(‘data-index’)) { tracking.trackEvent(eventName, pageAction, metaListingElement.getAttribute(‘data-index’)); } } function setBestSellerEventListener( /*String*/eventName, /*String*/pageAction) { widget.element.addEventListener(eventName, function () { recordBestSellerEvent(eventName, pageAction); }, false); } /** * HOT-23280: Fire a tracking event iff click to HR on a recently-viewed listing * **/ function _trackRecentlyViewedClick(clickInfo) { if (!clickInfo || !_trackRecentlyViewed) { return; } recentlyViewedHotels.interactedWithLocation(_locId); recentlyViewedHotels.trackEventIfRecentlyViewed(_locId, ‘CLICK_’ + clickInfo.source, _locId); } var _scrollOffset = 0; var _scrollRequestThrottled = debounce(function (target, offset) { if (!document.body.contains(widget.element)) { infoCardEvents.off(‘infoCardExpanded’, _scrollRequestThrottled); return; } if (widget.element.contains(target) && window.innerHeight > widget.element.clientHeight) { _scrollOffset = offset; require([“babel/babel-helpers”, ‘trjs!ta/util/Element’], function (babelHelpers, taElement) { taElement.scrollIntoView(widget.element, -1 * _scrollOffset, true); }); } }, 500, true); infoCardEvents.on(‘infoCardExpanded’, _scrollRequestThrottled); // Initialize scroll tracking if (!globalContext.trackingInitialized) { var checker = throttle(VisibilityChecker({ elements: _generateTrackingList(), callback: function callback(nodes) { nodes.forEach(function (n) { var index = parseInt(n.getAttribute(‘data-index’)); if (globalContext.trackIndices[index]) { tracking.trackEvent(‘hotelcell’, ‘in_view’, index); delete globalContext.trackIndices[index]; } }); var newList = _generateTrackingList(); if (newList.length === 0) { window.removeEventListener(‘scroll’, checker); } return _generateTrackingList(); } }), 200); window.addEventListener(‘scroll’, checker); globalContext.trackingInitialized = true; } //I initially had this with one shared listener for all instances, but this meant only the first instantiation // of the widget would add the litener, which calls widget.element. The result was that every widget //used the widget.element from that first one, preventing us from accessing the data-index attribute we actually wanted setBestSellerEventListener(EVENT_NAME_BEST_SELLER_SEEN, PAGE_PROPERTY_BEST_SELLER_SEEN); setBestSellerEventListener(EVENT_NAME_BEST_SELLER_EXISTS, PAGE_PROPERTY_BEST_SELLER_EXISTS); if (_trackRecentlyViewed) { if (_isRecentlyViewedOnPageload) { recentlyViewedHotels.registerVisitedLocation(_locId, _listing); } else { recentlyViewedHotels.registerUnvisitedLocation(_locId, _listing, _showRecentlyViewed ? CLASSNAME_RECENTLY_VIEWED : “”); } } return { listingClick: listingClick }; }.bind(null, { trackingInitialized: false, trackIndices: { 5: true, 10: true, 15: true, 20: true, 30: true, 35: true, 40: true, 45: true, 50: true, 55: true, 60: true } }));});require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’meta_vr_price_tvg’,’handlers’,[‘handlers’]); /*jshint nonew: false */ /*jshint unused:false */ define([“widget”, “responsive/text-resizer”, “common/trackingStreams”, “commerce/offerclick”], (function(widget, resizer, trackingStreams, offerclick) { resizer.init(widget.element); function clickVROffer(event, elem) { var token = elem.getAttribute(‘data-clickToken’); var aok = elem.getAttribute(‘data-aok’); var propertyUrl = elem.getAttribute(‘data-propertyUrl’); aok && trackingStreams.trackEvent(widget.name, ‘clickVROffer’, aok); if (token) { offerclick.clickEvent(event, elem, token); } else if (propertyUrl) { window.open(propertyUrl); } } return { clickVROffer: clickVROffer }; }).bind({})); }); define(‘hotels/baLinkClick’, [‘vanillajs’, ‘utils/waiton’, ‘ta/Core/TA.FireEvent’, ‘commerce/cookieSetter’, ‘utils/urlutils’], function(vanillajs, waitOn, taFireEvent, cookieSetter, UrlUtils) { var ASYNC_ACTIONS_TIMEOUT = 250; var WEB_LINK_CLICK_EVENT = ‘hotels.ba_web_click’; var _preclickActions = []; var registerAsyncPreclick = function(action) { if (typeof action === ‘function’) { _preclickActions.push(action); } }; var clickEvent = function(elem, commURL, redirectAction, isNewTab) { taFireEvent.fireEvent(WEB_LINK_CLICK_EVENT, elem); cookieSetter(); if (isNewTab) { redirectAction(); _preclickActions.forEach(function (action) { action(elem, UrlUtils.getUrlQueryArgs(commURL), function() {}); }); } else { var boundActions = _preclickActions.map(function(action) { return action.bind(null, elem, UrlUtils.getUrlQueryArgs(commURL)); }); waitOn(boundActions, redirectAction, ASYNC_ACTIONS_TIMEOUT); } }; return { WEB_LINK_CLICK_EVENT: WEB_LINK_CLICK_EVENT, registerAsyncPreclick: registerAsyncPreclick, clickEvent: clickEvent }; });if (require) {require([‘ta/rollupAmdShim’], function(rollupAmdShim) { rollupAmdShim.install([], [“page-model”]); }); } else {if (window.ta&&ta.rollupAmdShim) {ta.rollupAmdShim.install([],[“page-model”]);} } define(‘t4b/tracking/b2bClickTracking’, [‘babel/babel-helpers’, ‘page-model’, ‘ajax-request’], function (babelHelpers, pageModel, ajax) { var _trackClick = function _trackClick(clickType, _ref) { var _ref$context = _ref.context, context = _ref$context === undefined ? pageModel.session.pageServlet : _ref$context, data = babelHelpers.objectWithoutProperties(_ref, [‘context’]); return ajax(‘/B2BClickTracking/’ + context + ‘/’ + clickType, { method: ‘POST’, data: JSON.stringify(babelHelpers[‘extends’]({ puid: pageModel.session.uid }, data)), ‘content-type’: ‘application/json’, ‘x-requested-by’: pageModel.JS_SECURITY_TOKEN }); }; var _offerlessCommerceClick = function _offerlessCommerceClick(commerceUrl) { return commerceUrl && ajax(commerceUrl, { method: ‘GET’ }); }; return { trackContactClick: function trackContactClick(options) { return _trackClick(‘contact’, options); }, trackSpecialOfferClick: function trackSpecialOfferClick(options) { return _trackClick(‘specialOffer’, options); }, trackOfferlessCommerceClick: _offerlessCommerceClick }; }); require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’common_hotel_icons_list’,’handlers’,[‘handlers’]); define([‘babel/babel-helpers’, ‘widget’, ‘hotels/baLinkClick’, ‘ta/util/openNewTab’, ‘t4b/tracking/b2bClickTracking’, ‘common/trackingStreams’, ‘utils/urlDecoder’, ‘hotels/listingClick’], function (babelHelpers, widget, baLinkClick, openNewTab, b2bClickTracking, tracking, urlDecoder, hotelListingClick) { function webLinkClick(e, element) { e.stopPropagation(); var locationId = element.getAttribute(‘data-locid’); var isCommerce = element.hasAttribute(‘data-curl’) && element.getAttribute(‘data-curl’) === ‘true’; var urlRedir = element.getAttribute(‘data-link’); var contactColumn = element.getAttribute(‘data-number’); var redirectCallback = function redirectCallback() { openNewTab(urlRedir); }; var commerceURL = isCommerce && urlRedir || ”; baLinkClick.clickEvent(element, commerceURL, redirectCallback, true); b2bClickTracking.trackContactClick({ locationId: locationId, contactType: ‘URL_HOTEL’, contactColumn: contactColumn, isCommerce: isCommerce }); } // handle clicks on email/phone number icons function handleContactClick(event, contactDetails, element) { // email var locationId = element.getAttribute(‘data-locid’); var contactColumn = element.getAttribute(‘data-number’); var contactType = void 0; if (contactDetails.includes(‘@’)) { window.location = ‘mailto: ‘ + contactDetails; contactType = ‘EMAIL’; } else { // phone window.location = ‘tel: ‘ + contactDetails; contactType = ‘PHONE’; } b2bClickTracking.trackContactClick({ locationId: locationId, contactType: contactType, contactColumn: contactColumn }); } /* * This will track clicks on the amenities in the Hotel Cell and bring the user into the /HR page */ function clickToHR(e, element, url, amenityName) { if (url) { var listing = widget.element; while (listing && !listing.classList.contains(‘meta_listing’)) { listing = listing.parentElement; } var listingKey = listing && listing.getAttribute(‘data-listingKey’); hotelListingClick.clickEvent(e.target, listingKey, function () { tracking.trackEvent(‘hotel_cell_amenity’, ‘click’, amenityName); openNewTab(url); }, true); } } return { webLinkClick: webLinkClick, clickToHR: clickToHR, handleContactClick: handleContactClick }; });}); define(‘remoteModule’, [‘vanillajs’], function() { ‘use strict’; var pending = {}; function _data(el, key) { return el == null ? null : el.getAttribute(‘data-‘ + key); } function _parentWithAttr(el, attribute) { while (el && el !== document.body) { if (el.getAttribute(attribute)) { return el; } el = el.parentNode; } return null; } function _buildDeps(elt, param, plcn, prwn, prefixes) { var val = _data(elt, param); if (!val) { return []; } return val .replace(/$plc:/g, ‘$prp/’+plcn+’/’) .replace(/$prw:/g, ‘$prw/’+prwn+’/’) .split(‘,’) .filter(function(s) { return !!s.length }) .reduce(function(ret, key) { return ret.concat(prefixes.map(function(prefix) { var appendDust = prefix === ‘trdust!’ && key.indexOf(‘/’) = 0){ return; } if (require.defined(modl)){ var obj = require(modl); (fn ? obj[fn] : obj).apply(obj, args); return; } (pending[modl] || (pending[modl] = [])).push(elt); var plc = _parentWithAttr(elt, ‘data-placement-name’) , prw = _parentWithAttr(elt, ‘data-prwidget-name’) , plcn = _data(plc, ‘placement-name’) , prwn = _data(prw, ‘prwidget-name’) , deps = [].concat( _buildDeps(elt, ‘load-all’, plcn, prwn, [‘trjs!’, ‘trcss!’, ‘trdust!’]), _buildDeps(elt, ‘load-js’, plcn, prwn, [‘trjs!’]), _buildDeps(elt, ‘load-css’, plcn, prwn, [‘trcss!’]), _buildDeps(elt, ‘load-dust’, plcn, prwn, [‘trdust!’]) ); if (/^$plc:/.test(modl)){ args.unshift(deps); args.unshift(modl.substr(5) + ‘.’ + fn); args.unshift(plc.getAttribute(‘id’)); args.unshift(‘evCall’); args.unshift(‘ta/p13n/placements’); requireCallLast.apply(window, args); } else if (/^$prw:/.test(modl)){ args.unshift(modl.substr(5) + ‘.’ + fn); args.unshift(‘call’); args.unshift(‘ta/prwidgets’); requireCallLast.apply(window, args); } else { require(deps, function(){ pending[modl] = pending[modl].filter(function(e){ return e != elt; }); var obj = require(modl); (fn ? obj[fn] : obj).apply(obj, args); }); } }; }); define(“hotels/TrackingServletHelper”, [‘vanillajs’], function () { function getTrackingServlet() { var servlet = window && window.pageServlet; switch (servlet) { case “Hotels”: return “h”; case “SmartDeals”: return “sd”; case “HotelHighlight”: return “hh”; case “Hotel_Review”: return “hr”; case “HotelsList”: return “hl”; default: return “_unknown”; } } return { getTrackingServlet: getTrackingServlet }; });require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’meta_hsx_saves_badge’,’handlers’,[‘handlers’]); /*jshint nonew: false, unused: vars */ define([“widget”, “remoteModule”, “common/trackingStreams”, “hotels/TrackingServletHelper”], function(widget, remoteModule, tracking, TrackingServletHelper) { return { track: function(event) { event && event.stopPropagation(); var trackingServlet = TrackingServletHelper.getTrackingServlet(); tracking.trackEvent(‘saves_’ + trackingServlet, ‘click’); } }; }); });require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’common_location_pop_index’,’handlers’,[‘handlers’]); define([‘widget’, ‘ta/util/openNewTab’], function(widget, openNewTab) { ‘use strict’; function _clickPopIndex(event, element) { var target = event.target || event.srcElement; if (target.tagName === ‘A’ && target.href) { openNewTab(target.href); event.stopPropagation(); } } return { clickPopIndex: _clickPopIndex }; });});require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’common_hsx_hd_review_snippets_center_commerce’,’handlers’,[‘handlers’]); /*jshint nonew: false, unused: vars */ define([“widget”, “ta/util/openNewTab”, “common/trackingStreams”], function(widget, openNewTab, trackingStreams) { /* * Warning: do NOT demand load js in here. Chrome will think you are loading a pop-up * and block us from opening a new tab. */ function _snippetClick(event, elem) { trackingStreams.setEvtCookie(‘Reviews’, ‘Snippet’, elem.getAttribute(‘data-reviewId’), elem.getAttribute(‘data-pos’), elem.href); elem.href && openNewTab(elem.href); event.stopPropagation(); return false; } return { snippetClick: _snippetClick }; }); }); define(‘tracking/BestSellerTracking’, [‘utils/VisibilityChecker’, ‘utils/throttle’, ‘ta/Core/TA.Event’, ‘common/trackingStreams’], function(VisibilityChecker, throttle, taEvent, trackingStreams) { ‘use strict’; var ALREADY_SEEN_ATTRIBUTE = ‘data-alreadySeen’; var EXISTENCE_LOGGED_ATTRIBUTE = ‘data-logged’; var EVENT_NAME_RIBBON_IN_VIEW = ‘bestSellerSeen’; var EVENT_NAME_RIBBON_EXISTS = ‘bestSellerExists’; var PAGE_POLLING_COMPLETE = ‘page-polling-complete’; function _generateEventFiringFunction( selectorArray, sharedContext) { var eventFiringFunction = VisibilityChecker({ elements: selectorArray, callback: function(elements) { if (sharedContext.isPollingComplete) { if (elements && Array.isArray(elements)) { for (var i = 0; i 0) { _dispatchExistenceGARecords(elements); } else { setTimeout(function() { var elementsSecondAttempt = document.querySelectorAll(selector); if (elementsSecondAttempt && elementsSecondAttempt.length > 0) { _dispatchExistenceGARecords(elementsSecondAttempt) } }, 350); } } function _dispatchExistenceGARecords( elements) { for (var i = 0; i 0 && !!selectors[0]) { _initVisibilityCheckFunction(selectors, sharedContext); _initPollingCompleteListener(selectors[0], sharedContext); } else { trackingStreams.error(“Non-array or empty array passed to BestSellerTracking. Cannot track: ” + JSON.stringify(selectors)); } } return {initBestSellerTracking : initBestSellerTracking}; }); define(‘overlays/BestSellerTooltipOverlay’, [‘overlays/Overlay’, ‘overlays/position’, ‘overlays/styles/tooltip’, ‘overlays/options/closeOnMouseAway’, ‘overlays/styles/popover’, ‘overlays/options/repositionOnEvent’, ‘common/trackingStreams’], function(Overlay, Position, Tooltip, CloseOnMouseAway, Popover, RepositionOnEvent, trackingStreams) { ‘use strict’; function createOverlay( evnt, source, widget, contentSelector, isMobile) { var overlay = null; var contents = widget.element.querySelector(contentSelector); if (contents) { if (window.isTabletOnFullSite) { overlay = new Overlay(source, [ Popover && Popover(source, ‘below’, widget.element.className, null, widget.element.outerHTML), Position.below(), RepositionOnEvent(window, [‘resize’, ‘date_bar_docked’, ‘date_bar_undocked’]) ]); } else { if (!isMobile) { overlay = new Overlay(source, [ Tooltip && Tooltip(source, ‘below’, widget.element.className, widget.element.outerHTML), Position.below(), CloseOnMouseAway ]); } } return overlay; } else { trackingStreams.error(“No contents found for selector ” + contentSelector + “. Cannot create tooltip overlay.”); } } return {createOverlay : createOverlay}; }); require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’common_ribbon_badge_resp’,’handlers’,[‘handlers’]); /** * Created by amiller-smith on 06.27.18 */ define([‘widget’, ‘utils/VisibilityChecker’, ‘utils/throttle’, ‘ta/Core/TA.Event’, ‘tracking/BestSellerTracking’, ‘utils/responsive’, ‘trjs!overlays/BestSellerTooltipOverlay’], (function(widget, VisibilityChecker, throttle, taEvent, BestSellerTracking, Responsive, BestSellerOverlay) { ‘use strict’; widget._shared = this; var _shared = this; var WIDGET_DIV_IDENTIFIER = “div[class='” + widget.element.className + “‘] div.”; var MOBILE_CLASS_SELECTOR = WIDGET_DIV_IDENTIFIER + ‘ribbonBadgeMobile’; var TABLET_PLUS_CLASS_SELECTOR = WIDGET_DIV_IDENTIFIER + ‘ribbonBadgeTablet’; var TOOLTIP_TEXT_SELECTOR = ‘.overlay_contents.hidden’; BestSellerTracking.initBestSellerTracking(_shared, [MOBILE_CLASS_SELECTOR, TABLET_PLUS_CLASS_SELECTOR]); var _overlay = null; function _showOverlay(evnt, source) { //otherwise the parent hotel card will catch this and open an /HR tab evnt.stopPropagation(); if (_overlay) { _overlay.show(); } else { _createAndShowOverlay(BestSellerOverlay, evnt, source); } } function _createAndShowOverlay(/*Object*/ BestSellerOverlay, /*Event*/ evnt, /*Element*/ source) { _overlay = BestSellerOverlay.createOverlay(evnt, source, widget, TOOLTIP_TEXT_SELECTOR, Responsive.mobile()); if (_overlay) { _overlay.show(); } } return { overlay: _showOverlay }; }).bind({})); });require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’meta_h_responsive_commerce_tvg_multi_larger_thumbnail’,’handlers’,[‘handlers’,’tablet/tablet’]); /*jshint nonew: false */ /*jshint unused:false */ define([“widget”, “commerce/offerclick”, “responsive/text-resizer”, “common/trackingStreams”, ‘ta/Core/TA.Event’, “hotels/recentlyViewedHotels”, “ta/Core/TA.LocalStorage”, ‘ta/Core/TA.FireEvent’, ‘hotels/ClickSourceTracking’], (function(widget, offerclick, resizer, trackingStreams, taEvent, recentlyViewedHotels, localStorage, taFireEvent, clickSourceTracking) { //shared state between all instances of this widget. //defining it this way lets us pick it up in tablet/tablet.js widget._shared = this; var _shared = this; var commerceElem = widget.element.querySelector(“.comblock”); var locId = Number((commerceElem && commerceElem.getAttribute(“data-locationId”)) || “0”); var listPos = Number((commerceElem && commerceElem.getAttribute(“data-listPos”)) || “0”); _shared.clickableWhiteSpace = Boolean((commerceElem && commerceElem.getAttribute(“data-clickablewhitespacedt”))); var RESPONSIVE_LISTING_OPEN_META_LINK = ‘hotels.responsive_open_meta_link’; taFireEvent.off(RESPONSIVE_LISTING_OPEN_META_LINK, clickOfferWrapper); taFireEvent.on(RESPONSIVE_LISTING_OPEN_META_LINK, clickOfferWrapper); function _findClickElement(el) { while (el && el.getAttribute) { if (el.getAttribute(‘data-clickPart’)) { return el; } el = el.parentNode; if (el === widget.element) { break; } } return null; } function _track(event, elem) { var clickElem = _findClickElement(event && event.srcElement); var part = clickElem ? clickElem.getAttribute(‘data-clickPart’) : ‘other’; var index = clickElem ? clickElem.getAttribute(‘data-index’) : ”; trackingStreams.trackEvent(‘hotelcell_h_meta’, part + “_” + index); } /** * HOT-24629: track commerce click on best seller hotel * */ function _trackCommerceClickOnBestSeller() { var isBestSeller = commerceElem.getAttribute(‘data-bestseller’); if (isBestSeller) { trackingStreams.trackEvent(‘best_seller_click’, locId, listPos); } } /** * HOT-35460: track commerce clicks on properties with preferred amenities * */ function _trackCommerceClickOnAmenityRibbon() { var amenityRibbonTrackingProperties = commerceElem.getAttribute(‘data-amenityRibbonTrackingProperties’); if (amenityRibbonTrackingProperties) { amenityRibbonTrackingProperties.split(‘,’).forEach( function (trackingProperty) { trackingStreams.trackEvent(trackingProperty, ‘click’); }); } } /** * HOT-31902: track commerce click on a high scoring tag compared hotel * */ function _trackCommerceClickOnHighScoringHotel() { var compare = commerceElem.getAttribute(‘data-comparisonType’); if (compare) { trackingStreams.trackEvent(compare, ‘click’, ‘commerce’); } } function _trackCugClick(elem) { var specialRateTracking = elem.querySelector(‘.special_rate_tracking’); if (specialRateTracking) { var provider = elem ? elem.getAttribute(‘data-provider’) : ‘Unknown’; var type = elem ? elem.getAttribute(‘data-specialratetype’) : ‘None’; trackingStreams.trackEvent(‘Hotels_Loyalty_HR_click’, provider + “|” + type, specialRateTracking.getAttribute(‘productattribute’)); } } function clickOffer(event, elem, forcedBehavior) { if (_shared.clickableWhiteSpace) { event.stopPropagation(); } _track(event, elem); var token = elem.getAttribute(“data-clickToken”); if (token) { // HOT-23280: Recently viewed tracking for commerce clicks recentlyViewedHotels.trackCommerceClick(locId); offerclick.clickEvent(event, elem, token, false, forcedBehavior); _trackCommerceClickOnBestSeller(); _trackCommerceClickOnHighScoringHotel(); _trackCommerceClickOnAmenityRibbon(); } _trackCugClick(elem); } function clickOfferWrapper(event, listingKey, forcedBehavior) { // If the received widget is not in the current DOM, we turn the eventListener off and do not perform any action. // eslint-disable-next-line no-restricted-globals if (!document.body.contains(widget.element)) { taFireEvent.off(RESPONSIVE_LISTING_OPEN_META_LINK, clickOfferWrapper); return; } var child = commerceElem.querySelector(‘.premium_offer_container’); var buttonElem = child == null ? null : child.querySelector(‘[data-clicktoken]’); var currentElemListingKey = clickSourceTracking.findAttribute(‘data-listingKey’, commerceElem); if(listingKey === currentElemListingKey) { clickOffer(event, buttonElem, forcedBehavior); } } function _processOverlayOnUpdateWidget() { // if there is an overlay already open, and we get new widget as of ajax update, we need to re-process the overlay if(_shared.dropDown && _shared.dropDownListPos == listPos ) { var newSrc = widget.element.querySelector(“.moreLink”); if (_shared.dropDownLocId != locId || !newSrc) { // if the widget at the same position is of different property, close the dropdown _shared.dropDown.destroy(); _shared.dropDown=null; }else { _shared.dropDown.sourceElement = newSrc; // if the new widget is of the same property and same location, update the src element for the dropdwon } } } function _trackCug() { var trackingEl = widget.element.querySelector(‘.special_rate_tracking’); if (trackingEl) { var guests = ta.page.guests.toQueryJson().uguests; var checkin = ta.page.hasDates(‘CHECKIN’) ? ta.page.getDates(‘CHECKIN’)[0].toLocaleDateString() : ‘default’; var checkout = ta.page.hasDates(‘CHECKOUT’) ? ta.page.getDates(‘CHECKOUT’)[0].toLocaleDateString() : ‘default’; var dates = checkin + ‘_’ + checkout; var label = [trackingEl.getAttribute(‘pageaction’), locId, checkin, checkout, guests].join(‘_’); trackingStreams.trackEventOnPageOnce(trackingEl.getAttribute(‘pageproperty’), label, trackingEl.getAttribute(‘productattribute’) ); } } taEvent.on(“page-polling-complete”, _trackCug); _processOverlayOnUpdateWidget(); resizer.init(widget.element); return { clickOffer: clickOffer, clickOfferWrapper: clickOfferWrapper, }; }).bind({})); }); define(‘overlays/options/fade’, [‘lib/jquery-amd’], function($){ ‘use strict’; var NOOP = function(){}; var fadeInClass = ‘fade_in’; var fadeOutClass = ‘fade_out’; function addClass(cl){ $(this.container).addClass(cl); $(this.shade).addClass(cl); } function removeClass(cl){ $(this.container).removeClass(cl); $(this.shade).removeClass(cl); } var BOTH = [ function(fadeType){ addClass.call(this, fadeType.cl); }, function(fadeType){ addClass.call(this, fadeInClass); }, NOOP, function(fadeType){ removeClass.call(this, fadeInClass); }, NOOP ]; var ONLY_IN = [ NOOP, function(fadeType){ addClass.call(this, fadeType.cl); addClass.call(this, fadeInClass); }, function(fadeType){ removeClass.call(this, fadeType.cl); removeClass.call(this, fadeInClass); }, NOOP, NOOP ]; var ONLY_OUT = [ NOOP, NOOP, NOOP, function(fadeType){ addClass.call(this, fadeType.out); addClass.call(this, fadeOutClass); }, function(fadeType){ removeClass.call(this, fadeType.out); removeClass.call(this, fadeOutClass); } ]; var Fade = function(fadeType, onShow, onHide){ return function() { if (!fadeType) { return; } onShow = onShow !== false; onHide = onHide !== false; var oldShow = this.show; var oldHide = this.hide; var fns = onShow && onHide ? BOTH : onShow ? ONLY_IN : ONLY_OUT; fns[0].call(this, fadeType); onShow && (this.show = function() { var args = arguments; oldShow && oldShow.apply(this, args); fns[1].call(this, fadeType); setTimeout(function(){ fns[2].call(this, fadeType); }.bind(this), fadeType.len); }.bind(this)); onHide && (this.hide = function() { var args = arguments; fns[3].call(this, fadeType); setTimeout(function() { fns[4].call(this, fadeType); oldHide && oldHide.apply(this, args); }.bind(this), fadeType.len); }.bind(this)); }; }; Fade.NONE = {cl: ‘fade_none’, out: ‘fade_out_none’, len: 0}; Fade.SHORT = {cl: ‘fade_short’, out: ‘fade_out_short’, len: 250}; Fade.NORMAL = {cl: ‘fade_normal’, out: ‘fade_out_normal’, len: 500}; Fade.LONG = {cl: ‘fade_long’, out: ‘fade_out_long’, len: 1000}; return Fade; }); require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’meta_h_responsive_commerce_tvg_multi_larger_thumbnail’,’tablet/tablet’,[‘handlers’,’tablet/tablet’]); define([ ‘widget’, ‘page-model’, ‘api-mod’, ‘overlays/Overlay’, ‘overlays/position’, ‘overlays/styles/tooltip’, ‘overlays/styles/popover’, ‘overlays/styles/windowshade’, ‘overlays/options/closeOnScrollOutOfView’, ‘overlays/options/closeOnMouseAway’, ‘overlays/options/closeOnSourceClick’, ‘overlays/options/closeOnDocClick’, ‘overlays/options/autoReposition’, ‘overlays/options/maxWidth’, ‘overlays/options/fade’, ‘overlays/options/ajax’, ‘common/trackingStreams’, ‘utils/responsive’ ], function( widget, pageModel, api, Overlay, Position, Tooltip, Popover, Windowshade, CloseOnScrollOutOfView, CloseOnMouseAway, CloseOnSourceClick, CloseOnDocClick, AutoReposition, maxWidth, Fade, Ajax, tracking, Responsive ) { var _shared=widget._shared; //handlers.js sets this up var _overlayComponent; function strikeThroughOverlay(event, source){ if ( !_overlayComponent) { var overlayContent = source && source.querySelector(“.overlay_contents”); if(overlayContent) { _overlayComponent = new Overlay(source, [ Tooltip(source, ‘above’, “dark”, overlayContent.innerHTML), Position.above(), maxWidth(200), CloseOnMouseAway, Fade(Fade.SHORT, true, true) ]); } } if(_overlayComponent){ _overlayComponent.show(); } } function _track(source) { return tracking.trackEvent.bind(null, source); } function dropDown(event, elmt, locId, listPos, pageOffset, ttPlc) { if (_shared.clickableWhiteSpace) { event.stopPropagation(); } var isCloseClick = false; var isMobile = Responsive.mobile(); locId = Number(locId); listPos = Number(listPos); pageOffset = Number(pageOffset); if (_shared.dropDown) { //one already exists isCloseClick = _shared.dropDown.isOpen() && _shared.dropDownLocId == locId && _shared.dropDownListPos == listPos; _shared.dropDown.destroy(); _shared.dropDown=null; } if (isCloseClick) { elmt.setAttribute(‘data-clicksource’, “ViewAllDealsClose”); return false; } else { elmt.setAttribute(‘data-clicksource’, “ViewAllDeals”); } var url = “/OverlayWidgetAjax?Mode=HOTELS_VIEW_ALL_OFFERS&metaReferer=” + encodeURIComponent(pageModel.session.pageServlet); var ajaxOptions={ sendTravelInfo: true, reqParams: { locationId: String(locId), listPos: String(listPos+pageOffset), ttPlc: ttPlc }, inlineResourceId: ‘HOTELS_VIEW_ALL_OFFERS’, isWidget: true }; var sponsoredListingJson = elmt.getAttribute(‘data-sponsoredListing’); if (sponsoredListingJson) { ajaxOptions.reqParams.sponsoredListingJson = sponsoredListingJson; } // this pins the click catching backdrop to right below the view all text // so that users can tap out of the dropdown on mobile var windowshadeTop = function() { var scrollTop = window.pageYOffset || document.documentElement.scrollTop; return elmt && elmt.getBoundingClientRect().bottom + scrollTop; }; var mixins=[ Popover(elmt, “below”, “light mobile_x small”), Position.below([0, -8]), CloseOnSourceClick, AutoReposition, CloseOnDocClick.withoutTouchEvents, isMobile && CloseOnScrollOutOfView, Ajax(url, ajaxOptions), isMobile && Windowshade(“popover-backdrop”, windowshadeTop), ]; var overlay = new Overlay(elmt, mixins); _shared.dropDown = overlay; _shared.dropDownLocId = locId; _shared.dropDownListPos = listPos; overlay.show(); overlay.on(‘hide’, function(e) { if (e && e.trigger) { _track(“hotelcell_h_otherclose”)(); } }); return false; } function closeDropdown() { if (_shared.dropDown) { _shared.dropDown.destroy(); _shared.dropDown=null; } } if (!_shared.tabletInitDone) { _shared.tabletInitDone = true; api.addEvent(document.body, “closeDropdown”, closeDropdown); } return { strikeThroughOverlay : strikeThroughOverlay, dropDown: dropDown }; }); });require([‘ta/prwidgets’], function(widgets) { var define = widgets.define.bind(widgets,’hotels_merchandise_messages’,’handlers’,[‘handlers’]); /** * @created 01/31/2018 * @author qle */ define([‘babel/babel-helpers’, ‘widget’, ‘vanillajs’, ‘common/trackingStreams’, “ta/Core/TA.Event”, ‘utils/throttle’, ‘utils/VisibilityChecker’], function (babelHelpers, widget, vanilajs, trackingStream, taEvent, throttle, visibilityChecker) { var merchandiseMessages = widget.element && widget.element.querySelectorAll(‘.merchandise_message’); /** callback function get invoked after we see the message */ function _callBackAfterSeenMessage(merchandiseMessage) { if (merchandiseMessage) { var pageAction = merchandiseMessage.getAttribute(“data-pageAction”); if (pageAction) { trackingStream.trackEvent(“MERCHANDISE_MESSAGE”, pageAction); taEvent.fireEvent(pageAction); // fire event for other listing widget to stop listening for scroll } var servletName = merchandiseMessage.getAttribute(“data-servletName”); var type = merchandiseMessage.getAttribute(“data-type”); if (servletName && type === “FREE_CANCELLATION”) { trackingStream.trackEvent(“osm-free-cancellation”, “shown”, servletName); } } } if (merchandiseMessages) { var _loop = function _loop(i) { if (merchandiseMessages[i]) { var pageAction = merchandiseMessages[i].getAttribute(“data-pageAction”); if (pageAction) { var merchandiseMessageChecker = visibilityChecker({ elements: [merchandiseMessages[i]], callback: function callback() { return _callBackAfterSeenMessage(merchandiseMessages[i]); } }); if (merchandiseMessageChecker) { var _throttleTrackMessage = throttle(merchandiseMessageChecker, 300); window.addEventListener(‘scroll’, _throttleTrackMessage); // throttle because this message widget is small, so scrolling and check if the widget is in view will fire a lot of events taEvent.on(pageAction, function () { window.removeEventListener(‘scroll’, _throttleTrackMessage); // because there are several instances of this widget, if one instance trackEvent, we want other widget to not track it }); } } } }; // There can be multiple merchandise messages tied to a single offer. Need to independently track each type of merchandise message. for (var i = 0; i 0) { parent = parent.parentNode; reviewElement = parent && parent.querySelector(‘.reviews [data-reviewid]’); searchIterations–; } if (reviewElement) { return reviewElement.getAttribute(“data-reviewid”); } return null; } function _trackInView() { Tracking.trackEventOnPage(“hotelcell_rating_and_review_count”, “tooltip_in_view”); } // Prevent review tooltip from displaying on hover if either datepicker or rooms/guests/children picker is open already function _preventShowReviewOnHover() { return !!document.querySelector(“.ui_overlay.date_picker_modal, .ui_overlay.rooms_guests_children, [data-test-target=trip-search-open]”); } function showReviewDelayed() { for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } var overlayDelay = 400; overlayDelayTimeout = setTimeout(function () { return showReview.apply(undefined, args.concat([true])); }, overlayDelay); } function removeOverlayTimeout() { clearTimeout(overlayDelayTimeout); } function showReview(event, element, locId, showAsTooltip, showReviewAbove) { var reviewId = _findReviewId(); if (!reviewId) { return true; } if (!showAsTooltip) { //if initiated by click event, do not follow the link. event.stopPropagation(); } else if (_preventShowReviewOnHover()) { return false; } if (!_overlay) { var url = '/OverlayWidgetAjax?Mode=REVIEW_ID_DROPDOWN&metaReferer=' + encodeURIComponent(PageModel.session.pageServlet); var ajaxOptions = { reqParams: { locationId: String(locId), linkId: "rating_and_review_count", cid: reviewId }, inlineResourceId: 'REVIEW_ID_DROPDOWN', isWidget: true, loadingContent: '' }; var mixins = [Popover(element, showReviewAbove ? "above" : "below", 'light ' + widget.element.className, null, null, 'div'), showReviewAbove ? Position.above() : Position.below(), AutoReposition, CloseOnScrollOutOfView, CloseAllOtherOverlaysOnShow, CloseOnDocClick, Ajax(url, ajaxOptions)]; if (showAsTooltip) { mixins = [].concat(babelHelpers.toConsumableArray(mixins), [CloseOnMouseAway.withDelay(100)]); } _overlay = new Overlay(element.parentElement, mixins); //use parent as sourceElement so the tooltip is centered under both bubbles and review count _overlay.on('hide', function () { clearTimeout(_overlayTimeout); _overlayTimeout = null; }); } // we want to remove the delay if we're showing the review above because we're adding a delay in showReviewDelayed() // Simultaneously, we're also removing the timeout if the user moves away from the element using the onmouseleave event in the placement if (showAsTooltip && !showReviewAbove) { clearTimeout(_overlayTimeout); _overlayTimeout = setTimeout(function () { _overlay.show(); _trackInView(); }, 400); } else { _overlay.show(); _trackInView(); } } function reviewCountOnClick(event, element) { if (element.classList.contains('unclickable')) { event.stopPropagation(); } } return { showReview: showReview, showReviewDelayed: showReviewDelayed, removeOverlayTimeout: removeOverlayTimeout, reviewCountOnClick: reviewCountOnClick }; });});require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'bl_h_special_offer','handlers',['handlers','tablet/tablet']); /** * ta.servlet.blcoupons.couponAnnouncementViewWithOpen is needed by the inline click handler for special offers, * so any page containing this widget must include ta/servlet/BLCoupons. * * @author tclark * @since February 2018 */ define([], function () { require(['trjs!ta/servlet/BLCoupons'], function () {}); }); });require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'bl_h_special_offer','tablet/tablet',['handlers','tablet/tablet']); define([ 'widget', 'overlays/Overlay', 'overlays/position', 'overlays/styles/tooltip', 'overlays/options/closeOnMouseAway', 'overlays/styles/popover', 'overlays/options/repositionOnEvent', 'common/trackingStreams' ], function( widget, Overlay, Position, /* desktop */ Tooltip, CloseOnMouseAway, /* tablet */ Popover, RepositionOnEvent, Tracking ) { var HOVER_DELAY = 2000, CLICK_DELAY = 0, _overlay = null, _position = null, _direction = null, _arrowPos = null, _useDelay, _timeout; function _showOverlay(event, source, listPosition, delay) { clearTimeout(_timeout); var contents = widget.element.querySelector('.overlay_contents'); var useLeft = contents && contents.getAttribute('data-position') === 'left'; if (!_overlay) { _useDelay = contents && contents.getAttribute('data-delay'); _position = useLeft ? Position.left() : Position.above([0, 8]), _direction = useLeft ? 'left' : 'top', _arrowPos = useLeft ? 'arrow_right ' : 'arrow_bottom '; if (contents) { if (window.isTabletOnFullSite) { _overlay = new Overlay(source, [ Popover && Popover(source, _direction, _arrowPos + widget.element.className, null, contents), _position, RepositionOnEvent(window, ['resize', 'date_bar_docked', 'date_bar_undocked']) ]); } else { _overlay = new Overlay(source, [ Tooltip && Tooltip(source, _direction, _arrowPos + widget.element.className, contents), _position, CloseOnMouseAway ]); } } } if (_overlay) { _timeout = setTimeout(_overlay.show, _useDelay && event.type === "mouseover" ? HOVER_DELAY : CLICK_DELAY); Tracking.trackEvent('specialoffer_seen', 'hover', listPosition); } } return { overlay: _showOverlay }; }); });require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'hotels_hotels_nike_info_part','handlers',['handlers']); define(["widget", "ta/Core/TA.Record"], function(widget, taRecord) { function reviewClick(event, target, slotIndex, snippetIndex) { if (snippetIndex === 0) { taRecord.trackEventOnPage('hotels_nike_cell', 'nike_first_review_click', slotIndex); } if (snippetIndex === 1) { taRecord.trackEventOnPage('hotels_nike_cell', 'nike_second_review_click', slotIndex); } } function viewMapClick(event, target, slotIndex) { taRecord.trackEventOnPage('hotels_nike_cell', 'nike_view_map_click', slotIndex); } function viewAmenityClick(event, target, slotIndex) { taRecord.trackEventOnPage('hotels_nike_cell', 'nike_view_amenities_click', slotIndex); } return { reviewClick: reviewClick, viewMapClick: viewMapClick, viewAmenityClick: viewAmenityClick }; });});require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'meta_h_responsive_commerce_nike','handlers',['handlers']); /*jshint nonew: false */ /*jshint unused:false */ define(["widget", "commerce/offerclick", "responsive/text-resizer", "common/trackingStreams", 'ta/Core/TA.Event', "hotels/recentlyViewedHotels", "ta/Core/TA.LocalStorage", 'ta/Core/TA.FireEvent', 'hotels/ClickSourceTracking'], (function(widget, offerclick, resizer, trackingStreams, taEvent, recentlyViewedHotels, localStorage, taFireEvent, clickSourceTracking) { //shared state between all instances of this widget. //defining it this way lets us pick it up in tablet/tablet.js widget._shared = this; var _shared = this; var commerceElem = widget.element.querySelector(".comblockNike"); var locId = Number((commerceElem && commerceElem.getAttribute("data-locationId")) || "0"); var listPos = Number((commerceElem && commerceElem.getAttribute("data-listPos")) || "0"); _shared.clickableWhiteSpace = Boolean((commerceElem && commerceElem.getAttribute("data-clickablewhitespacedt"))); var RESPONSIVE_LISTING_OPEN_META_LINK = 'hotels.responsive_open_meta_link'; taFireEvent.off(RESPONSIVE_LISTING_OPEN_META_LINK, clickOfferWrapper); taFireEvent.on(RESPONSIVE_LISTING_OPEN_META_LINK, clickOfferWrapper); function _findClickElement(el) { while (el && el.getAttribute) { if (el.getAttribute('data-clickPart')) { return el; } el = el.parentNode; if (el === widget.element) { break; } } return null; } function _track(event, elem) { var clickElem = _findClickElement(event && event.srcElement); var part = clickElem ? clickElem.getAttribute('data-clickPart') : 'other'; var index = clickElem ? clickElem.getAttribute('data-index') : ''; trackingStreams.trackEvent('hotelcell_h_meta', part + "_" + index); } /** * HOT-24629: track commerce click on best seller hotel * */ function _trackCommerceClickOnBestSeller() { var isBestSeller = commerceElem.getAttribute('data-bestseller'); if (isBestSeller) { trackingStreams.trackEvent('best_seller_click', locId, listPos); } } /** * HOT-35460: track commerce clicks on properties with preferred amenities * */ function _trackCommerceClickOnAmenityRibbon() { var amenityRibbonTrackingProperties = commerceElem.getAttribute('data-amenityRibbonTrackingProperties'); if (amenityRibbonTrackingProperties) { amenityRibbonTrackingProperties.split(',').forEach( function (trackingProperty) { trackingStreams.trackEvent(trackingProperty, 'click'); }); } } /** * HOT-31902: track commerce click on a high scoring tag compared hotel * */ function _trackCommerceClickOnHighScoringHotel() { var compare = commerceElem.getAttribute('data-comparisonType'); if (compare) { trackingStreams.trackEvent(compare, 'click', 'commerce'); } } function _trackCugClick(elem) { var specialRateTracking = elem.querySelector('.special_rate_tracking'); if (specialRateTracking) { var provider = elem ? elem.getAttribute('data-provider') : 'Unknown'; var type = elem ? elem.getAttribute('data-specialratetype') : 'None'; trackingStreams.trackEvent('Hotels_Loyalty_HR_click', provider + "|" + type, specialRateTracking.getAttribute('productattribute')); } } function clickOffer(event, elem, forcedBehavior) { if (_shared.clickableWhiteSpace) { event.stopPropagation(); } _track(event, elem); var token = elem.getAttribute("data-clickToken"); if (token) { // HOT-23280: Recently viewed tracking for commerce clicks recentlyViewedHotels.trackCommerceClick(locId); _trackCommerceClickOnBestSeller(); _trackCommerceClickOnHighScoringHotel(); _trackCommerceClickOnAmenityRibbon(); } _trackCugClick(elem); } function clickOfferWrapper(event, listingKey, forcedBehavior) { // If the received widget is not in the current DOM, we turn the eventListener off and do not perform any action. // eslint-disable-next-line no-restricted-globals if (!document.body.contains(widget.element)) { taFireEvent.off(RESPONSIVE_LISTING_OPEN_META_LINK, clickOfferWrapper); return; } var child = commerceElem.querySelector('.premium_offer_container'); var buttonElem = child == null ? null : child.querySelector('[data-clicktoken]'); var currentElemListingKey = clickSourceTracking.findAttribute('data-listingKey', commerceElem); if(listingKey === currentElemListingKey) { clickOffer(event, buttonElem, forcedBehavior); } } function _processOverlayOnUpdateWidget() { // if there is an overlay already open, and we get new widget as of ajax update, we need to re-process the overlay if(_shared.dropDown && _shared.dropDownListPos == listPos ) { var newSrc = widget.element.querySelector(".moreLink"); if (_shared.dropDownLocId != locId || !newSrc) { // if the widget at the same position is of different property, close the dropdown _shared.dropDown.destroy(); _shared.dropDown=null; }else { _shared.dropDown.sourceElement = newSrc; // if the new widget is of the same property and same location, update the src element for the dropdwon } } } function _trackCug() { var trackingEl = widget.element.querySelector('.special_rate_tracking'); if (trackingEl) { var guests = ta.page.guests.toQueryJson().uguests; var checkin = ta.page.hasDates('CHECKIN') ? ta.page.getDates('CHECKIN')[0].toLocaleDateString() : 'default'; var checkout = ta.page.hasDates('CHECKOUT') ? ta.page.getDates('CHECKOUT')[0].toLocaleDateString() : 'default'; var dates = checkin + '_' + checkout; var label = [trackingEl.getAttribute('pageaction'), locId, checkin, checkout, guests].join('_'); trackingStreams.trackEventOnPageOnce(trackingEl.getAttribute('pageproperty'), label, trackingEl.getAttribute('productattribute') ); } } taEvent.on("page-polling-complete", _trackCug); _processOverlayOnUpdateWidget(); resizer.init(widget.element); return { clickOffer: clickOffer, clickOfferWrapper: clickOfferWrapper, }; }).bind({})); });require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'hotels_merchandise_messages_nike','handlers',['handlers']); define(['babel/babel-helpers', 'widget', 'vanillajs', 'common/trackingStreams', "ta/Core/TA.Event", 'utils/throttle', 'utils/VisibilityChecker'], function (babelHelpers, widget, vanilajs, trackingStream, taEvent, throttle, visibilityChecker) { var merchandiseMessages = widget.element && widget.element.querySelectorAll('.merchandise_message'); /** callback function get invoked after we see the message */ function _callBackAfterSeenMessage(merchandiseMessage) { if (merchandiseMessage) { var pageAction = merchandiseMessage.getAttribute("data-pageAction"); if (pageAction) { trackingStream.trackEvent("MERCHANDISE_MESSAGE", pageAction); taEvent.fireEvent(pageAction); // fire event for other listing widget to stop listening for scroll } var servletName = merchandiseMessage.getAttribute("data-servletName"); var type = merchandiseMessage.getAttribute("data-type"); if (servletName && type === "FREE_CANCELLATION") { trackingStream.trackEvent("osm-free-cancellation", "shown", servletName); } } } if (merchandiseMessages) { var _loop = function _loop(i) { if (merchandiseMessages[i]) { var pageAction = merchandiseMessages[i].getAttribute("data-pageAction"); if (pageAction) { var merchandiseMessageChecker = visibilityChecker({ elements: [merchandiseMessages[i]], callback: function callback() { return _callBackAfterSeenMessage(merchandiseMessages[i]); } }); if (merchandiseMessageChecker) { var _throttleTrackMessage = throttle(merchandiseMessageChecker, 300); window.addEventListener('scroll', _throttleTrackMessage); // throttle because this message widget is small, so scrolling and check if the widget is in view will fire a lot of events taEvent.on(pageAction, function () { window.removeEventListener('scroll', _throttleTrackMessage); // because there are several instances of this widget, if one instance trackEvent, we want other widget to not track it }); } } } }; // There can be multiple merchandise messages tied to a single offer. Need to independently track each type of merchandise message. for (var i = 0; i < merchandiseMessages.length; i++) { _loop(i); } } function freeCancellationClick(event, target) { trackingStream.trackEvent('hotelcell_h_meta', 'chevron_price_0'); } return { freeCancellationClick: freeCancellationClick }; });});require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'sponsoredListings_hotels_sponsored_owner_cta_listing','handlers',['handlers']); /** * Handler methods for the CTA ad * * @author aozturk * @since Nov 2018 */ define(['widget', 'common/trackingStreams'], function(widget, trackingStreams) { var LOCATION_ID_DATA_ATTR = 'data-locationId'; var IS_NEW_LISTING = 'data-isNewListing' var _sponsoredListing = widget.element.querySelector('.sponsoredListingAdCTA') function _init() { var locationId = parseInt(_sponsoredListing.getAttribute(LOCATION_ID_DATA_ATTR), 10); trackingStreams.trackUnifiedEvent('user_saw_cta_ad', 'impression', { locationId: locationId }); } if (_sponsoredListing.getAttribute(IS_NEW_LISTING)) { _init(); } }.bind({}));}); define('sponsoredlisting/HotelSponsoredListingStates', ['vanillajs'], function(vanillajs) { return { LISTING_CREATED: 'listing_created', LOCATION_REQUESTED: 'location_requested', LOCATION_CHOSEN: 'location_chosen', LOCATION_SHOWN: 'location_shown', RESET: 'reset', TIMED_OUT: 'timed_out', LOCATION_FORECASTING: 'location_forecasting' }; }); define('sponsoredlisting/HotelStaticListing', ['vanillajs', 'sponsoredlisting/HotelSponsoredListingStates'], function(vanillajs, SponsoredListingStates) { var LISTING_KEY_DATA_ATTR = 'data-listingKey'; var StaticListing = function (sponsoredListingData, listingWrapper, enableTrackingService, enableTrackingServiceShadowMode) { var _data = sponsoredListingData; var _currentState = SponsoredListingStates.LISTING_CREATED; var _listingWrapper = listingWrapper; var _hasImpressionFired = false; var _enableTrackingService = enableTrackingService; var _enableTrackingServiceShadowMode = enableTrackingServiceShadowMode; var updateState = function (newState) { _currentState = newState; }; var getState = function () { return _currentState; }; var getSlotIndex = function () { return _data.slotIndex; }; var getSponsoredType = function () { return _data.sponsoredType; }; var getSponsoredLocationSource = function () { return _data.sponsoredLocationSource; }; var getSponsoredSlot = function () { return _data.sponsoredPlacementSlot; }; var isSlotAny = function() { return _data.sponsoredPlacementSlot.isSlotAny; }; var getAdOpportunityId = function () { return _data.adOpportunityId; }; var getSlLineItemId = function () { return _data.slLineItemId; }; var getTripAdsId = function () { return _data.tripAdsId; }; var getTripAdsSelectRequestGuid = function () { return _data.tripAdsSelectRequestGuid; }; var hasImpressionFired = function () { return _hasImpressionFired; }; var getDisplayedLocationId = function () { return _data.locationId; }; var getListingWrapper = function () { return _listingWrapper; }; var listingMaintainedByPoll = function (listingWrapper, impressionKey, trackingTreePlacementName, uniqueRequestId, gosox) { _listingWrapper = listingWrapper; _data.impressionKey = impressionKey; _data.trackingTreePlacementName = trackingTreePlacementName; _data.uniqueRequestId = uniqueRequestId; _data.gosox = gosox; }; var impressionFired = function() { _hasImpressionFired = true; }; var getPollingParam = function () { return { slotIndex: _data.slotIndex, displayedLocationId: _data.locationId, sponsoredType: _data.sponsoredType, adOpportunityId: _data.adOpportunityId, slLineItemId: _data.slLineItemId } }; var getTrackingContext = function () { var listingKey = _listingWrapper.getAttribute(LISTING_KEY_DATA_ATTR); var trackingContext = { has_valid_candidate: true, placement_slot_name: _data.sponsoredPlacementSlot.name, slot_index: _data.slotIndex, location_id: _data.locationId, sponsored_type: _data.sponsoredType, opportunity_uid: _data.adOpportunityId, sl_line_item_id: getSlLineItemId(), page_geo_id: (require.defined('page-model') ? require('page-model').GEO_ID : -1), is_dynamic_listing: false, candidate_location_ids: [_data.locationId], chosen_location_id: _data.locationId, current_state: _currentState, listing_key: listingKey, trip_ads_select_guid: _data.tripAdsSelectRequestGuid, unique_request_id: _data.uniqueRequestId }; var tripAdsId = getTripAdsId(); if (!!tripAdsId) { trackingContext.trip_ads_id = tripAdsId; } return trackingContext; }; var refresh = function () { _currentState = SponsoredListingStates.RESET; }; var isLocationPaidBackfill = function () { return true; }; var isShowingLocation = function () { return true; }; var getImpressionKey = function () { return _data.impressionKey; }; var getTrackingTreePlacementName = function () { return _data.trackingTreePlacementName; }; var getUniqueRequestId = function() { return _data.uniqueRequestId; }; var getPartnerNotificationURL = function () { return _data.partnerNotificationURL; }; var getPartnerImpressionNotificationURL = function () { return _data.partnerImpressionNotificationURL; }; var getGosox = function () { return _data.gosox; }; var getListingKey = function () { return _listingWrapper.getAttribute(LISTING_KEY_DATA_ATTR); } var getTrackingGuid = function () { return _data.trackingGuid; } var getEnableTrackingService = function () { return _enableTrackingService; } var getEnableTrackingServiceShadowMode = function () { return _enableTrackingServiceShadowMode; } return { updateState: updateState, getState: getState, getSlotIndex: getSlotIndex, getSponsoredType: getSponsoredType, getSponsoredLocationSource: getSponsoredLocationSource, getSponsoredSlot: getSponsoredSlot, isSlotAny: isSlotAny, getAdOpportunityId: getAdOpportunityId, getSlLineItemId: getSlLineItemId, getTripAdsId: getTripAdsId, getTripAdsSelectRequestGuid: getTripAdsSelectRequestGuid, getPollingParam: getPollingParam, getTrackingContext: getTrackingContext, getListingWrapper: getListingWrapper, isLocationPaidBackfill: isLocationPaidBackfill, isShowingLocation: isShowingLocation, getDisplayedLocationId: getDisplayedLocationId, getImpressionKey: getImpressionKey, getTrackingTreePlacementName: getTrackingTreePlacementName, getUniqueRequestId: getUniqueRequestId, getPartnerNotificationURL: getPartnerNotificationURL, getPartnerImpressionNotificationURL: getPartnerImpressionNotificationURL, getGosox: getGosox, getListingKey: getListingKey, getTrackingGuid: getTrackingGuid, enableTrackingService: getEnableTrackingService, enableTrackingServiceShadowMode: getEnableTrackingServiceShadowMode, hasImpressionFired: hasImpressionFired, impressionFired: impressionFired, listingMaintainedByPoll: listingMaintainedByPoll, refresh: refresh }; }; return StaticListing; }); define('retargeting/providers/hotels-sp-provider', ['retargeting/util' ], function(rtUtil) { return function(eventType, trackingContext, listingWrapper) { if(!trackingContext) { return; } var isMember = false; var deviceType = ""; if (require.defined('page-model')) { isMember = require('page-model').session.loggedIn; deviceType = require('page-model').DUST_GLOBAL.DEVICE; } var dataToSend = {}; dataToSend.is_member = isMember; dataToSend.device_type = deviceType; dataToSend.locationId = trackingContext["location_id"]; dataToSend.slot = trackingContext["placement_slot_name"]; if(listingWrapper) { var topOffer = listingWrapper.querySelector("div[data-clicktoken]"); if(topOffer) { dataToSend.top_meta_offer = topOffer.getAttribute("data-provider"); dataToSend.pernight = topOffer.getAttribute("data-pernight"); } } rtUtil.getDates(dataToSend); rtUtil.send(eventType, dataToSend); } }); define('retargeting/listeners/hotels-sp-impression', ['retargeting/providers/hotels-sp-provider' ], function(spDataProvider) { return function(options, listingWrapper) { require(['trjs!taevents'], function() { if(typeof spDataProvider === 'function') { spDataProvider("HOTELS_SP_IMPRESSION", options, listingWrapper); } }); }; }); define('sponsoredlisting/HotelSponsoredListingTracker', ['vanillajs', 'common/trackingStreams', 'utils/cookieutils', 'ajax-request', 'page-model', 'commerce/offerclick'], function(vanilla, tracking, cookieUtils, ajaxRequest, pageModel, offerClick) { 'use strict'; var SPONSORED_AD_OPPORTUNITY_ID_COOKIE_NAME = 'sponsOppId'; var SPONSORED_AD_LINE_ITEM_ID_COOKIE_NAME = 'sponsLineItem'; var TRIP_ADS_EVENT_TYPE_CLICKED = 'CLICKED'; var TRIP_ADS_EVENT_TYPE_CLICKED_UNPAID = 'CLICKED_UNPAID'; var TRIP_ADS_EVENT_TYPE_IMPRESSED = 'IMPRESSED'; var SP_PARTNER_NOTIFICATION_IFRAME_ID = 'SP_PARTNER_NOTIFICATION_IFRAME'; function setSponsoredAdCookie(slLineItemId, adOpportunityId) { cookieUtils.setCookieInSeconds(SPONSORED_AD_OPPORTUNITY_ID_COOKIE_NAME, adOpportunityId, { duration: 10, ignoreVersion: true }); cookieUtils.setCookieInSeconds(SPONSORED_AD_LINE_ITEM_ID_COOKIE_NAME, slLineItemId, { duration: 10, ignoreVersion: true }); } function recordSponsoredPlacementCommerceClick(sponsoredListing, destination, isBooking, auctionOfferKey, isMetaPrefClick, callback) { var slotName = sponsoredListing.getSponsoredSlot().name; var servletName = sponsoredListing.getSponsoredSlot().servletName; var trackingContext = sponsoredListing.getTrackingContext(); var slLineItemId = sponsoredListing.getSlLineItemId(); var tripAdsId = sponsoredListing.getTripAdsId(); var slotIndex = sponsoredListing.getSlotIndex(); var impressionKey = sponsoredListing.getImpressionKey(); var trackingTreePlacementName = sponsoredListing.getTrackingTreePlacementName(); var gosox = sponsoredListing.getGosox(); if (sponsoredListing.isLocationPaidBackfill()) { ajaxRequest({ method: 'POST', url: isMetaPrefClick ? '/SponsoredListingCommerce/1.0/increment_click_metric' : '/SponsoredListingCommerce/1.0/click', 'content-type': 'application/json', 'x-requested-by': pageModel.JS_SECURITY_TOKEN, data: JSON.stringify( _assign({}, { 'slot': slotIndex, 'location_id': trackingContext.location_id, 'listing_key': trackingContext.listing_key, 'area': slotName, 'from': servletName, 'dest': destination, 'is_backfill': sponsoredListing.isLocationPaidBackfill(), 'click_type' : destination === 'Hotel_Review' ? 'HR' : (isBooking ? 'IB' : 'META') }, slLineItemId ? {'sl_line_item_id': slLineItemId} : {}, tripAdsId ? {'trip_ads_id': tripAdsId} : {}, impressionKey ? {'impression_key': impressionKey} : {}, auctionOfferKey ? {'auction_offer_key': auctionOfferKey} : {}, trackingTreePlacementName ? {'tt_placement': trackingTreePlacementName} : {}, gosox ? {'gosox' : gosox} : {}) ) }).then(callback, callback); } else { callback(); } } function postTripAdsEvent(selectRequestGuid, externalId, eventType) { return ajaxRequest({ method: 'POST', url: '/data/1.0/tap/recordEvent', 'content-type': 'application/json', 'x-requested-by': pageModel.JS_SECURITY_TOKEN, data: JSON.stringify({ 'eventType': eventType, 'requestGuid': selectRequestGuid, 'externalId': externalId }) }); } function recordTripAdsClick(sponsoredListing, isPaidSponsoredClick, callback) { var selectRequestGuid = sponsoredListing.getTripAdsSelectRequestGuid(); var externalId = sponsoredListing.getAdOpportunityId(); var eventType = isPaidSponsoredClick ? TRIP_ADS_EVENT_TYPE_CLICKED : TRIP_ADS_EVENT_TYPE_CLICKED_UNPAID; if (!!selectRequestGuid) { postTripAdsEvent(selectRequestGuid, externalId, eventType) .then(callback, callback); } else { callback(); } } function recordTripAdsImpression(selectRequestGuid, externalId) { if (!!selectRequestGuid) { postTripAdsEvent(selectRequestGuid, externalId, TRIP_ADS_EVENT_TYPE_IMPRESSED); } } function _assign(target, args) { for (var i = 1; i 0 && rect.height > 0 && ((rect.top >= 0 && rect.top = 0 && rect.bottom <= window.innerHeight)); } catch (e) { return false; } } function fireImpression(listing) { if (!listing || listing.hasImpressionFired()) { return; } if (listing.enableTrackingService()) { _fireTrackingServiceImpression(listing); } if (!listing.enableTrackingService() || listing.enableTrackingServiceShadowMode()) { _fireClientImpression(listing); } listing.impressionFired(); } function _fireClientImpression(listing) { var sponsoredLocationSource = listing.getSponsoredLocationSource(); var trackingContext = listing.getTrackingContext(); var tripAdsSelectRequestGuid = listing.getTripAdsSelectRequestGuid(); var opportunityId = listing.getAdOpportunityId(); if (sponsoredLocationSource === OWNER_AD_CTA_SPONSORED_LOCATION_SOURCE) { tracking.trackUnifiedEvent('sl_owner_cta_displayed', 'impression', trackingContext); } else { htImpTracker(trackingContext, listing.getListingWrapper()); tracking.trackUnifiedEvent('paid_backup_sponsored_listing_displayed', 'impression', trackingContext); if (!!tripAdsSelectRequestGuid) { HotelSponsoredListingTracker.recordTripAdsImpression(tripAdsSelectRequestGuid, opportunityId); } } if (listing.getPartnerImpressionNotificationURL()) { HotelSponsoredListingTracker.notifyPartner(listing.getPartnerImpressionNotificationURL()); } } function _fireTrackingServiceImpression(listing) { HotelSponsoredListingTracker.recordTrackingServiceImpression(listing); } var _updatePollingParameter = function(needsPoll) { var slotKey; var listing; var pollingParam = {}; for (slotKey in _sponsoredListings) { if (_sponsoredListings.hasOwnProperty(slotKey)) { listing = _sponsoredListings[slotKey]; if (listing.getState() !== SponsoredListingStates.RESET && !listing.isSlotAny()) { pollingParam[listing.getSponsoredSlot().name] = listing.getPollingParam(); } } } taFireEvent.fireEvent('hotels.sponsored_listing_updated', pollingParam, needsPoll); }; var getListingByElement = function(elem) { var slotKey; var listing; var foundListing; for (slotKey in _sponsoredListings) { if (_sponsoredListings.hasOwnProperty(slotKey)) { listing = _sponsoredListings[slotKey]; if (listing.getListingWrapper().contains(elem)) { foundListing = listing; break; } } } return foundListing; }; var getSponsoredListing = function(slotKey) { return _sponsoredListings[slotKey]; }; var getListingWrapper = function(slotKey) { var listing = _sponsoredListings[slotKey]; if (listing) { return listing.getListingWrapper(); } return null; }; var getTrackingContextForSlot = function(slotKey) { var listing = _sponsoredListings[slotKey]; if (listing && listing.getTrackingContext) { return listing.getTrackingContext(); } return undefined; }; var isShowingLocation = function(slotKey) { var listing = _sponsoredListings[slotKey]; return !!listing; }; _init(); return { staticListingRendered: staticListingRendered, listingMaintainedByPoll: listingMaintainedByPoll, fireImpression: fireImpression, getSponsoredListing: getSponsoredListing, getListingWrapper: getListingWrapper, getTrackingContextForSlot: getTrackingContextForSlot, isShowingLocation: isShowingLocation, getListingByElement: getListingByElement, updateOrCreateListingOnPoll: updateOrCreateListingOnPoll } }; return HotelsSponsoredListings; }); define('hotels/specialOfferClick', ['babel/babel-helpers', 'utils/waiton', 'ta/Core/TA.FireEvent', 'hotels/listingKeyPlugin'], function (babelHelpers, waitOn, taFireEvent, listingKeyPlugin) { var ASYNC_ACTIONS_TIMEOUT = 250; var SPECIAL_OFFER_CLICK_EVENT = 'hotels.special_offer_click'; var _preclickActions = []; var _registerAsyncPreclick = function _registerAsyncPreclick(action) { if (typeof action === 'function') { _preclickActions.push(action); } }; var _clickEvent = function _clickEvent(elem, listingKey, redirectAction, isNewTab) { taFireEvent.fireEvent(SPECIAL_OFFER_CLICK_EVENT, elem); listingKeyPlugin.setListingKeyCookie(listingKey); if (isNewTab) { redirectAction && redirectAction(); _preclickActions.forEach(function (action) { return action(elem, function () {}); }); } else { var boundActions = _preclickActions.map(function (action) { return action.bind(null, elem); }); waitOn(boundActions, redirectAction, ASYNC_ACTIONS_TIMEOUT); } }; return { SPECIAL_OFFER_CLICK_EVENT: SPECIAL_OFFER_CLICK_EVENT, registerAsyncPreclick: _registerAsyncPreclick, clickEvent: _clickEvent }; }); define('retargeting/listeners/hotels-sp-click', ['retargeting/providers/hotels-sp-provider' ], function(spDataProvider) { return function(options, listingWrapper) { require(['trjs!taevents'], function() { if(typeof spDataProvider === 'function') { spDataProvider("HOTELS_SP_CLICK", options, listingWrapper); } }); }; }); require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'sponsoredListings_hotels_sponsored_listing_data','handlers',['handlers']); /** * Basic handlers for a HotelsSponsoredListingDataWidget * * @author yujzhang * @since August 2019 */ define(['widget', 'vanillajs', 'utils/objutils', 'sponsoredlisting/HotelsSponsoredListings', 'sponsoredlisting/HotelSponsoredListingTracker', 'hotels/listingClick', 'hotels/baLinkClick', 'hotels/specialOfferClick', 'commerce/offerclick', 'ta/Core/TA.FireEvent', 'common/trackingStreams', 'retargeting/listeners/hotels-sp-click', 'ta/Core/TA.LocalStorage', 'hotels/ClickSourceTracking', 'hotels/tracking/UEF-LocationDateSpecificClickThru'], function(widget, vanillajs, objutils, HotelsSponsoredListings, HotelSponsoredListingTracker, listingClick, baWebLinkClick, specialOfferClick, offerClick, taFireEvent, trackingStreams, htClickTracker, localStorage, clickSourceTracking, UEFClickThruTracker ) { var META_PREFERENCE_SPONSORED_TYPE = 'DISCOVERY_META_PREFERENCE'; // Event name for organic listing rendered. Fired in hsx_responsive_listing/handlers.es6 and hsx_responsive_tabbed_listing/handlers.es6 var RESPONSIVE_LISTING_RENDERED_EVENT = 'hotels.responsive_listing_rendered'; var SPONSORED_LISTINGS_DATA_ATTR = 'data-sponsoredListingsData'; // Identify sponsored clicks so we do not subsequently show the user a login gate on an otherwise eligible detail page var SPONSORED_LISTING_ID_CLICKED_KEY = 'sponsoredListingIdClicked'; var SPONSORED_LISTING_ID_CLICKED_EXPIRATION = 1000 * 60 * 5; // 5 minutes in milliseconds // list of sponsored data which from HotelSponsoredListingDataModel.m_sponsoredListingsData var _sponsoredListingsData = JSON.parse(widget.element.querySelector('.sponsoredListingsData').getAttribute(SPONSORED_LISTINGS_DATA_ATTR).trim()); var shouldUngateSponsoredClicks = widget.element.querySelector('.sponsoredListingsData').hasAttribute('data-ungateSponsoredClicks'); var useTrackingService = widget.element.querySelector('.sponsoredListingsData').hasAttribute('data-useTrackingService'); var shadowMode = widget.element.querySelector('.sponsoredListingsData').hasAttribute('data-shadowMode'); // register event listener here so that _storeSponsoredData can get the updated _sponsoredListingsData for each polling // listener deregistered in _storeSponsoredData when widget.element get unmounted taFireEvent.on(RESPONSIVE_LISTING_RENDERED_EVENT, _storeSponsoredData); // necessary const and event listener for common behavior for listing click when the slot is for SP var clickThruTracker = new UEFClickThruTracker({ pageAction: 'ct_l2hr', // click thru list to hr }); var RESPONSIVE_LISTING_SP_CLICK = 'hotels.responsive_sp_click'; var RESPONSIVE_LISTING_OPEN_META_LINK = 'hotels.responsive_open_meta_link'; taFireEvent.off(RESPONSIVE_LISTING_SP_CLICK, _spListingClickAction); taFireEvent.on(RESPONSIVE_LISTING_SP_CLICK, _spListingClickAction); var _shared = this; // track state of sponsored listings (shared across all simple sponsored listing widgets) if (!_shared.sponsoredListingStateManager) { _shared.sponsoredListingStateManager = new HotelsSponsoredListings(); // attach a click handler to log impressions for SLOT_ANY SPs, these are special because // they change per poll. We don't want to overshoot each impression on polls, and this is a temporary solution listingClick.registerAsyncPreclick(_logImpressionForClickTemp); // attach click event handlers here since we only want to attach them once across polls, etc // register a callback on click through to /H_R that takes care of passing a click through to UUT listingClick.registerAsyncPreclick(_logClickToHotelReview); // register a callback on click through to /H_R that takes care of passing in our own sponsored placement commerce click listingClick.registerAsyncPreclick(_logSPCommerceClickForHR); // register a callback on click through to /H_R that takes care of logging the click event with TripAds listingClick.registerAsyncPreclick(_logClickToHRWithTripAds); // register a callback on click through to /H_R that notice partner sp click to /HR listingClick.registerAsyncPreclick(_notifyPartnerAboutHRClick); // register a callback on a meta/ib offer click that takes care of passing a click through to UUT offerClick.registerAsyncPreclick(_logIBMetaClick); // register a callback on a meta/ib offer click that takes care of passing in our own sponsored placement commerce click offerClick.registerAsyncPreclick(_logSPCommerceClick); // register a callback on a meta/ib offer click that takes care of logging the click event with TripAds offerClick.registerAsyncPreclick(_logClickWithTripAds); // attach a click handler to log impressions for SLOT_ANY SPs, these are special because // they change per poll. We don't want to overshoot each impression on polls, and this is a temporary solution offerClick.registerAsyncPreclick(_logImpressionForClickTemp); // register a callback on a click on a website click baWebLinkClick.registerAsyncPreclick(_logBAWebsiteClick); // attach a click handler to log impressions for SLOT_ANY SPs, these are special because // they change per poll. We don't want to overshoot each impression on polls, and this is a temporary solution baWebLinkClick.registerAsyncPreclick(_logImpressionForClickTemp); specialOfferClick.registerAsyncPreclick(_logSpecialOfferClick); // attach a click handler to log impressions for SLOT_ANY SPs, these are special because // they change per poll. We don't want to overshoot each impression on polls, and this is a temporary solution specialOfferClick.registerAsyncPreclick(_logImpressionForClickTemp); // Register callbacks for sp-tracking, either shadow mode or real mode listingClick.registerAsyncPreclick(_logTrackingServiceListingClick); listingClick.registerAsyncPreclick(_logTrackingServiceImpressionForClickTemp); offerClick.registerAsyncPreclick(_logTrackingServiceOfferClick); offerClick.registerAsyncPreclick(_logTrackingServiceImpressionForClickTemp); baWebLinkClick.registerAsyncPreclick(_logTrackingServiceBAClick); baWebLinkClick.registerAsyncPreclick(_logTrackingServiceImpressionForClickTemp); // TODO: We're not logging special offer clicks because this widget can't easily access the BA click's commerce URL. // Since sp-tracking can only distinguish between click types by inspecting the commerce url, the lack thereof // would imply that this is an internal SP click which is absolutely not what we want. // So just don't log a click. This is OK for now since we're currently only logging shadow-mode events. taFireEvent.off(listingClick.LISTING_CLICK_EVENT, _setAttributionCookieToHotelReview); taFireEvent.on(listingClick.LISTING_CLICK_EVENT, _setAttributionCookieToHotelReview); taFireEvent.off(specialOfferClick.SPECIAL_OFFER_CLICK_EVENT, _setAttributionCookieToHotelReview); taFireEvent.on(specialOfferClick.SPECIAL_OFFER_CLICK_EVENT, _setAttributionCookieToHotelReview); } function _storeSponsoredData(elem, listingKey) { if (!document.body.contains(widget.element)) { taFireEvent.off(RESPONSIVE_LISTING_RENDERED_EVENT, _storeSponsoredData); return; } var sponsoredListingData = _sponsoredListingsData.find(function(data) { return data.listingKey === listingKey; }); if (!sponsoredListingData) { return; } _init(elem, sponsoredListingData, sponsoredListingData.isNewListing); } /** * Initialize sponsored data. * * @param {Element} elem * @param {SponsoredListingData} sponsoredListingData This corresponds to HotelsSponsoredListingDataWidget.HotelsSponsoredData * @param {boolean} isNewListing True if this is the first poll or this listing was not present on the previous poll */ function _init(elem, sponsoredListingData, isNewListing) { // SLOT_ANY types are always new on each poll if (isNewListing) { _shared.sponsoredListingStateManager.staticListingRendered(elem, sponsoredListingData, useTrackingService, shadowMode); } else { _shared.sponsoredListingStateManager.updateOrCreateListingOnPoll(elem, sponsoredListingData, useTrackingService, shadowMode); } } /** * Ensure relevant clicks are recorded in the Unified User Tracking mechanism based on a corresponding Meta/IB click on one of the offers * * @param {Element|null} elem - the listing node (ancestor of the commerce node) * @param {Object} token - a mysterious commerce token * @param {Function} callback - the callback which we must call */ function _logIBMetaClick(elem, token, callback) { var slotKey = _getSlotKey(elem); var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (_enableClientTracking(listing)) { // copy the context to avoid mutating the real token object var commerceContext = objutils.extend({}, offerClick.expandToken(token)); delete commerceContext.url; // remove the super long commerce url to avoid clutter in tracking context if (_isListingClickRelevant(slotKey)) { var baseEventName = commerceContext.isBooking ? 'sponsored_ib_click' : 'sponsored_meta_click'; var trackingContext = _shared.sponsoredListingStateManager.getTrackingContextForSlot(slotKey); trackingContext = objutils.extend(trackingContext, commerceContext); // Unified User Tracking trackingStreams.trackUnifiedEvent('paid_backup_' + baseEventName, 'action', trackingContext); } callback(); } } /** * Post a sponsored placement commerce click on a click to H_R * * @param {Element} elem - the element that was clicked on * @param {String} listingKey - UUID that uniquely identifies a hotel listing * @param {Function} callback - the function to call after the tracking is complete (no params) * @private */ function _logSPCommerceClickForHR(elem, listingKey, callback) { // We could use the given listingKey, but to keep things consistent with meta/ib clicks we get it // from the SP widget's DOM node instead within this function if (!_isSuppressHRClickNecessary(elem)) { _logSPCommerceClick(elem, null, callback); } } /** * If the click is a paid sponsored click, post a sponsored placement commerce click * * null is passed in as the token to log if the destination is /Hotel_Review * * @param {Element|null} elem DOM element that got clicked * @param {Object|null} token A mysterious commerce token, if this was a click on a commerce offer (null otherwise) * @param {String} token.providerName The name of the provider associated with the clicked offer * @param {boolean} token.isBooking True if this is an IB click * @param {String} token.ttAOK Auction Offer Key * @param {Function} callback Function to call on completion. No params. * @private */ function _logSPCommerceClick(elem, token, callback) { var listing = _getListing(elem); var slotKey; if (listing) { var slot = listing.getSponsoredSlot(); slotKey = slot.slotKey; } // if token isn't provided, the user is clicking through to Hotel_Review var isClickToHotelReview = !token; var isMetaPrefClick = _isMetaPrefClick(slotKey, isClickToHotelReview, token); if (_isListingClickRelevant(slotKey) && _isPaidSponsoredClick(slotKey, isClickToHotelReview, isMetaPrefClick)) { if (listing && _enableClientTracking(listing)) { HotelSponsoredListingTracker.recordSponsoredPlacementCommerceClick(listing, isClickToHotelReview ? 'Hotel_Review' : token.providerName, isClickToHotelReview ? false : token.isBooking, isClickToHotelReview ? null : token.ttAOK, isMetaPrefClick, callback); } } else { callback(); } } /** * ensure that we fire a Unified User Tracking click event based on a click through to H_R * * @param {Element} elem - the element that was clicked on * @param {String} listingKey - UUID that uniquely identifies a hotel listing * @param {Function} callback - the function to call after the tracking is complete * @private */ function _logClickToHotelReview(elem, listingKey, callback) { var slotKey = _getSlotKey(elem); var listing = _getListing(elem); if (_enableClientTracking(listing)) { if (_isListingClickRelevant(slotKey) && !_isSuppressHRClickNecessary(elem)) { var trackingContext = _buildTrackingContextForSlot(slotKey); var listingWrapper = _shared.sponsoredListingStateManager.getListingWrapper(slotKey); trackingStreams.trackUnifiedEvent('paid_backup_sponsored_listing_click', 'action', trackingContext); // Holistic tracking for click event htClickTracker(trackingContext, listingWrapper); } callback(); } } /** * Create iframe with partner's URL to notice about click through /HR */ function _notifyPartnerAboutHRClick(elem, listingKey, callback) { var slotKey = _getSlotKey(elem); if (_isListingClickRelevant(slotKey) && !_isSuppressHRClickNecessary(elem)) { var sl = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (!sl || !sl.getPartnerNotificationURL() || (sl.enableTrackingService() && !sl.enableTrackingServiceShadowMode())) { return; } HotelSponsoredListingTracker.notifyPartner(sl.getPartnerNotificationURL()) } callback(); } /** * Log a click on a special offer within a sponsored listing * @param {Element} elem - the element that was clicked on * @param {Function} callback - the function to call after the tracking is complete * @private */ function _logSpecialOfferClick(elem, callback) { var slotKey = _getSlotKey(elem); var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (_enableClientTracking(listing)) { if (_isListingClickRelevant(slotKey)) { var trackingContext = _buildTrackingContextForSlot(slotKey); trackingStreams.trackUnifiedEvent('paid_backup_sp_special_offer_click', 'action', trackingContext); // Update holistic tracking here: https://jira.tripadvisor.com/browse/BIZ-13260 } callback(); } } function _buildTrackingContextForSlot(slotKey) { var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); var impressionKey = listing && listing.getImpressionKey(); var trackingTreePlacementName = listing && listing.getTrackingTreePlacementName(); return objutils.extend(_shared.sponsoredListingStateManager.getTrackingContextForSlot(slotKey), impressionKey ? {'ik': impressionKey} : {}, trackingTreePlacementName ? {'tt_placement': trackingTreePlacementName} : {} ); } /** * Log a impression for the V0 of sponsored hotels integration to the organic list. * Because the list polls and slots can change for each SP, we dont want to over generate * in-view impressions for these hotels. Quick solution: send impressions on clicks * * @param {Element} elem * @private */ function _logImpressionForClickTemp(elem) { var slotKey = _getSlotKey(elem); if (_isListingClickRelevant(slotKey) && !_isSuppressHRClickNecessary(elem)) { var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (listing && _enableClientTracking(listing)) { if (listing.isSlotAny() && !listing.hasImpressionFired()) { _shared.sponsoredListingStateManager.fireImpression(listing); } } } } /** * Set a cookie for sponsored listing click-through to /Hotel_Review * so that events on /Hotel_Review can be attributed to this interaction * * @param {Element} elem - the element that was clicked on * @private */ function _setAttributionCookieToHotelReview(elem) { var slotKey = _getSlotKey(elem); if (!_isListingClickRelevant(slotKey)){ return; } var sl =_shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (!sl || !sl.isShowingLocation()) { return; } HotelSponsoredListingTracker.setSponsoredAdCookie(sl.getSlLineItemId(), sl.getAdOpportunityId()); if (shouldUngateSponsoredClicks && localStorage.enabled) { localStorage.set(SPONSORED_LISTING_ID_CLICKED_KEY, sl.getDisplayedLocationId(), SPONSORED_LISTING_ID_CLICKED_EXPIRATION); } } /** * ensure that * - we fire our own Unified User Tracking events based on a click through to H_R * * @param {Element} elem - the element that was clicked on * @param {Object|null} token A mysterious commerce token, if this was a click on a commerce offer (null otherwise) * @param {Function} callback - the function to call after the tracking is complete * @private */ function _logBAWebsiteClick(elem, token, callback) { var slotKey = _getSlotKey(elem); var isCommerce = elem.hasAttribute('data-curl') && elem.getAttribute('data-curl') === 'true'; if (_isListingClickRelevant(slotKey)) { var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (_enableClientTracking(listing)) { var trackingContext = objutils.extend(_shared.sponsoredListingStateManager.getTrackingContextForSlot(slotKey), { is_commerce : isCommerce, ik : (token && token.ik) } ); trackingStreams.trackUnifiedEvent('paid_backup_sp_ba_website_click', 'action', trackingContext); } } callback(); } /** * ensure that * - we fire the TripAds click event for clicks to H_R on ads that were selected by TripAds * * @param {Element} elem - the element that was clicked on * @param {String} listingKey - UUID that uniquely identifies a hotel listing * @param {Function} callback - the function to call after the tracking is complete (no params) * @private */ function _logClickToHRWithTripAds(elem, listingKey, callback) { if(!_isSuppressHRClickNecessary(elem)) { _logClickWithTripAds(elem, null, callback); } } /** * ensure that * - we fire the TripAds click event for paid clicks on ads that were selected by TripAds * * @param {Element} elem - the element that was clicked on * @param {Object|null} token A mysterious commerce token, if this was a click on a commerce offer (null otherwise) * @param {Function} callback - the function to call after the tracking is complete * @private */ function _logClickWithTripAds(elem, token, callback) { var listing = _getListing(elem); var slotKey; if (listing && _enableClientTracking(listing)) { var slot = listing.getSponsoredSlot(); slotKey = slot.slotKey; if (_isListingClickRelevant(slotKey)) { // if token isn't provided, the user is clicking through to Hotel_Review var isClickToHotelReview = !token; var isMetaPrefClick = _isMetaPrefClick(slotKey, isClickToHotelReview, token); var isPaidSponsoredClick = _isPaidSponsoredClick(slotKey, isClickToHotelReview, isMetaPrefClick); HotelSponsoredListingTracker.recordTripAdsClick(listing, isPaidSponsoredClick, callback); } else { callback(); } } } /** * Determine whether or not we should charge the hotel for a click on the given slot. * * A standard sponsored listing click is always paid. * * A meta preference sponsored listing click is paid if the click goes to /Hotel_Review or if it is a meta pref click. * * @param {String} slotKey The slotKey of the sponsored placement slot in which the listing is rendered _ * @param {boolean} isClickToHotelReview True if this was a click to Hotel_Review, false otherwise * @param isMetaPrefClick True if this was a meta pref click for meta preference lineItem, false otherwise * @returns {boolean} True if we should charge the hotel for this click, false otherwise */ function _isPaidSponsoredClick(slotKey, isClickToHotelReview, isMetaPrefClick) { var sl = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); // Note that we don't charge for clicks on ib/meta for meta preference listings return !!sl && (sl.getSponsoredType() !== META_PREFERENCE_SPONSORED_TYPE || isClickToHotelReview || isMetaPrefClick); } function _isMetaPrefClick(slotKey, isClickToHotelReview, token) { var sl = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); return !!sl && sl.getSponsoredType() === META_PREFERENCE_SPONSORED_TYPE && !isClickToHotelReview && !!token && token.slot === '1'; } /** * Determine if the slot clicked (given by the slot key) is relevant to be tracked * * @param {String} slotKey The slotKey of the sponsored placement slot in which the listing is rendered _ * @returns {boolean} - true if we should track the click for this sponsored listing, false otherwise * @private */ function _isListingClickRelevant(slotKey) { if (slotKey) { return _shared.sponsoredListingStateManager.isShowingLocation(slotKey); } return false; } /** * Determine if the SLD or SLM clicks need to be suppressed. * * @param elem HTMLElement where click event happened. * @returns {boolean} - true if we should not allow the SLD or SLM clicks through, false otherwise * @private */ function _isSuppressHRClickNecessary(elem) { var spTestAction = clickSourceTracking.findAttribute('data-SPTestAction', elem); if (spTestAction === 'openMetaOnly' || spTestAction === 'openMetaHR' || spTestAction === 'openHRMeta') { return true; } return false; } /** * Given an element, determines the slot name by element (including the case of an offers dropdown overlay element) * @param {Element|null} elem - the clicked element * @returns {String|undefined} slotKey The key of the sponsored placement slot in which the listing is rendered * @private */ function _getSlotKey(elem) { var listing = _getListing(elem); var slotKey; if (listing) { var slot = listing.getSponsoredSlot(); slotKey = slot.slotKey; } return slotKey; } /** * Given an element, determines the listing by element (including the case of an offers dropdown overlay element) * @param {Element|null} elem - the clicked element * @returns {StaticListing|null} listing The listing where the element is rendered or null if it doesn't correspond to any listing * @private */ function _getListing(elem) { var listing = null; if (elem) { listing = _shared.sponsoredListingStateManager.getListingByElement(elem); // In the context of the 'View All Deals' dropdown, we display offers in an overlay that isn't within the listing // element in the DOM, so we need to check that case. if ((!listing) && (_isSponsoredListingOverlayListElement(elem))) { var slotKey = _getSlotKeyFromSponsoredListingOverlayListElement(elem); if (slotKey) { listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); } } } return listing; } /** * In the context of the 'View All Deals' dropdown, we display offers in an overlay that isn't within the listing * element in the DOM. In that case, look for the data attributes on the offer elements themselves. * TODO: We should find a better way to do this. If the unified price drawer rolls out to 100% of traffic, we can remove this special case. * @param {Element|null} elem - the clicked element * @returns {boolean} * @private */ function _isSponsoredListingOverlayListElement(elem) { if (elem && elem.getAttribute('data-sponsoredListing')) { return true; } return false; } /** * Given a sponsored listing overlay list element, returns the slot name * @param {Element|null} elem - the clicked element * @returns {String} slotKey * @private */ function _getSlotKeyFromSponsoredListingOverlayListElement(elem) { var slotKey = ''; var sponsoredListingJson = elem.getAttribute('data-sponsoredListing'); if (!sponsoredListingJson) { return slotKey; } try { var sponsoredListing = JSON.parse(sponsoredListingJson); slotKey = sponsoredListing.slotKey; } catch (error) { trackingStreams.error(error, 'error occurred when parsing sponsored listing json to retrieve a slot name'); } return slotKey; } /** * BIZ-18483: private method to define the common behavior if additional/alternative option is required for the value prop test in SP. * For variant 1: open meta link as a new tab for all SP Meta_Preference campaigns. * For variant 2: open meta link or BA weblink in a new tab and open /HR in current /H page. * For variant 3: open meta link or BA weblink in current /H page and open /HR in a new tab. * */ function _spListingClickAction(locId, testAction, currentElemListingKey, event, hrUrl, BAWebLink, index, info, impressionKey, isReviewClick){ // If the received widget is not in the current DOM, we turn the eventListener off and do not perform any action. // eslint-disable-next-line no-restricted-globals if (!document.body.contains(widget.element)) { taFireEvent.off(RESPONSIVE_LISTING_SP_CLICK, _spListingClickAction); return; } // We want to open meta link when the user clicked a whitespace, title or photo, but not the reviews. if (testAction === 'openMetaOnly' && !isReviewClick) { taFireEvent.fireEvent(RESPONSIVE_LISTING_OPEN_META_LINK, event, currentElemListingKey, false); } else { // In all other cases, we will open HR page as well as additional one if necessary, so track for the HR page open clickThruTracker.processAndTrackClickThrough(locId, impressionKey, hrUrl); trackingStreams.setEvtCookie('Reviews', info.source, locId, index, hrUrl); // Rule out edge cases before jumping into opening tabs. // For all SP campaigns in variant 2, apply test only when the click is not review click. // For all SP standard campaigns in variant 2 or 3, apply test only when BA website link is not null. // For all these edge cases, apply normal current behavior. switch (testAction) { case 'openHRMeta': if (isReviewClick) { // eslint-disable-next-line no-param-reassign testAction = ''; } break; case 'openHRWebLink': if (isReviewClick || BAWebLink == null) { // eslint-disable-next-line no-param-reassign testAction = ''; } break; case 'openWebLinkHR': if (BAWebLink == null) { // eslint-disable-next-line no-param-reassign testAction = ''; } break; default: break; } // Then, open necessary tabs switch (testAction) { case 'openHRMeta': // This will open a meta link in a new tab & track SLDM or SLMM clicks. taFireEvent.fireEvent(RESPONSIVE_LISTING_OPEN_META_LINK, event, currentElemListingKey, 'new_tab'); // Then, redirect current /H page to /HR // eslint-disable-next-line no-restricted-globals window.open(hrUrl, '_self'); break; case 'openMetaHR': // Open HR in a new tab. // eslint-disable-next-line no-restricted-globals window.open(hrUrl, '_blank'); // Then, redirect current /H page to a meta link & track SLDM or SLMM clicks. taFireEvent.fireEvent(RESPONSIVE_LISTING_OPEN_META_LINK, event, currentElemListingKey, 'same_tab'); break; case 'openHRWebLink': // This will open a BA weblink in a new tab & NOT track CLD or CLM clicks. // eslint-disable-next-line no-restricted-globals window.open(BAWebLink, '_blank'); // Then, redirect current /H page to /HR // eslint-disable-next-line no-restricted-globals window.open(hrUrl, '_self'); break; case 'openWebLinkHR': // Open HR in a new tab. // eslint-disable-next-line no-restricted-globals window.open(hrUrl, '_blank'); // Then, redirect current /H page to a BA weblink & NOT track CLD or CLM clicks. // eslint-disable-next-line no-restricted-globals window.open(BAWebLink, '_self'); break; default: // In all the other cases, open /HR in another tab. // eslint-disable-next-line no-restricted-globals window.open(hrUrl, '_blank'); } } } function _logTrackingServiceListingClick(elem, listingKey, callback) { var slotKey = _getSlotKey(elem); if (_isListingClickRelevant(slotKey) && !_isSuppressHRClickNecessary(elem)) { var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (listing && listing.enableTrackingService()) { HotelSponsoredListingTracker.recordTrackingServiceClick(listing, null); } } callback(); } function _logTrackingServiceOfferClick(elem, token, callback) { var slotKey = _getSlotKey(elem); if (_isListingClickRelevant(slotKey)) { var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); listing.enableTrackingService(); if (listing && listing.enableTrackingService()) { HotelSponsoredListingTracker.recordTrackingServiceClick(listing, token); } } callback(); } function _logTrackingServiceBAClick(elem, token, callback) { var slotKey = _getSlotKey(elem); if (_isListingClickRelevant(slotKey)) { var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (listing && listing.enableTrackingService()) { HotelSponsoredListingTracker.recordTrackingServiceClick(listing, token); } } callback(); } /** * Copy the same nonsense from _logImpressionForClickTemp because we apparently can't figure out * how to accurately measure impressions in a sane way for Smart Deals Featured Sort. * We should probably fix this eventually * * Note that this fires even for listing clicks if _isSuppressHRClickNecessary is true. Given that this * functionality is already horribly broken, and the relevant test feature is long since disabled, this is * not really worth fixing. * * @param {Element} elem */ function _logTrackingServiceImpressionForClickTemp(elem) { var slotKey = _getSlotKey(elem); if (_isListingClickRelevant(slotKey)) { var listing = _shared.sponsoredListingStateManager.getSponsoredListing(slotKey); if (listing && listing.enableTrackingService()) { if (listing.isSlotAny() && !listing.hasImpressionFired()) { HotelSponsoredListingTracker.recordTrackingServiceImpression(listing); } } } } /** * @return whether to log legacy client-side tracking events (commerce clicks / UUT / TripAds), * either alongside sp-tracking or by themselves * @param {StaticListing?} listing * @private */ function _enableClientTracking(listing) { return listing && (!listing.enableTrackingService() || listing.enableTrackingServiceShadowMode()); } }.bind({})); });require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'maps_dh_sort_filter_map_toggle_wc','handlers',['handlers']); define(["widget", 'lib/jquery-amd', 'common/Radio'], function (widget, $, radio) { 'use strict'; var widgetElement = $(widget.element); var $button = widgetElement.find(".map_list_column"); var mapRadio = radio('h-map'); function toggleMap() { mapRadio && mapRadio.trigger('open-trigger-clicked'); // Open map } $button.on('click', toggleMap); return { toggleMap: toggleMap }; }.bind({}));});require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'hotels_special_message','handlers',['handlers']); /** * Private javascript for special_message widget */ define(["babel/babel-helpers", "widget", "page-model", "ta/Core/TA.Record", "common/trackingStreams", "hotels/SpecialMessageUtil", 'common/page-filters', 'ta/page', 'lib/jquery-amd', 'hotels/ClickSourceTracking'], function (babelHelpers, widget, pageModel, taRecord, tracking, SpecialMessageUtil, pageFilters, Page, $, clickSourceTracking) { var _widgetElement = widget.element; var geoId = pageModel.GEO_ID; var _messageType = void 0; var _isPersistable = void 0; var _isPersistableOncePerGeo = void 0; function dismissMessage() { SpecialMessageUtil.dismissMessage(_widgetElement, _messageType, _isPersistable, _isPersistableOncePerGeo && geoId); tracking.trackEvent("Special_Message_Widget", "hidden", _messageType); } function toggleInfo() { var moreInfo = _widgetElement.querySelector(".moreInfo"); if (moreInfo) { moreInfo.classList.toggle("collapsed"); } } function _init() { var messageContainer = _widgetElement.querySelector(".specialMessageContainer"); if (messageContainer) { _messageType = messageContainer.getAttribute("data-messagetype"); _isPersistable = !!messageContainer.getAttribute("data-persist"); _isPersistableOncePerGeo = !!messageContainer.getAttribute("data-persist-once-per-geo"); taRecord.trackEventOnPage("Special_Message_Widget", "shown", _messageType); } var link = _widgetElement.querySelector(".primaryText[data-link] .link"); if (link) { link.addEventListener("click", _primaryTextClick); } _widgetElement.addEventListener("click", _widgetClick); } function _primaryTextClick(event) { var targetParent = event.target && event.target.parentNode; var url = targetParent.getAttribute("data-link"); var trackingInfo = targetParent.getAttribute("data-track"); if (trackingInfo) { var trackingArgs = trackingInfo.split('|'); taRecord.addGARecordMevt.apply(taRecord, babelHelpers.toConsumableArray(trackingArgs)); } if (url) { window.location = url; } return false; } function _widgetClick(event) { clickSourceTracking.trackElement(event.target, widget.element); var classList = event.target.classList; if (classList.contains("ui_button") && classList.contains("primary")) { dismissMessage(); switch (_messageType) { case "CONSIDER_VACATION_RENTAL": // fill the first page by adding vacation rentals at the end of the main list Page.showVRs(); break; case "VRS_PROP_TYPE_ON_H": // select only the Vacation Rentals property type pageFilters.setAll("cat", ["6"]); // scroll to the top of the page, as the list will be completely refreshed $('html,body').animate({ scrollTop: 0 }, 200); break; } } return false; } function _onFilterChanged() { var dismissWithFilterChange = _widgetElement.querySelector("[data-dismissWithFilterChange]"); if (dismissWithFilterChange) { dismissMessage(); } } _init(); pageFilters.on('change', _onFilterChanged); return { dismiss: dismissMessage, toggleInfo: toggleInfo }; });});require(['ta/p13n/placements','ta/page','$prp/background_update_dates/handlers'], function(placements, impl) { window.ta.plc_background_update_dates_handlers = placements.load('background_update_dates','handlers.js', { 'name': 'background_update_dates', 'id': 'taplc_background_update_dates', 'location_id': 147414, 'servletClass': 'com.TripResearch.servlet.hotels.HotelsServlet', 'servletName': 'Hotels', 'params': {}, 'data': {}});}); require(['ta/prwidgets'], function(widgets) { var define = widgets.define.bind(widgets,'hotels_partial_match_header','handlers',['handlers']); /** * Private javascript for partial_match_header widget */ define(["babel/babel-helpers", "widget", "common/page-filters", "common/Radio"], function (babelHelpers, widget, Filters, Radio) { var wcBridgeRadio = Radio("web-component-data-bridge"); function clearFilters() { require(["babel/babel-helpers", 'trjs!common/track-filter'], function (babelHelpers, trackFilters) { trackFilters('overall_clear', 'unselect_link', 'clear_all', 0); }); Filters.clearAll(); wcBridgeRadio.trigger("externalClearAll"); window.scrollTo(0, 0); } var clearAllElement = widget.element.querySelector(".clearAllFilters"); if (clearAllElement) { clearAllElement.addEventListener("click", clearFilters); } });});if (require) {require(['ta/rollupAmdShim'], function(rollupAmdShim) { rollupAmdShim.install([], ["ta"]); }); } else {if (window.ta&&ta.rollupAmdShim) {ta.rollupAmdShim.install([],["ta"]);} }require(['ta/p13n/placements','ta/page','$prp/recently_viewed_helper_list/handlers'], function(placements, impl) { window.ta.plc_recently_viewed_helper_list_handlers = placements.load('recently_viewed_helper_list','handlers.js', { 'name': 'recently_viewed_helper_list', 'id': 'taplc_recently_viewed_helper_list', 'location_id': 147414, 'servletClass': 'com.TripResearch.servlet.hotels.HotelsServlet', 'servletName': 'Hotels', 'params': {}, 'data': {}});}); define("cpm/AdBlockDetect", ["lib/jquery-amd","utils/browserutils","ta/Core/TA.Event","ta/Core/TA.Record","ta/util/Error"], function( $, Browser, taEvent, taRecord, taError) { 'use strict'; var exports = {}; var _testImg; var DEFAULT_LABEL = "ab_chk"; var _isPixelLoadError; var _logged = false; var _cdn = window.CDNHOST || ""; var _pixelUrl = "/img2/x.gif?&ads=1&adsize=2&adslot=3&rnd="; var _generatePixel = function() { var rnd = Math.floor(Math.random() * 100000); return $('‘); }; var _getAdCount = function() { var count = document.querySelectorAll(“.gptAd:not(.inactive)”).length; if (screen.width < 768) { count += document.querySelectorAll(".inline_ad_wrapper").length; } return count; }; var _log = function(blocked, trackingLabel, trackUnblocked){ if ((!_logged && trackingLabel === DEFAULT_LABEL) || (trackingLabel && trackingLabel !== DEFAULT_LABEL)){ if (blocked || trackUnblocked) { taRecord.trackEventOnPage(trackingLabel, Browser.name, blocked, _getAdCount(), false); } _logged = true; } }; var _detect = function(onDetectedHandler, trackingLabel, trackUnblocked, isLoadError){ if (typeof isLoadError != undefined) { _isPixelLoadError = isLoadError; } if (_testImg){ var blocked = _isPixelLoadError ? true : !_testImg[0].offsetParent; _log(blocked, trackingLabel, trackUnblocked); if (blocked) { onDetectedHandler(); } } }; exports.runIfDetected = function(onDetectedHandler, trackingLabel, trackUnblocked) { if ( typeof onDetectedHandler != "function") { taError.record(null, "runIfDetected requires a function"); return; } taEvent.queueForLoad( function() { _logged = false; if (_testImg) { _detect(onDetectedHandler, trackingLabel, trackUnblocked); } else { _testImg = _generatePixel(); _testImg.on("load", function(){ _detect(onDetectedHandler, trackingLabel, trackUnblocked, false); }); _testImg.on("error", function(){ _detect(onDetectedHandler, trackingLabel, trackUnblocked, true); }); $("body").append(_testImg); } }, "AdBlockDetect"); }; return exports; }); require(['ta/p13n/placements'], function(placements) { var define = placements.define.bind(placements,'ab_chk','handlers',['handlers']); /* * ADS-3472: ad blocker detection running permanently on sales drs 99 * Works in Chrome, Firefox, Safari & IE. */ define(["placement","cpm/AdBlockDetect"], function(placement,abDetect) { // a fn is required, abDetect.runIfDetected(function(){}, "ab_chk", true); }); });require(['ta/p13n/placements','ta/page','$prp/ab_chk/handlers'], function(placements, impl) { window.ta.plc_ab_chk_handlers = placements.load('ab_chk','handlers.js', { 'name': 'ab_chk', 'id': 'taplc_ab_chk', 'location_id': 147414, 'servletClass': 'com.TripResearch.servlet.hotels.HotelsServlet', 'servletName': 'Hotels', 'params': {}, 'data': {}});}); if (require) {require(['ta/rollupAmdShim'], function(rollupAmdShim) { rollupAmdShim.install([], ["ta/util/RecordInterruption"]); }); } else {if (window.ta&&ta.rollupAmdShim) {ta.rollupAmdShim.install([],["ta/util/RecordInterruption"]);} } window.ta || (window.ta = {}); define('ta/util/RecordInterruption', ['vanillajs', 'ta/Core/TA.Record', 'ta/util/Error'], function(vanilla, track, error) { 'use strict'; var GA_REC_MODULE = 'interruption_record'; var VALID_TYPES = [ 'popup', 'popunder', 'gate', 'other' ]; var _err = function(msg, eobj) { error.record(eobj, msg, null, null); }; var _isValidType = function(type) { for (var i = 0; i SCROLL_BUFFER) { $(surveyContainerClassName).hide(); } }; $(window).on('scroll', throttle(hide, 100)); } var surveyRadio = Radio("QualtricsSurvey"); // use radio so this functionality can be added to WC footer easily window.addEventListener("qsi_js_loaded", function() { // this event is fired when the Qualtrics external JS has finished loading if (surveyRadio.requestAny("shouldSuppress", true)) { $(surveyContainerClassName).hide(); } }); surveyRadio.on("hide", function() {$(surveyContainerClassName).hide();}); surveyRadio.on("show", function() {$(surveyContainerClassName).show();}); } } }); return { }; }); });require(['ta/p13n/placements'], function(placements) { var define = placements.define.bind(placements,'dual_search_dust','handlers',['deferred/lateHandlers','handlers']); /** * Private javascript for dual_search placement */ define(["placement", "lib/jquery-amd", "ta/Core/TA.Store", 'ta/Core/TA.Event', "typeahead/TypeAhead.views" /*this needs to be here when the placement is, even though we don't use it here */ ], function (placement, $, taStore, taEvent, typeAheadViews) { if (placement.params && 'typeahead_to_store' in placement.params) { var propertiesToStore = placement.params['typeahead_to_store']; if (propertiesToStore) { for (var property in propertiesToStore) { if (propertiesToStore.hasOwnProperty(property)) { taStore.store(property, propertiesToStore[property]); } } } } focusOnWrapperClick('GEO_SCOPE_CONTAINER', 'GEO_SCOPED_SEARCH_INPUT'); focusOnWrapperClick('MAIN_SEARCH_CONTAINER', 'mainSearch'); /** * allows to focus the corresponding input when its wrapper is clicked (wrapper is wider and taller than the input) */ function focusOnWrapperClick(wrapperId, inputId) { $('#' + wrapperId).on('click', function(e) { // If the click target is the input element, let the browser handle it, so we don't trigger focus twice. if ($(e.target).closest('#' + inputId).length == 0) { $('#' + inputId).focus(); } }); } var options = taStore.retrieve("typeahead_dual_search_options"); function _popAutoTooltip() { if (!options.autoTooltip || !taStore.retrieve("isFirstSessionPageView") || !window.require) { return; } var reqs = ['trjs!overlays/Overlay', 'trjs!overlays/position', 'trjs!overlays/styles/popover', 'trjs!overlays/options/maxWidth', 'trjs!overlays/options/repositionOnEvent' ]; require(reqs, function (Overlay, Position, Style, MaxWidth, Reposition) { var searchButton = document.getElementById("SEARCH_BUTTON"); var mixins = [ Position && Position['below'] && Position['below']([], false), Style && Style(searchButton, 'below', "dark small", " ", options.autoTooltip), MaxWidth && MaxWidth(220), ]; var overlay = new Overlay(searchButton, mixins); if (overlay) { // pop tooltip immediately overlay.show() } }); } if (document.activeElement === $("#GEO_SCOPED_SEARCH_INPUT")[0]) { placement.require(["trjs!deferred/lateHandlers"], function (lh) { lh.whereFocused({type: "dummy"}, document.activeElement); }); } else if (document.activeElement === $("#mainSearch")[0]) { placement.require(["trjs!deferred/lateHandlers"], function (lh) { lh.whatFocused({type: "dummy"}, document.activeElement); }); } else if (options && options.autoTooltip) { taEvent.queueForLoad(_popAutoTooltip, "dual_search auto tooltip"); } return { getOptions: function () { return options; } }; }); });define('mixins/page-dates/picker-autoadvance-utils', [], function() { var exports = {}; exports.keepOverlayOpenOnSelection = function(target) { var overlayElmts = document.querySelectorAll(".ui_overlay"); for (var i = 0; i

    FIRST_AD_TOP – apiTrigger) {window.removeEventListener(‘scroll’, initAtFirstAd);if (!initHasRun) {initHasRun = true;require([‘@ta/platform.runtime’, ‘trjs!cpm/Desktop’], function(runtime, desktopAds) {runtime.importBundle(‘@ta/platform.consent’).then(function (bundle) {bundle.requestConsent(bundle.CategoriesEnum.ADVERTISING, function() {desktopAds.initDoubleClick(initOpts); });});});}}}initAtFirstAd();window.addEventListener(‘scroll’, initAtFirstAd);});]]>



    Source

    Βρείτε πτήσεις, ξενοδοχεία και ενοικιαζόμενα αυτοκίνητα

    Αναζητήστε πτήσεις, ξενοδοχεία, ενοικιαζόμενα αυτοκίνητα και άλλα με την KAYAK. Η KAYAK ψάχνει ταυτόχρονα σε εκατοντάδες άλλες ταξιδιωτικές ιστοσελίδες, ώστε να βρει τις πληροφορίες που χρειάζεστε για να λάβετε τις σωστές αποφάσεις. Η KAYAK σάς βοηθά επίσης να βρείτε τα σωστά ξενοδοχεία που ταιριάζουν στις ανάγκες σας.

    Source

    Hotel in St. Vincent and the Grenadines

    Association football
    Hotel in St. Vincent and the Grenadines – Beachcombers Hotel ‘); if (opts.sidebar_pos === nkspos) { $tabs.filter(‘:has(“.nks-tab”)’).prepend($btn); triggerEvent(); return; } if (opts.sidebar_pos === subpos) { $tabs.filter(‘:has(“.nksub-tab-icon”)’).prepend($btn); triggerEvent(); return; } } else { $tabs = $(‘ ‘); $body.append($tabs); } triggerEvent(); // }); }); } function triggerEvent(){ $(document).trigger(‘ncf_ready’); } })(jQuery) ]]> Beachcombers Hotel

    0%

    Business Finance
    Source

    Volcano erupts on Caribbean island of St. Vincent, sending ash 20,000 feet into the air

    210409114650-01-st-vincent-volcano-exlarge-169.jpg

    Arizona
    Volcano erupts on Caribbean island of St. Vincent, sending ash 20,000 feet into the air

    Skip to comments.

    Volcano erupts on Caribbean island of St. Vincent, sending ash 20,000 feet into the air
    CNN ^ | Fri April 9, 2021 | Radina Gigova and Paul Murphy,

    Posted on 04/09/2021 11:07:41 AM PDT by BenLurkin

    La Soufrière volcano is located on the largest island of the St. Vincent and the Grenadines chain, the country’s National Emergency Management Organization (NEMO) said. “Explosive eruption at La Soufrière,” NEMO tweeted. “Ash plumes up to 20,000 feet headed East,” it added.

    St. Vincent and the Grenadines Prime Minister Ralph Gonsalves on Thursday declared a disaster alert prompted by a change in the eruptive activity at the La Soufrière volcano, NEMO said.

    The island was placed on red alert, meaning an eruption was “imminent now,” NEMO said.

    “Please leave the red zone immediately. La Soufrière has erupted. Ash fall recorded as far as Argyle International Airport,” it said.

    On Friday, Dora James, director general of Saint Vincent and the Grenadines Red Cross, told CNN the eruption sounded like a “large jet engine,” and that there was a “consistent flow of smoke” from the ash plume.

    Broadcasting (NEC)

    (Excerpt) Read more at cnn.com

    TOPICS: Travel
    KEYWORDS: caribbean; stvincent; volcano Navigation: use the links below to view more comments.
    first 1-2021-34 next last 1 posted on 04/09/2021 11:07:41 AM PDT by BenLurkin

    To: BenLurkin

    Iceland. Now this one.

    Gonna be a cold snap.

    2 posted on 04/09/2021 11:11:17 AM PDT by Seruzawa (The political Left is the Garden of Eden of Incompetence – Marx the Smarter (Groucho))

    To: BenLurkin

    In before the left finds this to be “racist”.

    3 posted on 04/09/2021 11:12:13 AM PDT by Caipirabob (Communists…Socialists…Fascists & AntiFa…Democrats…Traitors… Who can tell the difference?)

    To: Seruzawa; All

    4 posted on 04/09/2021 11:13:12 AM PDT by BenLurkin (The above is not a statement of fact. It is either opinion, or satire. Or both.)

    To: Seruzawa

    “Iceland. Now this one.
    Gonna be a cold snap.”

    Won’t matter. The “follow the pretend science” media will blame the eruptions on climate change anyway, and somehow the colder temp reading will be “corrected” to show continued warming.

    Those D- STEM students need those climate change gubmit research funds, ya know.

    5 posted on 04/09/2021 11:15:27 AM PDT by Da Coyote

    To: BenLurkin

    Well there goes Globull Warming!………………

    6 posted on 04/09/2021 11:16:23 AM PDT by Red Badger (“We’ve always been at war with Climate Change, Winston.”…………………………)

    To: BenLurkin

    Wonder where all the offices of all the trusts and corporations will get moved…? /s

    7 posted on 04/09/2021 11:20:33 AM PDT by patriotfury ((May the fleas of a thousand camels occupy mo’ ham mads tents!) )

    To: BenLurkin

    .. and how many climate changing, atmosphere polluting, it’s- the-end-of-the-freeworld-as-we-know-it tens of millions of tons of “greenhouse gases’ will be discharged into the atmosphere-naturally, as in “not caused directly OR indirectly by mankind”?

    Crickets……

    8 posted on 04/09/2021 11:21:41 AM PDT by China Clipper ( Animals? I LOVE animals. See? There’s one there, right next to the potatoes!)

    To: BenLurkin

    20,000 feet in the air?? pffft. Amateurish.

    Iceland’s volcanoes send ash 30,000 feet!

    9 posted on 04/09/2021 11:23:22 AM PDT by PGR88

    To: BenLurkin

    If only we could just get the gulf of California to open up all the way to Vegas or Mammoth/Reno area, putting some distance between CA and Arizona, and giving AZ some beach and shipping…

    10 posted on 04/09/2021 11:24:56 AM PDT by patriotfury ((May the fleas of a thousand camels occupy mo’ ham mads tents!) )

    To: BenLurkin

    Has CNN found a way to blame Trump yet?

    11 posted on 04/09/2021 11:27:10 AM PDT by cdcdawg (WTF is “Jim Eagle?”)

    To: BenLurkin

    That plume of pollution could’ve very well come out of Michael Moore and has nothing to do with a volcano…

    12 posted on 04/09/2021 11:27:59 AM PDT by Paco

    To: BenLurkin

    Is this part of Bill Gates’ project to freeze global warming?

    13 posted on 04/09/2021 11:29:34 AM PDT by Lurkina.n.Learnin (The veil of civilization is only 9 meals thick. )

    To: BenLurkin

    14 posted on 04/09/2021 11:32:54 AM PDT by struggle

    To: BenLurkin

    Face diaper mumblers.
    Not watching.

    15 posted on 04/09/2021 11:33:01 AM PDT by gathersnomoss (Watch your back.)

    To: BenLurkin

    I think the best way to stop this is for me to drink some Jim Beam Bourbon.

    That stopped that volcano in Peoria.

    16 posted on 04/09/2021 11:34:02 AM PDT by blueunicorn6 (“A crack shot and a good dancer”)

    To: BenLurkin

    All these volcanoes!

    Gaia must be really pissed.

    Quick, someone toss Greta into a cone of roiling magma to make it all stop.

    To: BenLurkin

    18 posted on 04/09/2021 11:41:27 AM PDT by heavy metal (smiling improves your face value as well as making people wonder what the hell you’re up to… )

    To: Red Badger

    It’s going to be interesting to see how it affects hurricane season. We (Florida) had a period of calm caused by dust being blown across the Atlantic from the Sahara Desert. Hurricanes had problems staying formed. With the volcanic ash? Who knows…could be a light season.

    19 posted on 04/09/2021 11:47:36 AM PDT by USAF1985 (An armed population is a polite population…)

    To: Seruzawa

    There goes the neighborhood.

    20 posted on 04/09/2021 11:50:04 AM PDT by Noumenon (The Second Amendment exists primarily to deal with those who just won’t take no for an answer. KTF) Navigation: use the links below to view more comments.
    first 1-2021-34 next last

    Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.

    FreeRepublic.com is powered by software copyright 2000-2008 John Robinson

    Source

    UH – Digital History

    19th century in the United States

    American Civil War

    Calhoun School
    HISTORY ERAS
    • The First Americans
    • Colonial Era
    • American Revolution
    • Early National Period
    • Pre-Civil War Era
    • Slavery
    • Civil War
    • Reconstruction
    • Gilded Age
    • America Becomes a
    Frederick DouglassWorld Power

    • Progressive Era
    • World War I
    • 1920s
    • Great Depression
    • World War II
    • Post-War Era
    • 1960s
    • Vietnam War
    • 1970-2000
    • The 21st Century
    Lecturers
    LincolnPresidency of Abraham Lincoln

    Calhoun School
    DO HISTORY TOPICS
    • Advertisements
    • Architecture
    • Art
    • Beauty & Fashion
    • Cemeteries
    • Children
    • Controversies
    • Courtship
    • Decision Making
    • Film
    • Food
    • Historiography
    • Immigration & Ethnicity
    • Music
    • Photography
    • Political Cartoons
    • Private Life
    • Propaganda Posters
    • Science & Technology
    • Slavery
    Lecturers
    Lincoln

    The United States

    Calhoun School
    PRIMARY SOURCES
    • Landmark Documents
    • Court Cases
    • Supreme Court Cases
    • Newspaper Articles
    • Obituaries
    Lecturers
    VOICES
    • Overview & Resources
    • Asian American
    • Children
    • Civil Rights
    • Immigrant
    • Native Americans
    • Texas
    • Women
    Lecturers
    AUDIO-VISUAL
    • Film Trailers
    • Music
    • Speeches
    Lecturers• Historical Movies

    LecturersMULTIMEDIA
    • Digital Stories

    Lincoln

    Lincoln

    Calhoun School
    GENERAL REFERENCE
    • Timelines
    • Reference Room
    • Glossaries
    • History Profession
    • Image Sites
    • Maps
    • Museums & Archives
    • Writing Guides
    Lecturers
    ACTIVE LEARNING
    • eXplorations

    FOR TEACHERS
    • Classroom Handouts
    • Lesson Plans
    • Quizzes
    Lecturers
    EXHIBITIONS
    • Lincoln’s America
    • Reconstruction
    • Dear Madam
    • Frederick Douglass
    • A Soldier’s Sketchbook
    • Calhoun School

    Source

    National Garifuna Council offers support to the People of St. Vincent and the Grenadines

    Afro-Belizean

    Views: 177

    Posted: Friday, April 16, 2021. 9:05 am CST.

    By Zoila Palma: The National Garifuna Council issued a statement expressing their solidarity for the people of St. Vincent and the Grenadines who are being affected by the La Soufriere Volcanic Eruption.

    “The sheer enormity of the destruction to homes, lands and crops is further intensified, due to the impact of the novel COVID-19 pandemic. NGC continues to offer prayers for the continued safety of our brothers and sisters in our ancestral land of St. Vincent and the Grenadines (Yurumein),” the council said.

    In addition, the council is gathering donations to send to St. Vincent and the Grenadines.

    Those wishing to contribute can do so by depositing to the National Garifuna Council Scotiabank Bank account number 1939304.

    The Council says that all contributions will be forwarded to partners in St. Vincent on behalf of the people of Belize.

    Comments

     

    Аdvеrtіѕе wіth thе most visited news site in Веlіzе ~ Wе оffеr fullу сuѕtоmіzаblе аnd flехіblе dіgіtаl mаrkеtіng расkаgеѕ. Yоur соntеnt іѕ dеlіvеrеd іnѕtаntlу tо thоuѕаndѕ оf uѕеrѕ іn Веlіzе аnd аbrоаd! Соntасt uѕ аt [email protected] оr саll uѕ аt 501-601-0315.

     

    © 2021, BreakingBelizeNews.com. This article is the copyrighted property of Breaking Belize News. Written permission must be obtained before reprint in online or print media. REPRINTING CONTENT WITHOUT PERMISSION AND/OR PAYMENT IS THEFT AND PUNISHABLE BY LAW.



    Source

    I’m Looking for Places to Go Gold Panning in California

    American River
    Gold prospecting is a good activity for adults and kids.

    Gold prospecting is a good activity for adults and kids. (Photo: Stockbyte/Stockbyte/Getty Images )

    While the California gold rush has long since passed, there’s no reason why current prospectors can’t still take to the land in the hopes of finding a remaining nugget or two. Gold panning is legal in most rivers and streams running through state and national parks in California, but your luck will be best if you head to regions where gold has been discovered in the past.

    Northern California

    Northern California is the area of the state richest in spots for gold panning. Places to pan for gold in Northern California include Marshall Gold Discovery State Historic Park, which offers panning along the American River, and Auburn State Recreation Area, north of Sacramento, where you can go prospecting along all permanent running streambeds. Malakoff Diggins State Park is one of the northernmost places to look for gold, situated northeast of Sacramento and west of Reno. You can pan more than 25 miles along the river and take in views of the huge cliffs that were formed by gold diggers during the gold rush. You can also use gold pans in Tahoe National Forest, at the Union Flat Campground when it’s open.

    Central California

    At the Millerton Lake State Recreation Area, northeast of the Fresno area, you can take a gold tour or pan for gold on Saturdays during the months of November and March. The San Joaquin River Gorge, also north of Fresno near the town of Auberry, offers opportunities for outdoor activity, gold panning being one of them. The Bureau of Land Management field office puts on programs on the history of the gold rush for children.

    Southern Inland California

    You can also look for gold in park areas in Southern California, though your options are more limited. Red Rock Canyon State Park, east of Bakersfield in the Mojave Desert and about two hours from Los Angeles, was once an important site in the gold rush. On this site, a 14-ounce nugget was discovered. You can pan on streams in the area.

    San Diego Area

    About 45 minutes by car from the city of San Diego, you can enjoy a history lesson about the gold rush and pan for gold at the Julian Mining Company. You can expect a demonstration and one hour of panning time. Groups of 25 are required to reserve a tour, but smaller groups may be allowed to join a larger group that has already reserved a tour.

    Considerations

    Since most of the gold prospecting opportunities in California are in state parks, this hobby won’t cost you very much. Most parks, including Marshall Gold Discovery State Historic Park and Malakoff Diggins State Historic Park, have a minimal entry fee per car. If you’re new to gold prospecting or just doing it for a day or two, the good news is you don’t need to buy any special equipment to get started. With a shovel and gold pan, you are ready to head out.

    References

    Writer Bio

    Lara Webster has been writing professionally since 2009. Her work has been featured on Relationships in the Raw, The Nursery Book, Spark Trust and several travel-related websites. Webster holds a Bachelor of Arts in English and a Master of Arts in mass communication and media studies, both from San Diego State University.

    Source

    St. Vincent and the Grenadines Archives

    caribbean
    Caribbean Association of Georgia

    The Caribbean community in Georgia is springing into action to help St. Vincent and the Grenadines after a series of volcanic eruptions this month forced the displacement of some 20,000 people in the small island nation.   This Saturday, April 24, the Caribbean Association of Georgia will host its second weekend drive for relief items like non-perishable food, […]

    Source