var fitbit=window.fitbit||{};if(typeof fitbit.util=="undefined")fitbit.util={};if(typeof fitbit.app=="undefined")fitbit.app={};var _gaq=window._gaq||[];
(function(){var account=null;var getEnvironment;fitbit.util.gaTrack=function(urchinCode,domain,path,category,action,label){function rand(min,max){return min+Math.floor(Math.random()*(max-min))}var eventParams="";if(category&&action){label=label||"";eventParams="\x26utmt\x3devent\x26utme\x3d"+encodeURIComponent("5("+category+"*"+action+"*"+label+")")+"\x26utmdt\x3d"+encodeURIComponent(document.title)+"\x26utmhid\x3d"+rand(19E8,1999999999)+"\x26utmu\x3d6"}var i=1E9;var utmn=rand(i,9999999999);var cookie=
rand(1E7,99999999);var random=rand(i,2147483647);var today=(new Date).getTime();var urchinUrl="http://www.google-analytics.com/__utm.gif?utmwv\x3d1.3\x26utmn\x3d"+utmn+"\x26utmsr\x3d-\x26utmsc\x3d-\x26utmul\x3d-\x26utmje\x3d0\x26utmfl\x3d-\x26utmdt\x3d-"+eventParams+"\x26utmhn\x3d"+domain+"\x26utmr\x3d-\x26utmp\x3d"+path+"\x26utmac\x3d"+urchinCode+"\x26utmcc\x3d__utma%3D"+cookie+"."+random+"."+today+"."+today+"."+today+".2%3B%2B__utmb%3D"+cookie+"%3B%2B__utmc%3D"+cookie+"%3B%2B__utmz%3D"+cookie+"."+
today+".2.2.utmccn%3D(direct)%7Cutmcsr%3D(direct)%7Cutmcmd%3D(none)%3B%2B__utmv%3D"+cookie+".-%3B";document.createElement("img").src=urchinUrl};fitbit.util.deferredTrack=function(args){var cookieName=fitbit.app.googleAnalytics.deferredCookieName;var eventString="";for(var i=1;i<args.length;i++){if(i!=1)eventString+=fitbit.app.googleAnalytics.eventParamDelimiter;eventString+=args[i]}eventString=encodeURIComponent(eventString);var subCookieName="_g_"+(new Date).getTime().toString();var expires=new Date;
expires.setMonth(expires.getMonth()+1);var result=$.subcookie(cookieName,subCookieName,eventString,{expires:expires,path:"/"})};fitbit.util.track=function(args){if(window.location.host.indexOf("fitbit.com")==-1){var gaTrack=fitbit.util.gaTrack;var domain="client.fitbit.com";var path="/";switch(args[0]){case "_setAccount":account=args[1];break;case "_trackEvent":gaTrack(account,domain,path+args[3],args[1],args[2],args[3]);break;case "_trackPageview":gaTrack(account,domain,path+args[1]);break}}else _gaq.push(args)};
fitbit.util.trackEvent=function(category,action,label){fitbit.util.track(["_trackEvent",category,action,label])};getEnvironment=function(host){if(host.indexOf("local")==0)return"dev";else if(host.indexOf("qa3")==0)return"qa3";else if(host.indexOf("qa2")==0)return"qa2";else if(host.indexOf("qa1")==0)return"qa1";else return"prod"};fitbit.util.initTracking=function(){var track=fitbit.util.track;var deferredTrack=fitbit.util.deferredTrack;var host=document.location.host;var isDesktopClient=window.location.host.indexOf("fitbit.com")==
-1;var env=getEnvironment(host);if(env==="qa1")track(["_setAccount","UA-42232151-2"]);else if(env==="qa2")track(["_setAccount","UA-42232151-3"]);else if(env==="qa3")track(["_setAccount","UA-42232151-1"]);else if(env==="dev")track(["_setAccount","UA-42232151-1"]);else if(env==="prod")track(["_setAccount","UA-2595270-1"]);else{console.log("Could not initialize GA account for given host: "+host);return}if(!isDesktopClient&&document.domain)track(["_setDomainName",document.domain]);var trackingRegex=/(?:^|\s)track(?:Deferred)?-([^\s-]+)-([^\s-]+)(?:-([^\s-]*))?/;
var trackingSelector="a[class*\x3dtrack-], "+"a[class*\x3dtrackDeferred-], "+"button[class*\x3dtrack-], "+"button[class*\x3dtrackDeferred-], "+"input[type\x3dsubmit][class*\x3dtrack-], "+"input[type\x3dsubmit][class*\x3dtrackDeferred-]";$(function(){$(document.body).on("click",trackingSelector,function(){var catalyst=this;if(catalyst&&catalyst.className){var trackingData=trackingRegex.exec(catalyst.className);if(trackingData&&trackingData.length>1){var trackingFunction=$(catalyst).is("[class*\x3dtrackDeferred-]")?
deferredTrack:track;trackingFunction(["_trackEvent",decodeURIComponent(trackingData[1]),decodeURIComponent(trackingData[2]),decodeURIComponent(trackingData[3])])}}});if(isDesktopClient&&$(document.body).is("[class*\x3dtrack-]")){var trackingData=trackingRegex.exec(document.body.className);track(["_trackEvent",decodeURIComponent(trackingData[1]),decodeURIComponent(trackingData[2]),decodeURIComponent(trackingData[3])]);track(["_trackPageview",decodeURIComponent(trackingData[3])])}})}})();