(function(window,undefined){if(typeof window.FlixjQ=='undefined'){var document=window.document,navigator=window.navigator,location=window.location;var FlixjQ=(function(){var FlixjQ=function(selector,context){return new FlixjQ.fn.init(selector,context,rootFlixjQ);},_FlixjQ=window.FlixjQ,rootFlixjQ,quickExpr=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,rnotwhite=/\S/,trimLeft=/^\s+/,trimRight=/\s+$/,rdigit=/\d/,rsingleTag=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,rvalidchars=/^[\],:{}\s]*$/,rvalidescape=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,rvalidtokens=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,rvalidbraces=/(?:^|:|,)(?:\s*\[)+/g,rwebkit=/(webkit)[ \/]([\w.]+)/,ropera=/(opera)(?:.*version)?[ \/]([\w.]+)/,rmsie=/(msie) ([\w.]+)/,rmozilla=/(mozilla)(?:.*? rv:([\w.]+))?/,rdashAlpha=/-([a-z])/ig,fcamelCase=function(all,letter){return letter.toUpperCase();},userAgent=navigator.userAgent,browserMatch,readyList,DOMContentLoaded,toString=Object.prototype.toString,hasOwn=Object.prototype.hasOwnProperty,push=Array.prototype.push,slice=Array.prototype.slice,trim=String.prototype.trim,indexOf=Array.prototype.indexOf,class2type={};FlixjQ.fn=FlixjQ.prototype={constructor:FlixjQ,init:function(selector,context,rootFlixjQ){var match,elem,ret,doc;if(!selector){return this;}
if(selector.nodeType){this.context=this[0]=selector;this.length=1;return this;}
if(selector==="body"&&!context&&document.body){this.context=document;this[0]=document.body;this.selector=selector;this.length=1;return this;}
if(typeof selector==="string"){if(selector.charAt(0)==="<"&&selector.charAt(selector.length-1)===">"&&selector.length>=3){match=[null,selector,null];}else{match=quickExpr.exec(selector);}
if(match&&(match[1]||!context)){if(match[1]){context=context instanceof FlixjQ?context[0]:context;doc=(context?context.ownerDocument||context:document);ret=rsingleTag.exec(selector);if(ret){if(FlixjQ.isPlainObject(context)){selector=[document.createElement(ret[1])];FlixjQ.fn.attr.call(selector,context,true);}else{selector=[doc.createElement(ret[1])];}}else{ret=FlixjQ.buildFragment([match[1]],[doc]);selector=(ret.cacheable?FlixjQ.clone(ret.fragment):ret.fragment).childNodes;}
return FlixjQ.merge(this,selector);}else{elem=document.getElementById(match[2]);if(elem&&elem.parentNode){if(elem.id!==match[2]){return rootFlixjQ.find(selector);}
this.length=1;this[0]=elem;}
this.context=document;this.selector=selector;return this;}}else if(!context||context.FlixjQ){return(context||rootFlixjQ).find(selector);}else{return this.constructor(context).find(selector);}}else if(FlixjQ.isFunction(selector)){return rootFlixjQ.ready(selector);}
if(selector.selector!==undefined){this.selector=selector.selector;this.context=selector.context;}
return FlixjQ.makeArray(selector,this);},selector:"",FlixjQ:"1.6.2",length:0,size:function(){return this.length;},toArray:function(){return slice.call(this,0);},get:function(num){return num==null?this.toArray():(num<0?this[this.length+num]:this[num]);},pushStack:function(elems,name,selector){var ret=this.constructor();if(FlixjQ.isArray(elems)){push.apply(ret,elems);}else{FlixjQ.merge(ret,elems);}
ret.prevObject=this;ret.context=this.context;if(name==="find"){ret.selector=this.selector+(this.selector?" ":"")+selector;}else if(name){ret.selector=this.selector+"."+name+"("+selector+")";}
return ret;},each:function(callback,args){return FlixjQ.each(this,callback,args);},ready:function(fn){FlixjQ.bindReady();readyList.done(fn);return this;},eq:function(i){return i===-1?this.slice(i):this.slice(i,+i+1);},first:function(){return this.eq(0);},last:function(){return this.eq(-1);},slice:function(){return this.pushStack(slice.apply(this,arguments),"slice",slice.call(arguments).join(","));},map:function(callback){return this.pushStack(FlixjQ.map(this,function(elem,i){return callback.call(elem,i,elem);}));},end:function(){return this.prevObject||this.constructor(null);},push:push,sort:[].sort,splice:[].splice};FlixjQ.fn.init.prototype=FlixjQ.fn;FlixjQ.extend=FlixjQ.fn.extend=function(){var options,name,src,copy,copyIsArray,clone,target=arguments[0]||{},i=1,length=arguments.length,deep=false;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;}
if(typeof target!=="object"&&!FlixjQ.isFunction(target)){target={};}
if(length===i){target=this;--i;}
for(;i<length;i++){if((options=arguments[i])!=null){for(name in options){src=target[name];copy=options[name];if(target===copy){continue;}
if(deep&&copy&&(FlixjQ.isPlainObject(copy)||(copyIsArray=FlixjQ.isArray(copy)))){if(copyIsArray){copyIsArray=false;clone=src&&FlixjQ.isArray(src)?src:[];}else{clone=src&&FlixjQ.isPlainObject(src)?src:{};}
target[name]=FlixjQ.extend(deep,clone,copy);}else if(copy!==undefined){target[name]=copy;}}}}
return target;};FlixjQ.extend({noConflict:function(deep){if(deep&&window.FlixjQ===FlixjQ){window.FlixjQ=_FlixjQ;}
return FlixjQ;},isReady:false,readyWait:1,holdReady:function(hold){if(hold){FlixjQ.readyWait++;}else{FlixjQ.ready(true);}},ready:function(wait){if((wait===true&&!--FlixjQ.readyWait)||(wait!==true&&!FlixjQ.isReady)){if(!document.body){return setTimeout(FlixjQ.ready,1);}
FlixjQ.isReady=true;if(wait!==true&&--FlixjQ.readyWait>0){return;}
readyList.resolveWith(document,[FlixjQ]);if(FlixjQ.fn.trigger){FlixjQ(document).trigger("ready").unbind("ready");}}},bindReady:function(){if(readyList){return;}
readyList=FlixjQ._Deferred();if(document.readyState==="complete"){return setTimeout(FlixjQ.ready,1);}
if(document.addEventListener){document.addEventListener("DOMContentLoaded",DOMContentLoaded,false);window.addEventListener("load",FlixjQ.ready,false);}else if(document.attachEvent){document.attachEvent("onreadystatechange",DOMContentLoaded);window.attachEvent("onload",FlixjQ.ready);var toplevel=false;try{toplevel=window.frameElement==null;}catch(e){}
if(document.documentElement.doScroll&&toplevel){doScrollCheck();}}},isFunction:function(obj){return FlixjQ.type(obj)==="function";},isArray:Array.isArray||function(obj){return FlixjQ.type(obj)==="array";},isWindow:function(obj){return obj&&typeof obj==="object"&&"setInterval"in obj;},isNaN:function(obj){return obj==null||!rdigit.test(obj)||isNaN(obj);},type:function(obj){return obj==null?String(obj):class2type[toString.call(obj)]||"object";},isPlainObject:function(obj){if(!obj||FlixjQ.type(obj)!=="object"||obj.nodeType||FlixjQ.isWindow(obj)){return false;}
if(obj.constructor&&!hasOwn.call(obj,"constructor")&&!hasOwn.call(obj.constructor.prototype,"isPrototypeOf")){return false;}
var key;for(key in obj){}
return key===undefined||hasOwn.call(obj,key);},isEmptyObject:function(obj){for(var name in obj){return false;}
return true;},error:function(msg){throw msg;},parseJSON:function(data){if(typeof data!=="string"||!data){return null;}
data=FlixjQ.trim(data);if(window.JSON&&window.JSON.parse){return window.JSON.parse(data);}
if(rvalidchars.test(data.replace(rvalidescape,"@").replace(rvalidtokens,"]").replace(rvalidbraces,""))){return(new Function("return "+data))();}
FlixjQ.error("Invalid JSON: "+data);},parseXML:function(data,xml,tmp){if(window.DOMParser){tmp=new DOMParser();xml=tmp.parseFromString(data,"text/xml");}else{xml=new ActiveXObject("Microsoft.XMLDOM");xml.async="false";xml.loadXML(data);}
tmp=xml.documentElement;if(!tmp||!tmp.nodeName||tmp.nodeName==="parsererror"){FlixjQ.error("Invalid XML: "+data);}
return xml;},noop:function(){},globalEval:function(data){if(data&&rnotwhite.test(data)){(window.execScript||function(data){window["eval"].call(window,data);})(data);}},camelCase:function(string){return string.replace(rdashAlpha,fcamelCase);},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()===name.toUpperCase();},each:function(object,callback,args){var name,i=0,length=object.length,isObj=length===undefined||FlixjQ.isFunction(object);if(args){if(isObj){for(name in object){if(callback.apply(object[name],args)===false){break;}}}else{for(;i<length;){if(callback.apply(object[i++],args)===false){break;}}}}else{if(isObj){for(name in object){if(callback.call(object[name],name,object[name])===false){break;}}}else{for(;i<length;){if(callback.call(object[i],i,object[i++])===false){break;}}}}
return object;},trim:trim?function(text){return text==null?"":trim.call(text);}:function(text){return text==null?"":text.toString().replace(trimLeft,"").replace(trimRight,"");},makeArray:function(array,results){var ret=results||[];if(array!=null){var type=FlixjQ.type(array);if(array.length==null||type==="string"||type==="function"||type==="regexp"||FlixjQ.isWindow(array)){push.call(ret,array);}else{FlixjQ.merge(ret,array);}}
return ret;},inArray:function(elem,array){if(indexOf){return indexOf.call(array,elem);}
for(var i=0,length=array.length;i<length;i++){if(array[i]===elem){return i;}}
return-1;},merge:function(first,second){var i=first.length,j=0;if(typeof second.length==="number"){for(var l=second.length;j<l;j++){first[i++]=second[j];}}else{while(second[j]!==undefined){first[i++]=second[j++];}}
first.length=i;return first;},grep:function(elems,callback,inv){var ret=[],retVal;inv=!!inv;for(var i=0,length=elems.length;i<length;i++){retVal=!!callback(elems[i],i);if(inv!==retVal){ret.push(elems[i]);}}
return ret;},map:function(elems,callback,arg){var value,key,ret=[],i=0,length=elems.length,isArray=elems instanceof FlixjQ||length!==undefined&&typeof length==="number"&&((length>0&&elems[0]&&elems[length-1])||length===0||FlixjQ.isArray(elems));if(isArray){for(;i<length;i++){value=callback(elems[i],i,arg);if(value!=null){ret[ret.length]=value;}}}else{for(key in elems){value=callback(elems[key],key,arg);if(value!=null){ret[ret.length]=value;}}}
return ret.concat.apply([],ret);},guid:1,proxy:function(fn,context){if(typeof context==="string"){var tmp=fn[context];context=fn;fn=tmp;}
if(!FlixjQ.isFunction(fn)){return undefined;}
var args=slice.call(arguments,2),proxy=function(){return fn.apply(context,args.concat(slice.call(arguments)));};proxy.guid=fn.guid=fn.guid||proxy.guid||FlixjQ.guid++;return proxy;},access:function(elems,key,value,exec,fn,pass){var length=elems.length;if(typeof key==="object"){for(var k in key){FlixjQ.access(elems,k,key[k],exec,fn,value);}
return elems;}
if(value!==undefined){exec=!pass&&exec&&FlixjQ.isFunction(value);for(var i=0;i<length;i++){fn(elems[i],key,exec?value.call(elems[i],i,fn(elems[i],key)):value,pass);}
return elems;}
return length?fn(elems[0],key):undefined;},now:function(){return(new Date()).getTime();},uaMatch:function(ua){ua=ua.toLowerCase();var match=rwebkit.exec(ua)||ropera.exec(ua)||rmsie.exec(ua)||ua.indexOf("compatible")<0&&rmozilla.exec(ua)||[];return{browser:match[1]||"",version:match[2]||"0"};},sub:function(){function FlixjQSub(selector,context){return new FlixjQSub.fn.init(selector,context);}
FlixjQ.extend(true,FlixjQSub,this);FlixjQSub.superclass=this;FlixjQSub.fn=FlixjQSub.prototype=this();FlixjQSub.fn.constructor=FlixjQSub;FlixjQSub.sub=this.sub;FlixjQSub.fn.init=function init(selector,context){if(context&&context instanceof FlixjQ&&!(context instanceof FlixjQSub)){context=FlixjQSub(context);}
return FlixjQ.fn.init.call(this,selector,context,rootFlixjQSub);};FlixjQSub.fn.init.prototype=FlixjQSub.fn;var rootFlixjQSub=FlixjQSub(document);return FlixjQSub;},browser:{}});FlixjQ.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(i,name){class2type["[object "+name+"]"]=name.toLowerCase();});browserMatch=FlixjQ.uaMatch(userAgent);if(browserMatch.browser){FlixjQ.browser[browserMatch.browser]=true;FlixjQ.browser.version=browserMatch.version;}
if(FlixjQ.browser.webkit){FlixjQ.browser.safari=true;}
if(rnotwhite.test("\xA0")){trimLeft=/^[\s\xA0]+/;trimRight=/[\s\xA0]+$/;}
rootFlixjQ=FlixjQ(document);if(document.addEventListener){DOMContentLoaded=function(){document.removeEventListener("DOMContentLoaded",DOMContentLoaded,false);FlixjQ.ready();};}else if(document.attachEvent){DOMContentLoaded=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",DOMContentLoaded);FlixjQ.ready();}};}
function doScrollCheck(){if(FlixjQ.isReady){return;}
try{document.documentElement.doScroll("left");}catch(e){setTimeout(doScrollCheck,1);return;}
FlixjQ.ready();}
return FlixjQ;})();var
promiseMethods="done fail isResolved isRejected promise then always pipe".split(" "),sliceDeferred=[].slice;FlixjQ.extend({_Deferred:function(){var
callbacks=[],fired,firing,cancelled,deferred={done:function(){if(!cancelled){var args=arguments,i,length,elem,type,_fired;if(fired){_fired=fired;fired=0;}
for(i=0,length=args.length;i<length;i++){elem=args[i];type=FlixjQ.type(elem);if(type==="array"){deferred.done.apply(deferred,elem);}else if(type==="function"){callbacks.push(elem);}}
if(_fired){deferred.resolveWith(_fired[0],_fired[1]);}}
return this;},resolveWith:function(context,args){if(!cancelled&&!fired&&!firing){args=args||[];firing=1;try{while(callbacks[0]){callbacks.shift().apply(context,args);}}
finally{fired=[context,args];firing=0;}}
return this;},resolve:function(){deferred.resolveWith(this,arguments);return this;},isResolved:function(){return!!(firing||fired);},cancel:function(){cancelled=1;callbacks=[];return this;}};return deferred;},Deferred:function(func){var deferred=FlixjQ._Deferred(),failDeferred=FlixjQ._Deferred(),promise;FlixjQ.extend(deferred,{then:function(doneCallbacks,failCallbacks){deferred.done(doneCallbacks).fail(failCallbacks);return this;},always:function(){return deferred.done.apply(deferred,arguments).fail.apply(this,arguments);},fail:failDeferred.done,rejectWith:failDeferred.resolveWith,reject:failDeferred.resolve,isRejected:failDeferred.isResolved,pipe:function(fnDone,fnFail){return FlixjQ.Deferred(function(newDefer){FlixjQ.each({done:[fnDone,"resolve"],fail:[fnFail,"reject"]},function(handler,data){var fn=data[0],action=data[1],returned;if(FlixjQ.isFunction(fn)){deferred[handler](function(){returned=fn.apply(this,arguments);if(returned&&FlixjQ.isFunction(returned.promise)){returned.promise().then(newDefer.resolve,newDefer.reject);}else{newDefer[action](returned);}});}else{deferred[handler](newDefer[action]);}});}).promise();},promise:function(obj){if(obj==null){if(promise){return promise;}
promise=obj={};}
var i=promiseMethods.length;while(i--){obj[promiseMethods[i]]=deferred[promiseMethods[i]];}
return obj;}});deferred.done(failDeferred.cancel).fail(deferred.cancel);delete deferred.cancel;if(func){func.call(deferred,deferred);}
return deferred;},when:function(firstParam){var args=arguments,i=0,length=args.length,count=length,deferred=length<=1&&firstParam&&FlixjQ.isFunction(firstParam.promise)?firstParam:FlixjQ.Deferred();function resolveFunc(i){return function(value){args[i]=arguments.length>1?sliceDeferred.call(arguments,0):value;if(!(--count)){deferred.resolveWith(deferred,sliceDeferred.call(args,0));}};}
if(length>1){for(;i<length;i++){if(args[i]&&FlixjQ.isFunction(args[i].promise)){args[i].promise().then(resolveFunc(i),deferred.reject);}else{--count;}}
if(!count){deferred.resolveWith(deferred,args);}}else if(deferred!==firstParam){deferred.resolveWith(deferred,length?[firstParam]:[]);}
return deferred.promise();}});FlixjQ.support=(function(){var div=document.createElement("div"),documentElement=document.documentElement,all,a,select,opt,input,marginDiv,support,fragment,body,testElementParent,testElement,testElementStyle,tds,events,eventName,i,isSupported;div.setAttribute("className","t");div.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";all=div.getElementsByTagName("*");a=div.getElementsByTagName("a")[0];if(!all||!all.length||!a){return{};}
select=document.createElement("select");opt=select.appendChild(document.createElement("option"));input=div.getElementsByTagName("input")[0];support={leadingWhitespace:(div.firstChild.nodeType===3),tbody:!div.getElementsByTagName("tbody").length,htmlSerialize:!!div.getElementsByTagName("link").length,style:/top/.test(a.getAttribute("style")),hrefNormalized:(a.getAttribute("href")==="/a"),opacity:/^0.55$/.test(a.style.opacity),cssFloat:!!a.style.cssFloat,checkOn:(input.value==="on"),optSelected:opt.selected,getSetAttribute:div.className!=="t",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};input.checked=true;support.noCloneChecked=input.cloneNode(true).checked;select.disabled=true;support.optDisabled=!opt.disabled;try{delete div.test;}catch(e){support.deleteExpando=false;}
if(!div.addEventListener&&div.attachEvent&&div.fireEvent){div.attachEvent("onclick",function(){support.noCloneEvent=false;});div.cloneNode(true).fireEvent("onclick");}
input=document.createElement("input");input.value="t";input.setAttribute("type","radio");support.radioValue=input.value==="t";input.setAttribute("checked","checked");div.appendChild(input);fragment=document.createDocumentFragment();fragment.appendChild(div.firstChild);support.checkClone=fragment.cloneNode(true).cloneNode(true).lastChild.checked;div.innerHTML="";div.style.width=div.style.paddingLeft="1px";body=document.getElementsByTagName("body")[0];testElement=document.createElement(body?"div":"body");testElementStyle={visibility:"hidden",width:0,height:0,border:0,margin:0};if(body){FlixjQ.extend(testElementStyle,{position:"absolute",left:-1000,top:-1000});}
for(i in testElementStyle){testElement.style[i]=testElementStyle[i];}
testElement.appendChild(div);testElementParent=body||documentElement;testElementParent.insertBefore(testElement,testElementParent.firstChild);support.appendChecked=input.checked;support.boxModel=div.offsetWidth===2;if("zoom"in div.style){div.style.display="inline";div.style.zoom=1;support.inlineBlockNeedsLayout=(div.offsetWidth===2);div.style.display="";div.innerHTML="<div style='width:4px;'></div>";support.shrinkWrapBlocks=(div.offsetWidth!==2);}
div.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";tds=div.getElementsByTagName("td");isSupported=(tds[0].offsetHeight===0);tds[0].style.display="";tds[1].style.display="none";support.reliableHiddenOffsets=isSupported&&(tds[0].offsetHeight===0);div.innerHTML="";if(document.defaultView&&document.defaultView.getComputedStyle){marginDiv=document.createElement("div");marginDiv.style.width="0";marginDiv.style.marginRight="0";div.appendChild(marginDiv);support.reliableMarginRight=(parseInt((document.defaultView.getComputedStyle(marginDiv,null)||{marginRight:0}).marginRight,10)||0)===0;}
testElement.innerHTML="";testElementParent.removeChild(testElement);if(div.attachEvent){for(i in{submit:1,change:1,focusin:1}){eventName="on"+i;isSupported=(eventName in div);if(!isSupported){div.setAttribute(eventName,"return;");isSupported=(typeof div[eventName]==="function");}
support[i+"Bubbles"]=isSupported;}}
testElement=fragment=select=opt=body=marginDiv=div=input=null;return support;})();FlixjQ.boxModel=FlixjQ.support.boxModel;var rbrace=/^(?:\{.*\}|\[.*\])$/,rmultiDash=/([a-z])([A-Z])/g;FlixjQ.extend({cache:{},uuid:0,expando:"FlixjQ"+(FlixjQ.fn.FlixjQ+Math.random()).replace(/\D/g,""),noData:{"embed":true,"object":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000","applet":true},hasData:function(elem){elem=elem.nodeType?FlixjQ.cache[elem[FlixjQ.expando]]:elem[FlixjQ.expando];return!!elem&&!isEmptyDataObject(elem);},data:function(elem,name,data,pvt){if(!FlixjQ.acceptData(elem)){return;}
var internalKey=FlixjQ.expando,getByName=typeof name==="string",thisCache,isNode=elem.nodeType,cache=isNode?FlixjQ.cache:elem,id=isNode?elem[FlixjQ.expando]:elem[FlixjQ.expando]&&FlixjQ.expando;if((!id||(pvt&&id&&!cache[id][internalKey]))&&getByName&&data===undefined){return;}
if(!id){if(isNode){elem[FlixjQ.expando]=id=++FlixjQ.uuid;}else{id=FlixjQ.expando;}}
if(!cache[id]){cache[id]={};if(!isNode){cache[id].toJSON=FlixjQ.noop;}}
if(typeof name==="object"||typeof name==="function"){if(pvt){cache[id][internalKey]=FlixjQ.extend(cache[id][internalKey],name);}else{cache[id]=FlixjQ.extend(cache[id],name);}}
thisCache=cache[id];if(pvt){if(!thisCache[internalKey]){thisCache[internalKey]={};}
thisCache=thisCache[internalKey];}
if(data!==undefined){thisCache[FlixjQ.camelCase(name)]=data;}
if(name==="events"&&!thisCache[name]){return thisCache[internalKey]&&thisCache[internalKey].events;}
return getByName?thisCache[FlixjQ.camelCase(name)]||thisCache[name]:thisCache;},removeData:function(elem,name,pvt){if(!FlixjQ.acceptData(elem)){return;}
var internalKey=FlixjQ.expando,isNode=elem.nodeType,cache=isNode?FlixjQ.cache:elem,id=isNode?elem[FlixjQ.expando]:FlixjQ.expando;if(!cache[id]){return;}
if(name){var thisCache=pvt?cache[id][internalKey]:cache[id];if(thisCache){delete thisCache[name];if(!isEmptyDataObject(thisCache)){return;}}}
if(pvt){delete cache[id][internalKey];if(!isEmptyDataObject(cache[id])){return;}}
var internalCache=cache[id][internalKey];if(FlixjQ.support.deleteExpando||cache!=window){delete cache[id];}else{cache[id]=null;}
if(internalCache){cache[id]={};if(!isNode){cache[id].toJSON=FlixjQ.noop;}
cache[id][internalKey]=internalCache;}else if(isNode){if(FlixjQ.support.deleteExpando){delete elem[FlixjQ.expando];}else if(elem.removeAttribute){elem.removeAttribute(FlixjQ.expando);}else{elem[FlixjQ.expando]=null;}}},_data:function(elem,name,data){return FlixjQ.data(elem,name,data,true);},acceptData:function(elem){if(elem.nodeName){var match=FlixjQ.noData[elem.nodeName.toLowerCase()];if(match){return!(match===true||elem.getAttribute("classid")!==match);}}
return true;}});FlixjQ.fn.extend({data:function(key,value){var data=null;if(typeof key==="undefined"){if(this.length){data=FlixjQ.data(this[0]);if(this[0].nodeType===1){var attr=this[0].attributes,name;for(var i=0,l=attr.length;i<l;i++){name=attr[i].name;if(name.indexOf("data-")===0){name=FlixjQ.camelCase(name.substring(5));dataAttr(this[0],name,data[name]);}}}}
return data;}else if(typeof key==="object"){return this.each(function(){FlixjQ.data(this,key);});}
var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length){data=FlixjQ.data(this[0],key);data=dataAttr(this[0],key,data);}
return data===undefined&&parts[1]?this.data(parts[0]):data;}else{return this.each(function(){var $this=FlixjQ(this),args=[parts[0],value];$this.triggerHandler("setData"+parts[1]+"!",args);FlixjQ.data(this,key,value);$this.triggerHandler("changeData"+parts[1]+"!",args);});}},removeData:function(key){return this.each(function(){FlixjQ.removeData(this,key);});}});function dataAttr(elem,key,data){if(data===undefined&&elem.nodeType===1){var name="data-"+key.replace(rmultiDash,"$1-$2").toLowerCase();data=elem.getAttribute(name);if(typeof data==="string"){try{data=data==="true"?true:data==="false"?false:data==="null"?null:!FlixjQ.isNaN(data)?parseFloat(data):rbrace.test(data)?FlixjQ.parseJSON(data):data;}catch(e){}
FlixjQ.data(elem,key,data);}else{data=undefined;}}
return data;}
function isEmptyDataObject(obj){for(var name in obj){if(name!=="toJSON"){return false;}}
return true;}
function handleQueueMarkDefer(elem,type,src){var deferDataKey=type+"defer",queueDataKey=type+"queue",markDataKey=type+"mark",defer=FlixjQ.data(elem,deferDataKey,undefined,true);if(defer&&(src==="queue"||!FlixjQ.data(elem,queueDataKey,undefined,true))&&(src==="mark"||!FlixjQ.data(elem,markDataKey,undefined,true))){setTimeout(function(){if(!FlixjQ.data(elem,queueDataKey,undefined,true)&&!FlixjQ.data(elem,markDataKey,undefined,true)){FlixjQ.removeData(elem,deferDataKey,true);defer.resolve();}},0);}}
FlixjQ.extend({_mark:function(elem,type){if(elem){type=(type||"fx")+"mark";FlixjQ.data(elem,type,(FlixjQ.data(elem,type,undefined,true)||0)+1,true);}},_unmark:function(force,elem,type){if(force!==true){type=elem;elem=force;force=false;}
if(elem){type=type||"fx";var key=type+"mark",count=force?0:((FlixjQ.data(elem,key,undefined,true)||1)-1);if(count){FlixjQ.data(elem,key,count,true);}else{FlixjQ.removeData(elem,key,true);handleQueueMarkDefer(elem,type,"mark");}}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=FlixjQ.data(elem,type,undefined,true);if(data){if(!q||FlixjQ.isArray(data)){q=FlixjQ.data(elem,type,FlixjQ.makeArray(data),true);}else{q.push(data);}}
return q||[];}},dequeue:function(elem,type){type=type||"fx";var queue=FlixjQ.queue(elem,type),fn=queue.shift(),defer;if(fn==="inprogress"){fn=queue.shift();}
if(fn){if(type==="fx"){queue.unshift("inprogress");}
fn.call(elem,function(){FlixjQ.dequeue(elem,type);});}
if(!queue.length){FlixjQ.removeData(elem,type+"queue",true);handleQueueMarkDefer(elem,type,"queue");}}});FlixjQ.fn.extend({queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";}
if(data===undefined){return FlixjQ.queue(this[0],type);}
return this.each(function(){var queue=FlixjQ.queue(this,type,data);if(type==="fx"&&queue[0]!=="inprogress"){FlixjQ.dequeue(this,type);}});},dequeue:function(type){return this.each(function(){FlixjQ.dequeue(this,type);});},delay:function(time,type){time=FlixjQ.fx?FlixjQ.fx.speeds[time]||time:time;type=type||"fx";return this.queue(type,function(){var elem=this;setTimeout(function(){FlixjQ.dequeue(elem,type);},time);});},clearQueue:function(type){return this.queue(type||"fx",[]);},promise:function(type,object){if(typeof type!=="string"){object=type;type=undefined;}
type=type||"fx";var defer=FlixjQ.Deferred(),elements=this,i=elements.length,count=1,deferDataKey=type+"defer",queueDataKey=type+"queue",markDataKey=type+"mark",tmp;function resolve(){if(!(--count)){defer.resolveWith(elements,[elements]);}}
while(i--){if((tmp=FlixjQ.data(elements[i],deferDataKey,undefined,true)||(FlixjQ.data(elements[i],queueDataKey,undefined,true)||FlixjQ.data(elements[i],markDataKey,undefined,true))&&FlixjQ.data(elements[i],deferDataKey,FlixjQ._Deferred(),true))){count++;tmp.done(resolve);}}
resolve();return defer.promise();}});var rclass=/[\n\t\r]/g,rspace=/\s+/,rreturn=/\r/g,rtype=/^(?:button|input)$/i,rfocusable=/^(?:button|input|object|select|textarea)$/i,rclickable=/^a(?:rea)?$/i,rboolean=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,rinvalidChar=/\:|^on/,formHook,boolHook;FlixjQ.fn.extend({attr:function(name,value){return FlixjQ.access(this,name,value,true,FlixjQ.attr);},removeAttr:function(name){return this.each(function(){FlixjQ.removeAttr(this,name);});},prop:function(name,value){return FlixjQ.access(this,name,value,true,FlixjQ.prop);},removeProp:function(name){name=FlixjQ.propFix[name]||name;return this.each(function(){try{this[name]=undefined;delete this[name];}catch(e){}});},addClass:function(value){var classNames,i,l,elem,setClass,c,cl;if(FlixjQ.isFunction(value)){return this.each(function(j){FlixjQ(this).addClass(value.call(this,j,this.className));});}
if(value&&typeof value==="string"){classNames=value.split(rspace);for(i=0,l=this.length;i<l;i++){elem=this[i];if(elem.nodeType===1){if(!elem.className&&classNames.length===1){elem.className=value;}else{setClass=" "+elem.className+" ";for(c=0,cl=classNames.length;c<cl;c++){if(!~setClass.indexOf(" "+classNames[c]+" ")){setClass+=classNames[c]+" ";}}
elem.className=FlixjQ.trim(setClass);}}}}
return this;},removeClass:function(value){var classNames,i,l,elem,className,c,cl;if(FlixjQ.isFunction(value)){return this.each(function(j){FlixjQ(this).removeClass(value.call(this,j,this.className));});}
if((value&&typeof value==="string")||value===undefined){classNames=(value||"").split(rspace);for(i=0,l=this.length;i<l;i++){elem=this[i];if(elem.nodeType===1&&elem.className){if(value){className=(" "+elem.className+" ").replace(rclass," ");for(c=0,cl=classNames.length;c<cl;c++){className=className.replace(" "+classNames[c]+" "," ");}
elem.className=FlixjQ.trim(className);}else{elem.className="";}}}}
return this;},toggleClass:function(value,stateVal){var type=typeof value,isBool=typeof stateVal==="boolean";if(FlixjQ.isFunction(value)){return this.each(function(i){FlixjQ(this).toggleClass(value.call(this,i,this.className,stateVal),stateVal);});}
return this.each(function(){if(type==="string"){var className,i=0,self=FlixjQ(this),state=stateVal,classNames=value.split(rspace);while((className=classNames[i++])){state=isBool?state:!self.hasClass(className);self[state?"addClass":"removeClass"](className);}}else if(type==="undefined"||type==="boolean"){if(this.className){FlixjQ._data(this,"__className__",this.className);}
this.className=this.className||value===false?"":FlixjQ._data(this,"__className__")||"";}});},hasClass:function(selector){var className=" "+selector+" ";for(var i=0,l=this.length;i<l;i++){if((" "+this[i].className+" ").replace(rclass," ").indexOf(className)>-1){return true;}}
return false;},val:function(value){var hooks,ret,elem=this[0];if(!arguments.length){if(elem){hooks=FlixjQ.valHooks[elem.nodeName.toLowerCase()]||FlixjQ.valHooks[elem.type];if(hooks&&"get"in hooks&&(ret=hooks.get(elem,"value"))!==undefined){return ret;}
ret=elem.value;return typeof ret==="string"?ret.replace(rreturn,""):ret==null?"":ret;}
return undefined;}
var isFunction=FlixjQ.isFunction(value);return this.each(function(i){var self=FlixjQ(this),val;if(this.nodeType!==1){return;}
if(isFunction){val=value.call(this,i,self.val());}else{val=value;}
if(val==null){val="";}else if(typeof val==="number"){val+="";}else if(FlixjQ.isArray(val)){val=FlixjQ.map(val,function(value){return value==null?"":value+"";});}
hooks=FlixjQ.valHooks[this.nodeName.toLowerCase()]||FlixjQ.valHooks[this.type];if(!hooks||!("set"in hooks)||hooks.set(this,val,"value")===undefined){this.value=val;}});}});FlixjQ.extend({valHooks:{option:{get:function(elem){var val=elem.attributes.value;return!val||val.specified?elem.value:elem.text;}},select:{get:function(elem){var value,index=elem.selectedIndex,values=[],options=elem.options,one=elem.type==="select-one";if(index<0){return null;}
for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected&&(FlixjQ.support.optDisabled?!option.disabled:option.getAttribute("disabled")===null)&&(!option.parentNode.disabled||!FlixjQ.nodeName(option.parentNode,"optgroup"))){value=FlixjQ(option).val();if(one){return value;}
values.push(value);}}
if(one&&!values.length&&options.length){return FlixjQ(options[index]).val();}
return values;},set:function(elem,value){var values=FlixjQ.makeArray(value);FlixjQ(elem).find("option").each(function(){this.selected=FlixjQ.inArray(FlixjQ(this).val(),values)>=0;});if(!values.length){elem.selectedIndex=-1;}
return values;}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attrFix:{tabindex:"tabIndex"},attr:function(elem,name,value,pass){var nType=elem.nodeType;if(!elem||nType===3||nType===8||nType===2){return undefined;}
if(pass&&name in FlixjQ.attrFn){return FlixjQ(elem)[name](value);}
if(!("getAttribute"in elem)){return FlixjQ.prop(elem,name,value);}
var ret,hooks,notxml=nType!==1||!FlixjQ.isXMLDoc(elem);if(notxml){name=FlixjQ.attrFix[name]||name;hooks=FlixjQ.attrHooks[name];if(!hooks){if(rboolean.test(name)){hooks=boolHook;}else if(formHook&&name!=="className"&&(FlixjQ.nodeName(elem,"form")||rinvalidChar.test(name))){hooks=formHook;}}}
if(value!==undefined){if(value===null){FlixjQ.removeAttr(elem,name);return undefined;}else if(hooks&&"set"in hooks&&notxml&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}else{elem.setAttribute(name,""+value);return value;}}else if(hooks&&"get"in hooks&&notxml&&(ret=hooks.get(elem,name))!==null){return ret;}else{ret=elem.getAttribute(name);return ret===null?undefined:ret;}},removeAttr:function(elem,name){var propName;if(elem.nodeType===1){name=FlixjQ.attrFix[name]||name;if(FlixjQ.support.getSetAttribute){elem.removeAttribute(name);}else{FlixjQ.attr(elem,name,"");elem.removeAttributeNode(elem.getAttributeNode(name));}
if(rboolean.test(name)&&(propName=FlixjQ.propFix[name]||name)in elem){elem[propName]=false;}}},attrHooks:{type:{set:function(elem,value){if(rtype.test(elem.nodeName)&&elem.parentNode){FlixjQ.error("type property can't be changed");}else if(!FlixjQ.support.radioValue&&value==="radio"&&FlixjQ.nodeName(elem,"input")){var val=elem.value;elem.setAttribute("type",value);if(val){elem.value=val;}
return value;}}},tabIndex:{get:function(elem){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?parseInt(attributeNode.value,10):rfocusable.test(elem.nodeName)||rclickable.test(elem.nodeName)&&elem.href?0:undefined;}},value:{get:function(elem,name){if(formHook&&FlixjQ.nodeName(elem,"button")){return formHook.get(elem,name);}
return name in elem?elem.value:null;},set:function(elem,value,name){if(formHook&&FlixjQ.nodeName(elem,"button")){return formHook.set(elem,value,name);}
elem.value=value;}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(elem,name,value){var nType=elem.nodeType;if(!elem||nType===3||nType===8||nType===2){return undefined;}
var ret,hooks,notxml=nType!==1||!FlixjQ.isXMLDoc(elem);if(notxml){name=FlixjQ.propFix[name]||name;hooks=FlixjQ.propHooks[name];}
if(value!==undefined){if(hooks&&"set"in hooks&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}else{return(elem[name]=value);}}else{if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==undefined){return ret;}else{return elem[name];}}},propHooks:{}});boolHook={get:function(elem,name){return FlixjQ.prop(elem,name)?name.toLowerCase():undefined;},set:function(elem,value,name){var propName;if(value===false){FlixjQ.removeAttr(elem,name);}else{propName=FlixjQ.propFix[name]||name;if(propName in elem){elem[propName]=true;}
elem.setAttribute(name,name.toLowerCase());}
return name;}};if(!FlixjQ.support.getSetAttribute){FlixjQ.attrFix=FlixjQ.propFix;formHook=FlixjQ.attrHooks.name=FlixjQ.attrHooks.title=FlixjQ.valHooks.button={get:function(elem,name){var ret;ret=elem.getAttributeNode(name);return ret&&ret.nodeValue!==""?ret.nodeValue:undefined;},set:function(elem,value,name){var ret=elem.getAttributeNode(name);if(ret){ret.nodeValue=value;return value;}}};FlixjQ.each(["width","height"],function(i,name){FlixjQ.attrHooks[name]=FlixjQ.extend(FlixjQ.attrHooks[name],{set:function(elem,value){if(value===""){elem.setAttribute(name,"auto");return value;}}});});}
if(!FlixjQ.support.hrefNormalized){FlixjQ.each(["href","src","width","height"],function(i,name){FlixjQ.attrHooks[name]=FlixjQ.extend(FlixjQ.attrHooks[name],{get:function(elem){var ret=elem.getAttribute(name,2);return ret===null?undefined:ret;}});});}
if(!FlixjQ.support.style){FlixjQ.attrHooks.style={get:function(elem){return elem.style.cssText.toLowerCase()||undefined;},set:function(elem,value){return(elem.style.cssText=""+value);}};}
if(!FlixjQ.support.optSelected){FlixjQ.propHooks.selected=FlixjQ.extend(FlixjQ.propHooks.selected,{get:function(elem){var parent=elem.parentNode;if(parent){parent.selectedIndex;if(parent.parentNode){parent.parentNode.selectedIndex;}}}});}
if(!FlixjQ.support.checkOn){FlixjQ.each(["radio","checkbox"],function(){FlixjQ.valHooks[this]={get:function(elem){return elem.getAttribute("value")===null?"on":elem.value;}};});}
FlixjQ.each(["radio","checkbox"],function(){FlixjQ.valHooks[this]=FlixjQ.extend(FlixjQ.valHooks[this],{set:function(elem,value){if(FlixjQ.isArray(value)){return(elem.checked=FlixjQ.inArray(FlixjQ(elem).val(),value)>=0);}}});});var rnamespaces=/\.(.*)$/,rformElems=/^(?:textarea|input|select)$/i,rperiod=/\./g,rspaces=/ /g,rescape=/[^\w\s.|`]/g,fcleanup=function(nm){return nm.replace(rescape,"\\$&");};FlixjQ.event={add:function(elem,types,handler,data){if(elem.nodeType===3||elem.nodeType===8){return;}
if(handler===false){handler=returnFalse;}else if(!handler){return;}
var handleObjIn,handleObj;if(handler.handler){handleObjIn=handler;handler=handleObjIn.handler;}
if(!handler.guid){handler.guid=FlixjQ.guid++;}
var elemData=FlixjQ._data(elem);if(!elemData){return;}
var events=elemData.events,eventHandle=elemData.handle;if(!events){elemData.events=events={};}
if(!eventHandle){elemData.handle=eventHandle=function(e){return typeof FlixjQ!=="undefined"&&(!e||FlixjQ.event.triggered!==e.type)?FlixjQ.event.handle.apply(eventHandle.elem,arguments):undefined;};}
eventHandle.elem=elem;types=types.split(" ");var type,i=0,namespaces;while((type=types[i++])){handleObj=handleObjIn?FlixjQ.extend({},handleObjIn):{handler:handler,data:data};if(type.indexOf(".")>-1){namespaces=type.split(".");type=namespaces.shift();handleObj.namespace=namespaces.slice(0).sort().join(".");}else{namespaces=[];handleObj.namespace="";}
handleObj.type=type;if(!handleObj.guid){handleObj.guid=handler.guid;}
var handlers=events[type],special=FlixjQ.event.special[type]||{};if(!handlers){handlers=events[type]=[];if(!special.setup||special.setup.call(elem,data,namespaces,eventHandle)===false){if(elem.addEventListener){elem.addEventListener(type,eventHandle,false);}else if(elem.attachEvent){elem.attachEvent("on"+type,eventHandle);}}}
if(special.add){special.add.call(elem,handleObj);if(!handleObj.handler.guid){handleObj.handler.guid=handler.guid;}}
handlers.push(handleObj);FlixjQ.event.global[type]=true;}
elem=null;},global:{},remove:function(elem,types,handler,pos){if(elem.nodeType===3||elem.nodeType===8){return;}
if(handler===false){handler=returnFalse;}
var ret,type,fn,j,i=0,all,namespaces,namespace,special,eventType,handleObj,origType,elemData=FlixjQ.hasData(elem)&&FlixjQ._data(elem),events=elemData&&elemData.events;if(!elemData||!events){return;}
if(types&&types.type){handler=types.handler;types=types.type;}
if(!types||typeof types==="string"&&types.charAt(0)==="."){types=types||"";for(type in events){FlixjQ.event.remove(elem,type+types);}
return;}
types=types.split(" ");while((type=types[i++])){origType=type;handleObj=null;all=type.indexOf(".")<0;namespaces=[];if(!all){namespaces=type.split(".");type=namespaces.shift();namespace=new RegExp("(^|\\.)"+
FlixjQ.map(namespaces.slice(0).sort(),fcleanup).join("\\.(?:.*\\.)?")+"(\\.|$)");}
eventType=events[type];if(!eventType){continue;}
if(!handler){for(j=0;j<eventType.length;j++){handleObj=eventType[j];if(all||namespace.test(handleObj.namespace)){FlixjQ.event.remove(elem,origType,handleObj.handler,j);eventType.splice(j--,1);}}
continue;}
special=FlixjQ.event.special[type]||{};for(j=pos||0;j<eventType.length;j++){handleObj=eventType[j];if(handler.guid===handleObj.guid){if(all||namespace.test(handleObj.namespace)){if(pos==null){eventType.splice(j--,1);}
if(special.remove){special.remove.call(elem,handleObj);}}
if(pos!=null){break;}}}
if(eventType.length===0||pos!=null&&eventType.length===1){if(!special.teardown||special.teardown.call(elem,namespaces)===false){FlixjQ.removeEvent(elem,type,elemData.handle);}
ret=null;delete events[type];}}
if(FlixjQ.isEmptyObject(events)){var handle=elemData.handle;if(handle){handle.elem=null;}
delete elemData.events;delete elemData.handle;if(FlixjQ.isEmptyObject(elemData)){FlixjQ.removeData(elem,undefined,true);}}},customEvent:{"getData":true,"setData":true,"changeData":true},trigger:function(event,data,elem,onlyHandlers){var type=event.type||event,namespaces=[],exclusive;if(type.indexOf("!")>=0){type=type.slice(0,-1);exclusive=true;}
if(type.indexOf(".")>=0){namespaces=type.split(".");type=namespaces.shift();namespaces.sort();}
if((!elem||FlixjQ.event.customEvent[type])&&!FlixjQ.event.global[type]){return;}
event=typeof event==="object"?event[FlixjQ.expando]?event:new FlixjQ.Event(type,event):new FlixjQ.Event(type);event.type=type;event.exclusive=exclusive;event.namespace=namespaces.join(".");event.namespace_re=new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.)?")+"(\\.|$)");if(onlyHandlers||!elem){event.preventDefault();event.stopPropagation();}
if(!elem){FlixjQ.each(FlixjQ.cache,function(){var internalKey=FlixjQ.expando,internalCache=this[internalKey];if(internalCache&&internalCache.events&&internalCache.events[type]){FlixjQ.event.trigger(event,data,internalCache.handle.elem);}});return;}
if(elem.nodeType===3||elem.nodeType===8){return;}
event.result=undefined;event.target=elem;data=data!=null?FlixjQ.makeArray(data):[];data.unshift(event);var cur=elem,ontype=type.indexOf(":")<0?"on"+type:"";do{var handle=FlixjQ._data(cur,"handle");event.currentTarget=cur;if(handle){handle.apply(cur,data);}
if(ontype&&FlixjQ.acceptData(cur)&&cur[ontype]&&cur[ontype].apply(cur,data)===false){event.result=false;event.preventDefault();}
cur=cur.parentNode||cur.ownerDocument||cur===event.target.ownerDocument&&window;}while(cur&&!event.isPropagationStopped());if(!event.isDefaultPrevented()){var old,special=FlixjQ.event.special[type]||{};if((!special._default||special._default.call(elem.ownerDocument,event)===false)&&!(type==="click"&&FlixjQ.nodeName(elem,"a"))&&FlixjQ.acceptData(elem)){try{if(ontype&&elem[type]){old=elem[ontype];if(old){elem[ontype]=null;}
FlixjQ.event.triggered=type;elem[type]();}}catch(ieError){}
if(old){elem[ontype]=old;}
FlixjQ.event.triggered=undefined;}}
return event.result;},handle:function(event){event=FlixjQ.event.fix(event||window.event);var handlers=((FlixjQ._data(this,"events")||{})[event.type]||[]).slice(0),run_all=!event.exclusive&&!event.namespace,args=Array.prototype.slice.call(arguments,0);args[0]=event;event.currentTarget=this;for(var j=0,l=handlers.length;j<l;j++){var handleObj=handlers[j];if(run_all||event.namespace_re.test(handleObj.namespace)){event.handler=handleObj.handler;event.data=handleObj.data;event.handleObj=handleObj;var ret=handleObj.handler.apply(this,args);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}
if(event.isImmediatePropagationStopped()){break;}}}
return event.result;},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[FlixjQ.expando]){return event;}
var originalEvent=event;event=FlixjQ.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];}
if(!event.target){event.target=event.srcElement||document;}
if(event.target.nodeType===3){event.target=event.target.parentNode;}
if(!event.relatedTarget&&event.fromElement){event.relatedTarget=event.fromElement===event.target?event.toElement:event.fromElement;}
if(event.pageX==null&&event.clientX!=null){var eventDocument=event.target.ownerDocument||document,doc=eventDocument.documentElement,body=eventDocument.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc&&doc.clientLeft||body&&body.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.clientTop||0);}
if(event.which==null&&(event.charCode!=null||event.keyCode!=null)){event.which=event.charCode!=null?event.charCode:event.keyCode;}
if(!event.metaKey&&event.ctrlKey){event.metaKey=event.ctrlKey;}
if(!event.which&&event.button!==undefined){event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));}
return event;},guid:1E8,proxy:FlixjQ.proxy,special:{ready:{setup:FlixjQ.bindReady,teardown:FlixjQ.noop},live:{add:function(handleObj){FlixjQ.event.add(this,FlixjQliveConvert(handleObj.origType,handleObj.selector),FlixjQ.extend({},handleObj,{handler:liveHandler,guid:handleObj.handler.guid}));},remove:function(handleObj){FlixjQ.event.remove(this,FlixjQliveConvert(handleObj.origType,handleObj.selector),handleObj);}},beforeunload:{setup:function(data,namespaces,eventHandle){if(FlixjQ.isWindow(this)){this.onbeforeunload=eventHandle;}},teardown:function(namespaces,eventHandle){if(this.onbeforeunload===eventHandle){this.onbeforeunload=null;}}}}};FlixjQ.removeEvent=document.removeEventListener?function(elem,type,handle){if(elem.removeEventListener){elem.removeEventListener(type,handle,false);}}:function(elem,type,handle){if(elem.detachEvent){elem.detachEvent("on"+type,handle);}};FlixjQ.Event=function(src,props){if(!this.preventDefault){return new FlixjQ.Event(src,props);}
if(src&&src.type){this.originalEvent=src;this.type=src.type;this.isDefaultPrevented=(src.defaultPrevented||src.returnValue===false||src.getPreventDefault&&src.getPreventDefault())?returnTrue:returnFalse;}else{this.type=src;}
if(props){FlixjQ.extend(this,props);}
this.timeStamp=FlixjQ.now();this[FlixjQ.expando]=true;};function returnFalse(){return false;}
function returnTrue(){return true;}
FlixjQ.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e){return;}
if(e.preventDefault){e.preventDefault();}else{e.returnValue=false;}},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e){return;}
if(e.stopPropagation){e.stopPropagation();}
e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var related=event.relatedTarget,inside=false,eventType=event.type;event.type=event.data;if(related!==this){if(related){inside=FlixjQ.contains(this,related);}
if(!inside){FlixjQ.event.handle.apply(this,arguments);event.type=eventType;}}},delegate=function(event){event.type=event.data;FlixjQ.event.handle.apply(this,arguments);};FlixjQ.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(orig,fix){FlixjQ.event.special[orig]={setup:function(data){FlixjQ.event.add(this,fix,data&&data.selector?delegate:withinElement,orig);},teardown:function(data){FlixjQ.event.remove(this,fix,data&&data.selector?delegate:withinElement);}};});if(!FlixjQ.support.submitBubbles){FlixjQ.event.special.submit={setup:function(data,namespaces){if(!FlixjQ.nodeName(this,"form")){FlixjQ.event.add(this,"click.specialSubmit",function(e){var elem=e.target,type=elem.type;if((type==="submit"||type==="image")&&FlixjQ(elem).closest("form").length){trigger("submit",this,arguments);}});FlixjQ.event.add(this,"keypress.specialSubmit",function(e){var elem=e.target,type=elem.type;if((type==="text"||type==="password")&&FlixjQ(elem).closest("form").length&&e.keyCode===13){trigger("submit",this,arguments);}});}else{return false;}},teardown:function(namespaces){FlixjQ.event.remove(this,".specialSubmit");}};}
if(!FlixjQ.support.changeBubbles){var changeFilters,getVal=function(elem){var type=elem.type,val=elem.value;if(type==="radio"||type==="checkbox"){val=elem.checked;}else if(type==="select-multiple"){val=elem.selectedIndex>-1?FlixjQ.map(elem.options,function(elem){return elem.selected;}).join("-"):"";}else if(FlixjQ.nodeName(elem,"select")){val=elem.selectedIndex;}
return val;},testChange=function testChange(e){var elem=e.target,data,val;if(!rformElems.test(elem.nodeName)||elem.readOnly){return;}
data=FlixjQ._data(elem,"_change_data");val=getVal(elem);if(e.type!=="focusout"||elem.type!=="radio"){FlixjQ._data(elem,"_change_data",val);}
if(data===undefined||val===data){return;}
if(data!=null||val){e.type="change";e.liveFired=undefined;FlixjQ.event.trigger(e,arguments[1],elem);}};FlixjQ.event.special.change={filters:{focusout:testChange,beforedeactivate:testChange,click:function(e){var elem=e.target,type=FlixjQ.nodeName(elem,"input")?elem.type:"";if(type==="radio"||type==="checkbox"||FlixjQ.nodeName(elem,"select")){testChange.call(this,e);}},keydown:function(e){var elem=e.target,type=FlixjQ.nodeName(elem,"input")?elem.type:"";if((e.keyCode===13&&!FlixjQ.nodeName(elem,"textarea"))||(e.keyCode===32&&(type==="checkbox"||type==="radio"))||type==="select-multiple"){testChange.call(this,e);}},beforeactivate:function(e){var elem=e.target;FlixjQ._data(elem,"_change_data",getVal(elem));}},setup:function(data,namespaces){if(this.type==="file"){return false;}
for(var type in changeFilters){FlixjQ.event.add(this,type+".specialChange",changeFilters[type]);}
return rformElems.test(this.nodeName);},teardown:function(namespaces){FlixjQ.event.remove(this,".specialChange");return rformElems.test(this.nodeName);}};changeFilters=FlixjQ.event.special.change.filters;changeFilters.focus=changeFilters.beforeactivate;}
function trigger(type,elem,args){var event=FlixjQ.extend({},args[0]);event.type=type;event.originalEvent={};event.liveFired=undefined;FlixjQ.event.handle.call(elem,event);if(event.isDefaultPrevented()){args[0].preventDefault();}}
if(!FlixjQ.support.focusinBubbles){FlixjQ.each({focus:"focusin",blur:"focusout"},function(orig,fix){var attaches=0;FlixjQ.event.special[fix]={setup:function(){if(attaches++===0){document.addEventListener(orig,handler,true);}},teardown:function(){if(--attaches===0){document.removeEventListener(orig,handler,true);}}};function handler(donor){var e=FlixjQ.event.fix(donor);e.type=fix;e.originalEvent={};FlixjQ.event.trigger(e,null,e.target);if(e.isDefaultPrevented()){donor.preventDefault();}}});}
FlixjQ.each(["bind","one"],function(i,name){FlixjQ.fn[name]=function(type,data,fn){var handler;if(typeof type==="object"){for(var key in type){this[name](key,data,type[key],fn);}
return this;}
if(arguments.length===2||data===false){fn=data;data=undefined;}
if(name==="one"){handler=function(event){FlixjQ(this).unbind(event,handler);return fn.apply(this,arguments);};handler.guid=fn.guid||FlixjQ.guid++;}else{handler=fn;}
if(type==="unload"&&name!=="one"){this.one(type,data,fn);}else{for(var i=0,l=this.length;i<l;i++){FlixjQ.event.add(this[i],type,handler,data);}}
return this;};});FlixjQ.fn.extend({unbind:function(type,fn){if(typeof type==="object"&&!type.preventDefault){for(var key in type){this.unbind(key,type[key]);}}else{for(var i=0,l=this.length;i<l;i++){FlixjQ.event.remove(this[i],type,fn);}}
return this;},delegate:function(selector,types,data,fn){return this.live(types,data,fn,selector);},undelegate:function(selector,types,fn){if(arguments.length===0){return this.unbind("live");}else{return this.die(types,null,fn,selector);}},trigger:function(type,data){return this.each(function(){FlixjQ.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){return FlixjQ.event.trigger(type,data,this[0],true);}},toggle:function(fn){var args=arguments,guid=fn.guid||FlixjQ.guid++,i=0,toggler=function(event){var lastToggle=(FlixjQ.data(this,"lastToggle"+fn.guid)||0)%i;FlixjQ.data(this,"lastToggle"+fn.guid,lastToggle+1);event.preventDefault();return args[lastToggle].apply(this,arguments)||false;};toggler.guid=guid;while(i<args.length){args[i++].guid=guid;}
return this.click(toggler);},hover:function(fnOver,fnOut){return this.mouseenter(fnOver).mouseleave(fnOut||fnOver);}});var liveMap={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};FlixjQ.each(["live","die"],function(i,name){FlixjQ.fn[name]=function(types,data,fn,origSelector){var type,i=0,match,namespaces,preType,selector=origSelector||this.selector,context=origSelector?this:FlixjQ(this.context);if(typeof types==="object"&&!types.preventDefault){for(var key in types){context[name](key,data,types[key],selector);}
return this;}
if(name==="die"&&!types&&origSelector&&origSelector.charAt(0)==="."){context.unbind(origSelector);return this;}
if(data===false||FlixjQ.isFunction(data)){fn=data||returnFalse;data=undefined;}
types=(types||"").split(" ");while((type=types[i++])!=null){match=rnamespaces.exec(type);namespaces="";if(match){namespaces=match[0];type=type.replace(rnamespaces,"");}
if(type==="hover"){types.push("mouseenter"+namespaces,"mouseleave"+namespaces);continue;}
preType=type;if(liveMap[type]){types.push(liveMap[type]+namespaces);type=type+namespaces;}else{type=(liveMap[type]||type)+namespaces;}
if(name==="live"){for(var j=0,l=context.length;j<l;j++){FlixjQ.event.add(context[j],"live."+FlixjQliveConvert(type,selector),{data:data,selector:selector,handler:fn,origType:type,origHandler:fn,preType:preType});}}else{context.unbind("live."+FlixjQliveConvert(type,selector),fn);}}
return this;};});function liveHandler(event){var stop,maxLevel,related,match,handleObj,elem,j,i,l,data,close,namespace,ret,elems=[],selectors=[],events=FlixjQ._data(this,"events");if(event.liveFired===this||!events||!events.live||event.target.disabled||event.button&&event.type==="click"){return;}
if(event.namespace){namespace=new RegExp("(^|\\.)"+event.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");}
event.liveFired=this;var live=events.live.slice(0);for(j=0;j<live.length;j++){handleObj=live[j];if(handleObj.origType.replace(rnamespaces,"")===event.type){selectors.push(handleObj.selector);}else{live.splice(j--,1);}}
match=FlixjQ(event.target).closest(selectors,event.currentTarget);for(i=0,l=match.length;i<l;i++){close=match[i];for(j=0;j<live.length;j++){handleObj=live[j];if(close.selector===handleObj.selector&&(!namespace||namespace.test(handleObj.namespace))&&!close.elem.disabled){elem=close.elem;related=null;if(handleObj.preType==="mouseenter"||handleObj.preType==="mouseleave"){event.type=handleObj.preType;related=FlixjQ(event.relatedTarget).closest(handleObj.selector)[0];if(related&&FlixjQ.contains(elem,related)){related=elem;}}
if(!related||related!==elem){elems.push({elem:elem,handleObj:handleObj,level:close.level});}}}}
for(i=0,l=elems.length;i<l;i++){match=elems[i];if(maxLevel&&match.level>maxLevel){break;}
event.currentTarget=match.elem;event.data=match.handleObj.data;event.handleObj=match.handleObj;ret=match.handleObj.origHandler.apply(match.elem,arguments);if(ret===false||event.isPropagationStopped()){maxLevel=match.level;if(ret===false){stop=false;}
if(event.isImmediatePropagationStopped()){break;}}}
return stop;}
function FlixjQliveConvert(type,selector){return(type&&type!=="*"?type+".":"")+selector.replace(rperiod,"`").replace(rspaces,"&");}
FlixjQ.each(("blur focus focusin focusout load resize scroll unload click dblclick "+"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave "+"change select submit keydown keypress keyup error").split(" "),function(i,name){FlixjQ.fn[name]=function(data,fn){if(fn==null){fn=data;data=null;}
return arguments.length>0?this.bind(name,data,fn):this.trigger(name);};if(FlixjQ.attrFn){FlixjQ.attrFn[name]=true;}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,done=0,toString=Object.prototype.toString,hasDuplicate=false,baseHasDuplicate=true,rBackslash=/\\/g,rNonWord=/\W/;[0,0].sort(function(){baseHasDuplicate=false;return 0;});var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;var origContext=context;if(context.nodeType!==1&&context.nodeType!==9){return[];}
if(!selector||typeof selector!=="string"){return results;}
var m,set,checkSet,extra,ret,cur,pop,i,prune=true,contextXML=Sizzle.isXML(context),parts=[],soFar=selector;do{chunker.exec("");m=chunker.exec(soFar);if(m){soFar=m[3];parts.push(m[1]);if(m[2]){extra=m[3];break;}}}while(m);if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]){selector+=parts.shift();}
set=posProcess(selector,set);}}}else{if(!seed&&parts.length>1&&context.nodeType===9&&!contextXML&&Expr.match.ID.test(parts[0])&&!Expr.match.ID.test(parts[parts.length-1])){ret=Sizzle.find(parts.shift(),context,contextXML);context=ret.expr?Sizzle.filter(ret.expr,ret.set)[0]:ret.set[0];}
if(context){ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&(parts[0]==="~"||parts[0]==="+")&&context.parentNode?context.parentNode:context,contextXML);set=ret.expr?Sizzle.filter(ret.expr,ret.set):ret.set;if(parts.length>0){checkSet=makeArray(set);}else{prune=false;}
while(parts.length){cur=parts.pop();pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();}
if(pop==null){pop=context;}
Expr.relative[cur](checkSet,pop,contextXML);}}else{checkSet=parts=[];}}
if(!checkSet){checkSet=set;}
if(!checkSet){Sizzle.error(cur||selector);}
if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context&&context.nodeType===1){for(i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&Sizzle.contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);}
if(extra){Sizzle(extra,origContext,results,seed);Sizzle.uniqueSort(results);}
return results;};Sizzle.uniqueSort=function(results){if(sortOrder){hasDuplicate=baseHasDuplicate;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i<results.length;i++){if(results[i]===results[i-1]){results.splice(i--,1);}}}}
return results;};Sizzle.matches=function(expr,set){return Sizzle(expr,null,null,set);};Sizzle.matchesSelector=function(node,expr){return Sizzle(expr,null,null,[node]).length>0;};Sizzle.find=function(expr,context,isXML){var set;if(!expr){return[];}
for(var i=0,l=Expr.order.length;i<l;i++){var match,type=Expr.order[i];if((match=Expr.leftMatch[type].exec(expr))){var left=match[1];match.splice(1,1);if(left.substr(left.length-1)!=="\\"){match[1]=(match[1]||"").replace(rBackslash,"");set=Expr.find[type](match,context,isXML);if(set!=null){expr=expr.replace(Expr.match[type],"");break;}}}}
if(!set){set=typeof context.getElementsByTagName!=="undefined"?context.getElementsByTagName("*"):[];}
return{set:set,expr:expr};};Sizzle.filter=function(expr,set,inplace,not){var match,anyFound,old=expr,result=[],curLoop=set,isXMLFilter=set&&set[0]&&Sizzle.isXML(set[0]);while(expr&&set.length){for(var type in Expr.filter){if((match=Expr.leftMatch[type].exec(expr))!=null&&match[2]){var found,item,filter=Expr.filter[type],left=match[1];anyFound=false;match.splice(1,1);if(left.substr(left.length-1)==="\\"){continue;}
if(curLoop===result){result=[];}
if(Expr.preFilter[type]){match=Expr.preFilter[type](match,curLoop,inplace,result,not,isXMLFilter);if(!match){anyFound=found=true;}else if(match===true){continue;}}
if(match){for(var i=0;(item=curLoop[i])!=null;i++){if(item){found=filter(item,match,i,curLoop);var pass=not^!!found;if(inplace&&found!=null){if(pass){anyFound=true;}else{curLoop[i]=false;}}else if(pass){result.push(item);anyFound=true;}}}}
if(found!==undefined){if(!inplace){curLoop=result;}
expr=expr.replace(Expr.match[type],"");if(!anyFound){return[];}
break;}}}
if(expr===old){if(anyFound==null){Sizzle.error(expr);}else{break;}}
old=expr;}
return curLoop;};Sizzle.error=function(msg){throw"Syntax error, unrecognized expression: "+msg;};var Expr=Sizzle.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(elem){return elem.getAttribute("href");},type:function(elem){return elem.getAttribute("type");}},relative:{"+":function(checkSet,part){var isPartStr=typeof part==="string",isTag=isPartStr&&!rNonWord.test(part),isPartStrNotTag=isPartStr&&!isTag;if(isTag){part=part.toLowerCase();}
for(var i=0,l=checkSet.length,elem;i<l;i++){if((elem=checkSet[i])){while((elem=elem.previousSibling)&&elem.nodeType!==1){}
checkSet[i]=isPartStrNotTag||elem&&elem.nodeName.toLowerCase()===part?elem||false:elem===part;}}
if(isPartStrNotTag){Sizzle.filter(part,checkSet,true);}},">":function(checkSet,part){var elem,isPartStr=typeof part==="string",i=0,l=checkSet.length;if(isPartStr&&!rNonWord.test(part)){part=part.toLowerCase();for(;i<l;i++){elem=checkSet[i];if(elem){var parent=elem.parentNode;checkSet[i]=parent.nodeName.toLowerCase()===part?parent:false;}}}else{for(;i<l;i++){elem=checkSet[i];if(elem){checkSet[i]=isPartStr?elem.parentNode:elem.parentNode===part;}}
if(isPartStr){Sizzle.filter(part,checkSet,true);}}},"":function(checkSet,part,isXML){var nodeCheck,doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!rNonWord.test(part)){part=part.toLowerCase();nodeCheck=part;checkFn=dirNodeCheck;}
checkFn("parentNode",part,doneName,checkSet,nodeCheck,isXML);},"~":function(checkSet,part,isXML){var nodeCheck,doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!rNonWord.test(part)){part=part.toLowerCase();nodeCheck=part;checkFn=dirNodeCheck;}
checkFn("previousSibling",part,doneName,checkSet,nodeCheck,isXML);}},find:{ID:function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m&&m.parentNode?[m]:[];}},NAME:function(match,context){if(typeof context.getElementsByName!=="undefined"){var ret=[],results=context.getElementsByName(match[1]);for(var i=0,l=results.length;i<l;i++){if(results[i].getAttribute("name")===match[1]){ret.push(results[i]);}}
return ret.length===0?null:ret;}},TAG:function(match,context){if(typeof context.getElementsByTagName!=="undefined"){return context.getElementsByTagName(match[1]);}}},preFilter:{CLASS:function(match,curLoop,inplace,result,not,isXML){match=" "+match[1].replace(rBackslash,"")+" ";if(isXML){return match;}
for(var i=0,elem;(elem=curLoop[i])!=null;i++){if(elem){if(not^(elem.className&&(" "+elem.className+" ").replace(/[\t\n\r]/g," ").indexOf(match)>=0)){if(!inplace){result.push(elem);}}else if(inplace){curLoop[i]=false;}}}
return false;},ID:function(match){return match[1].replace(rBackslash,"");},TAG:function(match,curLoop){return match[1].replace(rBackslash,"").toLowerCase();},CHILD:function(match){if(match[1]==="nth"){if(!match[2]){Sizzle.error(match[0]);}
match[2]=match[2].replace(/^\+|\s*/g,'');var test=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(match[2]==="even"&&"2n"||match[2]==="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;}
else if(match[2]){Sizzle.error(match[0]);}
match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1]=match[1].replace(rBackslash,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];}
match[4]=(match[4]||match[5]||"").replace(rBackslash,"");if(match[2]==="~="){match[4]=" "+match[4]+" ";}
return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if((chunker.exec(match[3])||"").length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);}
return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;}
return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){if(elem.parentNode){elem.parentNode.selectedIndex;}
return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return(/h\d/i).test(elem.nodeName);},text:function(elem){var attr=elem.getAttribute("type"),type=elem.type;return elem.nodeName.toLowerCase()==="input"&&"text"===type&&(attr===type||attr===null);},radio:function(elem){return elem.nodeName.toLowerCase()==="input"&&"radio"===elem.type;},checkbox:function(elem){return elem.nodeName.toLowerCase()==="input"&&"checkbox"===elem.type;},file:function(elem){return elem.nodeName.toLowerCase()==="input"&&"file"===elem.type;},password:function(elem){return elem.nodeName.toLowerCase()==="input"&&"password"===elem.type;},submit:function(elem){var name=elem.nodeName.toLowerCase();return(name==="input"||name==="button")&&"submit"===elem.type;},image:function(elem){return elem.nodeName.toLowerCase()==="input"&&"image"===elem.type;},reset:function(elem){var name=elem.nodeName.toLowerCase();return(name==="input"||name==="button")&&"reset"===elem.type;},button:function(elem){var name=elem.nodeName.toLowerCase();return name==="input"&&"button"===elem.type||name==="button";},input:function(elem){return(/input|select|textarea|button/i).test(elem.nodeName);},focus:function(elem){return elem===elem.ownerDocument.activeElement;}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return i<match[3]-0;},gt:function(elem,i,match){return i>match[3]-0;},nth:function(elem,i,match){return match[3]-0===i;},eq:function(elem,i,match){return match[3]-0===i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||Sizzle.getText([elem])||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var j=0,l=not.length;j<l;j++){if(not[j]===elem){return false;}}
return true;}else{Sizzle.error(name);}},CHILD:function(elem,match){var type=match[1],node=elem;switch(type){case"only":case"first":while((node=node.previousSibling)){if(node.nodeType===1){return false;}}
if(type==="first"){return true;}
node=elem;case"last":while((node=node.nextSibling)){if(node.nodeType===1){return false;}}
return true;case"nth":var first=match[2],last=match[3];if(first===1&&last===0){return true;}
var doneName=match[0],parent=elem.parentNode;if(parent&&(parent.sizcache!==doneName||!elem.nodeIndex)){var count=0;for(node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType===1){node.nodeIndex=++count;}}
parent.sizcache=doneName;}
var diff=elem.nodeIndex-last;if(first===0){return diff===0;}else{return(diff%first===0&&diff/first>=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName.toLowerCase()===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!==check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS,fescape=function(all,num){return"\\"+(num-0+1);};for(var type in Expr.match){Expr.match[type]=new RegExp(Expr.match[type].source+(/(?![^\[]*\])(?![^\(]*\))/.source));Expr.leftMatch[type]=new RegExp(/(^(?:.|\r|\n)*?)/.source+Expr.match[type].source.replace(/\\(\d+)/g,fescape));}
var makeArray=function(array,results){array=Array.prototype.slice.call(array,0);if(results){results.push.apply(results,array);return results;}
return array;};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType;}catch(e){makeArray=function(array,results){var i=0,ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var l=array.length;i<l;i++){ret.push(array[i]);}}else{for(;array[i];i++){ret.push(array[i]);}}}
return ret;};}
var sortOrder,siblingCheck;if(document.documentElement.compareDocumentPosition){sortOrder=function(a,b){if(a===b){hasDuplicate=true;return 0;}
if(!a.compareDocumentPosition||!b.compareDocumentPosition){return a.compareDocumentPosition?-1:1;}
return a.compareDocumentPosition(b)&4?-1:1;};}else{sortOrder=function(a,b){if(a===b){hasDuplicate=true;return 0;}else if(a.sourceIndex&&b.sourceIndex){return a.sourceIndex-b.sourceIndex;}
var al,bl,ap=[],bp=[],aup=a.parentNode,bup=b.parentNode,cur=aup;if(aup===bup){return siblingCheck(a,b);}else if(!aup){return-1;}else if(!bup){return 1;}
while(cur){ap.unshift(cur);cur=cur.parentNode;}
cur=bup;while(cur){bp.unshift(cur);cur=cur.parentNode;}
al=ap.length;bl=bp.length;for(var i=0;i<al&&i<bl;i++){if(ap[i]!==bp[i]){return siblingCheck(ap[i],bp[i]);}}
return i===al?siblingCheck(a,bp[i],-1):siblingCheck(ap[i],b,1);};siblingCheck=function(a,b,ret){if(a===b){return ret;}
var cur=a.nextSibling;while(cur){if(cur===b){return-1;}
cur=cur.nextSibling;}
return 1;};}
Sizzle.getText=function(elems){var ret="",elem;for(var i=0;elems[i];i++){elem=elems[i];if(elem.nodeType===3||elem.nodeType===4){ret+=elem.nodeValue;}else if(elem.nodeType!==8){ret+=Sizzle.getText(elem.childNodes);}}
return ret;};(function(){var form=document.createElement("div"),id="script"+(new Date()).getTime(),root=document.documentElement;form.innerHTML="<a name='"+id+"'/>";root.insertBefore(form,root.firstChild);if(document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};}
root.removeChild(form);root=form=null;})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}}
results=tmp;}
return results;};}
div.innerHTML="<a href='#'></a>";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}
div=null;})();if(document.querySelectorAll){(function(){var oldSizzle=Sizzle,div=document.createElement("div"),id="__sizzle__";div.innerHTML="<p class='TEST'></p>";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;}
Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&!Sizzle.isXML(context)){var match=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(query);if(match&&(context.nodeType===1||context.nodeType===9)){if(match[1]){return makeArray(context.getElementsByTagName(query),extra);}else if(match[2]&&Expr.find.CLASS&&context.getElementsByClassName){return makeArray(context.getElementsByClassName(match[2]),extra);}}
if(context.nodeType===9){if(query==="body"&&context.body){return makeArray([context.body],extra);}else if(match&&match[3]){var elem=context.getElementById(match[3]);if(elem&&elem.parentNode){if(elem.id===match[3]){return makeArray([elem],extra);}}else{return makeArray([],extra);}}
try{return makeArray(context.querySelectorAll(query),extra);}catch(qsaError){}}else if(context.nodeType===1&&context.nodeName.toLowerCase()!=="object"){var oldContext=context,old=context.getAttribute("id"),nid=old||id,hasParent=context.parentNode,relativeHierarchySelector=/^\s*[+~]/.test(query);if(!old){context.setAttribute("id",nid);}else{nid=nid.replace(/'/g,"\\$&");}
if(relativeHierarchySelector&&hasParent){context=context.parentNode;}
try{if(!relativeHierarchySelector||hasParent){return makeArray(context.querySelectorAll("[id='"+nid+"'] "+query),extra);}}catch(pseudoError){}finally{if(!old){oldContext.removeAttribute("id");}}}}
return oldSizzle(query,context,extra,seed);};for(var prop in oldSizzle){Sizzle[prop]=oldSizzle[prop];}
div=null;})();}
(function(){var html=document.documentElement,matches=html.matchesSelector||html.mozMatchesSelector||html.webkitMatchesSelector||html.msMatchesSelector;if(matches){var disconnectedMatch=!matches.call(document.createElement("div"),"div"),pseudoWorks=false;try{matches.call(document.documentElement,"[test!='']:sizzle");}catch(pseudoError){pseudoWorks=true;}
Sizzle.matchesSelector=function(node,expr){expr=expr.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!Sizzle.isXML(node)){try{if(pseudoWorks||!Expr.match.PSEUDO.test(expr)&&!/!=/.test(expr)){var ret=matches.call(node,expr);if(ret||!disconnectedMatch||node.document&&node.document.nodeType!==11){return ret;}}}catch(e){}}
return Sizzle(expr,null,null,[node]).length>0;};}})();(function(){var div=document.createElement("div");div.innerHTML="<div class='test e'></div><div class='test'></div>";if(!div.getElementsByClassName||div.getElementsByClassName("e").length===0){return;}
div.lastChild.className="e";if(div.getElementsByClassName("e").length===1){return;}
Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};div=null;})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){var match=false;elem=elem[dir];while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;}
if(elem.nodeType===1&&!isXML){elem.sizcache=doneName;elem.sizset=i;}
if(elem.nodeName.toLowerCase()===cur){match=elem;break;}
elem=elem[dir];}
checkSet[i]=match;}}}
function dirCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){var match=false;elem=elem[dir];while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;}
if(elem.nodeType===1){if(!isXML){elem.sizcache=doneName;elem.sizset=i;}
if(typeof cur!=="string"){if(elem===cur){match=true;break;}}else if(Sizzle.filter(cur,[elem]).length>0){match=elem;break;}}
elem=elem[dir];}
checkSet[i]=match;}}}
if(document.documentElement.contains){Sizzle.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):true);};}else if(document.documentElement.compareDocumentPosition){Sizzle.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16);};}else{Sizzle.contains=function(){return false;};}
Sizzle.isXML=function(elem){var documentElement=(elem?elem.ownerDocument||elem:0).documentElement;return documentElement?documentElement.nodeName!=="HTML":false;};var posProcess=function(selector,context){var match,tmpSet=[],later="",root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");}
selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i<l;i++){Sizzle(selector,root[i],tmpSet);}
return Sizzle.filter(later,tmpSet);};FlixjQ.find=Sizzle;FlixjQ.expr=Sizzle.selectors;FlixjQ.expr[":"]=FlixjQ.expr.filters;FlixjQ.unique=Sizzle.uniqueSort;FlixjQ.text=Sizzle.getText;FlixjQ.isXMLDoc=Sizzle.isXML;FlixjQ.contains=Sizzle.contains;})();var runtil=/Until$/,rparentsprev=/^(?:parents|prevUntil|prevAll)/,rmultiselector=/,/,isSimple=/^.[^:#\[\.,]*$/,slice=Array.prototype.slice,POS=FlixjQ.expr.match.POS,guaranteedUnique={children:true,contents:true,next:true,prev:true};FlixjQ.fn.extend({find:function(selector){var self=this,i,l;if(typeof selector!=="string"){return FlixjQ(selector).filter(function(){for(i=0,l=self.length;i<l;i++){if(FlixjQ.contains(self[i],this)){return true;}}});}
var ret=this.pushStack("","find",selector),length,n,r;for(i=0,l=this.length;i<l;i++){length=ret.length;FlixjQ.find(selector,this[i],ret);if(i>0){for(n=length;n<ret.length;n++){for(r=0;r<length;r++){if(ret[r]===ret[n]){ret.splice(n--,1);break;}}}}}
return ret;},has:function(target){var targets=FlixjQ(target);return this.filter(function(){for(var i=0,l=targets.length;i<l;i++){if(FlixjQ.contains(this,targets[i])){return true;}}});},not:function(selector){return this.pushStack(winnow(this,selector,false),"not",selector);},filter:function(selector){return this.pushStack(winnow(this,selector,true),"filter",selector);},is:function(selector){return!!selector&&(typeof selector==="string"?FlixjQ.filter(selector,this).length>0:this.filter(selector).length>0);},closest:function(selectors,context){var ret=[],i,l,cur=this[0];if(FlixjQ.isArray(selectors)){var match,selector,matches={},level=1;if(cur&&selectors.length){for(i=0,l=selectors.length;i<l;i++){selector=selectors[i];if(!matches[selector]){matches[selector]=POS.test(selector)?FlixjQ(selector,context||this.context):selector;}}
while(cur&&cur.ownerDocument&&cur!==context){for(selector in matches){match=matches[selector];if(match.FlixjQ?match.index(cur)>-1:FlixjQ(cur).is(match)){ret.push({selector:selector,elem:cur,level:level});}}
cur=cur.parentNode;level++;}}
return ret;}
var pos=POS.test(selectors)||typeof selectors!=="string"?FlixjQ(selectors,context||this.context):0;for(i=0,l=this.length;i<l;i++){cur=this[i];while(cur){if(pos?pos.index(cur)>-1:FlixjQ.find.matchesSelector(cur,selectors)){ret.push(cur);break;}else{cur=cur.parentNode;if(!cur||!cur.ownerDocument||cur===context||cur.nodeType===11){break;}}}}
ret=ret.length>1?FlixjQ.unique(ret):ret;return this.pushStack(ret,"closest",selectors);},index:function(elem){if(!elem||typeof elem==="string"){return FlixjQ.inArray(this[0],elem?FlixjQ(elem):this.parent().children());}
return FlixjQ.inArray(elem.FlixjQ?elem[0]:elem,this);},add:function(selector,context){var set=typeof selector==="string"?FlixjQ(selector,context):FlixjQ.makeArray(selector&&selector.nodeType?[selector]:selector),all=FlixjQ.merge(this.get(),set);return this.pushStack(isDisconnected(set[0])||isDisconnected(all[0])?all:FlixjQ.unique(all));},andSelf:function(){return this.add(this.prevObject);}});function isDisconnected(node){return!node||!node.parentNode||node.parentNode.nodeType===11;}
FlixjQ.each({parent:function(elem){var parent=elem.parentNode;return parent&&parent.nodeType!==11?parent:null;},parents:function(elem){return FlixjQ.dir(elem,"parentNode");},parentsUntil:function(elem,i,until){return FlixjQ.dir(elem,"parentNode",until);},next:function(elem){return FlixjQ.nth(elem,2,"nextSibling");},prev:function(elem){return FlixjQ.nth(elem,2,"previousSibling");},nextAll:function(elem){return FlixjQ.dir(elem,"nextSibling");},prevAll:function(elem){return FlixjQ.dir(elem,"previousSibling");},nextUntil:function(elem,i,until){return FlixjQ.dir(elem,"nextSibling",until);},prevUntil:function(elem,i,until){return FlixjQ.dir(elem,"previousSibling",until);},siblings:function(elem){return FlixjQ.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return FlixjQ.sibling(elem.firstChild);},contents:function(elem){return FlixjQ.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:FlixjQ.makeArray(elem.childNodes);}},function(name,fn){FlixjQ.fn[name]=function(until,selector){var ret=FlixjQ.map(this,fn,until),args=slice.call(arguments);if(!runtil.test(name)){selector=until;}
if(selector&&typeof selector==="string"){ret=FlixjQ.filter(selector,ret);}
ret=this.length>1&&!guaranteedUnique[name]?FlixjQ.unique(ret):ret;if((this.length>1||rmultiselector.test(selector))&&rparentsprev.test(name)){ret=ret.reverse();}
return this.pushStack(ret,name,args.join(","));};});FlixjQ.extend({filter:function(expr,elems,not){if(not){expr=":not("+expr+")";}
return elems.length===1?FlixjQ.find.matchesSelector(elems[0],expr)?[elems[0]]:[]:FlixjQ.find.matches(expr,elems);},dir:function(elem,dir,until){var matched=[],cur=elem[dir];while(cur&&cur.nodeType!==9&&(until===undefined||cur.nodeType!==1||!FlixjQ(cur).is(until))){if(cur.nodeType===1){matched.push(cur);}
cur=cur[dir];}
return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]){if(cur.nodeType===1&&++num===result){break;}}
return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType===1&&n!==elem){r.push(n);}}
return r;}});function winnow(elements,qualifier,keep){qualifier=qualifier||0;if(FlixjQ.isFunction(qualifier)){return FlixjQ.grep(elements,function(elem,i){var retVal=!!qualifier.call(elem,i,elem);return retVal===keep;});}else if(qualifier.nodeType){return FlixjQ.grep(elements,function(elem,i){return(elem===qualifier)===keep;});}else if(typeof qualifier==="string"){var filtered=FlixjQ.grep(elements,function(elem){return elem.nodeType===1;});if(isSimple.test(qualifier)){return FlixjQ.filter(qualifier,filtered,!keep);}else{qualifier=FlixjQ.filter(qualifier,filtered);}}
return FlixjQ.grep(elements,function(elem,i){return(FlixjQ.inArray(elem,qualifier)>=0)===keep;});}
var rinlineFlixjQ=/ FlixjQ\d+="(?:\d+|null)"/g,rleadingWhitespace=/^\s+/,rxhtmlTag=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,rtagName=/<([\w:]+)/,rtbody=/<tbody/i,rhtml=/<|&#?\w+;/,rnocache=/<(?:script|object|embed|option|style)/i,rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,rscriptType=/\/(java|ecma)script/i,rcleanScript=/^\s*<!(?:\[CDATA\[|\-\-)/,wrapMap={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};wrapMap.optgroup=wrapMap.option;wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;wrapMap.th=wrapMap.td;if(!FlixjQ.support.htmlSerialize){wrapMap._default=[1,"div<div>","</div>"];}
FlixjQ.fn.extend({text:function(text){if(FlixjQ.isFunction(text)){return this.each(function(i){var self=FlixjQ(this);self.text(text.call(this,i,self.text()));});}
if(typeof text!=="object"&&text!==undefined){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));}
return FlixjQ.text(this);},wrapAll:function(html){if(FlixjQ.isFunction(html)){return this.each(function(i){FlixjQ(this).wrapAll(html.call(this,i));});}
if(this[0]){var wrap=FlixjQ(html,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){wrap.insertBefore(this[0]);}
wrap.map(function(){var elem=this;while(elem.firstChild&&elem.firstChild.nodeType===1){elem=elem.firstChild;}
return elem;}).append(this);}
return this;},wrapInner:function(html){if(FlixjQ.isFunction(html)){return this.each(function(i){FlixjQ(this).wrapInner(html.call(this,i));});}
return this.each(function(){var self=FlixjQ(this),contents=self.contents();if(contents.length){contents.wrapAll(html);}else{self.append(html);}});},wrap:function(html){return this.each(function(){FlixjQ(this).wrapAll(html);});},unwrap:function(){return this.parent().each(function(){if(!FlixjQ.nodeName(this,"body")){FlixjQ(this).replaceWith(this.childNodes);}}).end();},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1){this.appendChild(elem);}});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1){this.insertBefore(elem,this.firstChild);}});},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});}else if(arguments.length){var set=FlixjQ(arguments[0]);set.push.apply(set,this.toArray());return this.pushStack(set,"before",arguments);}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});}else if(arguments.length){var set=this.pushStack(this,"after",arguments);set.push.apply(set,FlixjQ(arguments[0]).toArray());return set;}},remove:function(selector,keepData){for(var i=0,elem;(elem=this[i])!=null;i++){if(!selector||FlixjQ.filter(selector,[elem]).length){if(!keepData&&elem.nodeType===1){FlixjQ.cleanData(elem.getElementsByTagName("*"));FlixjQ.cleanData([elem]);}
if(elem.parentNode){elem.parentNode.removeChild(elem);}}}
return this;},empty:function(){for(var i=0,elem;(elem=this[i])!=null;i++){if(elem.nodeType===1){FlixjQ.cleanData(elem.getElementsByTagName("*"));}
while(elem.firstChild){elem.removeChild(elem.firstChild);}}
return this;},clone:function(dataAndEvents,deepDataAndEvents){dataAndEvents=dataAndEvents==null?false:dataAndEvents;deepDataAndEvents=deepDataAndEvents==null?dataAndEvents:deepDataAndEvents;return this.map(function(){return FlixjQ.clone(this,dataAndEvents,deepDataAndEvents);});},html:function(value){if(value===undefined){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(rinlineFlixjQ,""):null;}else if(typeof value==="string"&&!rnocache.test(value)&&(FlixjQ.support.leadingWhitespace||!rleadingWhitespace.test(value))&&!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){value=value.replace(rxhtmlTag,"<$1></$2>");try{for(var i=0,l=this.length;i<l;i++){if(this[i].nodeType===1){FlixjQ.cleanData(this[i].getElementsByTagName("*"));this[i].innerHTML=value;}}}catch(e){this.empty().append(value);}}else if(FlixjQ.isFunction(value)){this.each(function(i){var self=FlixjQ(this);self.html(value.call(this,i,self.html()));});}else{this.empty().append(value);}
return this;},replaceWith:function(value){if(this[0]&&this[0].parentNode){if(FlixjQ.isFunction(value)){return this.each(function(i){var self=FlixjQ(this),old=self.html();self.replaceWith(value.call(this,i,old));});}
if(typeof value!=="string"){value=FlixjQ(value).detach();}
return this.each(function(){var next=this.nextSibling,parent=this.parentNode;FlixjQ(this).remove();if(next){FlixjQ(next).before(value);}else{FlixjQ(parent).append(value);}});}else{return this.length?this.pushStack(FlixjQ(FlixjQ.isFunction(value)?value():value),"replaceWith",value):this;}},detach:function(selector){return this.remove(selector,true);},domManip:function(args,table,callback){var results,first,fragment,parent,value=args[0],scripts=[];if(!FlixjQ.support.checkClone&&arguments.length===3&&typeof value==="string"&&rchecked.test(value)){return this.each(function(){FlixjQ(this).domManip(args,table,callback,true);});}
if(FlixjQ.isFunction(value)){return this.each(function(i){var self=FlixjQ(this);args[0]=value.call(this,i,table?self.html():undefined);self.domManip(args,table,callback);});}
if(this[0]){parent=value&&value.parentNode;if(FlixjQ.support.parentNode&&parent&&parent.nodeType===11&&parent.childNodes.length===this.length){results={fragment:parent};}else{results=FlixjQ.buildFragment(args,this,scripts);}
fragment=results.fragment;if(fragment.childNodes.length===1){first=fragment=fragment.firstChild;}else{first=fragment.firstChild;}
if(first){table=table&&FlixjQ.nodeName(first,"tr");for(var i=0,l=this.length,lastIndex=l-1;i<l;i++){callback.call(table?root(this[i],first):this[i],results.cacheable||(l>1&&i<lastIndex)?FlixjQ.clone(fragment,true,true):fragment);}}
if(scripts.length){FlixjQ.each(scripts,evalScript);}}
return this;}});function root(elem,cur){return FlixjQ.nodeName(elem,"table")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}
function cloneCopyEvent(src,dest){if(dest.nodeType!==1||!FlixjQ.hasData(src)){return;}
var internalKey=FlixjQ.expando,oldData=FlixjQ.data(src),curData=FlixjQ.data(dest,oldData);if((oldData=oldData[internalKey])){var events=oldData.events;curData=curData[internalKey]=FlixjQ.extend({},oldData);if(events){delete curData.handle;curData.events={};for(var type in events){for(var i=0,l=events[type].length;i<l;i++){FlixjQ.event.add(dest,type+(events[type][i].namespace?".":"")+events[type][i].namespace,events[type][i],events[type][i].data);}}}}}
function cloneFixAttributes(src,dest){var nodeName;if(dest.nodeType!==1){return;}
if(dest.clearAttributes){dest.clearAttributes();}
if(dest.mergeAttributes){dest.mergeAttributes(src);}
nodeName=dest.nodeName.toLowerCase();if(nodeName==="object"){dest.outerHTML=src.outerHTML;}else if(nodeName==="input"&&(src.type==="checkbox"||src.type==="radio")){if(src.checked){dest.defaultChecked=dest.checked=src.checked;}
if(dest.value!==src.value){dest.value=src.value;}}else if(nodeName==="option"){dest.selected=src.defaultSelected;}else if(nodeName==="input"||nodeName==="textarea"){dest.defaultValue=src.defaultValue;}
dest.removeAttribute(FlixjQ.expando);}
FlixjQ.buildFragment=function(args,nodes,scripts){var fragment,cacheable,cacheresults,doc;if(nodes&&nodes[0]){doc=nodes[0].ownerDocument||nodes[0];}
if(!doc.createDocumentFragment){doc=document;}
if(args.length===1&&typeof args[0]==="string"&&args[0].length<512&&doc===document&&args[0].charAt(0)==="<"&&!rnocache.test(args[0])&&(FlixjQ.support.checkClone||!rchecked.test(args[0]))){cacheable=true;cacheresults=FlixjQ.fragments[args[0]];if(cacheresults&&cacheresults!==1){fragment=cacheresults;}}
if(!fragment){fragment=doc.createDocumentFragment();FlixjQ.clean(args,doc,fragment,scripts);}
if(cacheable){FlixjQ.fragments[args[0]]=cacheresults?fragment:1;}
return{fragment:fragment,cacheable:cacheable};};FlixjQ.fragments={};FlixjQ.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){FlixjQ.fn[name]=function(selector){var ret=[],insert=FlixjQ(selector),parent=this.length===1&&this[0].parentNode;if(parent&&parent.nodeType===11&&parent.childNodes.length===1&&insert.length===1){insert[original](this[0]);return this;}else{for(var i=0,l=insert.length;i<l;i++){var elems=(i>0?this.clone(true):this).get();FlixjQ(insert[i])[original](elems);ret=ret.concat(elems);}
return this.pushStack(ret,name,insert.selector);}};});function getAll(elem){if("getElementsByTagName"in elem){return elem.getElementsByTagName("*");}else if("querySelectorAll"in elem){return elem.querySelectorAll("*");}else{return[];}}
function fixDefaultChecked(elem){if(elem.type==="checkbox"||elem.type==="radio"){elem.defaultChecked=elem.checked;}}
function findInputs(elem){if(FlixjQ.nodeName(elem,"input")){fixDefaultChecked(elem);}else if("getElementsByTagName"in elem){FlixjQ.grep(elem.getElementsByTagName("input"),fixDefaultChecked);}}
FlixjQ.extend({clone:function(elem,dataAndEvents,deepDataAndEvents){var clone=elem.cloneNode(true),srcElements,destElements,i;if((!FlixjQ.support.noCloneEvent||!FlixjQ.support.noCloneChecked)&&(elem.nodeType===1||elem.nodeType===11)&&!FlixjQ.isXMLDoc(elem)){cloneFixAttributes(elem,clone);srcElements=getAll(elem);destElements=getAll(clone);for(i=0;srcElements[i];++i){cloneFixAttributes(srcElements[i],destElements[i]);}}
if(dataAndEvents){cloneCopyEvent(elem,clone);if(deepDataAndEvents){srcElements=getAll(elem);destElements=getAll(clone);for(i=0;srcElements[i];++i){cloneCopyEvent(srcElements[i],destElements[i]);}}}
srcElements=destElements=null;return clone;},clean:function(elems,context,fragment,scripts){var checkScriptType;context=context||document;if(typeof context.createElement==="undefined"){context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;}
var ret=[],j;for(var i=0,elem;(elem=elems[i])!=null;i++){if(typeof elem==="number"){elem+="";}
if(!elem){continue;}
if(typeof elem==="string"){if(!rhtml.test(elem)){elem=context.createTextNode(elem);}else{elem=elem.replace(rxhtmlTag,"<$1></$2>");var tag=(rtagName.exec(elem)||["",""])[1].toLowerCase(),wrap=wrapMap[tag]||wrapMap._default,depth=wrap[0],div=context.createElement("div");div.innerHTML=wrap[1]+elem+wrap[2];while(depth--){div=div.lastChild;}
if(!FlixjQ.support.tbody){var hasBody=rtbody.test(elem),tbody=tag==="table"&&!hasBody?div.firstChild&&div.firstChild.childNodes:wrap[1]==="<table>"&&!hasBody?div.childNodes:[];for(j=tbody.length-1;j>=0;--j){if(FlixjQ.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length){tbody[j].parentNode.removeChild(tbody[j]);}}}
if(!FlixjQ.support.leadingWhitespace&&rleadingWhitespace.test(elem)){div.insertBefore(context.createTextNode(rleadingWhitespace.exec(elem)[0]),div.firstChild);}
elem=div.childNodes;}}
var len;if(!FlixjQ.support.appendChecked){if(elem[0]&&typeof(len=elem.length)==="number"){for(j=0;j<len;j++){findInputs(elem[j]);}}else{findInputs(elem);}}
if(elem.nodeType){ret.push(elem);}else{ret=FlixjQ.merge(ret,elem);}}
if(fragment){checkScriptType=function(elem){return!elem.type||rscriptType.test(elem.type);};for(i=0;ret[i];i++){if(scripts&&FlixjQ.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1){var jsTags=FlixjQ.grep(ret[i].getElementsByTagName("script"),checkScriptType);ret.splice.apply(ret,[i+1,0].concat(jsTags));}
fragment.appendChild(ret[i]);}}}
return ret;},cleanData:function(elems){var data,id,cache=FlixjQ.cache,internalKey=FlixjQ.expando,special=FlixjQ.event.special,deleteExpando=FlixjQ.support.deleteExpando;for(var i=0,elem;(elem=elems[i])!=null;i++){if(elem.nodeName&&FlixjQ.noData[elem.nodeName.toLowerCase()]){continue;}
id=elem[FlixjQ.expando];if(id){data=cache[id]&&cache[id][internalKey];if(data&&data.events){for(var type in data.events){if(special[type]){FlixjQ.event.remove(elem,type);}else{FlixjQ.removeEvent(elem,type,data.handle);}}
if(data.handle){data.handle.elem=null;}}
if(deleteExpando){delete elem[FlixjQ.expando];}else if(elem.removeAttribute){elem.removeAttribute(FlixjQ.expando);}
delete cache[id];}}}});function evalScript(i,elem){if(elem.src){FlixjQ.ajax({url:elem.src,async:false,dataType:"script"});}else{FlixjQ.globalEval((elem.text||elem.textContent||elem.innerHTML||"").replace(rcleanScript,"/*$0*/"));}
if(elem.parentNode){elem.parentNode.removeChild(elem);}}
var ralpha=/alpha\([^)]*\)/i,ropacity=/opacity=([^)]*)/,rupper=/([A-Z]|^ms)/g,rnumpx=/^-?\d+(?:px)?$/i,rnum=/^-?\d/,rrelNum=/^[+\-]=/,rrelNumFilter=/[^+\-\.\de]+/g,cssShow={position:"absolute",visibility:"hidden",display:"block"},cssWidth=["Left","Right"],cssHeight=["Top","Bottom"],curCSS,getComputedStyle,currentStyle;FlixjQ.fn.css=function(name,value){if(arguments.length===2&&value===undefined){return this;}
return FlixjQ.access(this,name,value,true,function(elem,name,value){return value!==undefined?FlixjQ.style(elem,name,value):FlixjQ.css(elem,name);});};FlixjQ.extend({cssHooks:{opacity:{get:function(elem,computed){if(computed){var ret=curCSS(elem,"opacity","opacity");return ret===""?"1":ret;}else{return elem.style.opacity;}}}},cssNumber:{"fillOpacity":true,"fontWeight":true,"lineHeight":true,"opacity":true,"orphans":true,"widows":true,"zIndex":true,"zoom":true},cssProps:{"float":FlixjQ.support.cssFloat?"cssFloat":"styleFloat"},style:function(elem,name,value,extra){if(!elem||elem.nodeType===3||elem.nodeType===8||!elem.style){return;}
var ret,type,origName=FlixjQ.camelCase(name),style=elem.style,hooks=FlixjQ.cssHooks[origName];name=FlixjQ.cssProps[origName]||origName;if(value!==undefined){type=typeof value;if(type==="number"&&isNaN(value)||value==null){return;}
if(type==="string"&&rrelNum.test(value)){value=+value.replace(rrelNumFilter,"")+parseFloat(FlixjQ.css(elem,name));type="number";}
if(type==="number"&&!FlixjQ.cssNumber[origName]){value+="px";}
if(!hooks||!("set"in hooks)||(value=hooks.set(elem,value))!==undefined){try{style[name]=value;}catch(e){}}}else{if(hooks&&"get"in hooks&&(ret=hooks.get(elem,false,extra))!==undefined){return ret;}
return style[name];}},css:function(elem,name,extra){var ret,hooks;name=FlixjQ.camelCase(name);hooks=FlixjQ.cssHooks[name];name=FlixjQ.cssProps[name]||name;if(name==="cssFloat"){name="float";}
if(hooks&&"get"in hooks&&(ret=hooks.get(elem,true,extra))!==undefined){return ret;}else if(curCSS){return curCSS(elem,name);}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}
callback.call(elem);for(name in options){elem.style[name]=old[name];}}});FlixjQ.curCSS=FlixjQ.css;FlixjQ.each(["height","width"],function(i,name){FlixjQ.cssHooks[name]={get:function(elem,computed,extra){var val;if(computed){if(elem.offsetWidth!==0){return getWH(elem,name,extra);}else{FlixjQ.swap(elem,cssShow,function(){val=getWH(elem,name,extra);});}
return val;}},set:function(elem,value){if(rnumpx.test(value)){value=parseFloat(value);if(value>=0){return value+"px";}}else{return value;}}};});if(!FlixjQ.support.opacity){FlixjQ.cssHooks.opacity={get:function(elem,computed){return ropacity.test((computed&&elem.currentStyle?elem.currentStyle.filter:elem.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":computed?"1":"";},set:function(elem,value){var style=elem.style,currentStyle=elem.currentStyle;style.zoom=1;var opacity=FlixjQ.isNaN(value)?"":"alpha(opacity="+value*100+")",filter=currentStyle&&currentStyle.filter||style.filter||"";style.filter=ralpha.test(filter)?filter.replace(ralpha,opacity):filter+" "+opacity;}};}
FlixjQ(function(){if(!FlixjQ.support.reliableMarginRight){FlixjQ.cssHooks.marginRight={get:function(elem,computed){var ret;FlixjQ.swap(elem,{"display":"inline-block"},function(){if(computed){ret=curCSS(elem,"margin-right","marginRight");}else{ret=elem.style.marginRight;}});return ret;}};}});if(document.defaultView&&document.defaultView.getComputedStyle){getComputedStyle=function(elem,name){var ret,defaultView,computedStyle;name=name.replace(rupper,"-$1").toLowerCase();if(!(defaultView=elem.ownerDocument.defaultView)){return undefined;}
if((computedStyle=defaultView.getComputedStyle(elem,null))){ret=computedStyle.getPropertyValue(name);if(ret===""&&!FlixjQ.contains(elem.ownerDocument.documentElement,elem)){ret=FlixjQ.style(elem,name);}}
return ret;};}
if(document.documentElement.currentStyle){currentStyle=function(elem,name){var left,ret=elem.currentStyle&&elem.currentStyle[name],rsLeft=elem.runtimeStyle&&elem.runtimeStyle[name],style=elem.style;if(!rnumpx.test(ret)&&rnum.test(ret)){left=style.left;if(rsLeft){elem.runtimeStyle.left=elem.currentStyle.left;}
style.left=name==="fontSize"?"1em":(ret||0);ret=style.pixelLeft+"px";style.left=left;if(rsLeft){elem.runtimeStyle.left=rsLeft;}}
return ret===""?"auto":ret;};}
curCSS=getComputedStyle||currentStyle;function getWH(elem,name,extra){var val=name==="width"?elem.offsetWidth:elem.offsetHeight,which=name==="width"?cssWidth:cssHeight;if(val>0){if(extra!=="border"){FlixjQ.each(which,function(){if(!extra){val-=parseFloat(FlixjQ.css(elem,"padding"+this))||0;}
if(extra==="margin"){val+=parseFloat(FlixjQ.css(elem,extra+this))||0;}else{val-=parseFloat(FlixjQ.css(elem,"border"+this+"Width"))||0;}});}
return val+"px";}
val=curCSS(elem,name,name);if(val<0||val==null){val=elem.style[name]||0;}
val=parseFloat(val)||0;if(extra){FlixjQ.each(which,function(){val+=parseFloat(FlixjQ.css(elem,"padding"+this))||0;if(extra!=="padding"){val+=parseFloat(FlixjQ.css(elem,"border"+this+"Width"))||0;}
if(extra==="margin"){val+=parseFloat(FlixjQ.css(elem,extra+this))||0;}});}
return val+"px";}
if(FlixjQ.expr&&FlixjQ.expr.filters){FlixjQ.expr.filters.hidden=function(elem){var width=elem.offsetWidth,height=elem.offsetHeight;return(width===0&&height===0)||(!FlixjQ.support.reliableHiddenOffsets&&(elem.style.display||FlixjQ.css(elem,"display"))==="none");};FlixjQ.expr.filters.visible=function(elem){return!FlixjQ.expr.filters.hidden(elem);};}
var r20=/%20/g,rbracket=/\[\]$/,rCRLF=/\r?\n/g,rhash=/#.*$/,rheaders=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,rinput=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,rlocalProtocol=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,rnoContent=/^(?:GET|HEAD)$/,rprotocol=/^\/\//,rquery=/\?/,rscript=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,rselectTextarea=/^(?:select|textarea)/i,rspacesAjax=/\s+/,rts=/([?&])_=[^&]*/,rurl=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,_load=FlixjQ.fn.load,prefilters={},transports={},ajaxLocation,ajaxLocParts;try{ajaxLocation=location.href;}catch(e){ajaxLocation=document.createElement("a");ajaxLocation.href="";ajaxLocation=ajaxLocation.href;}
ajaxLocParts=rurl.exec(ajaxLocation.toLowerCase())||[];function addToPrefiltersOrTransports(structure){return function(dataTypeExpression,func){if(typeof dataTypeExpression!=="string"){func=dataTypeExpression;dataTypeExpression="*";}
if(FlixjQ.isFunction(func)){var dataTypes=dataTypeExpression.toLowerCase().split(rspacesAjax),i=0,length=dataTypes.length,dataType,list,placeBefore;for(;i<length;i++){dataType=dataTypes[i];placeBefore=/^\+/.test(dataType);if(placeBefore){dataType=dataType.substr(1)||"*";}
list=structure[dataType]=structure[dataType]||[];list[placeBefore?"unshift":"push"](func);}}};}
function inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,dataType,inspected){dataType=dataType||options.dataTypes[0];inspected=inspected||{};inspected[dataType]=true;var list=structure[dataType],i=0,length=list?list.length:0,executeOnly=(structure===prefilters),selection;for(;i<length&&(executeOnly||!selection);i++){selection=list[i](options,originalOptions,jqXHR);if(typeof selection==="string"){if(!executeOnly||inspected[selection]){selection=undefined;}else{options.dataTypes.unshift(selection);selection=inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,selection,inspected);}}}
if((executeOnly||!selection)&&!inspected["*"]){selection=inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,"*",inspected);}
return selection;}
FlixjQ.fn.extend({load:function(url,params,callback){if(typeof url!=="string"&&_load){return _load.apply(this,arguments);}else if(!this.length){return this;}
var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}
var type="GET";if(params){if(FlixjQ.isFunction(params)){callback=params;params=undefined;}else if(typeof params==="object"){params=FlixjQ.param(params,FlixjQ.ajaxSettings.traditional);type="POST";}}
var self=this;FlixjQ.ajax({url:url,type:type,dataType:"html",data:params,complete:function(jqXHR,status,responseText){responseText=jqXHR.responseText;if(jqXHR.isResolved()){jqXHR.done(function(r){responseText=r;});self.html(selector?FlixjQ("<div>").append(responseText.replace(rscript,"")).find(selector):responseText);}
if(callback){self.each(callback,[responseText,status,jqXHR]);}}});return this;},serialize:function(){return FlixjQ.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?FlixjQ.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||rselectTextarea.test(this.nodeName)||rinput.test(this.type));}).map(function(i,elem){var val=FlixjQ(this).val();return val==null?null:FlixjQ.isArray(val)?FlixjQ.map(val,function(val,i){return{name:elem.name,value:val.replace(rCRLF,"\r\n")};}):{name:elem.name,value:val.replace(rCRLF,"\r\n")};}).get();}});FlixjQ.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(i,o){FlixjQ.fn[o]=function(f){return this.bind(o,f);};});FlixjQ.each(["get","post"],function(i,method){FlixjQ[method]=function(url,data,callback,type){if(FlixjQ.isFunction(data)){type=type||callback;callback=data;data=undefined;}
return FlixjQ.ajax({type:method,url:url,data:data,success:callback,dataType:type});};});FlixjQ.extend({getScript:function(url,callback){return FlixjQ.get(url,undefined,callback,"script");},getJSON:function(url,data,callback){return FlixjQ.get(url,data,callback,"json");},ajaxSetup:function(target,settings){if(!settings){settings=target;target=FlixjQ.extend(true,FlixjQ.ajaxSettings,settings);}else{FlixjQ.extend(true,target,FlixjQ.ajaxSettings,settings);}
for(var field in{context:1,url:1}){if(field in settings){target[field]=settings[field];}else if(field in FlixjQ.ajaxSettings){target[field]=FlixjQ.ajaxSettings[field];}}
return target;},ajaxSettings:{url:ajaxLocation,isLocal:rlocalProtocol.test(ajaxLocParts[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":window.String,"text html":true,"text json":FlixjQ.parseJSON,"text xml":FlixjQ.parseXML}},ajaxPrefilter:addToPrefiltersOrTransports(prefilters),ajaxTransport:addToPrefiltersOrTransports(transports),ajax:function(url,options){if(typeof url==="object"){options=url;url=undefined;}
options=options||{};var
s=FlixjQ.ajaxSetup({},options),callbackContext=s.context||s,globalEventContext=callbackContext!==s&&(callbackContext.nodeType||callbackContext instanceof FlixjQ)?FlixjQ(callbackContext):FlixjQ.event,deferred=FlixjQ.Deferred(),completeDeferred=FlixjQ._Deferred(),statusCode=s.statusCode||{},ifModifiedKey,requestHeaders={},requestHeadersNames={},responseHeadersString,responseHeaders,transport,timeoutTimer,parts,state=0,fireGlobals,i,jqXHR={readyState:0,setRequestHeader:function(name,value){if(!state){var lname=name.toLowerCase();name=requestHeadersNames[lname]=requestHeadersNames[lname]||name;requestHeaders[name]=value;}
return this;},getAllResponseHeaders:function(){return state===2?responseHeadersString:null;},getResponseHeader:function(key){var match;if(state===2){if(!responseHeaders){responseHeaders={};while((match=rheaders.exec(responseHeadersString))){responseHeaders[match[1].toLowerCase()]=match[2];}}
match=responseHeaders[key.toLowerCase()];}
return match===undefined?null:match;},overrideMimeType:function(type){if(!state){s.mimeType=type;}
return this;},abort:function(statusText){statusText=statusText||"abort";if(transport){transport.abort(statusText);}
done(0,statusText);return this;}};function done(status,statusText,responses,headers){if(state===2){return;}
state=2;if(timeoutTimer){clearTimeout(timeoutTimer);}
transport=undefined;responseHeadersString=headers||"";jqXHR.readyState=status?4:0;var isSuccess,success,error,response=responses?ajaxHandleResponses(s,jqXHR,responses):undefined,lastModified,etag;if(status>=200&&status<300||status===304){if(s.ifModified){if((lastModified=jqXHR.getResponseHeader("Last-Modified"))){FlixjQ.lastModified[ifModifiedKey]=lastModified;}
if((etag=jqXHR.getResponseHeader("Etag"))){FlixjQ.etag[ifModifiedKey]=etag;}}
if(status===304){statusText="notmodified";isSuccess=true;}else{try{success=ajaxConvert(s,response);statusText="success";isSuccess=true;}catch(e){statusText="parsererror";error=e;}}}else{error=statusText;if(!statusText||status){statusText="error";if(status<0){status=0;}}}
jqXHR.status=status;jqXHR.statusText=statusText;if(isSuccess){deferred.resolveWith(callbackContext,[success,statusText,jqXHR]);}else{deferred.rejectWith(callbackContext,[jqXHR,statusText,error]);}
jqXHR.statusCode(statusCode);statusCode=undefined;if(fireGlobals){globalEventContext.trigger("ajax"+(isSuccess?"Success":"Error"),[jqXHR,s,isSuccess?success:error]);}
completeDeferred.resolveWith(callbackContext,[jqXHR,statusText]);if(fireGlobals){globalEventContext.trigger("ajaxComplete",[jqXHR,s]);if(!(--FlixjQ.active)){FlixjQ.event.trigger("ajaxStop");}}}
deferred.promise(jqXHR);jqXHR.success=jqXHR.done;jqXHR.error=jqXHR.fail;jqXHR.complete=completeDeferred.done;jqXHR.statusCode=function(map){if(map){var tmp;if(state<2){for(tmp in map){statusCode[tmp]=[statusCode[tmp],map[tmp]];}}else{tmp=map[jqXHR.status];jqXHR.then(tmp,tmp);}}
return this;};s.url=((url||s.url)+"").replace(rhash,"").replace(rprotocol,ajaxLocParts[1]+"//");s.dataTypes=FlixjQ.trim(s.dataType||"*").toLowerCase().split(rspacesAjax);if(s.crossDomain==null){parts=rurl.exec(s.url.toLowerCase());s.crossDomain=!!(parts&&(parts[1]!=ajaxLocParts[1]||parts[2]!=ajaxLocParts[2]||(parts[3]||(parts[1]==="http:"?80:443))!=(ajaxLocParts[3]||(ajaxLocParts[1]==="http:"?80:443))));}
if(s.data&&s.processData&&typeof s.data!=="string"){s.data=FlixjQ.param(s.data,s.traditional);}
inspectPrefiltersOrTransports(prefilters,s,options,jqXHR);if(state===2){return false;}
fireGlobals=s.global;s.type=s.type.toUpperCase();s.hasContent=!rnoContent.test(s.type);if(fireGlobals&&FlixjQ.active++===0){FlixjQ.event.trigger("ajaxStart");}
if(!s.hasContent){if(s.data){s.url+=(rquery.test(s.url)?"&":"?")+s.data;}
ifModifiedKey=s.url;if(s.cache===false){var ts=FlixjQ.now(),ret=s.url.replace(rts,"$1_="+ts);s.url=ret+((ret===s.url)?(rquery.test(s.url)?"&":"?")+"_="+ts:"");}}
if(s.data&&s.hasContent&&s.contentType!==false||options.contentType){jqXHR.setRequestHeader("Content-Type",s.contentType);}
if(s.ifModified){ifModifiedKey=ifModifiedKey||s.url;if(FlixjQ.lastModified[ifModifiedKey]){jqXHR.setRequestHeader("If-Modified-Since",FlixjQ.lastModified[ifModifiedKey]);}
if(FlixjQ.etag[ifModifiedKey]){jqXHR.setRequestHeader("If-None-Match",FlixjQ.etag[ifModifiedKey]);}}
jqXHR.setRequestHeader("Accept",s.dataTypes[0]&&s.accepts[s.dataTypes[0]]?s.accepts[s.dataTypes[0]]+(s.dataTypes[0]!=="*"?", */*; q=0.01":""):s.accepts["*"]);for(i in s.headers){jqXHR.setRequestHeader(i,s.headers[i]);}
if(s.beforeSend&&(s.beforeSend.call(callbackContext,jqXHR,s)===false||state===2)){jqXHR.abort();return false;}
for(i in{success:1,error:1,complete:1}){jqXHR[i](s[i]);}
transport=inspectPrefiltersOrTransports(transports,s,options,jqXHR);if(!transport){done(-1,"No Transport");}else{jqXHR.readyState=1;if(fireGlobals){globalEventContext.trigger("ajaxSend",[jqXHR,s]);}
if(s.async&&s.timeout>0){timeoutTimer=setTimeout(function(){jqXHR.abort("timeout");},s.timeout);}
try{state=1;transport.send(requestHeaders,done);}catch(e){if(status<2){done(-1,e);}else{FlixjQ.error(e);}}}
return jqXHR;},param:function(a,traditional){var s=[],add=function(key,value){value=FlixjQ.isFunction(value)?value():value;s[s.length]=encodeURIComponent(key)+"="+encodeURIComponent(value);};if(traditional===undefined){traditional=FlixjQ.ajaxSettings.traditional;}
if(FlixjQ.isArray(a)||(a.FlixjQ&&!FlixjQ.isPlainObject(a))){FlixjQ.each(a,function(){add(this.name,this.value);});}else{for(var prefix in a){buildParams(prefix,a[prefix],traditional,add);}}
return s.join("&").replace(r20,"+");}});function buildParams(prefix,obj,traditional,add){if(FlixjQ.isArray(obj)){FlixjQ.each(obj,function(i,v){if(traditional||rbracket.test(prefix)){add(prefix,v);}else{buildParams(prefix+"["+(typeof v==="object"||FlixjQ.isArray(v)?i:"")+"]",v,traditional,add);}});}else if(!traditional&&obj!=null&&typeof obj==="object"){for(var name in obj){buildParams(prefix+"["+name+"]",obj[name],traditional,add);}}else{add(prefix,obj);}}
FlixjQ.extend({active:0,lastModified:{},etag:{}});function ajaxHandleResponses(s,jqXHR,responses){var contents=s.contents,dataTypes=s.dataTypes,responseFields=s.responseFields,ct,type,finalDataType,firstDataType;for(type in responseFields){if(type in responses){jqXHR[responseFields[type]]=responses[type];}}
while(dataTypes[0]==="*"){dataTypes.shift();if(ct===undefined){ct=s.mimeType||jqXHR.getResponseHeader("content-type");}}
if(ct){for(type in contents){if(contents[type]&&contents[type].test(ct)){dataTypes.unshift(type);break;}}}
if(dataTypes[0]in responses){finalDataType=dataTypes[0];}else{for(type in responses){if(!dataTypes[0]||s.converters[type+" "+dataTypes[0]]){finalDataType=type;break;}
if(!firstDataType){firstDataType=type;}}
finalDataType=finalDataType||firstDataType;}
if(finalDataType){if(finalDataType!==dataTypes[0]){dataTypes.unshift(finalDataType);}
return responses[finalDataType];}}
function ajaxConvert(s,response){if(s.dataFilter){response=s.dataFilter(response,s.dataType);}
var dataTypes=s.dataTypes,converters={},i,key,length=dataTypes.length,tmp,current=dataTypes[0],prev,conversion,conv,conv1,conv2;for(i=1;i<length;i++){if(i===1){for(key in s.converters){if(typeof key==="string"){converters[key.toLowerCase()]=s.converters[key];}}}
prev=current;current=dataTypes[i];if(current==="*"){current=prev;}else if(prev!=="*"&&prev!==current){conversion=prev+" "+current;conv=converters[conversion]||converters["* "+current];if(!conv){conv2=undefined;for(conv1 in converters){tmp=conv1.split(" ");if(tmp[0]===prev||tmp[0]==="*"){conv2=converters[tmp[1]+" "+current];if(conv2){conv1=converters[conv1];if(conv1===true){conv=conv2;}else if(conv2===true){conv=conv1;}
break;}}}}
if(!(conv||conv2)){FlixjQ.error("No conversion from "+conversion.replace(" "," to "));}
if(conv!==true){response=conv?conv(response):conv2(conv1(response));}}}
return response;}
var jsc=FlixjQ.now(),jsre=/(\=)\?(&|$)|\?\?/i;FlixjQ.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return FlixjQ.expando+"_"+(jsc++);}});FlixjQ.ajaxPrefilter("json jsonp",function(s,originalSettings,jqXHR){var inspectData=s.contentType==="application/x-www-form-urlencoded"&&(typeof s.data==="string");if(s.dataTypes[0]==="jsonp"||s.jsonp!==false&&(jsre.test(s.url)||inspectData&&jsre.test(s.data))){var responseContainer,jsonpCallback=s.jsonpCallback=FlixjQ.isFunction(s.jsonpCallback)?s.jsonpCallback():s.jsonpCallback,previous=window[jsonpCallback],url=s.url,data=s.data,replace="$1"+jsonpCallback+"$2";if(s.jsonp!==false){url=url.replace(jsre,replace);if(s.url===url){if(inspectData){data=data.replace(jsre,replace);}
if(s.data===data){url+=(/\?/.test(url)?"&":"?")+s.jsonp+"="+jsonpCallback;}}}
s.url=url;s.data=data;window[jsonpCallback]=function(response){responseContainer=[response];};jqXHR.always(function(){window[jsonpCallback]=previous;if(responseContainer&&FlixjQ.isFunction(previous)){window[jsonpCallback](responseContainer[0]);}});s.converters["script json"]=function(){if(!responseContainer){FlixjQ.error(jsonpCallback+" was not called");}
return responseContainer[0];};s.dataTypes[0]="json";return"script";}});FlixjQ.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(text){FlixjQ.globalEval(text);return text;}}});FlixjQ.ajaxPrefilter("script",function(s){if(s.cache===undefined){s.cache=false;}
if(s.crossDomain){s.type="GET";s.global=false;}});FlixjQ.ajaxTransport("script",function(s){if(s.crossDomain){var script,head=document.head||document.getElementsByTagName("head")[0]||document.documentElement;return{send:function(_,callback){script=document.createElement("script");script.async="async";if(s.scriptCharset){script.charset=s.scriptCharset;}
script.src=s.url;script.onload=script.onreadystatechange=function(_,isAbort){if(isAbort||!script.readyState||/loaded|complete/.test(script.readyState)){script.onload=script.onreadystatechange=null;if(head&&script.parentNode){head.removeChild(script);}
script=undefined;if(!isAbort){callback(200,"success");}}};head.insertBefore(script,head.firstChild);},abort:function(){if(script){script.onload(0,1);}}};}});var
xhrOnUnloadAbort=window.ActiveXObject?function(){for(var key in xhrCallbacks){xhrCallbacks[key](0,1);}}:false,xhrId=0,xhrCallbacks;function createStandardXHR(){try{return new window.XMLHttpRequest();}catch(e){}}
function createActiveXHR(){try{return new window.ActiveXObject("Microsoft.XMLHTTP");}catch(e){}}
FlixjQ.ajaxSettings.xhr=window.ActiveXObject?function(){return!this.isLocal&&createStandardXHR()||createActiveXHR();}:createStandardXHR;(function(xhr){FlixjQ.extend(FlixjQ.support,{ajax:!!xhr,cors:!!xhr&&("withCredentials"in xhr)});})(FlixjQ.ajaxSettings.xhr());if(FlixjQ.support.ajax){FlixjQ.ajaxTransport(function(s){if(!s.crossDomain||FlixjQ.support.cors){var callback;return{send:function(headers,complete){var xhr=s.xhr(),handle,i;if(s.username){xhr.open(s.type,s.url,s.async,s.username,s.password);}else{xhr.open(s.type,s.url,s.async);}
if(s.xhrFields){for(i in s.xhrFields){xhr[i]=s.xhrFields[i];}}
if(s.mimeType&&xhr.overrideMimeType){xhr.overrideMimeType(s.mimeType);}
if(!s.crossDomain&&!headers["X-Requested-With"]){headers["X-Requested-With"]="XMLHttpRequest";}
try{for(i in headers){xhr.setRequestHeader(i,headers[i]);}}catch(_){}
xhr.send((s.hasContent&&s.data)||null);callback=function(_,isAbort){var status,statusText,responseHeaders,responses,xml;try{if(callback&&(isAbort||xhr.readyState===4)){callback=undefined;if(handle){xhr.onreadystatechange=FlixjQ.noop;if(xhrOnUnloadAbort){delete xhrCallbacks[handle];}}
if(isAbort){if(xhr.readyState!==4){xhr.abort();}}else{status=xhr.status;responseHeaders=xhr.getAllResponseHeaders();responses={};xml=xhr.responseXML;if(xml&&xml.documentElement){responses.xml=xml;}
responses.text=xhr.responseText;try{statusText=xhr.statusText;}catch(e){statusText="";}
if(!status&&s.isLocal&&!s.crossDomain){status=responses.text?200:404;}else if(status===1223){status=204;}}}}catch(firefoxAccessException){if(!isAbort){complete(-1,firefoxAccessException);}}
if(responses){complete(status,statusText,responses,responseHeaders);}};if(!s.async||xhr.readyState===4){callback();}else{handle=++xhrId;if(xhrOnUnloadAbort){if(!xhrCallbacks){xhrCallbacks={};FlixjQ(window).unload(xhrOnUnloadAbort);}
xhrCallbacks[handle]=callback;}
xhr.onreadystatechange=callback;}},abort:function(){if(callback){callback(0,1);}}};}});}
var elemdisplay={},iframe,iframeDoc,rfxtypes=/^(?:toggle|show|hide)$/,rfxnum=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],fxNow,requestAnimationFrame=window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame;FlixjQ.fn.extend({show:function(speed,easing,callback){var elem,display;if(speed||speed===0){return this.animate(genFx("show",3),speed,easing,callback);}else{for(var i=0,j=this.length;i<j;i++){elem=this[i];if(elem.style){display=elem.style.display;if(!FlixjQ._data(elem,"olddisplay")&&display==="none"){display=elem.style.display="";}
if(display===""&&FlixjQ.css(elem,"display")==="none"){FlixjQ._data(elem,"olddisplay",defaultDisplay(elem.nodeName));}}}
for(i=0;i<j;i++){elem=this[i];if(elem.style){display=elem.style.display;if(display===""||display==="none"){elem.style.display=FlixjQ._data(elem,"olddisplay")||"";}}}
return this;}},hide:function(speed,easing,callback){if(speed||speed===0){return this.animate(genFx("hide",3),speed,easing,callback);}else{for(var i=0,j=this.length;i<j;i++){if(this[i].style){var display=FlixjQ.css(this[i],"display");if(display!=="none"&&!FlixjQ._data(this[i],"olddisplay")){FlixjQ._data(this[i],"olddisplay",display);}}}
for(i=0;i<j;i++){if(this[i].style){this[i].style.display="none";}}
return this;}},_toggle:FlixjQ.fn.toggle,toggle:function(fn,fn2,callback){var bool=typeof fn==="boolean";if(FlixjQ.isFunction(fn)&&FlixjQ.isFunction(fn2)){this._toggle.apply(this,arguments);}else if(fn==null||bool){this.each(function(){var state=bool?fn:FlixjQ(this).is(":hidden");FlixjQ(this)[state?"show":"hide"]();});}else{this.animate(genFx("toggle",3),fn,fn2,callback);}
return this;},fadeTo:function(speed,to,easing,callback){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:to},speed,easing,callback);},animate:function(prop,speed,easing,callback){var optall=FlixjQ.speed(speed,easing,callback);if(FlixjQ.isEmptyObject(prop)){return this.each(optall.complete,[false]);}
prop=FlixjQ.extend({},prop);return this[optall.queue===false?"each":"queue"](function(){if(optall.queue===false){FlixjQ._mark(this);}
var opt=FlixjQ.extend({},optall),isElement=this.nodeType===1,hidden=isElement&&FlixjQ(this).is(":hidden"),name,val,p,display,e,parts,start,end,unit;opt.animatedProperties={};for(p in prop){name=FlixjQ.camelCase(p);if(p!==name){prop[name]=prop[p];delete prop[p];}
val=prop[name];if(FlixjQ.isArray(val)){opt.animatedProperties[name]=val[1];val=prop[name]=val[0];}else{opt.animatedProperties[name]=opt.specialEasing&&opt.specialEasing[name]||opt.easing||'swing';}
if(val==="hide"&&hidden||val==="show"&&!hidden){return opt.complete.call(this);}
if(isElement&&(name==="height"||name==="width")){opt.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(FlixjQ.css(this,"display")==="inline"&&FlixjQ.css(this,"float")==="none"){if(!FlixjQ.support.inlineBlockNeedsLayout){this.style.display="inline-block";}else{display=defaultDisplay(this.nodeName);if(display==="inline"){this.style.display="inline-block";}else{this.style.display="inline";this.style.zoom=1;}}}}}
if(opt.overflow!=null){this.style.overflow="hidden";}
for(p in prop){e=new FlixjQ.fx(this,opt,p);val=prop[p];if(rfxtypes.test(val)){e[val==="toggle"?hidden?"show":"hide":val]();}else{parts=rfxnum.exec(val);start=e.cur();if(parts){end=parseFloat(parts[2]);unit=parts[3]||(FlixjQ.cssNumber[p]?"":"px");if(unit!=="px"){FlixjQ.style(this,p,(end||1)+unit);start=((end||1)/e.cur())*start;FlixjQ.style(this,p,start+unit);}
if(parts[1]){end=((parts[1]==="-="?-1:1)*end)+start;}
e.custom(start,end,unit);}else{e.custom(start,val,"");}}}
return true;});},stop:function(clearQueue,gotoEnd){if(clearQueue){this.queue([]);}
this.each(function(){var timers=FlixjQ.timers,i=timers.length;if(!gotoEnd){FlixjQ._unmark(true,this);}
while(i--){if(timers[i].elem===this){if(gotoEnd){timers[i](true);}
timers.splice(i,1);}}});if(!gotoEnd){this.dequeue();}
return this;}});function createFxNow(){setTimeout(clearFxNow,0);return(fxNow=FlixjQ.now());}
function clearFxNow(){fxNow=undefined;}
function genFx(type,num){var obj={};FlixjQ.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;}
FlixjQ.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(name,props){FlixjQ.fn[name]=function(speed,easing,callback){return this.animate(props,speed,easing,callback);};});FlixjQ.extend({speed:function(speed,easing,fn){var opt=speed&&typeof speed==="object"?FlixjQ.extend({},speed):{complete:fn||!fn&&easing||FlixjQ.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!FlixjQ.isFunction(easing)&&easing};opt.duration=FlixjQ.fx.off?0:typeof opt.duration==="number"?opt.duration:opt.duration in FlixjQ.fx.speeds?FlixjQ.fx.speeds[opt.duration]:FlixjQ.fx.speeds._default;opt.old=opt.complete;opt.complete=function(noUnmark){if(FlixjQ.isFunction(opt.old)){opt.old.call(this);}
if(opt.queue!==false){FlixjQ.dequeue(this);}else if(noUnmark!==false){FlixjQ._unmark(this);}};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;options.orig=options.orig||{};}});FlixjQ.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this);}
(FlixjQ.fx.step[this.prop]||FlixjQ.fx.step._default)(this);},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop];}
var parsed,r=FlixjQ.css(this.elem,this.prop);return isNaN(parsed=parseFloat(r))?!r||r==="auto"?0:r:parsed;},custom:function(from,to,unit){var self=this,fx=FlixjQ.fx,raf;this.startTime=fxNow||createFxNow();this.start=from;this.end=to;this.unit=unit||this.unit||(FlixjQ.cssNumber[this.prop]?"":"px");this.now=this.start;this.pos=this.state=0;function t(gotoEnd){return self.step(gotoEnd);}
t.elem=this.elem;if(t()&&FlixjQ.timers.push(t)&&!timerId){if(requestAnimationFrame){timerId=true;raf=function(){if(timerId){requestAnimationFrame(raf);fx.tick();}};requestAnimationFrame(raf);}else{timerId=setInterval(fx.tick,fx.interval);}}},show:function(){this.options.orig[this.prop]=FlixjQ.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());FlixjQ(this.elem).show();},hide:function(){this.options.orig[this.prop]=FlixjQ.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=fxNow||createFxNow(),done=true,elem=this.elem,options=this.options,i,n;if(gotoEnd||t>=options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();options.animatedProperties[this.prop]=true;for(i in options.animatedProperties){if(options.animatedProperties[i]!==true){done=false;}}
if(done){if(options.overflow!=null&&!FlixjQ.support.shrinkWrapBlocks){FlixjQ.each(["","X","Y"],function(index,value){elem.style["overflow"+value]=options.overflow[index];});}
if(options.hide){FlixjQ(elem).hide();}
if(options.hide||options.show){for(var p in options.animatedProperties){FlixjQ.style(elem,p,options.orig[p]);}}
options.complete.call(elem);}
return false;}else{if(options.duration==Infinity){this.now=t;}else{n=t-this.startTime;this.state=n/options.duration;this.pos=FlixjQ.easing[options.animatedProperties[this.prop]](this.state,n,0,1,options.duration);this.now=this.start+((this.end-this.start)*this.pos);}
this.update();}
return true;}};FlixjQ.extend(FlixjQ.fx,{tick:function(){for(var timers=FlixjQ.timers,i=0;i<timers.length;++i){if(!timers[i]()){timers.splice(i--,1);}}
if(!timers.length){FlixjQ.fx.stop();}},interval:13,stop:function(){clearInterval(timerId);timerId=null;},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){FlixjQ.style(fx.elem,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null){fx.elem.style[fx.prop]=(fx.prop==="width"||fx.prop==="height"?Math.max(0,fx.now):fx.now)+fx.unit;}else{fx.elem[fx.prop]=fx.now;}}}});if(FlixjQ.expr&&FlixjQ.expr.filters){FlixjQ.expr.filters.animated=function(elem){return FlixjQ.grep(FlixjQ.timers,function(fn){return elem===fn.elem;}).length;};}
function defaultDisplay(nodeName){if(!elemdisplay[nodeName]){var body=document.body,elem=FlixjQ("<"+nodeName+">").appendTo(body),display=elem.css("display");elem.remove();if(display==="none"||display===""){if(!iframe){iframe=document.createElement("iframe");iframe.frameBorder=iframe.width=iframe.height=0;}
body.appendChild(iframe);if(!iframeDoc||!iframe.createElement){iframeDoc=(iframe.contentWindow||iframe.contentDocument).document;iframeDoc.write((document.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>");iframeDoc.close();}
elem=iframeDoc.createElement(nodeName);iframeDoc.body.appendChild(elem);display=FlixjQ.css(elem,"display");body.removeChild(iframe);}
elemdisplay[nodeName]=display;}
return elemdisplay[nodeName];}
var rtable=/^t(?:able|d|h)$/i,rroot=/^(?:body|html)$/i;if("getBoundingClientRect"in document.documentElement){FlixjQ.fn.offset=function(options){var elem=this[0],box;if(options){return this.each(function(i){FlixjQ.offset.setOffset(this,options,i);});}
if(!elem||!elem.ownerDocument){return null;}
if(elem===elem.ownerDocument.body){return FlixjQ.offset.bodyOffset(elem);}
try{box=elem.getBoundingClientRect();}catch(e){}
var doc=elem.ownerDocument,docElem=doc.documentElement;if(!box||!FlixjQ.contains(docElem,elem)){return box?{top:box.top,left:box.left}:{top:0,left:0};}
var body=doc.body,win=getWindow(doc),clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,scrollTop=win.pageYOffset||FlixjQ.support.boxModel&&docElem.scrollTop||body.scrollTop,scrollLeft=win.pageXOffset||FlixjQ.support.boxModel&&docElem.scrollLeft||body.scrollLeft,top=box.top+scrollTop-clientTop,left=box.left+scrollLeft-clientLeft;return{top:top,left:left};};}else{FlixjQ.fn.offset=function(options){var elem=this[0];if(options){return this.each(function(i){FlixjQ.offset.setOffset(this,options,i);});}
if(!elem||!elem.ownerDocument){return null;}
if(elem===elem.ownerDocument.body){return FlixjQ.offset.bodyOffset(elem);}
FlixjQ.offset.initialize();var computedStyle,offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle,top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){if(FlixjQ.offset.supportsFixedPosition&&prevComputedStyle.position==="fixed"){break;}
computedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle;top-=elem.scrollTop;left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop;left+=elem.offsetLeft;if(FlixjQ.offset.doesNotAddBorder&&!(FlixjQ.offset.doesAddBorderForTableAndCells&&rtable.test(elem.nodeName))){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;}
prevOffsetParent=offsetParent;offsetParent=elem.offsetParent;}
if(FlixjQ.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible"){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;}
prevComputedStyle=computedStyle;}
if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static"){top+=body.offsetTop;left+=body.offsetLeft;}
if(FlixjQ.offset.supportsFixedPosition&&prevComputedStyle.position==="fixed"){top+=Math.max(docElem.scrollTop,body.scrollTop);left+=Math.max(docElem.scrollLeft,body.scrollLeft);}
return{top:top,left:left};};}
FlixjQ.offset={initialize:function(){var body=document.body,container=document.createElement("div"),innerDiv,checkDiv,table,td,bodyMarginTop=parseFloat(FlixjQ.css(body,"marginTop"))||0,html="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";FlixjQ.extend(container.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild;checkDiv=innerDiv.firstChild;td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);checkDiv.style.position="fixed";checkDiv.style.top="20px";this.supportsFixedPosition=(checkDiv.offsetTop===20||checkDiv.offsetTop===15);checkDiv.style.position=checkDiv.style.top="";innerDiv.style.overflow="hidden";innerDiv.style.position="relative";this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);this.doesNotIncludeMarginInBodyOffset=(body.offsetTop!==bodyMarginTop);body.removeChild(container);FlixjQ.offset.initialize=FlixjQ.noop;},bodyOffset:function(body){var top=body.offsetTop,left=body.offsetLeft;FlixjQ.offset.initialize();if(FlixjQ.offset.doesNotIncludeMarginInBodyOffset){top+=parseFloat(FlixjQ.css(body,"marginTop"))||0;left+=parseFloat(FlixjQ.css(body,"marginLeft"))||0;}
return{top:top,left:left};},setOffset:function(elem,options,i){var position=FlixjQ.css(elem,"position");if(position==="static"){elem.style.position="relative";}
var curElem=FlixjQ(elem),curOffset=curElem.offset(),curCSSTop=FlixjQ.css(elem,"top"),curCSSLeft=FlixjQ.css(elem,"left"),calculatePosition=(position==="absolute"||position==="fixed")&&FlixjQ.inArray("auto",[curCSSTop,curCSSLeft])>-1,props={},curPosition={},curTop,curLeft;if(calculatePosition){curPosition=curElem.position();curTop=curPosition.top;curLeft=curPosition.left;}else{curTop=parseFloat(curCSSTop)||0;curLeft=parseFloat(curCSSLeft)||0;}
if(FlixjQ.isFunction(options)){options=options.call(elem,i,curOffset);}
if(options.top!=null){props.top=(options.top-curOffset.top)+curTop;}
if(options.left!=null){props.left=(options.left-curOffset.left)+curLeft;}
if("using"in options){options.using.call(elem,props);}else{curElem.css(props);}}};FlixjQ.fn.extend({position:function(){if(!this[0]){return null;}
var elem=this[0],offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=rroot.test(offsetParent[0].nodeName)?{top:0,left:0}:offsetParent.offset();offset.top-=parseFloat(FlixjQ.css(elem,"marginTop"))||0;offset.left-=parseFloat(FlixjQ.css(elem,"marginLeft"))||0;parentOffset.top+=parseFloat(FlixjQ.css(offsetParent[0],"borderTopWidth"))||0;parentOffset.left+=parseFloat(FlixjQ.css(offsetParent[0],"borderLeftWidth"))||0;return{top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};},offsetParent:function(){return this.map(function(){var offsetParent=this.offsetParent||document.body;while(offsetParent&&(!rroot.test(offsetParent.nodeName)&&FlixjQ.css(offsetParent,"position")==="static")){offsetParent=offsetParent.offsetParent;}
return offsetParent;});}});FlixjQ.each(["Left","Top"],function(i,name){var method="scroll"+name;FlixjQ.fn[method]=function(val){var elem,win;if(val===undefined){elem=this[0];if(!elem){return null;}
win=getWindow(elem);return win?("pageXOffset"in win)?win[i?"pageYOffset":"pageXOffset"]:FlixjQ.support.boxModel&&win.document.documentElement[method]||win.document.body[method]:elem[method];}
return this.each(function(){win=getWindow(this);if(win){win.scrollTo(!i?val:FlixjQ(win).scrollLeft(),i?val:FlixjQ(win).scrollTop());}else{this[method]=val;}});};});function getWindow(elem){return FlixjQ.isWindow(elem)?elem:elem.nodeType===9?elem.defaultView||elem.parentWindow:false;}
FlixjQ.each(["Height","Width"],function(i,name){var type=name.toLowerCase();FlixjQ.fn["inner"+name]=function(){var elem=this[0];return elem&&elem.style?parseFloat(FlixjQ.css(elem,type,"padding")):null;};FlixjQ.fn["outer"+name]=function(margin){var elem=this[0];return elem&&elem.style?parseFloat(FlixjQ.css(elem,type,margin?"margin":"border")):null;};FlixjQ.fn[type]=function(size){var elem=this[0];if(!elem){return size==null?null:this;}
if(FlixjQ.isFunction(size)){return this.each(function(i){var self=FlixjQ(this);self[type](size.call(this,i,self[type]()));});}
if(FlixjQ.isWindow(elem)){var docElemProp=elem.document.documentElement["client"+name];return elem.document.compatMode==="CSS1Compat"&&docElemProp||elem.document.body["client"+name]||docElemProp;}else if(elem.nodeType===9){return Math.max(elem.documentElement["client"+name],elem.body["scroll"+name],elem.documentElement["scroll"+name],elem.body["offset"+name],elem.documentElement["offset"+name]);}else if(size===undefined){var orig=FlixjQ.css(elem,type),ret=parseFloat(orig);return FlixjQ.isNaN(ret)?orig:ret;}else{return this.css(type,typeof size==="string"?size:size+"px");}};});window.FlixjQ=FlixjQ;}})(window);;(function($){$.fn.extend({actual:function(method,options){var $hidden,$target,configs,css,tmp,actual,fix,restore;if(!this[method]){throw'$.actual => The jQuery method "'+method+'" you called does not exist';}
configs=$.extend({absolute:false,clone:false,includeMargin:undefined},options);$target=this;if(configs.clone===true){fix=function(){$target=$target.filter(':first').clone().css({position:'absolute',top:-1000}).appendTo('body');};restore=function(){$target.remove();};}else{fix=function(){$hidden=$target.parents().andSelf().filter(':hidden');css=configs.absolute===true?{position:'absolute',visibility:'hidden',display:'block'}:{visibility:'hidden',display:'block'};tmp=[];$hidden.each(function(){var _tmp={},name;for(name in css){_tmp[name]=this.style[name];this.style[name]=css[name];}
tmp.push(_tmp);});};restore=function(){$hidden.each(function(i){var _tmp=tmp[i],name;for(name in css){this.style[name]=_tmp[name];}});};}
fix();actual=/(outer)/g.test(method)?$target[method](configs.includeMargin):$target[method]();restore();return actual;}});})(FlixjQ);(function(g){var q={vertical:!1,rtl:!1,start:1,offset:1,size:null,scroll:3,visible:null,animation:"normal",easing:"swing",auto:0,wrap:null,initCallback:null,setupCallback:null,reloadCallback:null,itemLoadCallback:null,itemFirstInCallback:null,itemFirstOutCallback:null,itemLastInCallback:null,itemLastOutCallback:null,itemVisibleInCallback:function(carousel,item,idx,state){FlixjQ(item).addClass('flix-visible-item');FlixjQ(item).find('a').attr('aria-hidden','false').attr('tabindex',0);},itemVisibleOutCallback:function(carousel,item,idx,state){FlixjQ(item).removeClass('flix-visible-item');FlixjQ(item).find('a').attr('aria-hidden','true').attr('tabindex',-1);},animationStepCallback:null,buttonNextHTML:"<div aria-label='Next Image' role='button' tabindex='0'></div>",buttonPrevHTML:"<div aria-label='Previous Image' role='button' tabindex='0'></div>",buttonNextEvent:"click",buttonPrevEvent:"click",buttonNextCallback:null,buttonPrevCallback:null,itemFallbackDimension:null},m=!1;g(window).bind("load.jcarousel",function(){m=!0});g.jcarousel=function(a,c){this.options=g.extend({},q,c||{});this.autoStopped=this.locked=!1;this.buttonPrevState=this.buttonNextState=this.buttonPrev=this.buttonNext=this.list=this.clip=this.container=null;if(!c||c.rtl===void 0)this.options.rtl=(g(a).attr("dir")||g("html").attr("dir")||"").toLowerCase()=="rtl";this.wh=!this.options.vertical?"width":"height";this.lt=!this.options.vertical?this.options.rtl?"right":"left":"top";for(var b="",d=a.className.split(" "),f=0;f<d.length;f++)if(d[f].indexOf("jcarousel-skin")!=-1){g(a).removeClass(d[f]);b=d[f];break}a.nodeName.toUpperCase()=="UL"||a.nodeName.toUpperCase()=="OL"?(this.list=g(a),this.clip=this.list.parents(".jcarousel-clip"),this.container=this.list.parents(".jcarousel-container")):(this.container=g(a),this.list=this.container.find("ul,ol").eq(0),this.clip=this.container.find(".jcarousel-clip"));if(this.clip.length===0)this.clip=this.list.wrap("<div></div>").parent();if(this.container.length===0)this.container=this.clip.wrap("<div></div>").parent();b!==""&&this.container.parent()[0].className.indexOf("jcarousel-skin")==-1&&this.container.wrap('<div class=" '+b+'"></div>');this.buttonPrev=g(".jcarousel-prev",this.container);if(this.buttonPrev.length===0&&this.options.buttonPrevHTML!==null)this.buttonPrev=g(this.options.buttonPrevHTML).appendTo(this.container);this.buttonPrev.addClass(this.className("flixkeycode jcarousel-prev"));this.buttonNext=g(".jcarousel-next",this.container);if(this.buttonNext.length===0&&this.options.buttonNextHTML!==null)this.buttonNext=g(this.options.buttonNextHTML).appendTo(this.container);this.buttonNext.addClass(this.className("flixkeycode jcarousel-next"));this.clip.addClass(this.className("jcarousel-clip")).css({position:"relative"});this.list.addClass(this.className("jcarousel-list")).css({overflow:"hidden",position:"relative",top:0,margin:0,padding:0}).css(this.options.rtl?"right":"left",0);this.container.addClass(this.className("jcarousel-container")).css({position:"relative"});!this.options.vertical&&this.options.rtl&&this.container.addClass("jcarousel-direction-rtl").attr("dir","rtl");var j=this.options.visible!==null?Math.ceil(this.clipping()/this.options.visible):null,b=this.list.children("li"),e=this;if(b.length>0){var h=0,i=this.options.offset;b.each(function(){e.format(this,i++);h+=e.dimension(this,j)});this.list.css(this.wh,h+100+"px");if(!c||c.size===void 0)this.options.size=b.length}this.container.css("display","block");this.buttonNext.css("display","block");this.buttonPrev.css("display","block");this.buttonNext.attr("data-flix-media",'next');this.buttonPrev.attr("data-flix-media",'previous');this.funcNext=function(){e.next()};this.funcPrev=function(){e.prev()};this.funcResize=function(){e.resizeTimer&&clearTimeout(e.resizeTimer);e.resizeTimer=setTimeout(function(){e.reload()},100)};this.options.initCallback!==null&&this.options.initCallback(this,"init");e.setup();};var f=g.jcarousel;f.fn=f.prototype={jcarousel:"0.2.8"};f.fn.extend=f.extend=g.extend;f.fn.extend({setup:function(){this.prevLast=this.prevFirst=this.last=this.first=null;this.animating=!1;this.tail=this.resizeTimer=this.timer=null;this.inTail=!1;if(!this.locked){this.list.css(this.lt,this.pos(this.options.offset)+"px");var a=this.pos(this.options.start,!0);this.prevFirst=this.prevLast=null;this.animate(a,!1);g(window).unbind("resize.jcarousel",this.funcResize).bind("resize.jcarousel",this.funcResize);this.options.setupCallback!==null&&this.options.setupCallback(this)}},reset:function(){this.list.empty();this.list.css(this.lt,"0px");this.list.css(this.wh,"10px");this.options.initCallback!==null&&this.options.initCallback(this,"reset");this.setup()},reload:function(){this.tail!==null&&this.inTail&&this.list.css(this.lt,f.intval(this.list.css(this.lt))+this.tail);this.tail=null;this.inTail=!1;this.options.reloadCallback!==null&&this.options.reloadCallback(this);if(this.options.visible!==null){var a=this,c=Math.ceil(this.clipping()/this.options.visible),b=0,d=0;this.list.children("li").each(function(f){b+=a.dimension(this, c);f+1<a.first&&(d=b)});this.list.css(this.wh,b+"px");this.list.css(this.lt,-d+"px")}this.scroll(this.first,!1)},lock:function(){this.locked=!0;this.buttons()},unlock:function(){this.locked=!1;this.buttons()},size:function(a){if(a!==void 0)this.options.size=a,this.locked||this.buttons();return this.options.size},has:function(a,c){if(c===void 0||!c)c=a;if(this.options.size!==null&&c>this.options.size)c=this.options.size;for(var b=a;b<=c;b++){var d=this.get(b);if(!d.length||d.hasClass("jcarousel-item-placeholder"))return!1}return!0}, get:function(a){return g(">.jcarousel-item-"+a,this.list)},add:function(a,c){var b=this.get(a),d=0,p=g(c);if(b.length===0)for(var j,e=f.intval(a),b=this.create(a);;){if(j=this.get(--e),e<=0||j.length){e<=0?this.list.prepend(b):j.after(b);break}}else d=this.dimension(b);p.get(0).nodeName.toUpperCase()=="LI"?(b.replaceWith(p),b=p):b.empty().append(c);this.format(b.removeClass(this.className("jcarousel-item-placeholder")),a);p=this.options.visible!==null?Math.ceil(this.clipping()/this.options.visible):null;d=this.dimension(b,p)-d;a>0&&a<this.first&&this.list.css(this.lt,f.intval(this.list.css(this.lt))-d+"px");this.list.css(this.wh,f.intval(this.list.css(this.wh))+d+"px");return b},remove:function(a){var c=this.get(a);if(c.length&&!(a>=this.first&&a<=this.last)){var b=this.dimension(c);a<this.first&&this.list.css(this.lt,f.intval(this.list.css(this.lt))+b+"px");c.remove();this.list.css(this.wh,f.intval(this.list.css(this.wh))-b+"px")}},next:function(){this.tail!==null&&!this.inTail?this.scrollTail(!1):this.scroll((this.options.wrap=="both"||this.options.wrap=="last")&&this.options.size!==null&&this.last==this.options.size?1:this.first+this.options.scroll)},prev:function(){this.tail!==null&&this.inTail?this.scrollTail(!0):this.scroll((this.options.wrap=="both"||this.options.wrap=="first")&&this.options.size!==null&&this.first==1?this.options.size:this.first-this.options.scroll)},scrollTail:function(a){if(!this.locked&&!this.animating&&this.tail){this.pauseAuto();var c=f.intval(this.list.css(this.lt)),c=!a?c-this.tail:c+this.tail;this.inTail=!a;this.prevFirst=this.first;this.prevLast=this.last;this.animate(c)}},scroll:function(a,c){!this.locked&&!this.animating&&(this.pauseAuto(),this.animate(this.pos(a),c))},pos:function(a,c){var b=f.intval(this.list.css(this.lt));if(this.locked||this.animating)return b;this.options.wrap!="circular"&&(a=a<1?1:this.options.size&&a>this.options.size?this.options.size:a);for(var d=this.first>a,g=this.options.wrap!="circular"&&this.first<=1?1:this.first,j=d?this.get(g):this.get(this.last),e=d?g:g-1,h=null,i=0,k=!1,l=0;d?--e>=a:++e<a;){h=this.get(e);k=!h.length;if(h.length===0&&(h=this.create(e).addClass(this.className("jcarousel-item-placeholder")),j[d?"before":"after"](h),this.first!==null&&this.options.wrap=="circular"&&this.options.size!==null&&(e<=0||e>this.options.size)))j=this.get(this.index(e)),j.length&&(h=this.add(e,j.clone(!0)));j=h;l=this.dimension(h);k&&(i+=l);if(this.first!==null&&(this.options.wrap=="circular"||e>=1&&(this.options.size===null||e<=this.options.size)))b=d?b+l:b-l}for(var g=this.clipping(),m=[],o=0,n=0,j=this.get(a-1),e=a;++o;){h=this.get(e);k=!h.length;if(h.length===0){h=this.create(e).addClass(this.className("jcarousel-item-placeholder"));if(j.length===0)this.list.prepend(h);else j[d?"before":"after"](h);if(this.first!==null&&this.options.wrap=="circular"&&this.options.size!==null&&(e<=0||e>this.options.size))j=this.get(this.index(e)),j.length&&(h=this.add(e,j.clone(!0)))}j=h;l=this.dimension(h);if(l===0)throw Error("jCarousel: No width/height set for items. This will cause an infinite loop. Aborting...");this.options.wrap!="circular"&&this.options.size!==null&&e>this.options.size?m.push(h):k&&(i+=l);n+=l;if(n>=g)break;e++}for(h=0;h<m.length;h++)m[h].remove();i>0&&(this.list.css(this.wh,this.dimension(this.list)+i+"px"),d&&(b-=i,this.list.css(this.lt,f.intval(this.list.css(this.lt))-i+"px")));i=a+o-1;if(this.options.wrap!="circular"&&this.options.size&&i>this.options.size)i=this.options.size;if(e>i){o=0;e=i;for(n=0;++o;){h=this.get(e--);if(!h.length)break;n+=this.dimension(h);if(n>=g)break}}e=i-o+1;this.options.wrap!="circular"&&e<1&&(e=1);if(this.inTail&&d)b+=this.tail,this.inTail=!1;this.tail=null;if(this.options.wrap!="circular"&&i==this.options.size&&i-o+1>=1&&(d=f.intval(this.get(i).css(!this.options.vertical?"marginRight":"marginBottom")),n-d>g))this.tail=n-g-d;if(c&&a===this.options.size&&this.tail)b-=this.tail,this.inTail=!0;for(;a-->e;)b+=this.dimension(this.get(a));this.prevFirst=this.first;this.prevLast=this.last;this.first=e;this.last=i;return b},animate:function(a,c){if(!this.locked&&!this.animating){this.animating=!0;var b=this,d=function(){b.animating=!1;a===0&&b.list.css(b.lt,0);!b.autoStopped&&(b.options.wrap=="circular"||b.options.wrap=="both"||b.options.wrap=="last"||b.options.size===null||b.last<b.options.size||b.last==b.options.size&&b.tail!==null&&!b.inTail)&&b.startAuto();b.buttons();b.notify("onAfterAnimation");if(b.options.wrap=="circular"&&b.options.size!==null)for(var c=b.prevFirst;c<=b.prevLast;c++)c!==null&&!(c>=b.first&&c<=b.last)&&(c<1||c>b.options.size)&&b.remove(c)};this.notify("onBeforeAnimation");if(!this.options.animation||c===!1)this.list.css(this.lt,a+"px"),d();else{var f=!this.options.vertical?this.options.rtl?{right:a}:{left:a}:{top:a},d={duration:this.options.animation,easing:this.options.easing,complete:d};if(g.isFunction(this.options.animationStepCallback))d.step=this.options.animationStepCallback;this.list.animate(f,d)}}},startAuto:function(a){if(a!==void 0)this.options.auto=a;if(this.options.auto===0)return this.stopAuto();if(this.timer===null){this.autoStopped=!1;var c=this;this.timer=window.setTimeout(function(){c.next()},this.options.auto*1E3)}},stopAuto:function(){this.pauseAuto();this.autoStopped=!0},pauseAuto:function(){if(this.timer!==null)window.clearTimeout(this.timer),this.timer=null},buttons:function(a,c){if(a==null&&(a=!this.locked&&this.options.size!==0&&(this.options.wrap&&this.options.wrap!="first"||this.options.size===null||this.last<this.options.size),!this.locked&&(!this.options.wrap||this.options.wrap=="first")&&this.options.size!==null&&this.last>=this.options.size))a=this.tail!==null&&!this.inTail;if(c==null&&(c=!this.locked&&this.options.size!==0&&(this.options.wrap&&this.options.wrap!="last"||this.first>1),!this.locked&&(!this.options.wrap||this.options.wrap=="last")&&this.options.size!==null&&this.first==1))c=this.tail!==null&&this.inTail;var b=this;this.buttonNext.length>0?(this.buttonNext.unbind(this.options.buttonNextEvent+".jcarousel",this.funcNext),a&&this.buttonNext.bind(this.options.buttonNextEvent+".jcarousel",this.funcNext),this.buttonNext[a?"removeClass":"addClass"](this.className("jcarousel-next-disabled")).attr("disabled",a?!1:!0),this.options.buttonNextCallback!==null&&this.buttonNext.data("jcarouselstate")!=a&&this.buttonNext.each(function(){b.options.buttonNextCallback(b,this,a)}).data("jcarouselstate",a)):this.options.buttonNextCallback!==null&&this.buttonNextState!=a&&this.options.buttonNextCallback(b,null,a);this.buttonPrev.length>0?(this.buttonPrev.unbind(this.options.buttonPrevEvent+".jcarousel",this.funcPrev),c&&this.buttonPrev.bind(this.options.buttonPrevEvent+".jcarousel",this.funcPrev),this.buttonPrev[c?"removeClass":"addClass"](this.className("jcarousel-prev-disabled")).attr("disabled",c?!1:!0),this.options.buttonPrevCallback!==null&&this.buttonPrev.data("jcarouselstate")!=c&&this.buttonPrev.each(function(){b.options.buttonPrevCallback(b,this,c)}).data("jcarouselstate",c)):this.options.buttonPrevCallback!==null&&this.buttonPrevState!=c&&this.options.buttonPrevCallback(b,null,c);this.buttonNextState=a;this.buttonPrevState=c},notify:function(a){var c=this.prevFirst===null?"init":this.prevFirst<this.first?"next":"prev";this.callback("itemLoadCallback",a,c);this.prevFirst!==this.first&&(this.callback("itemFirstInCallback",a,c,this.first),this.callback("itemFirstOutCallback",a,c,this.prevFirst));this.prevLast!==this.last&&(this.callback("itemLastInCallback",a,c,this.last),this.callback("itemLastOutCallback",a,c,this.prevLast));this.callback("itemVisibleInCallback",a,c,this.first,this.last,this.prevFirst,this.prevLast);this.callback("itemVisibleOutCallback",a,c,this.prevFirst,this.prevLast,this.first,this.last)},callback:function(a,c,b,d,f,j,e){if(!(this.options[a]==null||typeof this.options[a]!="object"&&c!="onAfterAnimation")){var h=typeof this.options[a]=="object"?this.options[a][c]:this.options[a];if(g.isFunction(h)){var i=this;if(d===void 0)h(i,b,c);else if(f===void 0)this.get(d).each(function(){h(i,this,d,b,c)});else for(var a=function(a){i.get(a).each(function(){h(i,this,a,b,c)})},k=d;k<=f;k++)k!==null&&!(k>=j&&k<=e)&&a(k)}}},create:function(a){return this.format("<li></li>",a)},format:function(a,c){for(var a=g(a),b=a.get(0).className.split(" "),d=0;d<b.length;d++)b[d].indexOf("jcarousel-")!=-1&&a.removeClass(b[d]);a.addClass(this.className("jcarousel-item")).addClass(this.className("jcarousel-item-"+c)).css({"float":this.options.rtl?"right":"left","list-style":"none"}).attr("jcarouselindex",c);return a},className:function(a){return a+" "+a+(!this.options.vertical?"-horizontal":"-vertical")},dimension:function(a,c){var b=g(a);if(c==null)return!this.options.vertical?b.outerWidth(!0)||f.intval(this.options.itemFallbackDimension):b.outerHeight(!0)||f.intval(this.options.itemFallbackDimension);else{var d=!this.options.vertical?c-f.intval(b.css("marginLeft"))-f.intval(b.css("marginRight")):c-f.intval(b.css("marginTop"))-f.intval(b.css("marginBottom"));g(b).css(this.wh,d+"px");return this.dimension(b)}},clipping:function(){return!this.options.vertical?this.clip[0].offsetWidth-f.intval(this.clip.css("borderLeftWidth"))-f.intval(this.clip.css("borderRightWidth")):this.clip[0].offsetHeight-f.intval(this.clip.css("borderTopWidth"))-f.intval(this.clip.css("borderBottomWidth"))},index:function(a,c){if(c==null)c=this.options.size;return Math.round(((a-1)/c-Math.floor((a-1)/c))*c)+1}});f.extend({defaults:function(a){return g.extend(q,a||{})},intval:function(a){a=parseInt(a,10);return isNaN(a)?0:a},windowLoaded:function(){m=!0}});g.fn.jcarousel=function(a){if(typeof a=="string"){var c=g(this).data("jcarousel"),b=Array.prototype.slice.call(arguments,1);return c[a].apply(c,b)}else return this.each(function(){var b=g(this).data("jcarousel");b?(a&&g.extend(b.options,a),b.reload()):g(this).data("jcarousel",new f(this,a))})}})(FlixjQ);var inpageStart=window.inpageStart||[];(function($){var widths=[300,350,400,450,500,550,600,650,700,750,800,830,870,900,950,1000,1050,1100,1150,1200,1250,1300];var removed_footnote=false;var footnote='';inpageStart.run=function(){footnote=$('#inpage_container .inpage_footnote').clone();resize();$(window).bind('resize',resize);$('.flixkeycode').each(function(i){$(this).attr('role','button').attr('tabindex','0');});FlixjQ('[tabindex="0"]:not(.flixkeycode)').live('keydown',function(mi){if(mi.keyCode==13){mi.target.click();};if(mi.keyCode==32){mi.target.click();}});JcallOnLoad();$(window).bind('resize',JcallOnLoad);};JcallOnLoad=function(){if($('#inpage_container .inpage_product_assets .inpage_block ul').length>0||$('#inpage_cap_wrapper .inpage_cap_zoom-images ul.inpage_block_inner').length>0){var rtlcheck=false;if($('html').css('direction')=='rtl'||$('html').attr('dir')=='rtl'||$("[dir='rtl']").length>0){rtlcheck=true;}
var container_width=$('div[id^="inpage_container"]:visible').parent().width();if(container_width<650){scrollno=1;}
else if(container_width<1000){scrollno=2;}
else scrollno=3;$('#inpage_container .inpage_product_assets .inpage_block ul').each(function(){$(this).jcarousel({itemFallbackDimension:300,rtl:rtlcheck,scroll:scrollno});if(rtlcheck==true){$(this).find('li').css({'float':'right'});}});$('#inpage_cap_wrapper .inpage_cap_zoom-images ul.inpage_block_inner').each(function(){$(this).jcarousel({itemFallbackDimension:300,rtl:rtlcheck});if(rtlcheck==true){$(this).find('li').css({'float':'right'});}});setTimeout(function(){FlixjQ('#inpage_container .inpage_product_assets .inpage_block ul li:not(.flix-visible-item) a,#inpage_cap_wrapper .inpage_cap_zoom-images ul.inpage_block_inner li:not(.flix-visible-item) a').attr('tabindex',-1);},1500);}else{setTimeout(function(){JcallOnLoad();},2500);}};resize=function(){if($('#inpage_container').length>0){var container_width=$('div[id^="inpage_container"]:visible').parent().width();if(FlixjQ('[distributor="171"]').length>0||FlixjQ('[distributor="877"]').length>0||FlixjQ('[distributor="492"]').length>0){container_width=FlixjQ('div[id^="inpage_container"]:visible').width();}
var container_class='';for(var index in widths){if(container_width>widths[index])continue;if((index-1)<0)
index=0;var found_width=widths[index];container_class='inpage_'+found_width;break;}
$('div[id^="inpage_container"]:visible').attr('class',container_class);}else{setTimeout(function(){resize();},2500);}}})(FlixjQ);inpageStart.run();;(function($){loadFile=function(type,url){var element="";var attribute="";var content=new Object();switch(type){case"css":element="link";attribute="href";content.type="text/css";content.rel="stylesheet";break;case"script":element="script";attribute="src";content.type="text/javascript";break;default:return;}
var found=false;$(element).each(function(){var href=$(this).attr(attribute);if(href==url){found=true;return false;}});if(!found){var dom=document.createElement(element);for(var i in content){if(content.hasOwnProperty(i)){dom[i]=content[i];}}
dom[attribute]=url;$("head").append(dom);}};link=function(e){original=this;var href=$(this).attr("href");if(!href)return false;var temp=href.split("?");href=temp[0];var width=0;var height=0;var lvp='';if(typeof(temp[1])!="undefined"){var params=temp[1].split("&");for(var i in params){if(params.hasOwnProperty(i)){temp=params[i].split("=");switch(temp[0]){case"width":width=temp[1];break;case"height":height=temp[1];break;case"lvp":lvp=temp[1];break;}}}}
temp=href.split(".");var type=temp[temp.length-1].toLowerCase();if($(this).parent().hasClass("imggallery")){type="gif";}
if($(this).parent().hasClass("inpage_selector_gallery")){type="gif";}
if($(this).parent().hasClass("youtubegallery")){type="youtube";}
if($(this).parent().hasClass("inpage_selector_video")){type="mov";}
var product=$(this).parents(".flixinpage").data("flixinpage-product");switch(type){case"swf":var url=href;var html=$.flash.create({swf:url,width:width,height:height});lightBox(html,width,height);break;case"flv":case"mov":case"avi":case"mp4":case"wmv":if(lvp==''){var url="//media.flixcar.com/swf/mediaplayer.swf?width="+width+"&height="+height+"&autostart=true&file="+href;var html=$.flash.create({swf:url,width:width,height:height});lightBox(html,width,height);}else{var html='<span class="LimelightEmbeddedPlayer">';var html=html+'<object type="application/x-shockwave-flash" id="limelight_player_876583" name="limelight_player_876583" class="LimelightEmbeddedPlayerFlash" width="'+width+'" height="'+height+'" data="//assets.delvenetworks.com/player/loader.swf">';var html=html+'<param name="movie" value="//assets.delvenetworks.com/player/loader.swf"/>';var html=html+'<param name="wmode" value="window"/>';var html=html+'<param name="allowScriptAccess" value="always"/>';var html=html+'<param name="allowFullScreen" value="true"/>';var html=html+'<param name="flashVars" value="mediaId='+lvp+'&amp;playerForm=bc42a3d3fa364111a20bb8612ec052cf&amp;autoplay=true&amp;startQuality=High"/></object>';var html=html+'</span>';lightBox(html,width,height);LimelightPlayerUtil.initEmbed('limelight_player_876583');}
break;case"youtube":var html='<iframe width="700" height="394" src="'+href+'" frameborder="0" allowfullscreen></iframe>';lightBox(html,width,height);break;case"gif":case"jpg":case"jpeg":case"png":case"png-1":case"png-2":case"png-3":case"png-4":case"png-5":case"png-6":case"png-7":case"png-8":case"png-9":case"png-10":case"png-11":case"png-12":case"jpg-1":case"jpg-2":case"jpg-3":case"jpg-4":case"jpg-5":case"jpg-6":case"jpg-7":case"jpg-8":case"jpg-9":case"jpg-10":case"jpg-11":case"jpg-12":case"gif-1":case"gif-2":case"gif-3":case"gif-4":case"gif-5":case"gif-6":case"gif-7":case"gif-8":case"gif-9":case"gif-10":case"gif-11":case"gif-12":case"tif":case"webp":var preloader=new Image();preloader.onload=function(){var dom=document.createElement("img");dom.src=preloader.src;dom.alt="";dom.width=preloader.width;dom.height=preloader.height;if(width>0){dom.width=width;}
if(height>0){dom.height=height;}
preloader.onload=function(){};lightBox(dom,dom.width,dom.height,original);};preloader.src=href;break;case"pdf":window.open(href,'_blank');return false;break;}
return false;};lightBox=function(content,width,height,element){show_prev=false;show_next=false;current_index=0;if(element!=''){current=$(element).attr('href');gallery_list=$(element).closest('ul').find('a,.flix_review_li');gallery_list.each(function(index){if(current==$(this).attr('href'))current_index=index;});if((current_index+1)<gallery_list.length){show_next=$(element).closest('ul').find('a,.flix_review_li').get(current_index+1);}
if(current_index>0){show_prev=$(element).closest('ul').find('a,.flix_review_li').get(current_index-1);}}
$('embed, object, select').css({'visibility':'hidden'});if($('#flixinpage-lightbox').length<=0){$('body').append('<div id="flixinpage-overlay"></div><div id="flixinpage-lightbox" role="dialog"></div>');}
$("#flixinpage-lightbox").html(content);if('https:'==document.location.protocol){$("#flixinpage-lightbox").prepend('<a id="btn_close"  role="button" tabindex="0" style="cursor:pointer;position:absolute;right:-40px;" title="Close"><img src="https://media.flixcar.com/delivery/static/images/close.png" border="0" alt="Close" /></a>');}else{$("#flixinpage-lightbox").prepend('<a id="btn_close" role="button" tabindex="0" style="cursor:pointer;position:absolute;right:-40px;" title="Close"><img src="http://media.flixcar.com/delivery/static/images/close.png" border="0" alt="Close" /></a>');}
if(show_next!=false){_a=$('<div>').attr('class','inpage_cap_next_photo').attr('title','next').attr('data-flix-media','next').text('next').css('display','none').attr('role','button').attr('tabindex',0);_a.click(function(){$(show_next).trigger('click');});$("#flixinpage-lightbox").append(_a);}
if(show_prev!=false){_a=$('<div>').attr('class','inpage_cap_prev_photo').attr('title','previous').attr('data-flix-media','previous').text('previous').css('display','none').attr('role','button').attr('tabindex',0);_a.click(function(){$(show_prev).trigger('click');});$("#flixinpage-lightbox").append(_a);}
$('#flixinpage-overlay').click(function(){$('#flixinpage-lightbox,#flixinpage-overlay').remove();$('embed, object, select').css({'visibility':'visible'});});$('#btn_close').click(function(bt){bt.preventDefault();bt.stopPropagation();$('#flixinpage-lightbox,#flixinpage-overlay').remove();$('embed, object, select').css({'visibility':'visible'});$(this).blur();$('.flix-focus').focus();});setTimeout(function(){document.getElementById("btn_close").focus();},500)
$(document).bind('keydown',function(e){if(e.which==27&&$('#flixinpage-lightbox').length){$('#flixinpage-overlay').trigger('click')}});$(window).resize(function(){width=$("#flixinpage-lightbox").width();});lightBox.resize(width);};lightBox.resize=function(width){var pageSizes=lightBox.getPageSize();var pageScroll=lightBox.getPageScroll();var boxWidth=0;var boxHeight=$("#flixinpage-lightbox").height();$('#flixinpage-overlay').css({"position":"absolute","top":0,"left":0,"z-index":90,"backgroundColor":"#000","opacity":0.8,"width":pageSizes[0],"height":pageSizes[1]});if(width>0){boxWidth=width;}else{setTimeout(function(){boxWidth=$("#flixinpage-lightbox").width();},200);}
$('#flixinpage-lightbox').css({"position":"absolute","z-index":100,"top":pageScroll[1]+(pageSizes[3]/10),"left":pageScroll[0]+(pageSizes[0]-boxWidth)/2});};lightBox.getPageSize=function(){var xScroll,yScroll;if(window.innerHeight&&window.scrollMaxY){xScroll=window.innerWidth+window.scrollMaxX;yScroll=window.innerHeight+window.scrollMaxY;}
else if(document.body.scrollHeight>document.body.offsetHeight){xScroll=document.body.scrollWidth;yScroll=document.body.scrollHeight;}
else{xScroll=document.body.offsetWidth;yScroll=document.body.offsetHeight;}
var windowWidth,windowHeight;if(self.innerHeight){if(document.documentElement.clientWidth){windowWidth=document.documentElement.clientWidth;}
else{windowWidth=self.innerWidth;}
windowHeight=self.innerHeight;}
else if(document.documentElement&&document.documentElement.clientHeight){windowWidth=document.documentElement.clientWidth;windowHeight=document.documentElement.clientHeight;}
else if(document.body){windowWidth=document.body.clientWidth;windowHeight=document.body.clientHeight;}
var pageHeight,pageWidth;if(yScroll<windowHeight){pageHeight=windowHeight;}
else{pageHeight=yScroll;}
if(xScroll<windowWidth){pageWidth=xScroll;}
else{pageWidth=windowWidth;}
var arrayPageSize=new Array(pageWidth,pageHeight,windowWidth,windowHeight);return arrayPageSize;};lightBox.getPageScroll=function(){var xScroll,yScroll;if(self.pageYOffset){yScroll=self.pageYOffset;xScroll=self.pageXOffset;}
else if(document.documentElement&&document.documentElement.scrollTop){yScroll=document.documentElement.scrollTop;xScroll=document.documentElement.scrollLeft;}
else if(document.body){yScroll=document.body.scrollTop;xScroll=document.body.scrollLeft;}
var arrayPageScroll=new Array(xScroll,yScroll);return arrayPageScroll;};$(document).ready(function(){$('#inpage_container .inpage_block_inner a').live('click',link);$('#inpage_cap_wrapper div.inpage_cap_zoom-images  a').live('click',link);$('#inpage_responsive .responsive_computer .inpage_block_inner  a').live('click',link);$('#inpage_responsive .responsive_computer .hpcl_mprinting a').live('click',link);$('#inpage_responsive .responsive_computer .hpcl_videos .hpcl_row .hpcl_entry a').live('click',link);$('#inpage_responsive .responsive_computer .hpcl_videobox a').live('click',link);setTimeout(function(){var target='#inpage_container .inpage_block_inner a,#inpage_cap_wrapper div.inpage_cap_zoom-images a,#inpage_responsive .responsive_computer .hpcl_mprinting a,#inpage_responsive .responsive_computer .hpcl_mprinting a,#inpage_responsive .responsive_computer .hpcl_videos .hpcl_row .hpcl_entry a,#inpage_responsive .responsive_computer .hpcl_videobox a'
const sections=document.querySelectorAll(target);const config={rootMargin:'50px 0px 50px 0px',threshold:0};let isLeaving=false;let observer=new IntersectionObserver(function(entries,self){var delay=0;entries.forEach(entry=>{if(entry.isIntersecting){$('#inpage_container .inpage_block_inner a').live('click',link);$('#inpage_cap_wrapper div.inpage_cap_zoom-images  a').live('click',link);$('#inpage_responsive .responsive_computer .inpage_block_inner  a').live('click',link);$('#inpage_responsive .responsive_computer .hpcl_mprinting a').live('click',link);$('#inpage_responsive .responsive_computer .hpcl_videos .hpcl_row .hpcl_entry a').live('click',link);$('#inpage_responsive .responsive_computer .hpcl_videobox a').live('click',link);self.unobserve(entry.target);}else if(isLeaving){isLeaving=false;self.unobserve(entry.target);}});},config);if('IntersectionObserver'in window){setTimeout(function(){sections.forEach(section=>{observer.observe(section);});},1000);}else{}},1000)
FlixjQ('#inpage_container .inpage_block_inner a,.flix_jw_videoid,.flix_review_li').live('click',function(event){const closestElement=FlixjQ(event.target).closest('[data-module]');var moduleValue='',indexedModuleValue='';if(closestElement.length){moduleValue=closestElement.attr('data-module');var similarModules=closestElement.closest('#inpage_container,#flix_hotspots,#flix_hotspotsmob').find('[data-module]');if(closestElement.closest('#minisite_tabs'))
similarModules=closestElement.closest('#minisite_tabs').find('[data-module]');const index=similarModules.index(closestElement);indexedModuleValue=moduleValue+'-'+(index+1);console.log("Indexed Module Value lightbox:",indexedModuleValue);}
setTimeout(function(){FlixjQ('#flixinpage-lightbox').attr('data-module',moduleValue).attr('data-modpos',indexedModuleValue);FlixjQ('#flixinpage-lightbox .flix-videodiv iframe[src]').attr('src',function(_,url){if(url){var separator=url.includes('?')?'&':'?';if(url.includes('mid=')){url=url.replace(/([?&])mid=[^&]+/,'');url=url.replace(/[?&]$/,'');}
return url+separator+'mid='+indexedModuleValue;}else{return _;}});},1000)});});})(FlixjQ);(function(f,h,i){function k(a,c){var b=(a[0]||0)-(c[0]||0);return b>0||!b&&a.length>0&&k(a.slice(1),c.slice(1))}function l(a){if(typeof a!=g)return a;var c=[],b="";for(var d in a){b=typeof a[d]==g?l(a[d]):[d,m?encodeURI(a[d]):a[d]].join("=");c.push(b)}return c.join("&")}function n(a){var c=[];for(var b in a)a[b]&&c.push([b,'="',a[b],'"'].join(""));return c.join(" ")}function o(a){var c=[];for(var b in a)c.push(['<param name="',b,'" value="',l(a[b]),'" />'].join(""));return c.join("")}var g="object",m=true;try{var j=i.description||function(){return(new i("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version")}()}catch(p){j="Unavailable"}var e=j.match(/\d+/g)||[0];f[h]={available:e[0]>0,activeX:i&&!i.name,version:{original:j,array:e,string:e.join("."),major:parseInt(e[0],10)||0,minor:parseInt(e[1],10)||0,release:parseInt(e[2],10)||0},hasVersion:function(a){a=/string|number/.test(typeof a)?a.toString().split("."):/object/.test(typeof a)?[a.major,a.minor]:a||[0,0];return k(e,a)},encodeParams:true,expressInstall:"expressInstall.swf",expressInstallIsActive:false,create:function(a){if(!a.swf||this.expressInstallIsActive||!this.available&&!a.hasVersionFail)return false;if(!this.hasVersion(a.hasVersion||1)){this.expressInstallIsActive=true;if(typeof a.hasVersionFail=="function")if(!a.hasVersionFail.apply(a))return false;a={swf:a.expressInstall||this.expressInstall,height:137,width:214,flashvars:{MMredirectURL:location.href,MMplayerType:this.activeX?"ActiveX":"PlugIn",MMdoctitle:document.title.slice(0,47)+" - Flash Player Installation"}}}attrs={data:a.swf,type:"application/x-shockwave-flash",id:a.id||"flash_"+Math.floor(Math.random()*999999999),width:a.width||320,height:a.height||180,style:a.style||""};m=typeof a.useEncode!=="undefined"?a.useEncode:this.encodeParams;a.movie=a.swf;a.wmode=a.wmode||"opaque";delete a.fallback;delete a.hasVersion;delete a.hasVersionFail;delete a.height;delete a.id;delete a.swf;delete a.useEncode;delete a.width;var c=document.createElement("div");c.innerHTML=["<object ",n(attrs),">",o(a),"</object>"].join("");return c.firstChild}};f.fn[h]=function(a){var c=this.find(g).andSelf().filter(g);/string|object/.test(typeof a)&&this.each(function(){var b=f(this),d;a=typeof a==g?a:{swf:a};a.fallback=this;if(d=f[h].create(a)){b.children().remove();b.html(d)}});typeof a=="function"&&c.each(function(){var b=this;b.jsInteractionTimeoutMs=b.jsInteractionTimeoutMs||0;if(b.jsInteractionTimeoutMs<660)b.clientWidth||b.clientHeight?a.call(b):setTimeout(function(){f(b)[h](a)},b.jsInteractionTimeoutMs+66)});return c}})(FlixjQ,"flash",navigator.plugins["Shockwave Flash"]||window.ActiveXObject);;(function($){if(typeof $.fn.inPage=='undefined'){$.fn.inPage=function(options){$.ajaxSetup({cache:true});$.fn.inPage.ref=this;var ref=this;$.fn.inPage.urlMain='https://media.flixcar.com/delivery/';if('https:'==document.location.protocol){$.fn.inPage.urlMain='https://media.flixsyndication.net/inpage/ssl/delivery/';}
window.flixJsCallbacks=window.flixJsCallbacks||{};window.flixJsCallbacks.pageGeneric=window.flixJsCallbacks.pageGeneric||{};if(!this.inPage.hasOwn(window.flixJsCallbacks.pageGeneric)){try{$.getScript($.fn.inPage.urlMain+'static/delivery/pagedata-generic.js');}catch(ignore){}}
if(!this.inPage.hasOwn(window.flixJsCallbacks.pageGeneric.pageSpecific)){try{$.getScript($.fn.inPage.urlMain+'static/delivery/append-generic.js');$.getScript($.fn.inPage.urlMain+'static/distributor/'+options.distributor+'/pagedata-specific.js');}catch(ignore){}}
var opts=$.extend({},$.fn.inPage.defaults,options);opts.language=opts.language.toLowerCase();$.fn.inPage.data=opts;opts.event_type="page";if(typeof FlixjQ!='undefined'&&typeof FlixjQ.fn.inPage!='undefined'&&typeof flixtracking!='undefined'){flixtracking.products.inpage(opts);}
FlixjQ('.flix-privacy-policy-link').unbind("click").click(function(privacy){privacy.preventDefault();FlixjQ(this).parent().next().find('.flix-privacy-policy-text').slideToggle();});};}
if(typeof $.fn.urlMain!='undefined'){$.fn.inPage.urlMain=$.fn.urlMain}
$.fn.inPage.hasOwn=function(obj){for(var p in obj){if(obj.hasOwnProperty(p)){return true;}}
return false;};$.fn.inPage.defaults={distributor:0,language:"en",legacy:"",mpn:"",ean:"",sku:"",product:0,css:"",container:"",gvid:"",abid:"",ab:"",pd:"",update:10,pagedata:{}};$.fn.inPage.data={};$.fn.inPage.getURL=function(){return window.location.href;};$.fn.inPage._getReferer=function(data){var ref="";if(data.page_url!=="")return data.page_url;var page_url=FlixjQ.cookie($.fn.inPage._getCookieName(data,'ucookie'));if(page_url)return page_url;if(document.referer&&document.referer!=="")ref=document.referrer;FlixjQ.cookie($.fn.inPage._getCookieName(data,'ucookie'),ref);return ref;}})(FlixjQ);if(top.location.href.search('flix-qa')!=-1)
window.log2=function(){log2.history=log2.history||[];log2.history.push(arguments);if(this.console){console.log(Array.prototype.slice.call(arguments));}};else
window.log2=function(){};(function(){var widths=[450,500,550,600,650,700,750,800,830,870,900,950,1000,1050,1100,1150,1200,1250,1300];function flixresize(){log2('in flixresize')
if(typeof FlixjQ!='undefined'){if(FlixjQ('#inpage_container').length>0&&FlixjQ('#inpage_container').is(":visible")===true){log2('in flixresize - width check2')
var container_width=FlixjQ('div[id^="inpage_container"]:visible').width()
if(top.innerWidth<container_width)
container_width=top.innerWidth-10;var container_class='';for(var index in widths){if(container_width>widths[index])continue;if((index-1)<0)
index=0;var found_width=widths[index];container_class='inpage_'+found_width;break;}
FlixjQ('#inpage_container').attr('class',container_class);setTimeout(function(){FlixjQ('#inpage_container').attr('class',container_class);},1100);FlixjQ('#inpage_container').css('width',container_width)
if(FlixjQ('.inpage_selector_feature').length<=1){FlixjQ('.flixFeatures').parent().hide()}
if(FlixjQ('.inpage_selector_specification').length==0){FlixjQ('.FlixTechSpecs').parent().hide()}
FlixjQ('.flixFeatures').live('click',function(e){if(location.href.search('flix-qa')!=-1)
console.log('flixFeatures')
e.preventDefault();FlixjQ('html, body').animate({scrollTop:FlixjQ(".inpage_selector_feature .flix-module").offset().top},1500);});FlixjQ('.FlixTechSpecs').live('click',function(e){e.preventDefault();var bodyRect=top.document.body.getBoundingClientRect(),elemRect=top.document.querySelector("#iframe-AboutThisItem-marketingContent").getBoundingClientRect(),iframeoffset=elemRect.top-bodyRect.top;if(location.href.search('flix-qa')!=-1){console.log('FlixTechSpecs-'+iframeoffset)
console.log('FlixTechSpecs-'+FlixjQ(".flixTechSpecs-block").offset().top)}
window.parent.scrollTo(0,iframeoffset+FlixjQ(".flixTechSpecs-block").offset().top)});}else{hidden0=1;setTimeout(function(){flixresize();},1000);}}else{log2('in flixresize - reload')
setTimeout(function(){flixresize();},1000);}}
flixresize();}());if(!window.loadpapcc)
window.loadpapcc=0;window.data_pap='.prod-VariantsSection';window.papstyle='display: block; position: static;';window.papuuid='135'
window.papbanner=true;window.data_pap2='.TempoZoneLayout.TempoZoneLayout-middle';window.papstyle2='';;(function(){if(top.document.querySelector('[itemprop="sku"]')!==null){var allowed_skus=["55528640","309869409","760707262"];if(allowed_skus.indexOf(top.document.querySelector('[itemprop="sku"]').getAttribute('content'))!==-1){if(typeof initPAP=='undefined'&&window.loadpapcc==0)
loadpap();}}
function loadpap(){if(document.getElementById('inpage_container')&&typeof initPAP=='undefined'){var flixdomain='';flixdomain="//d2m3ikv8mpgiy8.cloudfront.net/js/pointandplace.js";if(location.href.search('paplive=0')!=-1)
flixdomain="https://s3.eu-west-2.amazonaws.com/eyekandy-dev/js/pointandplace.js";if(location.href.search('flix-local')!=-1)
flixdomain="//localhost/delivery_flix360/trunk/public/static/pap/js/pointandplace.js";var script=document.createElement('script');document.head.appendChild(script);script.type='text/javascript';script.src=flixdomain;loadpapcc=10
if(location.href.search('flix-qa')!=-1)
console.log('Load pap'+flixdomain+"js/pointandplace-staging.js")}else{if(loadpapcc<10){setTimeout(function(){loadpap();},2000);}
loadpapcc++}};}());var responsivelyLazy=typeof responsivelyLazy!=='undefined'?responsivelyLazy:(function(){var hasWebPSupport=false;var hasSrcSetSupport=true;var windowWidth=null;var windowHeight=null;var hasIntersectionObserverSupport=typeof IntersectionObserver!=='undefined';var mutationObserverIsDisabled=false;var doneElements=[];var isVisible=function(element){if(windowWidth===null){return false;}
var rect=element.getBoundingClientRect();var elementTop=rect.top;var elementLeft=rect.left;var elementWidth=rect.width;var elementHeight=rect.height;var elementTop2=elementTop-500;return elementTop2<windowHeight&&elementTop+elementHeight>0&&elementLeft<windowWidth&&elementLeft+elementWidth>0;};var evalScripts=function(scripts,startIndex){var scriptsCount=scripts.length;for(var i=startIndex;i<scriptsCount;i++){var breakAfterThisScript=false;var script=scripts[i];var newScript=document.createElement('script');var type=script.getAttribute('type');if(type!==null){newScript.setAttribute("type",type);}
var src=script.getAttribute('src');if(src!==null){newScript.setAttribute("src",src);if((typeof script.async==='undefined'||script.async===false)&&i+1<scriptsCount){breakAfterThisScript=true;newScript.addEventListener('load',function(){evalScripts(scripts,i+1);});}}
newScript.innerHTML=script.innerHTML;script.parentNode.insertBefore(newScript,script);script.parentNode.removeChild(script);if(breakAfterThisScript){break;}}};var updateImage=function(container,element){var options=element.getAttribute('data-flixsrcset');if(options!==null){options=options.trim();if(options.length>0){options=options.split(',');var temp=[];var optionsCount=options.length;for(var j=0;j<optionsCount;j++){var option=options[j].trim();if(option.length===0){continue;}
var spaceIndex=option.lastIndexOf(' ');if(spaceIndex===-1){var optionImage=option;var optionWidth=999998;}else{var optionImage=option.substr(0,spaceIndex);var optionWidth=parseInt(option.substr(spaceIndex+1,option.length-spaceIndex-2),10);}
var add=false;if(optionImage.indexOf('.webp',optionImage.length-5)!==-1){if(hasWebPSupport){add=true;}}else{add=true;}
if(add){temp.push([optionImage,optionWidth]);}}
temp.sort(function(a,b){if(a[1]<b[1]){return-1;}
if(a[1]>b[1]){return 1;}
if(a[1]===b[1]){if(b[0].indexOf('.webp',b[0].length-5)!==-1){return 1;}
if(a[0].indexOf('.webp',a[0].length-5)!==-1){return-1;}}
return 0;});options=temp;}else{options=[];}}else{options=[];}
var containerWidth=container.parentNode.offsetWidth;var bestSelectedOption=null;var optionsCount=options.length;for(var j=0;j<optionsCount;j++){var optionData=options[j];if(optionData[1]>=containerWidth){bestSelectedOption=optionData;break;}
if(j==optionsCount-1){bestSelectedOption=optionData;}}
if(bestSelectedOption===null){bestSelectedOption=[element.getAttribute('src'),999999];}
if(typeof container.responsivelyLazyLastSetOption==='undefined'){container.responsivelyLazyLastSetOption=['',0];}
container.responsivelyLazyLastSetOption=bestSelectedOption;var url=bestSelectedOption[0];if(typeof container.responsivelyLazyEventsAttached==='undefined'){container.responsivelyLazyEventsAttached=true;element.addEventListener('load',function(){var handler=container.getAttribute('data-onlazyload');if(handler!==null){(new Function(handler).bind(container))();}},false);element.addEventListener('error',function(){container.responsivelyLazyLastSetOption=['',0];},false);}
if(url===element.getAttribute('src')){element.removeAttribute('srcset');}else{if(hasSrcSetSupport)
element.setAttribute('srcset',url);else
element.setAttribute('src',url);}};var updateWindowSize=function(){windowWidth=window.innerWidth;windowHeight=window.innerHeight;};var updateElement=function(element){if(doneElements.indexOf(element)!==-1){return;}
if(!isVisible(element)){return;}
var lazyContent=element.getAttribute('data-lazycontent');if(lazyContent!==null){doneElements.push(element);mutationObserverIsDisabled=true;element.innerHTML=lazyContent;var scripts=element.querySelectorAll('script');if(scripts.length>0){evalScripts(scripts,0);}
mutationObserverIsDisabled=false;return;}
if(element.tagName.toLowerCase()==='img'){updateImage(element,element);return;}
var imageElement=element.querySelector('img');if(imageElement!==null){updateImage(element,imageElement);return;}};var run=function(){var elements=document.querySelectorAll('[data-flixsrcset]');var elementsCount=elements.length;for(var i=0;i<elementsCount;i++){updateElement(elements[i]);}};if(typeof window.addEventListener!=='undefined'&&typeof document.querySelectorAll!=='undefined'){updateWindowSize();var image=new Image();image.src='data:image/webp;base64,UklGRiQAAABXRUJQVlA4IBgAAAAwAQCdASoCAAEADMDOJaQAA3AA/uuuAAA=';image.onload=image.onerror=function(){hasWebPSupport=image.width===2;hasSrcSetSupport='srcset'in document.createElement('img');var requestAnimationFrameFunction=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(callback){window.setTimeout(callback,1000/60);};var hasChange=true;var runIfHasChange=function(){if(hasChange){hasChange=false;run();}
requestAnimationFrameFunction.call(null,runIfHasChange);};runIfHasChange();if(hasIntersectionObserverSupport){var updateIntersectionObservers=function(){var elements=document.querySelectorAll('[data-flixsrcset]');var elementsCount=elements.length;for(var i=0;i<elementsCount;i++){var element=elements[i];if(typeof element.responsivelyLazyObserverAttached==='undefined'){element.responsivelyLazyObserverAttached=true;intersectionObserver.observe(element);}}};var intersectionObserver=new IntersectionObserver(function(entries){for(var i in entries){var entry=entries[i];if(entry.intersectionRatio>0){updateElement(entry.target);}}});var changeTimeout=null;}
var setChanged=function(){if(hasIntersectionObserverSupport){window.clearTimeout(changeTimeout);changeTimeout=window.setTimeout(function(){hasChange=true;},300);}else{hasChange=true;}};var updateParentNodesScrollListeners=function(){var elements=document.querySelectorAll('[data-flixsrcset]');var elementsCount=elements.length;for(var i=0;i<elementsCount;i++){var parentNode=elements[i].parentNode;while(parentNode){if(typeof parentNode.responsivelyLazyScrollAttached==='undefined'){parentNode.responsivelyLazyScrollAttached=true;parentNode.addEventListener('scroll',setChanged);}
parentNode=parentNode.parentNode;}}};var initialize=function(){window.addEventListener('resize',function(){updateWindowSize();setChanged();});window.addEventListener('scroll',setChanged);window.addEventListener('load',setChanged);if(hasIntersectionObserverSupport){updateIntersectionObservers();}
updateParentNodesScrollListeners();if(typeof MutationObserver!=='undefined'){var observer=new MutationObserver(function(){if(!mutationObserverIsDisabled){if(hasIntersectionObserverSupport){updateIntersectionObservers();}
updateParentNodesScrollListeners();setChanged();}});observer.observe(document.querySelector('body'),{childList:true,subtree:true});}};if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',initialize);}else{initialize();}};}
return{'run':run,'isVisible':isVisible};}());(function(){try{function isIE(){var myNav=navigator.userAgent.toLowerCase();return(myNav.indexOf('msie')!=-1)?parseInt(myNav.split('msie')[1]):false;}
if(parent.document.location.href.search('hotspot_test')!=-1){parent.window.hotspotwebarstatic=true;var jsonData=JSON.parse(parent.document.getElementById("item").textContent);if(typeof(jsonData.item.product.buyBox.products[0].skuId!="undefined")){var sku=jsonData.item.product.buyBox.products[0].skuId;var mpn='/mpn/'+sku;var ean='/ean/'+sku;var distributor="135";var language="us";var fallbackLanguage="en";var add_hotspot=true;var hs=document.createElement("script");hs.type="text/javascript";hs.src='//media.flixcar.com/delivery/js/hotspot/'+distributor+'/'+language+mpn+ean+'/?append=1'+fallbackLanguage+'&ext=.js';var scripts=parent.document.getElementsByTagName("script");for(var i=0;i<scripts.length;i++){if(scripts[i].getAttribute('src')){if(scripts[i].getAttribute('src').indexOf("media.flixcar.com/delivery/js/hotspot/")!=-1)
add_hotspot=false;}}
if(add_hotspot===true&&sku=="NH.Q5VAA.001"){if((isIE()&&isIE()>=9)||!isIE()){var test_unique_migrate=1;}}}}}catch(e){}})();;
//tracking.js starts
if(location.href.search('flix-logqa')!=-1)
    window.logqa=function(){logqa.history=logqa.history||[];logqa.history.push(arguments);if(this.console){console.log(Array.prototype.slice.call(arguments));}};
else
    window.logqa=function(){};

window.flixtrackloading=1

if(typeof flixtracking=='undefined'){
var flixtracking={
    tracking: true,
    trackingcc: 0,
    flixconsent: null,
    site_url:'https://media.flixcar.com/delivery/',
    trackingDomain: 'https://media.flixcar.com/',
    trackingDomainBeat : 'https://rt.flix360.com/beat/',
    globalTrackingInit: false,
    noTracking:false,
    inpageloaded: false,
    minisitebuttonloaded: false,
    minisiteloaded: false,
    hotspotloaded: false,
    hotspotmobloaded:false,
    micrositeloaded:false,
    checkLoaderloaded:false,
    adjacencyloaded:false,
    adjacencyhotspotloaded:false,
    app3ploaded:false,
    inpageArImpression:false,
    hsArImpression:false,
    matchmissCheck:false,
    init: function(){        
        logqa('init flixtracking');    
        flixtracking.setGvid();
        
        flixtracking.cookieConsent.initConsent();        
        //flixtracking.checkServices();

        
    },
    checkServices: function (opts) {
        logqa('in checkServices');
        var recheck=false;
        /*if(flixtracking.hotspotloaded==false && typeof flixhotspot!='undefined'){
            flixtracking.products.hotspot();
        }
        if(flixtracking.inpageloaded==false && typeof FlixjQ!='undefined' && typeof FlixjQ.fn.inPage!='undefined'){
             flixtracking.products.inpage(FlixjQ.fn.inPage.data);
        }*/
        /*if(flixtracking.minisitebuttonloaded==false && typeof _FFMatcher!='undefined' && typeof FlixjQ!='undefined' && typeof FlixjQ.fn.minisite!='undefined'){
             flixtracking.products.minisitebutton(_FFMatcher);
        }*/
        if (typeof FlixjQ!='undefined' && typeof FlixjQ.fn.logging == 'undefined') {
            /* Set Logging function */
            FlixjQ.fn.logging = function (type, event, data, media, price, inPcount) {
                //if(typeof flixtracking!='undefined' && flixtracking.site_url)
                //    flixtracking.logging(type, event, data, media); 
            }

        }

        if(typeof FlixjQ=='undefined'){
            setTimeout(function(){
                if (typeof flixtracking != 'undefined')
                flixtracking.checkServices()
            }, 100)
        }
    },
    products: {
        inpage: function (data) {
            logqa('in inpage log');
            flixtracking.inpageloaded=true

            // var opts=FlixjQ.extend(true, {}, data)  
            var opts = JSON.parse(JSON.stringify(data));              
            
            opts.type='inpage';

            //adjacency log
            if(typeof window.adjacency_map!='undefined' && !flixtracking.adjacencyloaded && (opts.type=='inpage') && (opts.event_type && opts.event_type=='page') ){
                flixtracking.products.adjacency(opts);
                flixtracking.adjacencyloaded=true
            }  

            flixtracking.log(opts);

            flixtracking.globalTracking(opts);

            var targetcontainer='#'+opts.flixcontainer
            if(!opts.flixcontainer || opts.flixcontainer.length==0){
                targetcontainer='#inpage_container'
            }


            flixtracking.delegate('click', targetcontainer+' a',function(event) {
                if(!this.hasAttribute('data-flix-media')){

                    var href = this.getAttribute('href');
                    opts.type='inpage';
                    var temp = href.split ("?");
                    href = temp[0];
                    var filename = href.split ("/");
                    var filename_real = filename[filename.length - 1];

                    value = filename_real;  
                    logqa('a click-'+targetcontainer, value);          
                    flixtracking.logMedia(opts,value);
                }
            });

            flixtracking.delegate('click', '#flixinpage-lightbox a, .inpage_cap_next_photo, .inpage_cap_prev_photo',function(event) {
                
                if(!this.hasAttribute('data-flix-media')){
                    var href = this.getAttribute('href')|| '';
                    var opts=FlixjQ.fn.inPage.data
                    opts.type='inpage';
                    var temp = href.split ("?");
                    href = temp[0];
                    var filename = href.split ("/");
                    var filename_real = filename[filename.length - 1];

                    var value = filename_real; 
                    if(value.length==0)
                        value=this.innerText;
                    logqa('media', value);  
                            
                    flixtracking.logMedia(opts,value);
                }
            });

            flixtracking.delegate('click', targetcontainer +' *[data-media]',function(event) {
                value = this.dataset.media; 
                value = this.dataset.page;  
                opts.type='inpage';
                logqa('media', value);              
                flixtracking.logMedia(opts,value);
            });
            flixtracking.delegate('click', targetcontainer +' *[data-page]',function(event) {
                value = this.dataset.page;
                opts.type='inpage';  
                logqa('page', value);       
                flixtracking.logPage(opts,value);
            });

            flixtracking.logTime(opts, 0);

            //load AR log when hotspots are hidden case
                setTimeout(function() {
                    if (typeof flixtracking != 'undefined' && !flixtracking.inpageArImpression) {
                        if (FlixjQ('#flix_selector_3d').length > 0) {
                            opts.type = '3dfw';
                            opts.event_type = 'ar_inpage_impression';
                            opts.event_detail = '';
                            flixtracking.log(opts, status);
                        }
                        //AR hotspots matchmiss case
                        if (FlixjQ('#flix_hotspots .ek-aricon').length === 0 && FlixjQ('#flix_selector_3d').length > 0) {
                            opts.type = '3dfw';
                            opts.event_type = 'ar_impression';
                            opts.event_detail = '3dfw';
                            flixtracking.log(opts, status);
                        }
                        flixtracking.inpageArImpression=true;
                    }
                }, 5000);

        },
        minisitebutton: function (_FFMatcher, p_id) {
            logqa('in minisitebutton log');

            flixtracking.minisitebuttonloaded=true;
            var d = new Date(), h='';
            
            var opts={};
            opts.type='minisite';

            opts['mpn'] = _FFMatcher._FFmpn;
            opts['ean'] = _FFMatcher._FFean;
            opts['language'] = _FFMatcher._FFlang;
            opts['distributor'] = _FFMatcher._FFd;
            opts['product_id'] = p_id || _FFMatcher._FFPid; 
            opts['ut'] = d.getTime();
            opts['to'] = d.getTimezoneOffset();
            opts['ss'] = screen.width+'x'+screen.height;
            opts.event_type='matchhit';


            flixtracking.log(opts);
        },
        minisite: function (data) {
            logqa('in minisite log');

            var opts = JSON.parse(JSON.stringify(data));
            //var opts=FlixjQ.extend(true, {}, data);  
            opts.event_type = "asset";
            opts.asset=1;
            opts.type='minisite';
            if(typeof main_distributor!='undefined')
                opts.distributor=main_distributor
            flixtracking.log(opts);

            opts.event_type = "click";
            flixtracking.log(opts);

            if(flixtracking.minisiteloaded==false){

                /*  Global logging call */
                setTimeout(function(){
                    if (typeof flixtracking != 'undefined')
                    flixtracking.globalTracking(opts);
                },1000);

                flixtracking.logTimeMinisite(opts, 0);
            
                flixtracking.minisiteloaded=true;
                //tab click
                flixtracking.delegate('click', '*[data-m-typeid]',function(event) {                
                    value = this.getAttribute('data-m-typeid'); 
                    opts.event_type = "asset";
                    opts.asset=value;
                    opts.event_detail='';
                    opts.vtime=0;
                    opts.view_time=0;
                    opts.type='minisite';
                    logqa('media', value);
                    
                    flixtracking.log(opts, '');
                });

                flixtracking.delegate('click', 'a:not(*[data-m-typeid], *[ data-flix-media])',function(event) {
                    var href = this.getAttribute('href');
                    var temp = href.split ("?");
                    href = temp[0];
                    opts.type='minisite';
                    var filename = href.split ("/");
                    var filename_real = filename[filename.length - 1];

                    logqa('media', filename_real);              
                    flixtracking.logMedia(opts,filename_real);
                });
                flixtracking.delegate('click', '*[data-media]',function(event) {
                    value = this.dataset.media; 
                    value = this.dataset.page;  
                    opts.type='minisite';
                    logqa('media', value);              
                    flixtracking.logMedia(opts,value);
                });
                flixtracking.delegate('click', '*[data-page]',function(event) {
                    value = this.dataset.page;  
                    opts.type='minisite';
                    logqa('page', value);       
                    flixtracking.logPage(opts,value);
                });
            }
        },
        hotspot: function (et, ed, status) {
            logqa('in hotspot log--'+ et+"__"+ed+"__"+status);
            if(typeof flixhotspot!='undefined'){
                logqa('hot flixhotspot')
                var opts=flixhotspot.data;
                if(window.flixJsCallbacks)
                    window.flixJsCallbacks.pageView = window.flixJsCallbacks.pageView || {log : false, beat: false};
                
                if(flixhotspot.data){
                    logqa('hot data')
                    opts.type='interactive';
                    if(!opts.product_id && opts.p)
                        opts.product_id=opts.p
                    opts.edvalueT=opts.mpn || opts.ean || opts.product_id

                    if(et || ed){
                        logqa('hot ed et')
                        opts.event_detail=ed;               
                        opts.event_type= et;
                        // check for webar only retailer and update the ED value 
                        /*if (FlixjQ('#flix_hotspots.flix_hotspotV2 .flix_hs').length == 0 && FlixjQ('#flix_hotspots img.flix_hs').length == 0) {
                            // this is a webar only retailer 
                            opts.event_detail = 'Webar_' + opts.event_detail + '_' + ed;
                        }*/

                        if (ed == 'hotspot_webar' || et == 'webar_click') {
                            opts.event_type = 'webar_click';
                            opts.event_detail = ''
                        } else if (opts.event_type == 'dwelltime') {
                            logqa('dwelltime log')
                            opts.event_detail = ed;
                        } else if (opts.event_type == 'launch') {
                            logqa('launch log')
                            opts.event_detail = ed;
                        } 

                        /*if(opts.event_type =='qr_impression'){
                            //page log for flixar
                            var value = 'Webar_'+opts.edvalueT+'_'
                            flixtracking.products.hotspot('page', 'value');
                        }*/

                        if (ed == 'qr_loaded' || ed == 'qr_close')
                            opts.event_detail = ed;
                        //if(FlixjQ('#flix_hotspots').length>0){
                            flixtracking.log(opts, status);
                        //}

                        //AR 3dfw Desktop Case
                        if(opts.event_type =='qr_impression') {
                            if (!flixtracking.hsArImpression && FlixjQ('.ek-desktop').length) {
                                opts.type = '3dfw';
                                opts.event_type = 'ar_impression';
                                opts.event_detail = 'qr';
                                if (FlixjQ('.flix_selector_3d').length)
                                    opts.event_detail = 'qr|3dfw';
                                flixtracking.log(opts, status);
                                flixtracking.hsArImpression=true;
                            }
                        }

                    }else{
                        //page
                        logqa('hot page')
                        opts.event_type='page'
                        if(flixhotspot.results)
                            var value = 'Hotspot_'+opts.edvalueT+'_'
                        else
                            var value = 'Hotspot_'+opts.edvalueT+'_'
                        opts.event_detail=value;

                        //flixtracking.isMobile==true ||
                        if (FlixjQ('#flix_hotspots') && FlixjQ('#flix_hotspots:not(.ek_hotspots) .flix_hs:not(#flix_desktop_webar)').length>0) {
                            flixtracking.log(opts, status);
                        }
                        else if (flixtracking.isMobile()==true && FlixjQ('.ek-ios, .ek-android').length>0 && !flixtracking.hsArImpression){

                            opts.event_type = 'webar_impressions';
                            opts.event_detail = 'webar_loaded';
                            flixtracking.log(opts, status);

                            //AR 3dfw Mobile Case
                            opts.type='3dfw';
                            opts.event_type = 'ar_impression';
                            opts.event_detail = 'webar';
                            if (FlixjQ('.flix_selector_3d').length)
                                opts.event_detail = 'webar|3dfw';
                            flixtracking.log(opts, status);

                            flixtracking.hsArImpression=true;

                        }else if(typeof flixhotspot.oldresults!='undefined' && typeof flixhotspot.oldresults.hotspots!='undefined' && flixhotspot.results.settings[0].no_hotspots && flixhotspot.results.settings[0].no_hotspots==true){
                            flixtracking.log(opts, status);
                        }
                        else{
                            logqa('NO HOT LOG')
                            
                        }

                        //adjacency log
                        if(typeof window.adjacency_map!='undefined' && !flixtracking.adjacencyhotspotloaded && (opts.type=='interactive') && (opts.event_type && opts.event_type=='page') ){  
                            opts.event_detail='hotspot'             
                            flixtracking.products.adjacency(opts);
                            flixtracking.adjacencyhotspotloaded=true;
                        }                                              

                        if( ( window.comparecheck == 'undefined' || window.comparecheck==false) && (FlixjQ('#flix_hotspots .flix_hs_product_comparison').length > 0 || FlixjQ('#flix_hotspotsmob .flix_hsmob_product_comparison').length > 0)){
                            window.comparecheck=true;
                            flixtracking.products.comparisonv2.init();
                            logqa('Ct v2 init from desk hot')
                        }

                    }

                        //hotspot click

                    if(flixtracking.hotspotloaded==false){
                        flixtracking.delegate('click', '#flix_hotspots .flix_hs', function(event) {
                            var id=''
                            if(flixhotspot.results){                                
                                id=this.id.replace(flixhotspot.results.settings[0].prefix, '')
                                var value = 'Hotspot_'+opts.edvalueT+'_'+id;
                            }else{
                                id=this.id.replace('flix_', '')
                                var value = 'Hotspot_'+opts.edvalueT+'_'+id;
                            }
                            opts.type='interactive';
                            logqa('hotspot click', value);                            
                            
                            if(flixhotspot.results.hotspots && flixhotspot.results.hotspots[id] && flixhotspot.results.hotspots[id].productId)
                                opts.product_id=flixhotspot.results.hotspots[id].productId
                            
                            flixtracking.logMedia(opts,value);


                            if(id=='product_thirdpartyapp'){   
                                flixtracking.products.thirdpartywidget.hotspot();
                            }

                        });                        
                        //flixar clicks desktop
                        flixtracking.delegate('click', '#flix_hotspots .ek-desktop', function(event) {
                            logqa('desktop flixar click');                            
                            flixtracking.products.hotspot('qr_click','qr_open');
                        });
                    
                        flixtracking.hotspotloaded=true;
                    }
                }
            }else{
                setTimeout(function(){
                    if (typeof flixtracking != 'undefined' && typeof flixtracking.products != 'undefined')
                    flixtracking.products.hotspot(et, ed)
                }, 1000)
            }
        },
        hotspotmob: function (et, ed, status) {
            logqa('in hotspotmob log--'+ et+"__"+ed+"__"+status);
            if(typeof flixhotspotmob!='undefined'){
                logqa('hot flixhotspotmob')                
                var opts=flixhotspotmob.data;
                if(window.flixJsCallbacks)
                    window.flixJsCallbacks.pageView = window.flixJsCallbacks.pageView || {log : false, beat: false};
                
                if(flixhotspotmob.data){
                    logqa('hotmob data')
                    opts.type='interactive';
                    if(!opts.product_id && opts.p)
                        opts.product_id=opts.p
                    opts.edvalueT=opts.mpn || opts.ean || opts.product_id

                    if(et || ed){
                        logqa('hotmob ed et')
                        opts.event_detail=ed;               
                        opts.event_type= et;
                        
                        if (ed == 'hotspot_webar' || et == 'webar_click') {
                            opts.event_type = 'webar_click';
                            opts.event_detail = ''
                        } else if (opts.event_type == 'dwelltime') {
                            logqa('dwelltime log')
                            opts.event_detail = ed;
                        } else if (opts.event_type == 'launch') {
                            logqa('launch log')
                            opts.event_detail = ed;
                        } 
                        
                        if (ed == 'qr_loaded' || ed == 'qr_close')
                            opts.event_detail = ed;
                        //if(FlixjQ('#flix_hotspots').length>0){
                            flixtracking.log(opts, status);
                        //}
                    }else{
                        //page
                        logqa('hotmob page')
                        opts.event_type='page'
                        var value = 'Hotspot_'+opts.edvalueT+'_';
                        opts.event_detail=value;

                        //flixtracking.isMobile==true ||

                        flixtracking.log(opts, status); 
                        
                        //adjacency log
                        if(typeof window.adjacency_map!='undefined' && !flixtracking.adjacencyhotspotloaded && (opts.type=='interactive') && (opts.event_type && opts.event_type=='page') ){  
                            opts.event_detail='hotspot'             
                            flixtracking.products.adjacency(opts);
                            flixtracking.adjacencyhotspotloaded=true;
                        }                        



                        if( ( window.comparecheck == 'undefined' || window.comparecheck==false) && (FlixjQ('#flix_hotspots .flix_hs_product_comparison').length > 0 || FlixjQ('#flix_hotspotsmob .flix_hsmob_product_comparison').length > 0)){
                            window.comparecheck=true;
                            flixtracking.products.comparisonv2.init();
                            logqa('Ct v2 init from mob hot')
                        }

                    }

                        //hotspot click


                    if(flixtracking.hotspotmobloaded==false){
                        flixtracking.delegate('click', '#flix_hotspotsmob .flix_hsmob', function(event) {
                            var id='';
                            if(flixhotspotmob.results){                                
                                id=this.id.replace(flixhotspotmob.results.settings[0].prefix, '');
                                id=id.replace('mob', '');
                                var value = 'Hotspot_'+opts.edvalueT+'_'+id;
                            }else{
                                id=this.id.replace('flix_', '');
                                id=id.replace('mob', '');
                                var value = 'Hotspot_'+opts.edvalueT+'_'+id;
                            }

                            opts.type='interactive';
                            logqa('hotspotmob click', value);                            
                            
                            if(flixhotspotmob.results.hotspots && flixhotspotmob.results.hotspots[id] && flixhotspotmob.results.hotspots[id].productId)
                                opts.product_id=flixhotspotmob.results.hotspots[id].productId
                            
                            flixtracking.logMedia(opts,value);

                            if(id=='product_thirdpartyapp'){   
                                flixtracking.products.thirdpartywidget.hotspot();
                            }
                        });
                        //mobile hotspot click
                        flixtracking.delegate('click', '.flix-mobtab', function(event) {
                            id=this.dataset.tabname
                            var value = 'Hotspot_'+opts.edvalueT+'_'+id;
                            
                            opts.type='interactive';
                            logqa('hotspotmob click', value);                            
                            
                            if(flixhotspotmob.results.hotspots && flixhotspotmob.results.hotspots[id] && flixhotspotmob.results.hotspots[id].productId)
                                opts.product_id=flixhotspotmob.results.hotspots[id].productId
                            
                            flixtracking.logMedia(opts,value);

                            if(id=='product_thirdpartyapp'){   
                                flixtracking.products.thirdpartywidget.hotspot();
                            }
                        });
                        
                        flixtracking.hotspotmobloaded=true;
                    }
                }
            }else{
                setTimeout(function(){
                    if (typeof flixtracking != 'undefined' && typeof flixtracking.products != 'undefined')
                    flixtracking.products.hotspot(et, ed)
                }, 1000)
            }
        },
        microsite: function (opts) {
            logqa('in microsite log');

            opts.type='sis';
            flixtracking.log(opts);

            if(flixtracking.micrositeloaded==false){
                flixtracking.micrositeloaded=true;
                
                flixtracking.logTime(opts, 0);
                setInterval(function(){
                    flixtracking.logTime(opts)
                }, 10000);

                flixtracking.delegate('click', '#'+opts.flixcontainer+' *[data-media]',function(event) {
                    value = this.dataset.media; 
                        opts.type='sis';
                    logqa('media', value); 
                    if(!FlixjQ(event.target).closest('.flix-video-close').length)             
                        flixtracking.logMedia(opts,value);
                });
                flixtracking.delegate('click', '#'+opts.flixcontainer+' *[data-page]',function(event) {
                    value = this.dataset.page;  
                        opts.type='sis'; 
                    logqa('page', value);  
                    if(!FlixjQ(event.target).closest('.flix-video-close').length)     
                        flixtracking.logPage(opts,value);
                });
                flixtracking.delegate('click', '#'+opts.flixcontainer+' *[data-click]',function(event) {
                    value = this.dataset.click;  
                        opts.type='sis'; 
                    logqa('click', value);  
                    if(!FlixjQ(event.target).closest('.flix-video-close').length)     
                        flixtracking.logClick(opts,value);
                });

                flixtracking.delegate('click', '#'+opts.flixcontainer+' a',function(event) {
                    if(!this.hasAttribute('data-media') && !this.hasAttribute('data-page') && !this.hasAttribute('data-click')){
                        var value = "";
                        _img = FlixjQ(this).find("img");
                        if(_img && _img.attr('alt')){
                            value = _img.attr('alt');
                        }else{
                            value = FlixjQ(this).text();
                        }

                        logqa('click', value);       
                        flixtracking.logClick(opts,value);
                    }
                });

            }


        },
        comparison: {
            init: function () {
                logqa('comparison init- new') 
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }
                opts.type='minisite';
                if (opts.mpn === undefined) {
                    opts.mpn = '';
                }

                flixtracking.logging('compare', 'impression', opts, opts.mpn);
                this.clicks();

                if(FlixjQ('.ui-tabs-nav li').length){
                    window.addEventListener('scroll', flixtracking.products.comparison.checkViewport);
                    FlixjQ('.ui-tabs-nav li').on('click', function(){
                        
                        var tabno=FlixjQ(this).find('a').attr('href');
                        logqa('Minisite logs-'+tabno);     
                        if(FlixjQ(tabno).find('.inpage_selector_comparison').length)  
                            flixtracking.products.comparison.elementInViewport('.inpage_selector_comparison');
                    })
                }else if(FlixjQ('[data-for="flix-mbl-comparison"]').length){
                    FlixjQ('[data-for="flix-mbl-comparison"]').on('click', function(){ 
                        setTimeout(function(){
                            if (typeof flixtracking != 'undefined' && typeof flixtracking.products != 'undefined')
                            window.addEventListener('scroll', flixtracking.products.comparison.checkViewport);
                        }, 200);
                    });
                }else{
                    window.addEventListener('scroll', flixtracking.products.comparison.checkViewport);
                }
            },
            clicks: function () {
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }
                /*FlixjQ('.flix-comp-prod-title .flix-comp-clickable, .flix-comp-trac-product .flix-comp-clickable, .flix-comp-product .flix-comp-prod-image .flix-comp-clickable').on('click', function () {
                    var attached_mpn = FlixjQ(this).attr('rel');
                    var price = FlixjQ(this).attr('price');
                    flixtracking.logging('compare', 'productpage', opts, attached_mpn, price);
                });*/
                FlixjQ(document).on('click', '.flix-comp-clickable' , function() {
                    var attached_mpn = FlixjQ(this).attr('rel');
                    var price = FlixjQ(this).attr('price');
                    flixtracking.logging('compare', 'productpage', opts, attached_mpn, price);
                });

                FlixjQ('.flix-comp-control-prev').on('click', function () {
                    flixtracking.logging('compare', 'media', opts, 'prev');
                });

                FlixjQ('.flix-comp-control-next').on('click', function () {
                    flixtracking.logging('compare', 'media', opts, 'next');
                });

                FlixjQ('.flix-comp-toggle [data-flix-media]').removeAttr('data-flix-media');
                FlixjQ('.flix-comp-toggle').on('click', function () {                         
                    flixtracking.logging('compare', 'media', opts, 'flix-arrow-toggle');
                });

            },
            checkViewport: function(element) {
                flixtracking.products.comparison.elementInViewport('.inpage_selector_comparison');

                flixtracking.products.comparison.elementInViewport('#inpage_container');
            },
            visibilitychange: function(state, type){
                //document.title = document.visibilityState;
                logqa('visibilitychange-'+type)
                if(document.visibilityState=='hidden' && typeof flixtracking!='undefined' && flixtracking.products!='undefined'){
                    flixtracking.products.comparison.dwelltimer('stop', '.inpage_selector_comparison')
                    flixtracking.products.comparison.dwelltimer('stop', '#inpage_container')
                    
                }
                else{
                }
            }, 
            dwelltimer: function(state, element){
                //logqa('dwelltimer-'+state+"__"+element)
                let CheckDataset;
                if (document.querySelector(element))
                    CheckDataset = document.querySelector(element).dataset.flixtime2;
                var lastt= CheckDataset || 0;
               
                if (lastt && lastt!=0 && state=='stop') {
                    var lastt=lastt
                    tdiff = Date.now() - lastt;
                    type='ct'
                    if(element && element.search('inpage_container')!=-1)
                        type='inpage'

                    var artime=type+'_time_'+tdiff;

                    logqa(type+'-timer stop- '+tdiff); 
                    if(tdiff > 0){
                        flixtracking.logging('compare', 'dwelltime', null , artime);
                    }
                   
                    document.querySelector(element).removeAttribute('data-flixtime2')
                } 
                else if (state=='start' && lastt==0 ){ 
                    logqa('dwelltimer timer start- new'+element); 

                    //check stop dwell when user leaves the page
                    document.addEventListener('visibilitychange', flixtracking.products.comparison.visibilitychange);

                    //minisite tab change
                    if(FlixjQ('.ui-tabs-nav li').length){
                        FlixjQ('.ui-tabs-nav li').one('click', function(){
                            var tabno=FlixjQ(this).find('a').attr('href')
                            logqa('Minisite tab click-'+tabno)     
                            if(FlixjQ(tabno).find('.inpage_selector_comparison').length==0)                                      
                                flixtracking.products.comparison.dwelltimer('stop', '.inpage_selector_comparison')
                        })
                    }
                    document.querySelector(element).dataset.flixtime2= Date.now();
                         
                }       
            },
            elementInViewport: function(element) {
                var myElement = document.querySelector(element);
                if(myElement){
                    var bounding = myElement.getBoundingClientRect();
                    var myElementHeight = myElement.offsetHeight;
                    var myElementWidth = myElement.offsetWidth;
                    var bounding = myElement.getBoundingClientRect();

                    if (bounding.top >= -myElementHeight 
                        && bounding.left >= -myElementWidth
                        && bounding.right <= (window.innerWidth || document.documentElement.clientWidth) + myElementWidth
                        && bounding.bottom <= (window.innerHeight || document.documentElement.clientHeight) + myElementHeight) {

                        if(!document.querySelector(element).dataset.flixtime2){
                            flixtracking.products.comparison.dwelltimer('start', element )
                            //log view CT  
                            if(element=='.inpage_selector_comparison' && FlixjQ(element).is(":visible"))                 
                                flixtracking.logging('compare', 'media', null , 'views');
                        }
                    } else {
                        if(document.querySelector(element).dataset.flixtime2)
                            flixtracking.products.comparison.dwelltimer('stop', element)                                
                    }
                }
            }
        },
        comparisonv2: {
            init: function () {
                logqa('comparison V2 init- new') 
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }
                opts.type='minisite';
                if (opts.mpn === undefined) {
                    opts.mpn = '';
                }

                flixtracking.logging('compare', 'impression', opts, opts.mpn);

                this.clicks();
                this.pageposition();

                setTimeout(function(){
                    var v2prodids='';
                    FlixjQ('.flix-compv2-product').each(function(i){
                        v2prodids+=FlixjQ(this).attr('data-compv2-pid')+';'
                    });
                    if (typeof flixtracking != 'undefined')
                    flixtracking.logging('compare', 'launch', opts, v2prodids);
                }, 2000);
                

                //excluded by stock
                var exstock=FlixjQ('[data-compv2-excludedbystock]').attr('data-compv2-excludedbystock')
                if(exstock && exstock.length){
                    exstock=exstock.split('|')
                    FlixjQ.each(exstock,function(no, id){
                        if(id.length)
                            flixtracking.logging('compare', 'ctexclusion', opts, '1;'+id);
                    });
                }
                
                //excluded by price
                var exprice=FlixjQ('[data-compv2-excludedbyprice]').attr('data-compv2-excludedbyprice')
                if(exprice && exprice.length){
                    exprice=exprice.split('|')
                    FlixjQ.each(exprice,function(no, id){
                        if(id.length)
                            flixtracking.logging('compare', 'ctexclusion', opts, '2;'+id);
                    });  
                }

                if(FlixjQ('.ui-tabs-nav li').length){
                    FlixjQ('.ui-tabs-nav li').on('click', function(){
                        window.addEventListener('scroll', flixtracking.products.comparison.checkViewport);
                        
                        var tabno=FlixjQ(this).find('a').attr('href');
                        logqa('Minisite logs-'+tabno);     
                        if(FlixjQ(tabno).find('.inpage_selector_comparison').length)  
                            flixtracking.products.comparisonv2.elementInViewport('.inpage_selector_comparison');
                    })
                }else if(FlixjQ('[data-for="flix-mbl-comparison"]').length){
                    FlixjQ('[data-for="flix-mbl-comparison"]').on('click', function(){ 
                        setTimeout(function(){
                            if (typeof flixtracking != 'undefined' && typeof flixtracking.products != 'undefined')
                            window.addEventListener('scroll', flixtracking.products.comparisonv2.checkViewport);
                        }, 200);
                    });
                }else{
                    window.addEventListener('scroll', flixtracking.products.comparisonv2.checkViewport);
                }
            },
            clicks: function () {
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }

                /*FlixjQ('.flix-compv2-prod-title .flix-compv2-clickable, .flix-compv2-trac-product .flix-compv2-clickable, .flix-compv2-product .flix-compv2-prod-image .flix-compv2-clickable').on('click', function () {
                    var attached_mpn = FlixjQ(this).attr('rel');
                    var price = FlixjQ(this).attr('price');
                    flixtracking.logging('compare', 'productpage', opts, attached_mpn, price);
                });*/
                flixtracking.delegate('click', '.flix-compv2-trac-buy .flix-compv2-clickable, .flix-compv2-linkBtn' , function() {
                    /*var attached_mpn = FlixjQ(this).attr('rel');*/
                    var prodid=''
                    if(FlixjQ(this).closest('.flix-compv2-product').length && FlixjQ(this).closest('.flix-compv2-product').attr('data-compv2-pid'))
                        prodid = FlixjQ(this).closest('.flix-compv2-product').attr('data-compv2-pid');
                    var price = FlixjQ(this).attr('price');
                    flixtracking.logging('compare', 'productpage', opts, prodid, price);
                });

                //pagination next prev
                flixtracking.delegate('click', '.flix-compv2-control-prev', function () {
                    logqa('flix-compv2-control-prev')
                    flixtracking.logging('compare', 'media', opts, 'prev');
                    setTimeout(function(){
                        FlixjQ('.flix-cp-target').each(function(){
                            var pid=FlixjQ(this).attr('data-compv2-pid');
                            if(!FlixjQ(this).hasClass('flix-ct-pos'))
                                flixtracking.logging('compare', 'position', opts, pid);
                            FlixjQ(this).addClass('flix-ct-pos')
                        });
                    }, 1200)
                    
                });
                flixtracking.delegate('click', '.flix-compv2-control-next', function () {
                    logqa('flix-compv2-control-next')
                    flixtracking.logging('compare', 'media', opts, 'next');
                    setTimeout(function(){
                        FlixjQ('.flix-cp-target').each(function(){
                            var pid=FlixjQ(this).attr('data-compv2-pid');
                            if(!FlixjQ(this).hasClass('flix-ct-pos'))
                                flixtracking.logging('compare', 'position', opts, pid);
                            FlixjQ(this).addClass('flix-ct-pos')
                        });
                    }, 1200)
                });

                //toggle subheading
                flixtracking.delegate('click', '.flix-compv2-toggle' , function() {
                    logqa('flix-compv2-toggle')
                    var textval= FlixjQ(this).find('.flix-compv2-itemDesc').text()
                    textval=textval.replace(' ⓘ','')
                    textval=textval.replace('ⓘ','')
                    textval=textval.replace('%20%20','')
                    var toggleval='expand_'
                    if(!FlixjQ(this).hasClass('flix-compv2-toggleactive'))
                        var toggleval='collapse_'
                             
                    flixtracking.logging('compare', 'media', opts, toggleval+textval);
                });

                //tooltip hover
                flixtracking.delegate('click', '.flix-has-tooltip' , function() {
                    if(FlixjQ(this).attr('title') && FlixjQ(this).attr('title').length>0) {        
                        logqa('flix-has-tooltip');
                        flixtracking.logging('compare', 'media', opts, 'tooltip');
                    }
                });

                //remove product
                flixtracking.delegate('click', '.flix-compv2-close' , function() {
                    logqa('flix_close')
                    var prodid= FlixjQ(this).closest('.flix-compv2-product').attr('data-compv2-pid')
                    flixtracking.logging('compare', 'media', opts, 'remove_'+prodid);
                });
                //boost product position
                flixtracking.delegate('click', '.flix-compv2-toggle-movebtn', function () {
                    logqa('flix-toggle-movebtn')
                    var prodid= FlixjQ(this).closest('.flix-compv2-product').attr('data-compv2-pid')
                    flixtracking.logging('compare', 'media', opts, 'boost_'+prodid);
                });


            },
            checkViewport: function(element) {
                flixtracking.products.comparisonv2.elementInViewport('.inpage_selector_comparison');

                flixtracking.products.comparisonv2.elementInViewport('#inpage_container');
            },
            visibilitychange: function(state, type){
                //document.title = document.visibilityState;
                logqa('visibilitychange-'+type)
                if(document.visibilityState=='hidden' && typeof flixtracking!='undefined' && flixtracking.products!='undefined'){
                    flixtracking.products.comparisonv2.dwelltimer('stop', '.inpage_selector_comparison')
                    flixtracking.products.comparisonv2.dwelltimer('stop', '#inpage_container')
                    
                }
                else{
                }
            }, 
            dwelltimer: function(state, element){
                //logqa('dwelltimer-'+state+"__"+element)
                if(document.querySelector(element))
                    var lastt=document.querySelector(element).dataset.flixtime2 || 0;
                
                if (lastt && lastt!=0 && state=='stop') {
                    var lastt=lastt
                    tdiff = Date.now() - lastt;
                    type='ct'
                    if(element && element.search('inpage_container')!=-1)
                        type='inpage'

                    var artime=type+'_time_'+tdiff;

                    logqa(type+'-timer stop- '+tdiff); 
                    if(tdiff > 0){
                        flixtracking.logging('compare', 'dwelltime', null , artime);
                    }
                   
                    document.querySelector(element).removeAttribute('data-flixtime2')
                } 
                else if (state=='start' && lastt==0 ){ 
                    logqa('dwelltimer timer start- new'+element); 
                    
                    //check stop dwell when user leaves the page
                    document.addEventListener('visibilitychange', flixtracking.products.comparisonv2.visibilitychange);

                    //minisite tab change
                    if(FlixjQ('.ui-tabs-nav li').length){
                        FlixjQ('.ui-tabs-nav li').one('click', function(){
                            var tabno=FlixjQ(this).find('a').attr('href')
                            logqa('Minisite tab click-'+tabno)     
                            if(FlixjQ(tabno).find('.inpage_selector_comparison').length==0)                                      
                                flixtracking.products.comparisonv2.dwelltimer('stop', '.inpage_selector_comparison')
                        })
                    }
                    document.querySelector(element).dataset.flixtime2= Date.now();
                    
                    
                }       
            },
            elementInViewport: function(element) {
                var myElement = document.querySelector(element);
                if(myElement){
                    var bounding = myElement.getBoundingClientRect();
                    var myElementHeight = myElement.offsetHeight;
                    var myElementWidth = myElement.offsetWidth;
                    var bounding = myElement.getBoundingClientRect();

                    if (bounding.top >= -myElementHeight 
                        && bounding.left >= -myElementWidth
                        && bounding.right <= (window.innerWidth || document.documentElement.clientWidth) + myElementWidth
                        && bounding.bottom <= (window.innerHeight || document.documentElement.clientHeight) + myElementHeight) {

                        if(!document.querySelector(element).dataset.flixtime2){
                            flixtracking.products.comparisonv2.dwelltimer('start', element )
                            //log view CT  
                            if(element=='.inpage_selector_comparison' && FlixjQ(element).is(":visible")){                
                                flixtracking.logging('compare', 'media', null , 'views');
                                var v2prodids='';
                                FlixjQ('.flix-compv2-product').each(function(i){
                                    if(FlixjQ(this).attr('data-compv2-pid'))
                                        v2prodids+=FlixjQ(this).attr('data-compv2-pid')+';'
                                }); 
                                if(!flixtracking.ctviewwed)
                                    flixtracking.logging('compare', 'view', null , v2prodids);
                                flixtracking.ctviewwed=1

                                function ctposition(){
                                    if(FlixjQ('.flix-cp-target').length && !flixtracking.products.comparisonv2.ctpos){      
                                        FlixjQ('.flix-cp-target').each(function(){
                                            var pid=FlixjQ(this).attr('data-compv2-pid');
                                            if(!FlixjQ(this).hasClass('flix-ct-pos'))
                                                flixtracking.logging('compare', 'position', null, pid);
                                            FlixjQ(this).addClass('flix-ct-pos')
                                        });
                                        flixtracking.products.comparisonv2.ctpos=1
                                    }else{
                                        setTimeout(function(){  
                                            ctposition()
                                        }, 2000);
                                    }
                                }
                                ctposition();
                            }
                        }
                    } else {
                        if(document.querySelector(element).dataset.flixtime2)
                            flixtracking.products.comparisonv2.dwelltimer('stop', element)                                
                    }
                }
            }, 
            pageposition: function(){
                //logqa('dwelltimer-'+state+"__"+element)
                logqa('pageposition')
                var toptrac=[];
                var middletrac=[];
                var bottomtrac=[];
                FlixjQ(window).scroll(function() {

                    FlixjQ('[id*=flixinpage_],[data-flix-embed-meta="features"]').each(function(inPcount, b){

                        if(FlixjQ(this).find(".inpage_selector_comparison").length>0 && FlixjQ(this).find(".inpage_selector_comparison").offset()){

                            var top_of_element = FlixjQ(this).find(".inpage_selector_comparison").offset().top;
                            var bottom_of_element = FlixjQ(this).find(".inpage_selector_comparison").offset().top + FlixjQ(this).find(".inpage_selector_comparison").outerHeight();
                            var middle_of_element = FlixjQ(this).find(".inpage_selector_comparison").offset().top + FlixjQ(this).find(".inpage_selector_comparison").outerHeight()/2;

                            var bottom_of_screen = FlixjQ(window).scrollTop() + window.innerHeight;
                            var top_of_screen = FlixjQ(window).scrollTop();
                            var pagepos='1';

                            if(((bottom_of_screen+20 )> top_of_element) && (top_of_screen < bottom_of_element)){


                                if(bottom_of_screen < top_of_element &&  FlixjQ.inArray( inPcount, toptrac )==-1){
                                   
                                    logqa('Top of inPage');
                                    pagepos=0;
                                    toptrac.push(inPcount);

                                }

                                if(bottom_of_screen > middle_of_element &&  FlixjQ.inArray( inPcount, middletrac )==-1){
                                    logqa('Middle of ct');
                                    pagepos=50;
                                    middletrac.push(inPcount);
                                }

                                if(bottom_of_screen > bottom_of_element && FlixjQ.inArray( inPcount, bottomtrac )==-1){
                                    logqa('Bottom of ct');
                                    pagepos=100;
                                    bottomtrac.push(inPcount);
                                }

                                if( pagepos!='1'){         
                                    flixtracking.logging('compare', 'viewpoint', opts, 'ct_view_'+pagepos)
                                }

                            }else {
                                //logqa('Inpage not visible yet')
                            }
                        }
                    })
                });
            }
        },
        thirdpartywidget:{
            init: function () {
                logqa('3p init- new')
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }
                opts.type='3p';
                if (opts.mpn === undefined) {
                    opts.mpn = '';
                }

                var Array3P = [],uniqueArray3P=[],Ed_3p=FlixjQ(".flix-3rdwidget").data("3p");
                if(FlixjQ('.flix-3rdwidget').length){
                    FlixjQ('[data_app_id]').each(function (index, values) {
                        var value3p = FlixjQ(this).attr('data_app_id');
                        Array3P.push(value3p);
                        Array3P.forEach(function(index) {
                            if (!uniqueArray3P.includes(index)) {
                                uniqueArray3P.push(index);
                                opts.app_id=index;
                                flixtracking.logging('3p', 'page', opts,'');
                            }
                        });
                    });
                }



                this.pageposition();

                // Bose button tracking fix  //
                flixtracking.delegate('click', '.flix-bose-widget-button', function () {
                    opts.app_id=FlixjQ(this).closest('.flix-3rd-widget-multi').find('.flix-3p-multi-button-control-content').attr('data_active_app_id');
                    flixtracking.logging('3p', 'media', opts, '3p_Interactive');
                    window.addEventListener('scroll', flixtracking.products.thirdpartywidget.checkViewport);
                });
                // Bose button tracking fix end //

                flixtracking.delegate('click', '.flix-close-3p', function () {
                    opts.app_id=FlixjQ(this).attr('data_app_id');
                    flixtracking.logging('3p', 'media', opts, '3p_close');
                    flixtracking.products.thirdpartywidget.dwelltimer('stop', '.flix-3p-multi-button-control-content-inner.flix-3p-active-frame')
                });

                flixtracking.delegate('click', '#inpage_container .flix-3p-multi-button-control-title', function () {
                    opts.app_id=FlixjQ(this).attr('data-flixmapping_id');
                    FlixjQ(this).closest('.flix-3p-multi-button-control').find(".flix-3p-multi-button-control-content-inner[data_app_id="+opts.app_id+"]");
                    element='#inpage_container .flix-3p-multi-button-control-content-inner.flix-3p-active-frame'
                    flixtracking.products.thirdpartywidget.elementInViewport('.flix-3p-multi-button-control-content-inner.flix-3p-active-frame');
                    if(FlixjQ(element).is(":visible") &&  FlixjQ(element).css('display') !== 'none' && !FlixjQ(element).hasClass( "flix-appload-fired" ) && !FlixjQ(element).closest('.share-bubble,.share-bubblemob').length){
                        FlixjQ(element).addClass("flix-appload-fired")
                        opts.app_id=FlixjQ(element).closest('.flix-3p-multi-button-control').find('.flix-3p-multi-button-control-content').attr('data_active_app_id');
                        flixtracking.logging('3p', 'appload', opts, '');

                    }
                });

                if(FlixjQ('.ui-tabs-nav li').length){

                    if(((FlixjQ('.ui-tabs-nav li').length ==1 && FlixjQ('.flix-3rd-widget-multi').length > 0) || (FlixjQ('.ui-widget-content .flix-3rd-widget-multi') && FlixjQ('.ui-widget-content .flix-3rd-widget-multi').is(':visible'))) && FlixjQ('.flix-3p-multi-button-control').css('display') !== 'none'){
                        window.addEventListener('scroll', flixtracking.products.thirdpartywidget.checkViewport);
                    }

                    FlixjQ('.ui-tabs-nav li').on('click', function(){
                        window.addEventListener('scroll', flixtracking.products.thirdpartywidget.checkViewport);

                        var tabno=FlixjQ(this).find('a').attr('href');
                        logqa('Minisite logs-'+tabno);
                        if(FlixjQ(tabno).find('.flix-3rd-widget-multi').length)
                            flixtracking.products.thirdpartywidget.elementInViewport('.flix-3p-multi-button-control-content-inner.flix-3p-active-frame');
                    })
                }else{
                    window.addEventListener('scroll', flixtracking.products.thirdpartywidget.checkViewport);
                }
            },
            checkViewport: function(element) {
                if(FlixjQ('.flix-3p-multi-button-control-content-inner.flix-3p-active-frame').css('display') !== 'none')
                    flixtracking.products.thirdpartywidget.elementInViewport('.flix-3p-multi-button-control-content-inner.flix-3p-active-frame');
                //flixtracking.products.thirdpartywidget.elementInViewport('#inpage_container');
            },
            visibilitychange: function(state, type){
                //document.title = document.visibilityState;
                logqa('visibilitychange-'+type)
                if(document.visibilityState=='hidden' && typeof flixtracking!='undefined' && flixtracking.products!='undefined'){
                    flixtracking.products.thirdpartywidget.dwelltimer('stop', '.flix-3p-multi-button-control-content-inner.flix-3p-active-frame')
                }
                else{
                }
            },
            hotspot: function(state, type){   
                logqa('thirdpartywidget hotspot')
                var Array3P = [],uniqueArray3P=[],Ed_3p=FlixjQ(".flix-3rdwidget").data("3p"),hsappload = false;
                function fireHS3pagelog() {
                    if (FlixjQ('.share-bubble .flix-3rdwidget, .share-bubblemob .flix-3rdwidget').length) {
                        FlixjQ('.share-bubble [data_app_id],.share-bubblemob [data_app_id]').each(function (index, values) {
                            var value3p = FlixjQ(this).attr('data_app_id');
                            Array3P.push(value3p);
                            Array3P.forEach(function (index) {
                                if (!uniqueArray3P.includes(index)) {
                                    uniqueArray3P.push(index);
                                    opts.app_id = index;
                                    flixtracking.logging('3p', 'page', opts, 'hotspot');
                                }
                            });
                        });
                        opts.app_id = uniqueArray3P[0];
                        if (!hsappload){
                            flixtracking.logging('3p', 'appload', opts, 'hotspot');
                            hsappload = true;
                        }

                    }else {
                        setTimeout(function(){
                            fireHS3pagelog();
                        }, 1000);
                    }
                }
                setTimeout(function(){
                    fireHS3pagelog();
                }, 500);
                FlixjQ('.share-bubble .flix-3p-multi-button-control-content .flix-3p-multi-button-control-content-inner:eq(0),.share-bubblemob .flix-3p-multi-button-control-content .flix-3p-multi-button-control-content-inner:eq(0)').addClass('flix-appload-fired');
                flixtracking.delegate('click', '.share-bubble .flix-3p-multi-button-control-title, .share-bubblemob .flix-3p-multi-button-control-title', function () {
                    setTimeout(function(){
                        opts.app_id=FlixjQ(this).attr('data-flixmapping_id');
                        FlixjQ('.share-bubble .flix-3p-multi-button-control-content .flix-3p-multi-button-control-content-inner:eq(0),.share-bubblemob .flix-3p-multi-button-control-content .flix-3p-multi-button-control-content-inner:eq(0)').addClass('flix-appload-fired');
                        element='.share-bubble .flix-3p-multi-button-control-content-inner.flix-3p-active-frame,.share-bubblemob .flix-3p-multi-button-control-content-inner.flix-3p-active-frame'
                        if(FlixjQ(element).is(":visible") &&  FlixjQ(element).css('display') !== 'none' && !FlixjQ(element).hasClass( "flix-appload-fired" ) && FlixjQ(element).closest('.share-bubble,.share-bubblemob').length){
                            FlixjQ(element).addClass("flix-appload-fired")
                            opts.app_id=FlixjQ(element).closest('.flix-3p-multi-button-control').find('.flix-3p-multi-button-control-content').attr('data_active_app_id');
                            flixtracking.logging('3p', 'appload', opts, 'hotspot');
                        }
                    }, 500);
                });
                flixtracking.products.thirdpartywidget.dwelltimerhot('start')

                setTimeout(function(){
                    var target='.share-bubble .flix-3rdwidget, .share-bubblemob .flix-3rdwidget'
                    const sections = document.querySelectorAll(target);
                    const config = {
                        rootMargin: '50px 0px 50px 0px',
                       threshold: 0
                    };
                    let isLeaving = false;

                    let observer = new IntersectionObserver(function (entries, self) {
                        var delay = 0;
                        entries.forEach(entry => {
                            if (entry.isIntersecting) {
                                isLeaving = true;
                               //self.unobserve(entry.target);
                                FlixjQ('.share-bubble .flix-3p-multi-button-control-content .flix-3p-multi-button-control-content-inner:eq(0),.share-bubblemob .flix-3p-multi-button-control-content .flix-3p-multi-button-control-content-inner:eq(0)').addClass('flix-appload-fired');
                                logqa('thirdpartywidget visible ');
                            }else if (isLeaving) {
                                isLeaving = false;
                                // leaving the section
                                logqa('thirdpartywidget hidden ');

                                flixtracking.products.thirdpartywidget.dwelltimerhot('stop')
                                self.unobserve(entry.target);
                            }
                        });
                    }, config);

                    //support IntersectionObserver
                    if ('IntersectionObserver' in window) {
                        setTimeout(function(){
                            sections.forEach(section => {
                              observer.observe(section);
                            });
                        }, 1000);   
                    }else{
                        //fallback

                    }
                }, 1000)
                
            },
            visibilitychangehot: function(state, type){                
                logqa('visibilitychangehot-'+type)
                if(document.visibilityState=='hidden'  && typeof flixtracking!='undefined' && flixtracking.products!='undefined'){
                    if (typeof flixtracking != 'undefined' && typeof flixtracking.products != 'undefined')
                    flixtracking.products.thirdpartywidget.dwelltimerhot('stop');
                }
                else{
                }
            },
            dwelltimerhot: function(state){
                logqa('dwelltimerhot-'+state)
                if (state=='stop') {
                    var lastt=flixtracking.threephotdwelltime;
                    var tdiff = Date.now() - lastt;                    
                    var artime='hot_app_time_'+tdiff;
                    
                    logqa('stop- '+artime);
                    if(tdiff > 0){
                        
                        logqa('dwelltime'+artime)
                        flixtracking.logging('3p', 'dwelltime', opts, artime);

                        document.removeEventListener('visibilitychange', flixtracking.products.thirdpartywidget.visibilitychangehot);
                    }
                }
                else if(state=='start'){
                    flixtracking.threephotdwelltime= Date.now();
                    document.addEventListener('visibilitychange', flixtracking.products.thirdpartywidget.visibilitychangehot);
                }
                
            },
            dwelltimer: function(state, element){
                //logqa('dwelltimer-'+state+"__"+element)
                if(document.querySelector(element))
                    var lastt=document.querySelector(element).dataset.flixtime2 || 0;

                if (lastt && lastt!=0 && state=='stop') {
                    var lastt=lastt
                    tdiff = Date.now() - lastt;
                    type='3p'
                    if(element && element.search('inpage_container')!=-1)
                        type='inpage'

                    var artime='app_time_'+tdiff;
                    opts.app_id=FlixjQ(element).closest('.flix-3p-multi-button-control').find('.flix-3p-multi-button-control-content').attr('data_active_app_id');
                    logqa(type+'-timer stop- '+tdiff);
                    if(tdiff > 0){
                        flixtracking.logging('3p', 'dwelltime', opts, artime);
                    }

                    document.querySelector(element).removeAttribute('data-flixtime2')
                }
                else if (state=='start' && lastt==0 ){
                    logqa('dwelltimer timer start- new'+element);

                    //check stop dwell when user leaves the page
                    document.addEventListener('visibilitychange', flixtracking.products.thirdpartywidget.visibilitychange);

                    //minisite tab change
                    if(FlixjQ('.ui-tabs-nav li').length){
                        FlixjQ('.ui-tabs-nav li').one('click', function(){
                            var tabno=FlixjQ(this).find('a').attr('href')
                            logqa('Minisite tab click-'+tabno)
                            if(FlixjQ(tabno).find('.flix-3rdwidget').length==0)
                                flixtracking.products.thirdpartywidget.dwelltimer('stop', '.flix-3p-multi-button-control-content-inner.flix-3p-active-frame')
                        })
                    }
                    document.querySelector(element).dataset.flixtime2= Date.now();


                }
            },
            elementInViewport: function(element) {
                var myElement = document.querySelector(element);
                if(myElement){
                    var bounding = myElement.getBoundingClientRect();
                    var myElementHeight = myElement.offsetHeight;
                    var myElementWidth = myElement.offsetWidth;
                    var bounding = myElement.getBoundingClientRect();

                    if (bounding.top >= -myElementHeight
                        && bounding.left >= -myElementWidth
                        && bounding.right <= (window.innerWidth || document.documentElement.clientWidth) + myElementWidth
                        && bounding.bottom <= (window.innerHeight || document.documentElement.clientHeight) + myElementHeight) {

                        if(!document.querySelector(element).dataset.flixtime2){
                            flixtracking.products.thirdpartywidget.dwelltimer('start', element )
                        }
                        //log view 3p
                        if(element=='.flix-3p-multi-button-control-content-inner.flix-3p-active-frame' && FlixjQ(element).is(":visible") &&  FlixjQ(element).css('display') !== 'none' && !FlixjQ(element).hasClass( "flix-appload-fired" ) && !FlixjQ(element).closest('.share-bubble,.share-bubblemob').length){
                            FlixjQ(element).addClass("flix-appload-fired")
                            opts.app_id=FlixjQ(element).closest('.flix-3p-multi-button-control').find('.flix-3p-multi-button-control-content').attr('data_active_app_id');
                            flixtracking.logging('3p', 'appload', opts, '');

                        }

                    } else {
                        if(document.querySelector(element).dataset.flixtime2)
                            flixtracking.products.thirdpartywidget.dwelltimer('stop', element)
                    }
                }
            },
            pageposition: function(){
                //logqa('dwelltimer-'+state+"__"+element)
                logqa('pageposition')
                var toptrac=[];
                var middletrac=[];
                var bottomtrac=[];
                FlixjQ(window).scroll(function() {
                    FlixjQ('.flix-3rd-widget-multi').each(function(inPcount, b){
                        var Viewtab = FlixjQ(this);

                        if(Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").length>0 && Viewtab.find('.flix-3p-multi-button-control-content-inner.flix-3p-active-frame').css('display') !== 'none' && Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").offset()){
                            var top_of_element = Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").offset().top;
                            var bottom_of_element = Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").offset().top + Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").outerHeight(false);
                            var middle_of_element = Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").offset().top + Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").outerHeight(false)/2;

                            var bottom_of_screen = FlixjQ(window).scrollTop() + window.innerHeight;
                            var top_of_screen = FlixjQ(window).scrollTop();
                            var pagepos='1';


                            opts.app_id=Viewtab.find('.flix-3p-multi-button-control-content').attr('data_active_app_id');

                            if(((bottom_of_screen+20 )> top_of_element) && (top_of_screen < bottom_of_element)){
                                if (!Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").hasClass("flix-top-view-fired")){
                                    toptrac=[];
                                }else if (!Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").hasClass("flix-middle-view-fired")){
                                    middletrac=[];
                                }else if (!Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").hasClass("flix-bottom-view-fired")){
                                    bottomtrac=[];
                                }
                                if((bottom_of_screen < top_of_element) &&  FlixjQ.inArray( inPcount, toptrac )==-1 && !Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").hasClass("flix-top-view-fired")){
                                    logqa('Top of 3p');
                                    pagepos=0;
                                    toptrac.push(inPcount);
                                    Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").addClass('flix-top-view-fired')
                                    flixtracking.logging('3p', 'viewpoint', opts, '3p_view_'+pagepos)
                                }

                                if(bottom_of_screen > middle_of_element &&  FlixjQ.inArray( inPcount, middletrac )==-1 && !Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").hasClass("flix-middle-view-fired")){
                                    logqa('Middle of 3p');
                                    pagepos=50;
                                    middletrac.push(inPcount);
                                    Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").addClass('flix-middle-view-fired')
                                    flixtracking.logging('3p', 'viewpoint', opts, '3p_view_'+pagepos)
                                }

                                if(bottom_of_screen > bottom_of_element && FlixjQ.inArray( inPcount, bottomtrac )==-1 && !Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").hasClass("flix-bottom-view-fired")){
                                    logqa('Bottom of 3p');
                                    pagepos=100;
                                    bottomtrac.push(inPcount);
                                    Viewtab.find(".flix-3p-multi-button-control-content-inner.flix-3p-active-frame").addClass('flix-bottom-view-fired')
                                    flixtracking.logging('3p', 'viewpoint', opts, '3p_view_'+pagepos)
                                }


                            }else {
                                //logqa('Inpage not visible yet')
                            }
                        }
                    })
                });
            }
        },
        reviews: {
            reviews_count : 0,
            reviewsContainer:'',
            init: function (opts) {
                logqa('init review log');
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }
                reviews_count = flixtracking.products.reviewsContainer.attr('data-rcount');
                flixtracking.logging('review', 'page', opts, 'review_' + reviews_count);
                this.clicks();
            },
            clicks: function () {
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }

                
                FlixjQ('body').on('click', '[class*=-topreviews]', function () {
                    flixtracking.logging('review', 'page', opts, 'review_scrollTo');
                });

                FlixjQ('body').on('click', 'nav[class*=_pagination] ul li [data-href]', function () {
                    var page = FlixjQ(this).attr("data-href");
                    flixtracking.logging('review', 'page', opts, 'review_page_' + page);
                });

                FlixjQ("div#minisite_tabs ul").find("[data-m-typeid='14']").on('click', function () {
                    flixtracking.logging('review', 'matchhit', opts, 'review_tabClick');
                });
            }
        },
        pagetracking:{
            init: function(){
                //track when inpage is in viewport
                logqa('start inpage visible tracking')

                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }

                var toptrac=[];
                var middletrac=[];
                var bottomtrac=[];
                FlixjQ(window).scroll(function() {
                    FlixjQ('[id*=flixinpage_]').each(function(inPcount, b){
                        

                        if(FlixjQ(this).find("#inpage_container").length>0 && FlixjQ(this).find("#inpage_container").offset()){

                            var top_of_element = FlixjQ(this).find("#inpage_container").offset().top;
                            var bottom_of_element = FlixjQ(this).find("#inpage_container").offset().top + FlixjQ(this).find("#inpage_container").outerHeight();
                            var middle_of_element = FlixjQ(this).find("#inpage_container").offset().top + FlixjQ(this).find("#inpage_container").outerHeight()/2;

                            var bottom_of_screen = FlixjQ(window).scrollTop() + window.innerHeight;
                            var top_of_screen = FlixjQ(window).scrollTop();
                            var pagepos='';

                            if((bottom_of_screen > top_of_element) && (top_of_screen < bottom_of_element)){

                                if(top_of_screen < top_of_element &&  FlixjQ.inArray( inPcount, toptrac )==-1){
                                    logqa('Top of inPage');
                                    pagepos='Top of inPage'
                                    toptrac.push(inPcount);
                                }

                                if(top_of_screen > middle_of_element &&  FlixjQ.inArray( inPcount, middletrac )==-1){
                                    logqa('Middle of inPage');
                                    pagepos='Middle of inPage'
                                    middletrac.push(inPcount);
                                }

                                if(bottom_of_screen > bottom_of_element && FlixjQ.inArray( inPcount, bottomtrac )==-1){
                                    logqa('Bottom of inPage');
                                    pagepos='Bottom of inPage'
                                    bottomtrac.push(inPcount);
                                }

                                if(typeof FlixjQ.fn.inPage=='function' && pagepos!=''){
                                    var opts = FlixjQ.fn.inPage.data;
                                    flixtracking.logging('visible', 'media', opts, pagepos, null, inPcount)
                                }

                            }else {
                                //logqa('Inpage not visible yet')
                            }
                        }
                    })
                });

            }
        },
        logotracking: {
            logoclickonce:0,
            init: function () {
                logqa('start logo tracking')
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }
                flixtracking.logging('logo', 'page', opts, 'logo_page');
                this.hover();
                this.click();
            },
            hover: function () {
                FlixjQ('body').on('hover', '.flix-logop', function () {
                    if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                        opts = FlixjQ.fn.inPage.data;
                    } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                        opts = FlixjQ.fn.minisite.data;
                    }
                    if(flixtracking.products.logoclickonce==0)
                        flixtracking.logging('logo', 'media', opts, 'logo_hover');
                    flixtracking.products.logoclickonce++;
                });
            },
            click: function () {
                FlixjQ('body').on('touchstart', '.flix-logop', function () {
                    if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                        opts = FlixjQ.fn.inPage.data;
                    } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                        opts = FlixjQ.fn.minisite.data;
                    }
                    if(flixtracking.products.logoclickonce==0)
                        flixtracking.logging('logo', 'media', opts, 'logo_click');
                    flixtracking.products.logoclickonce++;
                });
            }
        },
        ugctracking: {
            init: function () {
                logqa('start ugc tracking')
                if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                    opts = FlixjQ.fn.inPage.data;
                } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                    opts = FlixjQ.fn.minisite.data;
                }
                flixtracking.logging('ugc', 'page', opts, 'ugc_page'); 
                this.click();                       
            },
            click: function () {  
                var timerId = null; 
                var lo = {"handled":false}                      
                FlixjQ('body').on('click touchstart', '[data-flix-ucgmedia]', function () {
                    if(lo.handled === false){ 
                        lo.handled = true;
                        if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                            opts = FlixjQ.fn.inPage.data;
                        } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                            opts = FlixjQ.fn.minisite.data;
                        }
                        var opts2=opts;
                        var ucgtarget=FlixjQ(this).attr('data-flix-ucgmedia').toLowerCase()
                        if(FlixjQ(this).closest('.share-bubble').length)
                            ucgtarget='hotspot_'+ucgtarget                            
                        if(typeof opts=='undefined' && typeof flixhotspotmob && typeof flixhotspotmob.data!='undefined')
                            opts2=flixhotspotmob.data;
                        if(typeof opts=='undefined' && typeof flixhotspot && typeof flixhotspot.data!='undefined')
                            opts2=flixhotspot.data;
                        if(typeof window.flixlightboxclick=='undefined' && !timerId){
                            logqa('clicked- '+ FlixjQ(this).attr('data-flix-ucgmedia'))
                            timerId = setTimeout(function(){
                                flixtracking.logging('ugc', 'media', opts2, ucgtarget); 
                                timerId = null;
                            },200);                                
                        }
                    }
                    setTimeout(function(){  
                        lo.handled = false;
                    }, 500)
                });                        
            }
        },
        flctracking: {
            init: function() {
                logqa("start flc tracking via prototype");
                this.checkmatch()
            },
            checkmatch:function(){
                setTimeout(function(){
                    if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                        opts = FlixjQ.fn.inPage.data;
                    } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                        opts = FlixjQ.fn.minisite.data;
                    }
                    if(FlixjQ('#flix-location-content').children().length > 0 ){
                        flixtracking.logging("flc", "location", opts, "flc_location ");
                        flixtracking.products.flctracking.click();
                    }else{
                        flixtracking.logging("flc", "matchmisslocation ", opts, "flc_matchmisslocation  ");
                    }
                },1500)
            },
            click: function() {
                var lo = {"handled":false}
                FlixjQ("body").on("click touchstart", "[data-flix-flcmedia]", function() {
                    if(lo.handled === false){ 
                        lo.handled = true;
                        if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                            opts = FlixjQ.fn.inPage.data;
                        } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                            opts = FlixjQ.fn.minisite.data;
                        }
                        var opts2=opts;
                        var flctarget = FlixjQ(this).attr("data-flix-flcmedia").toLowerCase();
                        logqa("clicked- " + flctarget);
                        flixtracking.logging("flc", "locationmedia", opts2, flctarget)
                    }
                    setTimeout(function(){  
                        lo.handled = false;
                    }, 500)
                })
            }
        },
        buttontracking: {
            init: function () {
                logqa('init buttontracking log');
                var type='inpage';
                if(typeof opts=='undefined' && typeof FlixjQ!='undefined' && typeof FlixjQ.fn.inPage!='undefined')
                    opts=FlixjQ.fn.inPage.data;
                if(typeof FlixjQ.fn.minisite!='undefined'){
                    type='minisite'
                    if(typeof opts=='undefined')
                        opts=FlixjQ.fn.minisite.data;
                }
                var cc=0;
                var lo = {"handled":false}  
                var medialog=function(mediatext, prodid){
                    var data2 = JSON.parse(JSON.stringify(opts));
                    //var data2=FlixjQ.extend(true, {}, opts)  
                    if(prodid && prodid!='')
                        data2.product=prodid;
                    if(cc==0){
                        logqa('clicked data-flix-media: '+mediatext)
                        cc=1;
                        flixtracking.logging(type, 'media', data2, mediatext);
                        setTimeout(function(){ cc=0}, 500)
                    }
                }
                flixtracking.delegate('click', '[data-flix-media]', function () {

                    var mediatext=FlixjQ(this).attr('data-flix-media');
                    var targetval=FlixjQ(this).closest('[id*=flixinpage_]');
                    logqa('data-flix-media click-'+targetval+"__"+mediatext);
                    if(FlixjQ(targetval).find('span[id^=inpage-data], span[class^=mobile-data]').length){
                        var prodid=FlixjQ(targetval).find('span[id^=inpage-data]').attr('id') || FlixjQ(targetval).attr('alt') ;
                        prodid=prodid.toString().replace('inpage-data-','');
                        medialog(mediatext, prodid)
                    }else{
                        medialog(mediatext)
                    }
                    medialog(mediatext, prodid)
                });
            }
        },
        jwplayer : function (mediaid_now, type, attr, div_name) {
            logqa('in jwlogs - '+type )

            //page load and start video
            if(type=='mediaload'){
                var et='mediaload';
                var ed=mediaid_now;
                this_position='';
            }
            
            //video times, 1st sec, 10sec and complete
            if(type=='mediatime'){   
                var this_position=attr;  
                var et='mediatime';
                var ed=mediaid_now;                        
            }

            if(typeof FlixjQ.fn.inPage !='undefined' || typeof FlixjQ.fn.minisite!='undefined' || (flixtracking.getUrlParameter('p') && flixtracking.getUrlParameter('l')) || (typeof FlixjQ.fn.hotspot!='undefined')){
                _base='//media.flixcar.com'
                if(flixtracking.getUrlParameter('base') && flixtracking.getUrlParameter('base').length>0)
                        _base=flixtracking.getUrlParameter('base')

                var opts={
                    type:'inpage',
                    event_type: et || '',
                    event_detail: ed || '',
                    product_id: flixtracking.getUrlParameter('p') || '',
                    distributor: flixtracking.getUrlParameter('d') || '',
                    language: flixtracking.getUrlParameter('l') || '',
                    pn:pnurl,
                    page_name: pnurl,       
                    mpn: mpn || flixtracking.getUrlParameter('mpn') ||'',
                    ean: flixtracking.getUrlParameter('ean') || '',
                    ver:2,
                    vtime: this_position || '' , 
                    br: flixtracking.getUrlParameter('br') || '',
                    price: flixtracking.getUrlParameter('pr') || '',        
                    currency: flixtracking.getUrlParameter('cur') || '',
                    jwvideo:1,
                    pagedata:{
                        br: flixtracking.getUrlParameter('br') || '',
                        price: flixtracking.getUrlParameter('pr') || '',        
                        currency: flixtracking.getUrlParameter('cur') || '',
                        pn:pnurl,
                        page_name: pnurl   
                    }
                }

                var d=new Date ()

                if(pnurl.search('minisite/show')!=-1 || pnurl.search('minisite.html')!=-1 || (typeof FlixjQ!='undefined' && typeof FlixjQ.fn.minisite!='undefined')){
                    logqa('minisite.log')
                    opts.type='minisite'                    
                }

                if(et=='mediatime' && (this_position=='' || this_position<0.11))
                    opts.vtime=0;

                d.setMinutes( d.getTimezoneOffset() );
                
                opts.ut = d.getTime ();
                
                flixtracking.log(opts);            
            } else{
                logqa('no video tracking ' )
            }  
        },
        cgi: function(event_type, edription){
            logqa('in cgi - '+event_type )

           
            var aaurl=function(sParam){
                var sPageURL=decodeURI(window.location.search.substring(1)),
                    sURLVariables=sPageURL.split('&'),
                    sParameterName,
                    i;

                for (i=0; i < sURLVariables.length; i++) {
                    sParameterName=sURLVariables[i].split('=');

                    if (sParameterName[0]===sParam) {
                        sParameterName[1]=decodeURIComponent(sParameterName[1])
                        return sParameterName[1]===undefined ? true : sParameterName[1];
                    }
                }
            }


            var data={
                product_id: flixtracking.getUrlParameter('p') || '',
                distributor: flixtracking.getUrlParameter('d') || '', //overwritten by data-flix-distributor
                language: flixtracking.getUrlParameter('l') || 'en',
                event_type: event_type || 'page',
                event_detail: edription.toLowerCase() || '',               
                mpn: flixtracking.getUrlParameter('mpn')|| '',
                ean: flixtracking.getUrlParameter('ean')|| '',
                type:'3d',
                pn: aaurl('pn')|| location.href,
                page_name: aaurl('pn') || location.href
            }  

            flixtracking.log(data)
        },
        threedfw: function(event_type, edription){            
            logqa('in 3dfw - '+event_type )
            var pnurl = '', mpn = '';

            
            if (flixtracking.getUrlParameter('pn'))
                pnurl = flixtracking.getUrlParameter('pn');
            pnurl = pnurl.replace(/\|and/g, '&');
            pnurl = pnurl.replace(/\|for/g, '//');
            pnurl = pnurl.replace(/\|que/g, '?');
            pnurl = pnurl.replace(/\|dub/g, ':');
            pnurl = pnurl.replace(/\|is/g, '=');
            pnurl = pnurl.replace(/\|hash/g, '#');
            pnurl = pnurl.replace(/\|per/g, '%');
            if (flixtracking.getUrlParameter('mpn'))
                mpn = flixtracking.getUrlParameter('mpn')
            mpn = mpn.replace(/\|and/g, '&');
            mpn = mpn.replace(/\|for/g, '//');
            mpn = mpn.replace(/\|que/g, '?');
            mpn = mpn.replace(/\|dub/g, ':');
            mpn = mpn.replace(/\|is/g, '=');
            mpn = mpn.replace(/\|hash/g, '#');
            mpn = mpn.replace(/\|per/g, '%');
            if (!window.flixJsCallbacks) {
                var flixJsCallbacks = {
                    _loadCallback: null,
                    _loadInpageCallback: null,
                    _loadMinisiteCallback: null,
                    _loadNoshowCallback: null
                };
                var getFlixCallback = function () {
                    return flixJsCallbacks;
                };
                window.flixJsCallbacks = getFlixCallback();
            }
            if (flixtracking.getUrlParameter('gvid') && flixtracking.getUrlParameter('gvid').length > 0 && window.flixJsCallbacks) {
                window.flixJsCallbacks.gvid = flixtracking.getUrlParameter('gvid')
            }

            var data = {
                arid: flixtracking.getUrlParameter('arid') || '',
                product_id: flixtracking.getUrlParameter('p') || '',
                distributor: flixtracking.getUrlParameter('d') || '', //overwritten by data-flix-distributor
                language: flixtracking.getUrlParameter('l') || 'en',
                event_type: event_type || 'page',
                event_detail: edription.toLowerCase() || '3dfw',
                sid: flixtracking.getUrlParameter('sid') || '',
                br: flixtracking.getUrlParameter('br') || '',
                price: flixtracking.getUrlParameter('pr') || '',
                currency: flixtracking.getUrlParameter('cur') || '',
                ref: '',
                pn: pnurl || document.referrer || '',
                ti: '',
                mpn: flixtracking.getUrlParameter('mpn') || '',
                ean: flixtracking.getUrlParameter('ean') || '',
                type:'3dfw'
            }

            if(data.distributor && data.distributor!='')
                flixtracking.log(data)

        },
        videoChat:function (data){
            logqa('in videoChat log');
            data.type='videochat';
            flixtracking.log(data);
        },
        addtocart: function (data ,ab_hotspot_data) {
            logqa('in addtocart');

            if (flixtracking.noTracking)
                return false;

            var dist='';
            var lan='';
                   
            if(typeof FlixjQ!='undefined' && typeof FlixjQ.fn.inPage!='undefined' ){
                dist=FlixjQ.fn.inPage.data.distributor;
                lan=FlixjQ.fn.inPage.data.language;               
               
            }

            if(!data.d || (data.d && data.d==''))
                data.d = data.distributor || dist;
            if(!data.l || (data.l && data.l==''))
                data.l = data.language || lan;   
            data.view_time = 0;

            var
                d = new Date (),
                _base =  'https://media.flixcar.com/inpage/log.gif',
                encrypt = [],
                _beatUrlnew = flixtracking.trackingDomainBeat,
                _beatNotActive = window.beat_disabled_retailers || [],
                _beatByLanguage = [],
                beat,
                fallback,
                processed = null,
                once_only = [
                    353,
                    1544,
                    2754,
                    607
                ],
                userAgents = [
                    'symbian',
                    'android',
                    'ios'
                ],
                key,
                flixTag,
                i,
                url,
                flixSource=null, indx=-1
                ;
                  
            if (!data.session_id ){
                if(typeof window !== 'undefined' && typeof window.sessionStorage==='object')
                    var guid=sessionStorage.getItem('flixsession');
                if(guid && guid.length)
                    data.session_id=guid;
                else{
                    data.session_id = flixtracking.setGuid.New();
                    if(typeof window !== 'undefined' && typeof window.sessionStorage==='object')
                        sessionStorage.setItem('flixsession', data.session_id); 
                }
            }
            data.gvid = (window.flixJsCallbacks && window.flixJsCallbacks.gvid) ?  window.flixJsCallbacks.gvid : '';
                
            data.pid = ( window.flixJsCallbacks && window.flixJsCallbacks.pid ) ? window.flixJsCallbacks.pid : 0;
            data.product_id=data.comppid || data.pid

            //matchmiss case
            if (flixtracking.matchmissCheck){
                window.flixJsCallbacks.pid=0,data.product_id=0,data.pid=0;
            }
            
            url = _base+"?newtrack&ts=inpage&m=y&et="+data.event_type;
            url += "&sid="+data.session_id;
            url += "&gvid="+data.gvid;
            url += "&p="+data.product_id;
            url += "&d="+data.d;
            url += "&l="+data.l;
            url += "&ed="+encodeURIComponent(data.event_detail);
            url += "&ut=" + d.getTime();

            if(window.flreq){
                var fblan=window.flreq
                for(var i = 0; i < fblan.length; i++ ) {
                    if('inpage'==fblan[i].flreq_service && url.search('&l1=')==-1){
                        if(fblan[i].flreq_language && fblan[i].flreq_language!='null'){
                            var origlan=fblan[i].flreq_language
                            var falllan=fblan[i].language
                            url +="&l1="+ origlan+"&l2="+ falllan;
                            if(data.l!=falllan)
                                url=url.replace("&l="+data.l, "&l="+falllan);                       
                        }else{
                            var origlan=fblan[i].language   
                            url +="&l1="+ origlan       
                        }
                    }
                }
            }

            if(url.search('&l1=')==-1 && data.l){
                url +="&l1="+ data.l
            }

            //ismobile log
            if(typeof flixtracking.isMobile!='undefined'){
                    url += "&ism="+flixtracking.isMobile();      
            }

            //add referrer if missing
            if(url.search('ref=&')!=-1 || url.search('ref')==-1){
                if(document.referrer != null && document.referrer.length > 1){
                    url=url.replace('ref=&','')
                    url+="&ref="+document.referrer;
                }
            }

            //3p App_id update
            if(data.app_id && data.type=='3p'){
                url+="&app_id="+data.app_id;
            }

            if(typeof FlixjQ!='undefined' && typeof window.matching_data!='undefined'){
                var prodid=data.product_id || data.product || data.productid
                if(typeof window.matching_data.main != 'undefined') {
                    FlixjQ.each(window.matching_data.main.data, function (index, values) {
                        if (prodid == index) {
                            if (values.match_id)
                                url += "&mi=" + values.match_id
                            if (values.match_type)
                                url += "&mt=" + values.match_type;
                            if (values['match_type '])
                                url += "&mt=" + values['match_type '];
                        }
                    });
                }
                if(typeof window.matching_data.complimentary != 'undefined') {
                    FlixjQ.each(window.matching_data.complimentary.data, function (index, values) {
                        if (prodid == index) {
                            if (values.match_id)
                                url += "&mi=" + values.match_id
                            if (values.match_type)
                                url += "&mt=" + values.match_type;
                            if (values['match_type '])
                                url += "&mt=" + values['match_type '];
                        }
                    });
                }
            }

            indx = window.location.search.indexOf('flxsrc=');
            if (indx!==-1)
            {
                //save some parsing efforts on the basis that our source will always be added last
                flixSource = window.location.search.substring(indx);
            }

            if( !! window.flixJsCallbacks.pageCapture ) {
                for (key in window.flixJsCallbacks.pageCapture) {
                    if( window.flixJsCallbacks.pageCapture.hasOwnProperty(key)) {
                        if (key=='pn' && flixSource) window.flixJsCallbacks.pageCapture[key]+= (window.flixJsCallbacks.pageCapture[key].indexOf('?')!==-1 ? "&" : "?")+flixSource;
                        url += "&" + key + '=' + encodeURIComponent( window.flixJsCallbacks.pageCapture[key] );
                    }
                }
            }
            else {
                fallback = flixtracking.parsePage();
                url += "&ti=" + fallback.title;
                if(flixSource) {
                    var decoded = decodeURIComponent(fallback.pn);
                    fallback.pn = encodeURIComponent(decoded + (decoded.indexOf('?')!==-1 ? "&" : "?") +flixSource) ;
                }
                url += "&pn=" + fallback.pn;

            }

            flixTag = ['mpn', 'ean', 'sku'];
            for( i=0; i< flixTag.length; i++ ) {
                if( document.querySelector('script[data-flix-' + flixTag[i] + ']') &&
                    document.querySelector('script[data-flix-' + flixTag[i] + ']').getAttribute('data-flix-' + flixTag[i]) ) {
                    if(url.search(flixTag[i])==-1)
                        url += "&" + flixTag[i] + "=" + document.querySelector('script[data-flix-' + flixTag[i] + ']').getAttribute('data-flix-' + flixTag[i]);
                }
            }

            if( typeof window.flixJsCallbacks.imgCache === 'undefined' ) { window.flixJsCallbacks.imgCache = {};}
            var track = 'img_' + (new Date).getTime();
            window.flixJsCallbacks.imgCache[track] = new Image();
            if( data.d && (encrypt.indexOf(+data.d) !==-1) && data.event_type === 'cart_click') {
                url = process( url );
            }

            if(url.search('et=undefined')!=-1){
                logqa('cancel empty complementary alert')
                logqa(url)
                return false;
            }

            //abtesting sales attribute
            try{
                if(data.d=='6' || data.d=='75' || data.d=='174' || data.d=='1394' || data.d=='418'){
                    var sessionprod = sessionStorage.getItem('flix');                
                    if(sessionprod==null)                 
                        var flixprod=[];
                    else
                        var flixprod = JSON.parse(sessionprod);                    
                    
                        var idmatch=''
                        if(sessionprod!=null){
                            var parsedObject = JSON.parse(sessionprod);  
                            for (var prod of parsedObject) {            
                                if (prod.pid === data.product_id ) {
                                    idmatch=1
                                }
                            }
                        }
                        
                        if(idmatch==''){
                            var fprod = {}
                            fprod.pid=data.product_id
                            fprod.mpn=document.querySelector('script[data-flix-mpn]').getAttribute('data-flix-mpn')
                            fprod.ean=document.querySelector('script[data-flix-ean]').getAttribute('data-flix-ean')
                            fprod.gvid=data.gvid;
                            fprod.sid=data.session_id;
                            fprod.lan=data.l;
                            fprod.d=data.d;
                            if(window.flixJsCallbacks['ab_'+data.d]!= null && window.flixJsCallbacks['ab_'+data.d].inpage!=null){                                
                                fprod.version=window.flixJsCallbacks['ab_'+data.d].ab_version||'';
                                fprod.target=window.flixJsCallbacks['ab_'+data.d].target||'';
                                fprod.visitor_id=window.flixJsCallbacks['ab_'+data.d].ab_visitor_id||'';
                                fprod.groups=window.flixJsCallbacks['ab_'+data.d].ab_groups||'';
                                fprod.ab_id=window.flixJsCallbacks['ab_'+data.d].ab_id||'';
                                fprod.device=window.flixJsCallbacks['ab_'+data.d].device||'';
                            }

                            //fnac pid
                            if(typeof tc_vars!='undefined' && typeof tc_vars.product_id!='undefined')
                                fprod.prodretailerpid=tc_vars.product_id;
                            if(typeof digitalData!='undefined' && typeof digitalData.product[0].productInfo.sku!='undefined' && typeof digitalData.product[0].productInfo.sku!='undefined')
                                fprod.retailersku=digitalData.product[0].productInfo.sku;

                            flixprod.push(fprod);
                            var jsonObject = JSON.stringify(flixprod);
                            sessionStorage.setItem('flix', jsonObject);
                        }
                }
            } catch(ignore){}

            
            window.flixJsCallbacks.imgCache[track].src = ( !! processed ) ? processed : url;
            window.flixJsCallbacks.imgCache[track].event_type = data.event_type;
            
            if(_beatNotActive.indexOf( +data.d ) < 0 && data.event_type === 'cart_click') {
                //beat1
                setTimeout(function(){beat = 'img_' + (new Date()).getTime();}, 0);
                window.flixJsCallbacks.imgCache[beat] = new Image();

                window.flixJsCallbacks.imgCache[beat].src = _beatUrlnew + url.replace(_base, '');
                window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;

                //abtesting beaturl update
                if(window.flixJsCallbacks['ab_'+data.d]!= null && window.flixJsCallbacks['ab_'+data.d].inpage!=null){
                    setTimeout(function(){beat = 'img_' + (new Date()).getTime();}, 0);
                    window.flixJsCallbacks.imgCache[beat] = new Image();
                    var _beatUrlnew2=_beatUrlnew;
                    _beatUrlnew2 ='//rt.flix360.io/beat';
                    
                    if(_base.search('dev')!=-1 || flixtracking.site_url.search('dev')!=-1 ||   flixtracking.site_url.search('alpha')!=-1)
                        _beatUrlnew2 ='//alpha-rt.flix360.com/beat'


                    
                    var ab_version=window.flixJsCallbacks['ab_'+data.d].version||'';
                    var target=window.flixJsCallbacks['ab_'+data.d].target||'';
                    var ab_visitor_id=window.flixJsCallbacks['ab_'+data.d].visitor_id||'';
                    var ab_groups=window.flixJsCallbacks['ab_'+data.d].groups||'';
                    var ab_id=window.flixJsCallbacks['ab_'+data.d].ab_id||'';
                    var device=window.flixJsCallbacks['ab_'+data.d].device||'';
                    if(url.search('&visitor_id')==-1)
                        url = url+"&version="+ab_version+"&target="+target+"&visitor_id="+ab_visitor_id+"&groups="+ab_groups+"&ab_id="+ab_id+"&device="+device;

                    window.flixJsCallbacks.imgCache[beat].src = _beatUrlnew2 + url.replace(_base, '');
                    window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                }
                
            }
            else if(typeof(ab_hotspot_data)!="undefined"){
                if(ab_hotspot_data!=null){
                    var ab_visitor_id=ab_hotspot_data.visitor_id;
                    var ab_version=ab_hotspot_data.version
                    var ab_groups=ab_hotspot_data.groups
                    if(url.search('&visitor_id')==-1)
                        url += "&visitor_id="+ab_visitor_id+"&version="+ab_version+"&groups="+ab_groups;
                }
            }
            // Hotspot A/B test END

            //disable the target once it has fired.
            
            if(data.l)
                data.language=data.l;
            
            //CT V2 cart click - deactivated on request from SIO

            /*
            var ab_res_id = 'ab_'+data.d;  
            if(document.querySelector('.flix-comparev2'))
                flixtracking.logging('compare', 'cart_click', data); 
                         
            else if( window.flixJsCallbacks[ab_res_id] && window.flixJsCallbacks[ab_res_id].inpage 
                && window.flixJsCallbacks[ab_res_id].ab_id =='707'
                && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages!='undefined' 
                &&
                (
                    (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_comparison_table !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_comparison_table =="boolean") 
                    ||
                    (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage =="boolean") 
                    ||
                    (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template =="boolean")
                    

                )                        
            ){
                flixtracking.logging('compare', 'cart_click', data);
            }*/
        },
        attachFlix: function (data) {
            logqa('attachFlix');
            data.type='attach'
            flixtracking.log(data);
        },
        noshow: function (data) {
            logqa('noshow');
            if(!data.product_id)
                data.product_id="0";
            if(!data.product)
                data.product="0";
            if(data.type!='interactive' || ( typeof window.flixContentHolder=='undefined' || typeof window.flixContentHolder.mobileHotspotData=='undefined' || window.flixContentHolder.mobileHotspotData.hotspots==0) ){
                 flixtracking.log(data);
            }
        },
        adjacency: function(data){
            logqa('adjacency');
            var opts = JSON.parse(JSON.stringify(data));
            opts.type='adjacency';

            //hotspots
            //opts.event_detail='hotspot'
            if(opts.event_detail=='hotspot'){
                FlixjQ.each(window.adjacency_map, function (index, values) {                   
                    if (values.match_id){
                        opts.adjacencymatch_id=values.id;  
                        opts.match_id=values.match_id;
                        opts.match_type=values.mtadjcnt;

                        if(typeof flixhotspot!='undefined' && flixhotspot.results){
                            var results=JSON.stringify(flixhotspot.results.hotspots);
                            if(results.search(index)!=-1){
                                logqa('hotspot adjacency page');
                                flixtracking.log(opts);   
                            }
                        }else if(typeof flixhotspotmob!='undefined'){
                            var results=JSON.stringify(flixhotspotmob.results.hotspots);
                            if(results.search(index)!=-1){
                                logqa('hotspot adjacency page');
                                flixtracking.log(opts);   
                            }
                        }                   
                                                             
                    }                
                });
            }else{
            setTimeout(function(){
                if (FlixjQ('[data-flixadjacencies]').length) {
                    var AdjArray = [],uniqueArray=[];
                    FlixjQ('[data-flixadjacencies]').each(function (index, values) {
                        var adjvalue = FlixjQ(this).attr('data-flixadjacencies');
                        AdjArray.push(adjvalue);
                        AdjArray.forEach(function(index) {
                            if (!uniqueArray.includes(index)) {
                                uniqueArray.push(index);
                            }
                        });
                    });

                    FlixjQ.each(window.adjacency_map, function (index, values) {
                        if(uniqueArray.includes(index) === true){
                            logqa('Adjacency page load - '+ uniqueArray + " index - " + index);
                            if (values.match_id) {
                                opts.adjacencymatch_id = values.id;
                                opts.match_id = values.match_id;
                                opts.match_type = values.mtadjcnt;

                                if (FlixjQ('[data-adjacencies]').closest('[id^=flixinpage]').find('span[id^=inpage-data]').length) {
                                    var prodid = FlixjQ('[data-adjacencies]').closest('[id^=flixinpage]').find('span[id^=inpage-data]').attr('id');
                                    opts.product_id = prodid.toString().replace('inpage-data-', '');
                                    flixtracking.log(opts);
                                }

                            }

                        }
                    });
                }

            }, 2500)
                /*
                setTimeout(function(){
                    FlixjQ.each(window.adjacency_map, function (index, values) {                   
                        if (values.match_id){
                            opts.adjacencymatch_id=values.id;  
                            opts.match_id=values.match_id;
                            opts.match_type=values.mtadjcnt;

                            if(FlixjQ('[data-adjacencies]').closest('[id^=flixinpage]').find('span[id^=inpage-data]').length){ 
                                logqa('inpage adjacency page');
                                var prodid=FlixjQ('[data-adjacencies]').closest('[id^=flixinpage]').find('span[id^=inpage-data]').attr('id');                                                    
                                opts.product_id=prodid.toString().replace('inpage-data-','');
                                flixtracking.log(opts);   
                            }
                                                                 
                        }                
                    });
                }, 2000)
                */

                //add clicks
                setTimeout(function(){
                    FlixjQ('span[data-flixadjacencies], [data-flixadjacencies][data-flix-media]').each( function (index, values) {
                        if(!FlixjQ(this).hasClass('flix-adj')){
                            FlixjQ(this).addClass('flix-adj');
                            var thisadj=FlixjQ(this);
                            var adjvalue=FlixjQ(this).attr('data-flixadjacencies');
                            if(FlixjQ(this).closest('[data-flix-media]').length){
                                FlixjQ(this).closest('[data-flix-media]').on('click', function(){                                                       
                                    opts.type='adjacency';
                                    logqa('Adjacency click -'+ adjvalue);
                                    FlixjQ.each(window.adjacency_map, function (index, values) {                   
                                        if (index==adjvalue){
                                            opts.adjacencymatch_id=values.id;  
                                            opts.match_id=values.match_id;
                                            opts.match_type=values.mtadjcnt;  
                                            if(thisadj.closest('[id^=flixinpage]').find('span[id^=inpage-data]').length){ 
                                                var prodid=thisadj.closest('[id^=flixinpage]').find('span[id^=inpage-data]').attr('id');                                                    
                                                opts.product_id=prodid.toString().replace('inpage-data-','')

                                                flixtracking.logMedia(opts,adjvalue);
                                            }
                                        }                
                                    });
                                                                     
                                }); 
                            }else{
                                FlixjQ(this).on('click', function(){                        
                                    opts.type='adjacency';
                                    logqa('Adjacency click -'+ adjvalue);
                                    FlixjQ.each(window.adjacency_map, function (index, values) {                   
                                        if (index==adjvalue){
                                            opts.adjacencymatch_id=values.id;  
                                            opts.match_id=values.match_id;
                                            opts.match_type=values.mtadjcnt;  
                                            if(thisadj.closest('[id^=flixinpage]').find('span[id^=inpage-data]').length){ 
                                                var prodid=thisadj.closest('[id^=flixinpage]').find('span[id^=inpage-data]').attr('id');                                                    
                                                opts.product_id=prodid.toString().replace('inpage-data-','')

                                                flixtracking.logMedia(opts,adjvalue);
                                            }                                               
                                        }                
                                    });
                                    
                                });
                            }
                        }
                    });
                }, 3000)
            }  
        }

    },
    checkLoader: function(data){
        logqa('checkLoader');

        //new production - //delivery.local/
        //beta - //delivery-beta.flix360.io/"
        //alpha - //delivery-alpha.flix360.io/
        //local - //delivery.local/

        if(typeof FlixjQ!='undefined' && typeof FlixjQ.fn.inPage!='undefined' && typeof FlixjQ.fn.inPage.urlMain!='undefined')
            flixtracking.site_url=FlixjQ.fn.inPage.urlMain;
        else if(typeof FlixjQ!='undefined' && typeof FlixjQ.fn.minisite!='undefined' && typeof FlixjQ.fn.minisite.urlMain!='undefined')
            flixtracking.site_url=FlixjQ.fn.minisite.urlMain;
        else if(typeof FlixjQ!='undefined' && typeof FlixjQ.fn.microsite!='undefined' && typeof FlixjQ.fn.microsite.urlMain!='undefined')
            flixtracking.site_url=FlixjQ.fn.microsite.urlMain;

        flixtracking.trackingDomain='https://media.flixcar.com/';
        flixtracking.trackingDomainBeat= 'https://rt.flix360.com/beat/';

        if(flixtracking.site_url.search('delivery-beta')>0 || location.href.search('demo-beta.flix360.io') != -1 || location.href.search('beta=1') != -1  || location.href.search('live=2')!= -1){
            //beta tracking
            logqa('beta - beta logs');
            flixtracking.trackingDomain= 'https://t-beta.flix360.io/';
            flixtracking.trackingDomainBeat= 'https://b-beta.flix360.io/';
        }
        else if(flixtracking.site_url.search('delivery-alpha')!=-1 || location.href.search('demo-local.flix360.io')!= -1 || location.href.search('demo-alpha.flix360.io') != -1 || location.href.search('alpha=1') != -1  || location.href.search('live=3') != -1 || location.href.search('media.flixcar.com/3dfw/q/') != -1){
            //alpha tracking
            logqa('alpha - alpha logs');
            flixtracking.trackingDomain= 'https://t-alpha.flix360.io/';
            flixtracking.trackingDomainBeat= 'https://b-alpha.flix360.io/';
        }

        flixtracking.checkLoaderloaded=true
    },
    log: function (data, status) {
        logqa('log', data, status);

        if(!data.distributor_id && data.distributor)
            data.distributor_id=data.distributor;
        
        if(!data.distributor && data.distributor_id)
            data.distributor=data.distributor_id;
        if(!data.distributor && data.d)
            data.distributor=data.d;
            
        flixtracking.noTracking=false;
        
        //window.cancelinpagetracking                   =true;
        //window.cancelhotspottracking                  =true;
        //window.cancelminisitetracking                 =true;

        //inpage - cancel all tracking apart from hotspot and minisite button
        //hotspot - cancel all hotspot
        //minisite - cancel all tracking
        //video & 3dfw - ignore fallback as its loading the same in both scenarios

        //check for double tracking
        if(window.cancelinpagetracking && (data.type=='inpage' || data.type=='review' || data.type=='attach' || data.type=='compare' || data.type=='logo' || data.type=='ugc')){
            logqa(' Double tracking, stop the tracking')
            return false;
        }

        if(window.cancelhotspottracking && (data.type=='interactive')){
            logqa(' Double tracking, stop the tracking')
            return false;
        }
        
        if(window.cancelminisitetracking && (data.type=='minisite')){
            logqa(' Double tracking, stop the tracking')
            return false;
        }
        
        //hughes loader
        /*if(data.distributor=='7109'){
            flixtracking.trackingDomain='https://media.flixcar.com/'+data.type+'/'
            flixtracking.trackingDomainBeat= '//rt.flix360.com/beat'
        }*/
        
        //deactivated because we have the no tracking list below
        //flixtracking.checkNoTracking();

        if ( (typeof flixtracking.noTracking!='undefined' && flixtracking.noTracking==false) ) {

            if(flixtracking.checkLoaderloaded==false)
                flixtracking.checkLoader(data);
            //no tracking
            var notrackingretailers=[157, 178, 499, 546, 877, 1590, 2694, 4212, 5227, 6069, 6543, 6558, 6791, 6792, 6900, 6971, 7417, 8598, 9253, 12498, 14209, 15237, 16260, 17538, 18122, 6157,11188,12679,18643,18706,18707];

            if(notrackingretailers.indexOf(parseInt(data.distributor))!=-1){
                logqa('This is NO TRACKING retailer'); flixtracking.noTracking = true;
                return false;
            }

            //try{
            if(flixtracking.trackingDomain=='')
                flixtracking.trackingDomain='https://media.flixcar.com/'

            if(flixtracking.trackingDomain.search('media.flixcar.com/')==-1){
                var baseurl=flixtracking.trackingDomain+'log.gif';
            }else
                var baseurl=flixtracking.trackingDomain+data.type+'/log.gif';
                       
            //update 3d url because it has different pattern
            if(data.type=='3d'){
                baseurl='https://media.flixcar.com/interactive/3d/log.gif'
            }
            if(data.type=='3p'){
                baseurl=flixtracking.trackingDomain+'3p/log.gif'
            }
            if(data.type=='adjacency'){
                baseurl=flixtracking.trackingDomain+'adjacency/log.gif'
            }

            var d = new Date (),
            t = '',
            _base = baseurl,
            _beatUrl = flixtracking.trackingDomainBeat,
            _beatNotActive = window.beat_disabled_retailers || [],
            _beatByLanguage = [],
            beat,
            processed = null,
            encrypt = [],
            userAgents = [
                'symbian',
                'android',
                'ios'
            ]
            ;
            if (!data.session_id ){
                if(typeof window !== 'undefined' && typeof window.sessionStorage==='object')
                    var guid=sessionStorage.getItem('flixsession');
                if(guid && guid.length)
                    data.session_id=guid
                else{
                    data.session_id = flixtracking.setGuid.New();
                    if(typeof window !== 'undefined' && typeof window.sessionStorage==='object')
                        sessionStorage.setItem('flixsession', data.session_id); 
                }
            }

            if(typeof main_distributor!='undefined')
                data.distributor=main_distributor

            if(!data.distributor_id)
                data.distributor_id=data.distributor;
            if(!data.distributor)
                data.distributor=data.distributor_id;
            


            d.setMinutes( d.getTimezoneOffset());

            window.flixJsCallbacks.pageViewnew = window.flixJsCallbacks.pageViewnew || {log : false, beat: false};
             
            if(typeof flixfallbackstoreurl!='undefined' && flixfallbackstoreurl!=''){
                data.page_name=flixfallbackstoreurl+'&fallb=1';
                data.pn=flixfallbackstoreurl+'&fallb=1';
            }

            if(!data.page_name){
                var page = this.getURL();
                data.page_name = page;
            }

            data.gvid = (window.flixJsCallbacks && window.flixJsCallbacks.gvid) ?  window.flixJsCallbacks.gvid : '';

            if( typeof FlixjQ!='undefined' && FlixjQ.fn.inPage && FlixjQ.fn.inPage.hasOwn( data.ab_data ) && data.ab_data.expire !== 'expired'){
                var cookieab=''
                if(typeof data.ab_data.cookie!='undefined' && typeof data.ab_data.cookie.abid!='undefined')
                    cookieab=data.ab_data.cookie.abid 
                data.ab = "&ab="+data.ab_data.tst_id+"&abr="+data.ab_data.resource_ref+"&abid="+cookieab;
                if( ! FlixjQ.fn.inPage.defaults.sio_ty ) {
                    FlixjQ.fn.inPage.writeSioTy( window.flixJsCallbacks.gvid, data.ab_data);
                    FlixjQ.fn.inPage.defaults.sio_ty++;
                }
            }   
            
            //minisite page name / referrer
            if ( data.type && data.type=='minisite'){
                pn = window.location.search.match(/\bpn\b=([^&]+)/i);
                if(!window.location.href.search('minisite')==-1)
                    data.page_name = ( !! pn ) ? pn[1] : 'URL not available - Manual http links';    
            }  
            
            if(data.type=='' || !data.type)
                data.type=='inpage'
            
            var url = _base+"?newtrack&ts="+data.type + "&d=" + data.distributor+ "&l=" + data.language  + "&et=" + data.event_type  + "&vtime=" + (data.view_time || data.vtime || 0)+"&gvid="+data.gvid+"&cs=" + flixtracking.tracking+"&cp=" + flixtracking.cookieConsent.provider+"&cd=" + flixtracking.cookieConsent.data+ "&sid=" + data.session_id;   

            if(data.event_detail && data.event_detail.length)
                url +="&ed="+encodeURIComponent(data.event_detail)
            else
                url +="&ed="+""

            if(typeof FlixjQ!='undefined' && ( FlixjQ('#flix-mbl-page').length || FlixjQ('.main_mot_product_wrapper').length) && data.type=='inpage' && data.event_type=='page'){
                url += "&mot=1";
            }

            if(data.distributor=='6' || data.distributor=='174'|| data.distributor=='1394'){
                if(sessionStorage.getItem('flixdist')==null && data.distributor && data.distributor.length>0){
                    sessionStorage.setItem('flixdist', data.distributor)        
                }
                if(sessionStorage.getItem('flixlan')==null && data.language && data.language.length>0){
                    sessionStorage.setItem('flixlan', data.language)        
                }
            }

            //3p App_id update
            if(data.app_id && data.type=='3p'){
                url+="&app_id="+data.app_id;
            }
    
            if(flixtracking.retailercheck && flixtracking.retailercheck.check==false){
                flixtracking.retailercheck.init(data);
            }

            if(flixtracking.retailercheck && flixtracking.retailercheck.cn && flixtracking.retailercheck.cn.length>1){
                url += "&cn="+flixtracking.retailercheck.cn+"&cc="+flixtracking.retailercheck.cc;
            }

            //matchid and matchtype
            if(data.match_id && data.match_id.length>0){
                if (data.match_id)
                    url += "&mi=" + data.match_id
                if (data.match_type)
                    url += "&mt=" + data.match_type;
            }else if(typeof FlixjQ!='undefined' && typeof window.matching_data!='undefined'){
                var prodid=data.product_id || data.product || data.productid
                if(typeof window.matching_data.main != 'undefined') {
                    FlixjQ.each(window.matching_data.main.data, function (index, values) {
                        if (prodid == index) {
                            if (values.match_id)
                                url += "&mi=" + values.match_id
                            if (values.match_type)
                                url += "&mt=" + values.match_type;
                            if (values['match_type '])
                                url += "&mt=" + values['match_type '];
                        }
                    });
                }
                if(typeof window.matching_data.complimentary != 'undefined') {
                    FlixjQ.each(window.matching_data.complimentary.data, function (index, values) {
                        if (prodid == index) {
                            if (values.match_id)
                                url += "&mi=" + values.match_id
                            if (values.match_type)
                                url += "&mt=" + values.match_type;
                            if (values['match_type '])
                                url += "&mt=" + values['match_type '];
                        }
                    });
                }
            }   

            if(data.type=='adjacency'){
                url += "&adjacency_id=" + data.adjacencymatch_id;                
            }
            
            //ismobile log
            if(typeof flixtracking.isMobile!='undefined'){
                    url += "&ism="+flixtracking.isMobile();      
            }

            //microsite variables
            if(data.microsite && data.microsite!='')
                url +="&s="+ data.microsite;        
            if(data.variant)
                url +="&v="+ data.variant;

            //fallback language
            if(window.flreq){
                var fblan=window.flreq
                for(var i = 0; i < fblan.length; i++ ) {
                    if(data.type==fblan[i].flreq_service && url.search('&l1=')==-1){
                        if(fblan[i].flreq_language && fblan[i].flreq_language!='null'){
                            var origlan=fblan[i].flreq_language
                            var falllan=fblan[i].language
                            url +="&l1="+ origlan+"&l2="+ falllan;                        
                        }else{
                            var origlan=fblan[i].language   
                            url +="&l1="+ origlan       
                        }
                    }
                }
            }
            if(url.search('&l1=')==-1 && data.language){
                url +="&l1="+ data.language
            }            

            //if(data.product_id || data.product)
                url +="&p=" + (data.product_id || data.product || data.productid || '');      
            /*url +="&mpn=" + data.mpn;            
            url +="&ean=" + data.ean;*/
            
            /*if( !! document.getElementsByTagName( 'title')) {
                url +="&ti="+document.getElementsByTagName('title')[0].textContent.trim();
            }*/
            //inpage variables

            if (data.event_type=='matchmissinpage' || flixtracking.noTracking || (data.event_type=='matchmisshotspot' && !document.querySelector('script[data-flix-inpage]'))){
                flixtracking.matchmissCheck = true;
            }

            if(data.event_type=='matchmiss' || data.event_type=='matchmisshotspot' || data.event_type=='matchmissinpage' ){                
                url +="&m=0";
            }
            else if(data.type && (data.type=='inpage' || data.type=='interactive')){
                url +="&m=y";                
            }
            else if(data.type && data.type=='minisite' ){  
            

                url +="&m="+(data.minisite_id  || data.minisite || data.product_id)
            }
            else if(data.type && (data.type=='review' || data.type=='compare' || data.type=='3dfw' || data.type=='ugc' || data.type=='logo' || data.type=='visible' || data.type=='flc')  ){                
                url +="&m=i"
            }

            if(data.type && data.type=='minisite' && window.location.href.search('minisite')==-1 && data.event_type!='matchmiss')
                url+=this.pageDataMinisite(data);
            else
                url+=this.pageData(data);
            

            if(data.type && data.type=='minisite' && window.location.href.search('minisite')==-1 && data.event_type!='matchmiss'){
                /*if (url.search('&ti=&')!=-1){
                    logqa('cancel mini', url);
                    return false

                }*/
            }
            
            if( typeof window.flixJsCallbacks.imgCache === 'undefined' ) { 
                window.flixJsCallbacks.imgCache = {};
            }
            
            if( ! window.navigator.userAgent.match(/(ios|symbian|android)/i) && data.distributor_id && (encrypt.indexOf(+data.distributor_id) >= 0)) {
                processed = FlixjQ.fn.inPage.process( url );
            }



            //inpage
            url +="&ut=" + d.getTime();
            //microsite
            url += "&cb=" + d.getTime();

            //minisite
            if ( data.type && data.type=='minisite'){
                url +='&ver=2';               
                url +="&to="+ d.getTimezoneOffset();
                url +="&ss="+ screen.width+'x'+screen.height;
                url +="&pr="+data.price;
                /*url +="&pm="+escape(data.pm);
                url +="&pe="+data.pe;*/
                url +="&a="+ data.asset
            }

            if(typeof flixfallbackstoreurl!='undefined' && flixfallbackstoreurl!=''){
                url+="&pn="+data.page_name;
            }
            
            if ( data.event_type == 'cart_click' || data.event_type == 'alert' ) { 
                url+="&pn="+data.page_name; 
            }

            if (url.search('&pn=')==-1  && data.type=="3dfw" ) {
                if(data.pn)
                    var three3url= data.pn;
                else if(document.referrer)
                    var three3url= document.referrer;
                               
                url+="&pn="+encodeURIComponent(three3url); 
                if(data.arid)
                    url+="&arid="+data.arid;
            }

            if(url.search('=mediaload')!=-1 && (url.search('&pn=')==-1 || url.substring(url.length - 4)=='&pn=') ){
                url=url.replace('&pn=','');
                var pnurl=''
                if(flixtracking.getUrlParameter('pn'))
                    pnurl=flixtracking.getUrlParameter('pn');
                pnurl=pnurl.replace(/\|and/g, '&');
                pnurl=pnurl.replace(/\|for/g, '//');
                pnurl=pnurl.replace(/\|que/g, '?');
                pnurl=pnurl.replace(/\|dub/g, ':');
                pnurl=pnurl.replace(/\|is/g, '=');
                pnurl=pnurl.replace(/\|hash/g, '#');
                pnurl=pnurl.replace(/\|per/g, '%');
                if(pnurl)
                    url+='&pn='+encodeURIComponent(pnurl);                        
            }

            if (typeof pnurl!='undefined' && (data.event_type == 'mediatime' || data.event_type == 'mediaload') && url.search('&pn=')==-1) {
                url+="&pn="+encodeURIComponent(data.pn); 
            }
            if (url.search('&pn=')==-1 && typeof window.flixJsCallbacks.pageCapture!='undefined' && typeof window.flixJsCallbacks.pageCapture.pn!='undefined') {
                url+="&pn="+encodeURIComponent(window.flixJsCallbacks.pageCapture.pn); 
            }

            if (url.search('&pn=')==-1 && typeof data.page_name!='undefined' ) {
                url+="&pn="+encodeURIComponent(data.page_name); 
            }

            //SIS iframe pn value pick
            if(url.search('&pn=')!=-1 && url.search('flixiFramePn')!=-1){
                url=url.replace(/&pn=[^&]*/, "");
                var pnurl='';
                if(flixtracking.getUrlParameter('pn'))
                    pnurl=flixtracking.getUrlParameter('pn');
                pnurl=pnurl.replace(/\|and/g, '&');
                pnurl=pnurl.replace(/\|for/g, '//');
                pnurl=pnurl.replace(/\|que/g, '?');
                pnurl=pnurl.replace(/\|dub/g, ':');
                pnurl=pnurl.replace(/\|is/g, '=');
                pnurl=pnurl.replace(/\|hash/g, '#');
                pnurl=pnurl.replace(/\|per/g, '%');
                logqa(' flixiFramePn = ' + pnurl);
                if(pnurl)
                    url+='&pn='+encodeURIComponent(pnurl);
            }

            //add referrer if missing
            if(url.search('ref=&')!=-1 || url.search('ref')==-1){
                if(document.referrer != null && document.referrer.length > 1){
                    url=url.replace('ref=&','')
                    url+="&ref="+document.referrer;
                }
            }
            // Function to extract parameter value from URL
            function getParamValue(url, paramName) {
                const regex = new RegExp('[?&]' + paramName + '=([^&#]*)');
                const results = regex.exec(url);
                return results ? decodeURIComponent(results[1].replace(/\+/g, ' ')) : null;
            }
            // Extracting 'br' ,ti and 'pn' values
            var flix_br = getParamValue(url, 'br'),flix_price = getParamValue(url, 'price'),flix_title = getParamValue(url, 'ti');

            // Check if brValue is more than 100 characters and update the URL accordingly
            if (flix_br && flix_br.length > 100)
                url=url.replace(/&?br=[^&]*/, ''),url+="&br="+'';
            // Check if flix_price is more than 100 characters and update the URL accordingly
            if (flix_price && flix_price.length > 100)
                url=url.replace(/&?price=[^&]*/, ''),url+="&price="+'';
            // Check if flix_price is more than 100 characters and update the URL accordingly
            if (flix_title && flix_title.length > 200)
                url=url.replace(/&?ti=[^&]*/, ''),url+="&ti="+'';
            
            //comparison table id
            if(data.ct && data.type=='compare'){
                url+="&ct="+data.ct;
            }

            if(url.search('&pn=undefined')!=-1 || url.search('&pn=&')!=-1  ){ 
                url=url.replace('&pn=undefined','');
                url=url.replace('&pn=&','&');
                if(window.parent){
                    var pnurl = (window.location != window.parent.location)
                    ? document.referrer
                    : top.document.URL;   
                }else{
                    var pnurl = document.location.href;
                }
                
                if(pnurl=='')
                    var pnurl = document.location.href;
               
                url+='&pn='+encodeURIComponent(pnurl);                
            }



            //video module id listing
            if(data.event_type == 'mediaload' && flixtracking.getUrlParameter('mid') != 'undefined' && flixtracking.getUrlParameter('mid') != null && flixtracking.getUrlParameter('mid') != ''){
                url+="&mid="+encodeURIComponent('#')+flixtracking.getUrlParameter('mid');
            }

            //3dfw module id listing
            if(data.type && data.type== '3dfw' && flixtracking.getUrlParameter('mid') != 'undefined' && flixtracking.getUrlParameter('mid') != null && flixtracking.getUrlParameter('mid') != ''){
                url+="&mid="+encodeURIComponent('#')+flixtracking.getUrlParameter('mid');
            }

            if(data.mpn && url.search('&mpn=')==-1)
                url+="&mpn="+data.mpn
            if(data.ean && url.search('&ean=')==-1)
                url+="&ean="+data.ean
           
            
            if ( ! window.flixJsCallbacks.pageViewnew.log && (data.type=='inpage' || data.type=='minisite') && data.event_type != 'mediaload' && data.event_type != 'time' && data.event_type != 'mediatime' ) {
                var initBeaconTime = (new Date()).getTime();
                
                url += "&pv=1";
                window.flixJsCallbacks.pageViewnew.log = true;

                beaconData=url;
                if( ! beaconData ) 
                    return false;

                function getString ( objParams, destructure ) {
                    var params = [], obj = {}, prop, stem, preObj, str, fireBeaconTime;
                    var req = ["m", "p", "d", "l", "sid", "gvid", "ut", "ed", "et", "vtime", "ab", "abr", "abid", "pn"];
                    if( ! destructure ){
                      for(var p in objParams) {
                        if( objParams.hasOwnProperty(p) && (req.indexOf(p) >= 0 )) params.push(p + "=" + objParams[p]);
                      }
                      return "?" + params.join("&");
                    }       
                    else {
                      stem = objParams.split("?");
                      if ( stem.length <= 1 ) return false;
                      params = stem[1].split("&");
                      for(var i = 0; i < params.length; i++ ) {
                        prop = params[i].split("=");
                        if( req.indexOf( prop[0] ) >= 0 ){
                          obj[prop[0]] = prop[1];                                      
                        }
                      }
                      return obj;
                    }
                }

                /*if (( !! navigator && !! navigator.sendBeacon )) {
                    preObj = getString(beaconData, true);
                    if( !! preObj ) {
                        preObj.et = "time";
                        window.addEventListener("beforeunload", function(){
                            fireBeaconTime = (new Date()).getTime();
                            preObj.vtime = Math.round(((fireBeaconTime - initBeaconTime) / 1000));
                            preObj.ed = "onexit";
                            str = getString(preObj);
                            var img = new Image();
                            img.src = flixtracking.trackingDomain+'log.gif'+ str+'&ts=inpage';
                        }, false);
                    };
                } */
            }


            if(data.gvid && data.gvid.length && data.session_id && data.session_id.length){
                //beat log only check
                if((!status || status!='beatlog')){
                    logqa('Fire log - ' - url)    
                    var track = 'img_' + (new Date()).getTime();
                    window.flixJsCallbacks.imgCache[track] = new Image();
                    window.flixJsCallbacks.imgCache[track].src = url;
                    window.flixJsCallbacks.imgCache[track].event_type = data.event_type;
                }else{
                    logqa('beat logs ONLY')      
                }
            }else{
                logqa('trackingqueue')    
                flixtracking.trackingqueue(url);
            }

            if( _beatNotActive.indexOf( +data.distributor_id ) < 0 && data.event_type != 'time' ) {
                var fireBeat=false,fireLog=true;
                logqa('beat logs')                

                if( !! window.flixJsCallbacks && !! window.flixJsCallbacks.a && ( data.distributor_id === 173 && data.mpn === "49UJ630V")) {
                    data.service = "inpage";
                    window.flixJsCallbacks.a.log( data );
                    return true;
                }
                
                var ab_res_id = 'ab_'+data.distributor_id;

                //ABtest for comparison and reviews only
                if(window.flixJsCallbacks['ab_'+data.distributor]!= null && (data.type=='review' || data.type=='compare' || data.type=='interactive') ){
                    fireBeat=true
                }
                //ABtest for complimentary products only
                if(window.flixJsCallbacks[ab_res_id] && typeof window.flixJsCallbacks[ab_res_id].inpage !='undefined'
                        && data.type=='inpage' && (
                        (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages !='undefined' &&typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage =="boolean") || 
                        (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template =="boolean"))
                        
                ){
                    fireBeat=true
                }
                

                if( ! window.flixJsCallbacks.pageViewnew.beat ) {
                    if( ! url.match(/pv\=1/) && data.type=='inpage') url += "&pv=1";
                    window.flixJsCallbacks.pageViewnew.beat = true;
                }
                
                var beaturl=_beatUrl + url.replace(_base, '');

                // a/b test parameter
                
                if (typeof flixtracking.noTracking!='undefined' && flixtracking.noTracking==false && fireBeat) {
                    //ab testing beat logs
                    logqa('Beat tracking', url)
                    if(window.flixJsCallbacks[ab_res_id]!= null){
                        var ab_version=window.flixJsCallbacks[ab_res_id].version||'';
                        var target=window.flixJsCallbacks[ab_res_id].target||'';
                        var ab_visitor_id=window.flixJsCallbacks[ab_res_id].visitor_id||'';
                        var ab_groups=window.flixJsCallbacks[ab_res_id].groups||'';
                        var ab_id=window.flixJsCallbacks[ab_res_id].ab_id||'';
                        var device=window.flixJsCallbacks[ab_res_id].device||'';
                        url += "&version="+ab_version+"&target="+target+"&visitor_id="+ab_visitor_id+"&groups="+ab_groups+"&ab_id="+ab_id+"&device="+device;
                    }

                    if(data.type=='inpage'){
                        url +="&fm_service=1"
                    }else if(data.type=='compare'){
                        url +="&fm_service=315";
                    }
                    else if(data.type=='interactive'){
                        url +="&fm_service=301"
                    }
                    else if(data.type=='review'){
                        url +="&fm_service=334";
                    }
                    
                    var beat = 'img_' + (new Date()).getTime();
                    window.flixJsCallbacks.imgCache[beat] = new Image(); 
                    var _beatUrl2=_beatUrl;
                    _beatUrl2 ='//rt.flix360.com/beat';
                    //abtesting beaturl update
                    if( window.flixJsCallbacks['ab_'+data.distributor]!= null && window.flixJsCallbacks['ab_'+data.distributor].inpage!=null ){
                        if(  flixtracking.trackingDomain.search('alpha')!=-1 ){
                            
                            _beatUrl2 ='//alpha-rt.flix360.io/beat'
                        }else{
                            _beatUrl2=_beatUrl2.replace('//rt.flix360.com/beat', '');
                            _beatUrl2 ='//rt.flix360.io/beat'
                        }
                    } else{
                        _beatUrl2=flixtracking.trackingDomainBeat+url.replace(_base, '');
                    }
                    
                    logqa('_beatUrl2', _beatUrl2 +"__"+data.type)

                    if( window.flixJsCallbacks[ab_res_id] && typeof window.flixJsCallbacks[ab_res_id].inpage !='undefined'
                        && data.type=='inpage'                        
                        && (
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage =="boolean") 
                            ||
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template =="boolean")
                            )
                    ){
                        logqa('_beatUrl2 inpage', _beatUrl2 +"__"+data.type)

                        if( window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage ==true ) {

                            if( data.event_type =='impression' || data.event_type =='page'){
                                var targetId=window.flixJsCallbacks[ab_res_id].targetId ||0;
                                if(targetId==data.product_id){
                                    url=url.replace('&p='+data.product_id,'&p='+(window.flixJsCallbacks[ab_res_id].targetId));
                                    window.flixJsCallbacks.imgCache[beat].src = _beatUrl2 + url.replace(_base, '');
                                    window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                                }
                            }
                        }else{
                            var targetId=window.flixJsCallbacks[ab_res_id].targetId ||0;
                            if(targetId==data.product_id){
                                url=url.replace('&p='+data.product_id,'&p='+(window.flixJsCallbacks[ab_res_id].targetId));
                                window.flixJsCallbacks.imgCache[beat].src = _beatUrl2 + url.replace(_base, '');
                                window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                            }
                           
                        }
                        //standard beat logs
                        var beat = 'img_' + (new Date()).getTime();
                        window.flixJsCallbacks.imgCache[beat] = new Image();
                        window.flixJsCallbacks.imgCache[beat].src = beaturl
                        window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                    }

                    //comparison table ab log
                    if( window.flixJsCallbacks[ab_res_id] && window.flixJsCallbacks[ab_res_id].inpage 
                        && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages!='undefined' 
                        &&
                        (
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_comparison_table !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_comparison_table =="boolean") 
                            ||
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage =="boolean") 
                            ||
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template =="boolean")
                            

                        )
                        && data.type=='compare'
                    ){              
                        logqa('comparison _beatUrl2', _beatUrl2)          
                        if( window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_comparison_table ==true ) {
                            if( data.event_type =='impression' ){
                                window.flixJsCallbacks.imgCache[beat].src = _beatUrl2 + url.replace(_base, '');
                                window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                            }
                        }else{
                            window.flixJsCallbacks.imgCache[beat].src = _beatUrl2 + url.replace(_base, '');
                            window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                        }

                    }

                    //reviews ab log
                    if(data.type=='review'){
                        if( window.flixJsCallbacks[ab_res_id] && window.flixJsCallbacks[ab_res_id].inpage && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages!='undefined' &&
                            typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_reviews !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_reviews =="boolean"){
                            logqa('reviews _beatUrl2', _beatUrl2)
                            if( window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_reviews ==true ) {
                                if( data.event_type =='page' ){
                                    window.flixJsCallbacks.imgCache[beat].src = _beatUrl2 + url.replace(_base, '');
                                    window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                                }
                            }

                        }else{
                            window.flixJsCallbacks.imgCache[beat].src = _beatUrl2 + url.replace(_base, '');
                            window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                        }
                    }

                    
                    //hotspot ab log
                    if( _beatNotActive.indexOf( +data.d ) < 0 
                        && (data.event_type === 'page' || data.event_type === 'media' || data.event_type === 'qr_click' || data.event_type === 'webar_click' || data.event_type === 'dwelltime' ||  data.event_type === 'launch' ||  data.event_type === 'webar_impressions' ||  data.event_type === 'qr_impression' || data.event_type === 'qr_impression') 
                        && (!status || status=='beatlog') 
                        && data.type=='interactive'
                        ){
                        logqa('Hotspot _beatUrl2', _beatUrl2)

                        beat = 'img_' + (new Date()).getTime();
                        window.flixJsCallbacks.imgCache[beat] = new Image();
                        if( ! window.flixJsCallbacks.pageViewnew.beat ) {
                            if( ! url.match(/pv\=1/)) 
                            url += "&pv=1";
                            window.flixJsCallbacks.pageViewnew.beat = true;
                        }

                        //check if abtest criteria is fullfilled
                        if(target==device){
                            // log3('hotspot log beats')
                            //strict rule for services
                            if( window.flixJsCallbacks[ab_res_id] && window.flixJsCallbacks[ab_res_id].hotspot && 
                            ( window.flixJsCallbacks[ab_res_id].hotspot.hotspots || window.flixJsCallbacks[ab_res_id].hotspot.settings )
                            ){
                                window.flixJsCallbacks.imgCache[beat].src = _beatUrl2 + url.replace(_base, '');
                                window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                            }else{
                                window.flixJsCallbacks.imgCache[beat].src = _beatUrl + url.replace(_base, '');
                                window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                            }
                        }

                          
                    }          
                }else{
                    
                    //standard beat logs
                    if(data.gvid && data.gvid.length && data.session_id && data.session_id.length){
                        var beat = 'img_' + (new Date()).getTime();
                        window.flixJsCallbacks.imgCache[beat] = new Image();
                        window.flixJsCallbacks.imgCache[beat].src = beaturl;
                        window.flixJsCallbacks.imgCache[beat].event_type = data.event_type;
                    }else{
                        flixtracking.trackingqueue(beaturl);
                    }
                }
            }

            //if flixcode loads before competitors, add additional logs
            try{
                if(flixtracking.retailercheck.cc && typeof flixtracking.retailercheck.cc!='undefined' && flixtracking.retailercheck.cc.search('true')==-1 && typeof flixtracking.retailercheck.rc=='undefined' && data.type!='minisite'){
                    logqa('retailercheck again');
                    flixtracking.retailercheck.rc=1;
                    data.event_type = "time";
                    data.event_detail = "";
                    data.view_time = 0;                    

                    for (i = 1; i <= 5; ++i) {
                        var b=i*5000;
                        setTimeout(function(){
                            logqa('retailercheck again -init');
                            flixtracking.retailercheck.init(data);
                            if(flixtracking.retailercheck.cc.search('true')!=-1){
                                logqa('retailercheck again -found it');
                                flixtracking.log(data);
                                //break;
                            }                          
                        }, b);
                    }                    
                }
            } catch(ignore){}

        //}catch(e){}
        }else{
          logqa('No tracking - ');
        }

    },
    logging: function (type, event, data, media, price, inPcount) {
        logqa(type+"__"+event+"__"+data+"__"+media+"__"+price+"__"+inPcount)
        if ( (typeof flixtracking.noTracking!='undefined' && flixtracking.noTracking==false) ) {
            

            if(flixtracking.checkLoaderloaded==false)
                flixtracking.checkLoader(data);

            var fireBeat=false,fireLog=true;
            //clone the data, otherwise it will overwrite the global values

            if (FlixjQ.fn.inPage && FlixjQ.fn.inPage.data.product !== undefined) {
                opts2 = FlixjQ.fn.inPage.data;
            } else if (FlixjQ.fn.minisite && FlixjQ.fn.minisite.data.product !== undefined) {
                opts2 = FlixjQ.fn.minisite.data;
            }
            if(data && data!=null)
                opts2 = JSON.parse(JSON.stringify(data));
                //opts2=FlixjQ.extend(true, {}, data) || opts2;
            if(!flixtracking.getUrlParameter('pn')){
                opts2.page_name = window.location.href;
            }
            opts2.event_type = event;
            opts2.event_detail = media;
            opts2.price = price;
            opts2.view_time = 0;

            var prodid=opts2.product;
            //get productid incase the main product is a matchmiss
            if(prodid==0 || prodid==null){
                prodid=FlixjQ('.main_mot_product_wrapper:eq(0)').attr('alt')  || FlixjQ('[id^=flixinpage]:eq(0)').find('span[id^=inpage-data]').attr('id') || FlixjQ('[id^=flixinpage]:eq(1)').find('span[id^=inpage-data]').attr('id');
                prodid=prodid.toString().replace('inpage-data-','')
            }
            if(type=='review'){
                var prodid=FlixjQ('#flix-mobile_template-reviews').closest('.main_mot_product_wrapper').attr('alt')  || FlixjQ('.inpage_selector_reviews').closest('[id^=flixinpage]').find('span[id^=inpage-data]').attr('id') || opts2.product;
                prodid=prodid.toString().replace('inpage-data-','')
            }

            if(type=='compare'){
                if(FlixjQ('.flix-compare').length && FlixjQ('.flix-compare').html().length)
                    opts2.ct='v1';
                if(FlixjQ('.flix-comparev2').length && FlixjQ('.inpage_selector_comparison').attr('data-compv2-ctid'))
                    opts2.ct=FlixjQ('.inpage_selector_comparison').attr('data-compv2-ctid');
                
                var prodid=FlixjQ('.flix-compare, .flix-comparev2').closest('.main_mot_product_wrapper').attr('alt')  || FlixjQ('.flix-compare, .flix-comparev2').closest('[id^=flixinpage]').find('span[id^=inpage-data]').attr('id') || opts2.product;
                prodid=prodid.toString().replace('inpage-data-','')
            }

            if(type=='visible'){
                var prodid=FlixjQ('[id*=flixinpage_]:eq('+inPcount+')').find('span[id^=inpage-data]').attr('id') || FlixjQ('[id*=flixinpage_]:eq('+inPcount+')').attr('alt') || opts2.product;
                prodid=prodid.toString().replace('inpage-data-','');
            }

            if(type=='3dfw'){ 
                var prodid=FlixjQ('[id*=flixinpage_]:eq('+inPcount+')').find('span[id^=inpage-data]').attr('id') || FlixjQ('[id*=flixinpage_]:eq('+inPcount+')').attr('alt') || opts2.product;
                prodid=prodid.toString().replace('inpage-data-','');
                
            }

            if(type=='inpage' && event=='media'){ 
                var prodid=FlixjQ('[id*=flixinpage_]:eq('+inPcount+')').find('span[id^=inpage-data]').attr('id') || FlixjQ('[id*=flixinpage_]:eq('+inPcount+')').attr('alt') || opts2.product;
                prodid=prodid.toString().replace('inpage-data-','');
            }

            var d = new Date();

            var domain=flixtracking.trackingDomain
            /*if(opts2 && opts2.distributor=='7109'){
                domain='https://media.flixcar.com/'+opts2.type+'/'
            }*/
            
            if(flixtracking.trackingDomain.search('media.flixcar.com/')==-1){
                var _base=flixtracking.trackingDomain+'log.gif';
            }else
                var _base=flixtracking.trackingDomain+type+'/log.gif';

            var url = _base + "?newtrack&ts="+type+"&loggin&m=i"

            if(FlixjQ('#flix-mbl-page').length){
                url += "&mot=1";
            }

            // flixlocation content tracking
            if(type=="flc"){
                fireLog=false;
                fireBeat=true;

                var prodid=opts2.product || '';

                url +="&mpn="+opts2.mpn + "&ean="
                    + opts2.ean + "&location="
                    + opts2.city
            }

            opts2.product_id=prodid

            logqa("Global log - type: "+type+"_ prodid: "+prodid);
            
            opts2.type=type;
            logqa(opts2)
            flixtracking.log(opts2);



        }
    },
    logTimer:0,
    logTime: function(data,newtime) {
        
        if (typeof newtime=='undefined' ){            
            newtime = parseInt(flixtracking.logTimer) + 10;
            flixtracking.logTimer=newtime
        }
        logqa('logTime-'+  newtime);   
        data.event_type = "time";
        data.event_detail = "";
        data.view_time = newtime;
        if(!data.type)
            data.type="inpage"
        if( newtime>300) return;
        logTimer=newtime;
        
        flixtracking.log(data);
    },
    logTimeMinisite: function(data,newtime) {
        logqa('logTime');   
        if (newtime==undefined){
            newtime = parseInt(logTimer) + 10;
        }
        data.event_type = "time";
        data.event_detail = "";
        data.view_time = newtime;
        data.type="minisite"
        if( newtime>300) return;
        logTimer=newtime;
        
        flixtracking.log(data);
    },
    logClick: function(data, medianame) {   
        logqa('logMedia');
        data.event_type = "click";
        data.event_detail = medianame;
        data.view_time = 0;
        flixtracking.log(data);
    },    
    logMedia: function(data, medianame) {   
        logqa('logMedia');
        data.event_type = "media";
        data.event_detail = medianame;
        data.view_time = 0;
        flixtracking.log(data);
    },
    logPage: function(data, pagename) { 
        logqa('logPage');      
        data.event_type = "page";
        data.event_detail = pagename;
        data.view_time = 0;     
        flixtracking.log(data);
    },
    logVideoTime: function(newtime,newvideo){
        
    },
    logVideoLoad: function(newvideo){
        if( typeof FlixjQ!='undefined' && typeof FlixjQ.fn.inPage!='undefined'){
            var data=FlixjQ.fn.inPage.data
            data.type='inpage'
        }
        else if (typeof FlixjQ!='undefined' && typeof FlixjQ.fn.minisite!='undefined'){
            var data=FlixjQ.fn.minisite.data
            data.type='minisite'
        }else if(typeof FlixjQ!='undefined' && typeof FlixjQ.fn.microsite!='undefined'){
            var data=FlixjQ.fn.microsite.data
            data.type='sis'
        }
        data.event_type = "mediaload";
        data.event_detail = newvideo;
        data.view_time = 0; 
        data.asset=0;
        flixtracking.log(data);  
    },
    parsePage: function (pagedata, target) {
        var 
          found = '', h = null, fallback = true, generic = {}, specific = {}, p,
          ignore = [], precedence, hit = false;

        if(!pagedata){
            pagedata = window.flixJsCallbacks.pageGeneric || {};
        }
        if(Object.keys(pagedata.pageSpecific).length=== 0 ){            
            pagedata.pageSpecific=window.flixJsCallbacks.pageSpecific
        }

        try {
            for( p in pagedata ) {
                if( pagedata.hasOwnProperty(p)) {
                    if( p == 'pageSpecific' ) {
                        specific = pagedata.pageSpecific;
                    }
                    else if ( ignore.indexOf( p ) === -1 ) {
                        generic[p] = pagedata[p];
                    }
                }
            }
            //set the precedence on availability in pageSpecific file. 
            precedence = ( !! specific[ target ] ) ? specific[ target ] : generic[ target ];
            if ( ! specific[ target ] ) { fallback = false; }

            //if pagespecific or generic is a function forget terms and attr arrays initially.             
            if( typeof precedence === 'function' ) {
                found = precedence();
                if ( ! found ) { fallback = true; }
            }

            if( ! found && !! precedence && !! precedence.terms && precedence.terms.length ) {
                for(var i = 0; i < precedence.terms.length; i++ ) {
                    h = document.querySelector ( precedence.terms[i] );
                    if ( h && !! h.textContent.trim() ) {
                        hit = true;
                        break;
                    }
                    else if ( h && h instanceof HTMLElement ) {
                        for ( var j = 0; j < precedence.attr.length; j++ ) {
                            if ( h.hasAttribute (precedence.attr[j] ) ) {
                                if(precedence.attr[j]!='href' || (precedence.attr[j]=='href' && h.getAttribute ( precedence.attr[j]).search('//')!=-1) ){
                                    found = h.getAttribute ( precedence.attr[j] );
                                
                                    hit = true;
                                    break;
                                }
                            }
                        }
                    }
                }
            }
            //fallback to generic if nothing found and not already run. 
            if( fallback && ! hit ) {
                precedence = generic[ target ];
                if( typeof precedence === 'function' ) {
                    found = precedence();
                }
                
                if( ! found && !! precedence && !! precedence.terms && precedence.terms.length ) {
                    for(var i = 0; i < precedence.terms.length; i++ ) {
                        h = document.querySelector ( precedence.terms[i] );
                        if ( h && !! h.textContent.trim() ) {
                            hit = true;
                            break;
                        }
                        else if ( h && h instanceof HTMLElement ) {
                            for ( var j = 0; j < precedence.attr.length; j++ ) {
                                if ( h.hasAttribute (precedence.attr[j] ) ) {
                                    found = h.getAttribute ( precedence.attr[j] );
                                    hit = true;
                                    break;
                                }
                            }
                        }
                    }
                }
            }
            //extract text content if we reach here.
            if ( ! found && h && h instanceof HTMLElement) {
                found = h.textContent.trim();
            }

            //enter only if we are a number with \. or , and its a price check
            if( target === 'price' && !! found ) {
                var 
                  value = flixtracking.parsePrice( found );
                if( value ) { found = value; }
            }

            return found.trim();
        }catch(e){ return ''; }
        
    },
    pageData:  function( data ) {

        if(!data.pagedata){
            data.pagedata = window.flixJsCallbacks.pageGeneric || {};
        }

        var pData = {}, s, df, i, p, get = '', skip;
        window.flixJsCallbacks.pageCapture = window.flixJsCallbacks.pageCapture || {};
        try{
            PAGEDATALOOP:
            for( p in data.pagedata ) {
                if( data.pagedata.hasOwnProperty(p)) {
                    switch( p ) {
                        case 'pageSpecific':
                            continue PAGEDATALOOP;
                            break;
                        case 'pn':
                            if( !! window.flixJsCallbacks.pageCapture[p] ) {
                                pData[p] = window.flixJsCallbacks.pageCapture[p];
                            }
                            else {
                                pData[p] = flixtracking.getCanonical( data.pagedata );
                                window.flixJsCallbacks.pageCapture[p] = pData[p];
                            }
                            break;
                        case 'br':
                        default:
                            if( !! window.flixJsCallbacks.pageCapture[p] ) {
                                pData[p] = window.flixJsCallbacks.pageCapture[p];
                            }
                            else {
                                pData[p] = flixtracking.parsePage ( data.pagedata, p );
                                window.flixJsCallbacks.pageCapture[p] = pData[p];
                            }
                            break;
                    }
                }
            }

            //overwrite price and add brand if being supplied by retailer
            df = ['mpn', 'ean', 'sku', 'price', 'brand'];
            skip = ['price', 'brand'];
            for( i=0; i< df.length; i++ ) {
                if( document.querySelector('script[data-flix-' + df[i] + ']') &&
                    !! document.querySelector('script[data-flix-' + df[i] + ']').getAttribute('data-flix-' + df[i]) ) {
                    
                    pData[ df[i] ] = document.querySelector('script[data-flix-' + df[i] + ']').getAttribute('data-flix-' + df[i]);
                    if( skip.indexOf(df[i]) < 0 ) {
                        window.flixJsCallbacks.pageCapture[ df[i] ] = pData[ df[i] ];
                    }
                    else {
                        if( !! data.pagedata && !! data.pagedata.pageSpecific && ! data.pagedata.pageSpecific.price ) {
                            if( df[i] === 'price' && flixtracking.parsePrice( pData[ df[i] ] ) ) {
                                pData[ df[i] ] = flixtracking.parsePrice( pData[ df[i] ] );
                                window.flixJsCallbacks.pageCapture[ df[i] ] = pData[ df[i] ];
                            }
                        }

                        if( !! data.pagedata && !! data.pagedata.pageSpecific && ! data.pagedata.pageSpecific.br ) {
                            //overwrite brand with standard naming
                            if( df[i] === 'brand' ) {
                                pData[ 'br' ] = pData[ df[i] ];
                                window.flixJsCallbacks.pageCapture['br'] = pData[ df[i] ];
                                delete pData['brand'];
                                delete window.flixJsCallbacks.pageCapture['brand'];
                            }
                        }
                    }
                }
            }

        } catch(ignore){}

        for (var key in pData) {
            get += "&"+key+ '=' + encodeURIComponent(pData[key]);
        }
        return get;
    },
    pageDataMinisite:  function( data ) {
        var data = { pagedata: _FFMatcher._FFpagedata }, pData = {}, s, df, i, p, get = '', p2, skip;
        
        window.flixJsCallbacks.pageCapture = window.flixJsCallbacks.pageCapture || {};
        
        
        try{
            PAGEDATALOOP:
            for( p in data.pagedata ) {
                if( data.pagedata.hasOwnProperty(p)) {
                    switch( p ) {
                        case 'pageSpecific':
                            continue PAGEDATALOOP;
                            break;
                        case 'pn':
                            if( !! window.flixJsCallbacks.pageCapture[p] ) {
                                pData[p] = window.flixJsCallbacks.pageCapture[p];
                            }
                            else {
                                pData[p] = flixtracking.getCanonical( data.pagedata );
                                window.flixJsCallbacks.pageCapture[p] = pData[p];
                            }
                            break;
                        case 'br':
                        default:
                            if( !! window.flixJsCallbacks.pageCapture[p] ) {
                                pData[p] = window.flixJsCallbacks.pageCapture[p];
                            }
                            else {
                                pData[p] = flixtracking.parsePage ( data.pagedata, p );
                                window.flixJsCallbacks.pageCapture[p] = pData[p];
                            }
                            break;
                    }
                }
            }

            //overwrite price and add brand if being supplied by retailer
            df = ['mpn', 'ean', 'sku', 'price', 'brand'];
            skip = ['price', 'brand'];
            for( i=0; i<df.length; i++ ) {
                if( document.querySelector('script[data-flix-' + df[i] + ']') &&
                    !! document.querySelector('script[data-flix-' + df[i] + ']').getAttribute('data-flix-' + df[i]) ) {
                    //differs here from inpage and noshow
                    pData[ df[i] ] = document.querySelector('script[data-flix-' + df[i] + ']').getAttribute('data-flix-' + df[i]);
                    if( skip.indexOf(df[i]) < 0 ) {
                        window.flixJsCallbacks.pageCapture[ df[i] ] = pData[ df[i] ];
                    }
                    else {
                        //decide if we should accept passed retailer values.
                        if( !! data.pagedata && !! data.pagedata.pageSpecific && ! data.pagedata.pageSpecific.price ) {
                            if( df[i] === 'price' && _FFUtils._FFparsePrice( pData[ df[i] ] ) ) {
                              pData[ df[i] ] = _FFUtils._FFparsePrice( pData[ df[i] ] );
                              window.flixJsCallbacks.pageCapture[ df[i] ] = pData[ df[i] ];
                            }
                        }
                        //decide if we should accept passed retailer values.
                        if( !! data.pagedata && !! data.pagedata.pageSpecific && ! data.pagedata.pageSpecific.br ) {
                            //overwrite brand with standard naming
                            if( df[i] === 'brand' ) {
                              pData[ 'br' ] = pData[ df[i] ];
                              window.flixJsCallbacks.pageCapture['br'] = pData[ df[i] ];
                              delete pData['brand'];
                              delete window.flixJsCallbacks.pageCapture['brand'];
                            }
                        }
                    }
                }
            }

            for( p2 in pData ){
                //decode URL characters
                if(p2==='pn' && pData.hasOwnProperty(p2) && /%/.test(pData[p2])) {
                    pData[p2]=decodeURIComponent(pData[p2])
                }

                if( pData.hasOwnProperty(p2) && ! /%/.test(pData[p2])) {
                    params[p2] = encodeURIComponent(pData[p2]);
                }
            }

        } catch(ignore){}
       

        for (var key in pData) {
            get += "&"+key+ '=' + encodeURIComponent(pData[key]);
        }
        return get;
    },
    getCanonical: function( data, esc ) {
        try {
            var
              ret, canonicalCheck, s;

            ret = flixtracking.parsePage ( data.pagedata, 'pn' );

            canonicalCheck = window.location.protocol + '//' + window.location.hostname + '/';

            if( ! ret || ret === canonicalCheck || ret.length + 1 <= canonicalCheck.length) {
                var url = (window.location != window.parent.location)
                ? document.referrer
                : top.document.URL;
                               
                if(typeof pnurl!='undefined' && pnurl.length>0)
                    url=pnurl
                
                ret = url; 
            }

            s = ret.indexOf('#');
            if( s != -1 ) { ret = ret.substring(0,s); }

            return arguments.length > 1 ? escape(ret) : ret;

        } catch(e) {}
    },
    parsePrice: function( price ) {
        try{
            if( !! price && ! price.trim().match(/[a-z][\.,\u20AC]+/gi)) {
                var 
                  value = price.trim().replace(/[^0-9\.,\u20AC]/gi, ''),
                  l = value.length, vl, v = '';
                if( !! window.flixJsCallbacks.priceParser ) {
                    value = window.flixJsCallbacks.priceParser.regEx( value );
                    l = value.length;
                }
                switch( true ) {
                    case (!! value.charAt( l - 3 ).match(/[\.,\u20AC]/)):
                        value = value.substr(0, (l - 3)) + '*' +  value.substr( (l - 2) );
                        break;              
                    case (!! value.charAt( l - 2 ).match(/[\.,\u20AC]/)):
                        value = value.substr(0, (l - 2)) + '*' +  value.substr( (l - 1) );
                        break;
                    default:
                        value = value.split('.');
                        vl = (value.length - 1);
                        if( value.length > 1 && value[ vl ].length > 2 ){ value[ vl ] = value[ vl ].substr(0,2);}
                        for( var i=0, vl = value.length; i< vl; i++) {
                            ( i == (vl - 2)) ? v += value[i] + '*' : v += value[i];
                        }
                        value = v;
                        break;
                }
                value = value.replace(/[\.,\u20AC]+/g, '');
                value = value.replace(/\*/, '.');
                return value;
            }
        } catch(ignore){}
        return false;
    },
    delegate: function(eventName, elementSelector, handler){
        //replaces .on click event
        document.addEventListener(eventName, function(e) {
            // loop parent nodes from the target to the delegation node
            for (var target = e.target; target && target != this; target = target.parentNode) {
                if (target && target.matches(elementSelector)) {
                    handler.call(target, e);
                    break;
                }
            }
        }, true);
    },
    getURL: function() {
        if(window.parent){
            var url = (window.location != window.parent.location)? document.referrer : document.location.href;
        }else{
            var url = document.location.href;
        }

        return url;
    },
    isMobile:function() {
          var check = false;
          (function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|build|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))) check = true;})(navigator.userAgent||navigator.vendor||window.opera);
          return check;
    },
    getCookieValue:function(a) {
        var b = document.cookie.match('(^|;)\\s*' + a + '\\s*=\\s*([^;]+)');
        return b ? b.pop() : '';
    },
    setGvid: function () {
        logqa('setGvid');
        
        try {
           
            window.flixJsCallbacks = window.flixJsCallbacks || {};

            if(sessionStorage.getItem('flixgvid')){
                window.flixJsCallbacks.gvid=sessionStorage.getItem('flixgvid');
            }else{ 
                var ticks = 3;
                (function threeTicks() {                    
                    if( window.flixJsCallbacks && typeof window.flixJsCallbacks.gvid == 'undefined' && ticks ) {
                        setTimeout(function(){ 
                            ticks--;
                            threeTicks();
                        },100)
                    }
                    else {
                        logqa('create gvid');
                        if ( document.getElementById('data-flix-t-script') &&  typeof window.flixJsCallbacks['gvid']!='undefined') return;
                        window['flixgvid'] = function(obj){
                            try{
                                delete window['flixgvid'];
                                window.flixJsCallbacks = window.flixJsCallbacks || {};
                                window.flixJsCallbacks['gvid'] = obj['gvid'];
                                sessionStorage.setItem('flixgvid',obj['gvid']);
                             }catch(e){}
                        };

                        var _fscript = document.createElement('script');
                        _fscript.setAttribute("type","text/javascript");
                        _fscript.setAttribute("src", "https://prod.flixgvid.flix360.io/");
                        _fscript.setAttribute("async", "true");
                        _fscript.id = "data-flix-t-script";
                        _fscript.onerror = function() { 
                            window.flixJsCallbacks = window.flixJsCallbacks || {};
                            window.flixJsCallbacks['gvid'] =''
                            sessionStorage.setItem('flixgvid','');
                            logqa('gvid not loaded')
                        }
                        document.getElementsByTagName('head')[0].appendChild(_fscript);

                        setTimeout(function(){
                            if(window.flixJsCallbacks && typeof window.flixJsCallbacks.gvid == 'undefined'){
                                window.flixJsCallbacks = window.flixJsCallbacks || {};
                                window.flixJsCallbacks['gvid'] =''
                                sessionStorage.setItem('flixgvid','');
                            }
                        }, 5000)
                    }
                })();
            } 
        } catch( e ) {}
    },
    setGuid: {
        Set: function(e) {
            var t;
            if (arguments.length == 1) {
                if (this.IsValid(arguments[0])) {
                    t = arguments[0];
                } else {
                    t = this.Empty();
                }
            }
            this.sessionid(t);
            
            return t;
        },
        Empty: function() {
            return "00000000-0000-0000-0000-000000000000";
        },
        IsEmpty: function(e) {
            return e == this.Empty() || typeof e == "undefined" || e == null || e == "";
        },
        IsValid: function(e) {
            rGx = new RegExp("\\b(?:[A-F0-9]{8})(?:-[A-F0-9]{4}){3}-(?:[A-F0-9]{12})\\b");
            return rGx.exec(e) != null;
        },
        New: function() {
            if (arguments.length == 1 && this.IsValid(arguments[0])) {
                this.sessionid(arguments[0]);                
                value = arguments[0];
                return value;
            }
            var e = [], t;
            var n = new RegExp("[2345]");
            for (var r = 0; r < 8; r++) {
                t = ((1 + Math.random()) * 65536 | 0).toString(16).substring(1);
                if (n.exec(r.toString()) != null) {
                    if (r == 3) {
                        t = "6" + t.substr(1, 3);
                    }
                    e.push("-");
                }
                e.push(t.toUpperCase());
            }
            value = e.join("");

            this.sessionid=value;

            return value;
        },
        Value: function() {
            
            if (this.sessionid!='') {
                return this.sessionid;
            }
            var e = this.New();
            this.sessionid=e;
            return e;
        },
        sessionid:''
        
    },
    loadComp: function(e, t) {
        logqa('loadComp')
        if (-1 != e.search(".js") && 0 === FlixjQ("script[src='" + e + "']").length) {
            var c = document.createElement("script");
            c.type = "text/javascript", c.src = e, c.onload = t, document.head.appendChild(c);
        }
        if (-1 != e.search(".css") && 0 === FlixjQ("link[href='" + e + "']").length) {
            var n = document.createElement("link");
            n.rel = "stylesheet", n.href = e, n.type = "text/css", n.onload = t, document.head.appendChild(n);
        }
    },
    queue:[],
    trackingqueue: function (url) {
        logqa('trackingqueue')
        if(url)
            flixtracking.queue.push(url);

        if(window.flixJsCallbacks && typeof window.flixJsCallbacks.gvid!='undefined'){
            logqa('trackingqueue - gvid found')
            for (var i = 0; i < flixtracking.queue.length; i++) {
                
                var url=flixtracking.queue[i]=flixtracking.queue[i].replace('&gvid=&', '&gvid='+window.flixJsCallbacks.gvid+'&')
                
                logqa(url)
                var img = new Image();
                img.src = url;
            }
            //clear array
            flixtracking.queue = [];            
        }else{

            //if(flixtracking.queue.length==1){
                logqa('trackingqueue - queue more')
                setTimeout(function(){
                    if (typeof flixtracking != 'undefined')
                    flixtracking.trackingqueue()
                },1000)
            //}
        }
    },
    getUrlParameter:function (sParam) {
        var sPageURL=decodeURIComponent(window.location.search.substring(1)),
            sURLVariables=sPageURL.split('&'),
            sParameterName,
            i;

        for (i=0; i < sURLVariables.length; i++) {
            sParameterName=sURLVariables[i].split('=');

            if (sParameterName[0]===sParam) {
                return sParameterName[1]===undefined ? true : sParameterName[1];
            }
        }
    },
    cookieConsent: {
        provider:'',    
        initConsent: function(){
            //logqa('init initConsent')
            if(typeof Cookiebot!='undefined'){
                flixtracking.cookieConsent.cookieBot();
            }
            else if(typeof CookieInformation!='undefined' && typeof CookieInformation.getConsentGivenFor('cookie_cat_statistic')!='undefined' ){
                flixtracking.cookieConsent.cookieInfo();            
            }
            else if(typeof __cmp!='undefined' && typeof __cmp('getCMPData')!='undefined' && typeof __cmp('getCMPData').vendorConsents!='undefined'){
                flixtracking.cookieConsent.consentManager();            
            }
            else if(typeof window.evidon!='undefined' && typeof window.evidon.notice.consentIsGiven!='undefined'){
                flixtracking.cookieConsent.crownPeak();         
            }
            else if(typeof window.didomiState!='undefined' && typeof window.didomiState.didomiPurposesConsent!='undefined'){
                flixtracking.cookieConsent.didomi();            
            }
            else if(typeof _iub!='undefined' && typeof _iub.csActivationDone!='undefined'){
                flixtracking.cookieConsent.iubenda();           
            }
            else if(typeof OneTrust!='undefined'){
                flixtracking.cookieConsent.oneTrust();          
            }
            else if(typeof window.cookieconsent!='undefined'){
                flixtracking.cookieConsent.osano();         
            }
            else if(typeof OneTrust=='undefined' && typeof cact!='undefined'){
                flixtracking.cookieConsent.trustcommander();            
            }
            else if(typeof __cmp=='undefined' && typeof __tcfapi!='undefined'){
                flixtracking.cookieConsent.quantcast(); 
            }
            else{
                var dnt=flixtracking.cookieConsent.doNotTrack();
                if(flixtracking.trackingcc<=20 && dnt!=true){
                    setTimeout(function(){
                        if(typeof flixtracking!='undefined'){
                            flixtracking.trackingcc++;
                            flixtracking.cookieConsent.initConsent();
                        }
                    },1000);
                }
            }
        },
        cookieInfo:function(){
            
            var statistic=CookieInformation.getConsentGivenFor('cookie_cat_statistic') || '';
            logqa('CookieInformation', statistic);
            flixtracking.cookieConsent.provider='CookieInfo'
            if(statistic===false){              
                flixtracking.cookieConsent.stopTracking();
            }else if(statistic===true){
                
            }

            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=statistic;
            flixconsent=statistic;

        },
        consentManager:function(){
                
            var preferences=__cmp('consentStatus').consentExists;
            logqa('consentManager -'+preferences);  
            flixtracking.cookieConsent.provider='ConsentManager'
            var obj = __cmp('getCMPData').vendorConsents; 
           
            if(Object.keys(obj).length===0){                
                preferences=false;
                flixtracking.cookieConsent.stopTracking();
            }else{              
                preferences=true;
            }

            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            flixconsent=preferences;
        },
        cookieBot:function(){
            var preferences=''
            if(typeof Cookiebot!='undefined' && typeof Cookiebot.consent!='undefined' && typeof Cookiebot.consent.preferences!='undefined' )
                preferences=Cookiebot.consent.preferences;  
            logqa('cookieBot -'+ preferences);   
            flixtracking.cookieConsent.provider='CookieBot'   
            if(preferences===false){                
                flixtracking.cookieConsent.stopTracking();
            }else if(preferences===true){

            }
            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            flixconsent=preferences;
        },
        crownPeak:function(){
            var preferences=window.evidon.notice.consentIsGiven;    
            logqa('crownpeak -'+ preferences);
            flixtracking.cookieConsent.provider='CrownPeak'         
            if(preferences===false){                
                flixtracking.cookieConsent.stopTracking();
            }else if(preferences===true){
                /*var obj = window.evidon.notice._getConsentedCategories(); 

                if(Object.values(obj)[2]==true)
                    preferences=true; */
            }
            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            flixconsent=preferences;
        },
        didomi:function(){
            var preferences=false;  
            logqa('didomi -');  
            flixtracking.cookieConsent.provider='Didomi'        
            if(window.didomiState.didomiPurposesConsentDenied.search('measure_content_performance')!=-1){               
                flixtracking.cookieConsent.stopTracking();
            }else if(preferences===true){
                
            }
            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            flixconsent=preferences;
        },
        iubenda:function(){     
            var preferences=_iub.csActivationDone;          
            logqa('iubenda -'+ preferences);
            flixtracking.cookieConsent.provider='Iubenda'   

            if(typeof _iub.cs.consent.purposes!='undefined' && typeof _iub.cs.consent.purposes[4]!='undefined' && _iub.cs.consent.purposes[4]===false){
                flixtracking.cookieConsent.stopTracking();
            }       
            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            flixconsent=preferences;
        },
        oneTrust:function(){        
            var preferences=''
            if(typeof OneTrust!='undefined' && typeof OneTrust.IsAlertBoxClosed!='undefined')
                preferences=OneTrust.IsAlertBoxClosed();            
            logqa('oneTrust -'+ preferences);
            flixtracking.cookieConsent.provider='OneTrust'  

            if(preferences===false){
                flixtracking.cookieConsent.stopTracking();
            }     

            //just for test consent page  
            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            
            if(typeof Optanon!='undefined' && Optanon.GetDomainData() && Optanon.GetDomainData().ConsentIntegrationData){
                var cv=Optanon.GetDomainData().ConsentIntegrationData.consentPayload.purposes
                var cv2=JSON.stringify(cv);
                var onecv='';
                var third='tp_false|';
                var func='ft_false|';
                var target='tt_false';

                if(cv[2] && cv[2].TransactionType && cv[2].TransactionType=='CONFIRMED'){
                    third='tp_true|';
                }
                if(cv[3] && cv[3].TransactionType && cv[3].TransactionType=='CONFIRMED'){
                    func='ft_true|';
                }                
                if(cv[4] && cv[4].TransactionType && cv[4].TransactionType=='CONFIRMED'){
                    target='tt_true';
                    flixtracking.cookieConsent.stopTracking();
                    preferences=true;
                }

                onecv=third+func+target;                
                flixtracking.cookieConsent.data=onecv;
            }
            flixconsent=preferences;
        },
        osano:function(){
            var preferences=false;  
            logqa('osano -');
            flixtracking.cookieConsent.provider='Osano' 
            var name='cookieconsent_status';
            var match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));
            if (match) {
                logqa('osano', match[2]);
                //deny
                if(match[2]=='allow'){                  
                    preferences=true;
                    //logqa(preferences)
                }else{
                    
                }
            };
                    
            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            flixconsent=preferences;
        },
        quantcast:function(){   
            var preferences=false;  
            logqa('quantcast -');
            flixtracking.cookieConsent.provider='Quantcast' 
            __tcfapi('getTCData', 2, function(tcData, success) {                
                
                if(typeof tcData!='undefined' && tcData!== null && (tcData.eventStatus=='useractioncomplete' || tcData.eventStatus=='tcloaded') ){
                    if(tcData.eventStatus=='useractioncomplete' || tcData.eventStatus=='tcloaded'){
                        var obj =tcData.purpose.consents; 
                   
                        if(Object.keys(obj).length===0){
                            //consent denied                        
                            preferences=false;
                            flixtracking.cookieConsent.stopTracking();
                        }else{  
                            preferences=true;           
                            //consent given
                        }
                    }
                }
                
                if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                    document.querySelector('.consentstatus').innerHTML=preferences;
                flixconsent=preferences;                
            });
        },
        trustcommander:function(){      
            var preferences=false;          
            logqa('trustcommander -');
            flixtracking.cookieConsent.provider='Trustcommander' 
            cact('consent.get', function (result) {
                if (result.consent.status === 'unset') {
                    // Consent was not yet provided.;
                    
                } else {
                    if(result.consent.categories[1].status=='on')
                        preferences=true;
                    else
                        flixtracking.cookieConsent.stopTracking();
                }
            })
            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                document.querySelector('.consentstatus').innerHTML=preferences;
            flixconsent=preferences;
        },
        doNotTrack: function(){
            
            var preferences = navigator.doNotTrack == "yes" || navigator.doNotTrack == "1" || navigator.msDoNotTrack == "1" || window.doNotTrack === "1";
            
            if(preferences===true){
                flixconsent=false;  
                flixtracking.cookieConsent.stopTracking();   
                flixtracking.cookieConsent.provider='DNT'; 
                flixtracking.cookieConsent.data=flixconsent;      
            } else{
                flixtracking.cookieConsent.provider='';
                flixtracking.cookieConsent.data='';
                flixconsent=''    
            }

            if(document.querySelector('.consentstatus') && document.querySelector('.consentstatus').length>0)
                    document.querySelector('.consentstatus').innerHTML=preferences;
            
            return preferences;    
        },
        stopTracking: function(){
            logqa('stopTracking - disable tracking');
            //disable tracking
            flixtracking.tracking=false;
            //if (typeof FlixjQ !="undefined" && typeof FlixjQ.fn.logging!="undefined")
            //    FlixjQ.fn.logging.noTracking=true;
        }
    },
    checkNoTracking: function () {
        logqa('checkNoTracking');
        //deactivated because we have the no tracking code on the 
        try{
            
            /*if (typeof _FFUtils !="undefined" && typeof _FFUtils._FFsendLog !="undefined" && _FFUtils._FFsendLog.length==0){
                flixtracking.noTracking=true;
            }
            if (typeof FlixjQ !="undefined" && typeof FlixjQ.fn.inPage !="undefined" && FlixjQ.fn.inPage.log.length==0) {
                flixtracking.noTracking=true;
            }
            if (window.flixJsCallbacks && window.flixJsCallbacks.$ && window.flixJsCallbacks.$.fn.noShow.log.length==0) {
                flixtracking.noTracking=true;
            }
            if (typeof FlixjQ !="undefined" && typeof FlixjQ.fn.minisite !="undefined" && FlixjQ.fn.minisite.log.length==0) {
                flixtracking.noTracking=true;
            }
            if (typeof FlixjQ !="undefined" && typeof FlixjQ.fn.attachFlix !="undefined" && FlixjQ.fn.attachFlix.log.length==0) {
                flixtracking.noTracking=true;
            }
            if (typeof FlixjQ !="undefined" && typeof FlixjQ.fn.hotspot !="undefined" && FlixjQ.fn.hotspot.log.length==0){
                FlixjQ.fn.hotspot = function(){}; FlixjQ.fn.hotspot.log = function(){};
                flixtracking.noTracking=true;
            }            
            if (window.flixJsCallbacks && window.flixJsCallbacks.$ && typeof window.flixJsCallbacks.$.fn.noShow !="undefined" && window.flixJsCallbacks.$.fn.noShow.log.length==0) {
                flixtracking.noTracking=true
            }*/

            if(flixtracking.noTracking==true)
                logqa('No tracking retailer');
        }catch(e){}

            
    },

    globalTracking: function (opts) {
        logqa('globalTracking')
        if(typeof FlixjQ=='undefined'){
            setTimeout(function(){
                if (typeof flixtracking != 'undefined')
                flixtracking.globalTracking(opts);
            }, 500)
            return false
        }

        logqa('globalTracking --passed')
        if(typeof FlixjQ!='undefined' && typeof FlixjQ.fn.on=='undefined')
            FlixjQ.fn.on=FlixjQ.fn.live;

        if (flixtracking.globalTrackingInit === false) {
            
            if(typeof FlixjQ.fn.logging=='undefined'){
                FlixjQ.fn.logging = function (type, event, data, media, price, inPcount) {
                    //if(typeof flixtracking!='undefined' && flixtracking.site_url)
                    //    flixtracking.logging(type, event, data, media); 
                }
            }

            if (typeof FlixjQ!='undefined' && typeof FlixjQ.fn.inPage!='undefined' && typeof FlixjQ.fn.inPage.data.product !== undefined) {
                opts = FlixjQ.fn.inPage.data;
            } else if (typeof FlixjQ!='undefined' && typeof FlixjQ.fn.minisite!='undefined' && typeof FlixjQ.fn.minisite.data.product !== undefined) {
                opts = FlixjQ.fn.minisite.data;
            } else if(typeof opts!='object'){
                return false;
            }

            setTimeout(function(){
                //3p log init
                if (FlixjQ('.flix-3rdwidget') && FlixjQ('.flix-3rdwidget').length > 0) {
                    if (typeof flixtracking != 'undefined' && typeof flixtracking.products != 'undefined')
                    flixtracking.products.thirdpartywidget.init();
                }

                var comparisonTable = FlixjQ('.flix-compare');

                /* Load comparison table JS and CSS */
                var abtablecheck=false                
                if(window.flixJsCallbacks['ab_'+opts.distributor] && window.flixJsCallbacks['ab_'+opts.distributor].inpage && window.flixJsCallbacks['ab_'+opts.distributor].inpage.inpages && window.flixJsCallbacks['ab_'+opts.distributor].inpage.inpages.disable_comparison_table &&  window.flixJsCallbacks['ab_'+opts.distributor].inpage.inpages.disable_comparison_table==true){
                    //abtablecheck=true;
                }


                if(!window.comparecheck)
                    window.comparecheck=false;
                var ctprodlength=FlixjQ('.flix-comp-product').length;
                if (comparisonTable && comparisonTable.length > 0) {
                    if( window.comparecheck==false){ 
                        window.comparecheck=true;
                        flixtracking.loadComp(flixtracking.site_url+'static/comparison/standard/js/append.js');
                        flixtracking.loadComp(flixtracking.site_url+'static/comparison/standard/css/main.css');

                        if (ctprodlength>1 || ctprodlength===0){
                            if (typeof flixtracking != 'undefined' && typeof flixtracking.products != 'undefined')
                            flixtracking.products.comparison.init();
                        }

                    }
                }

                /*comparison V2 */
                var comparisonTable = FlixjQ('.flix-comparev2');
                var ab_res_id = 'ab_'+opts.distributor;

                if (comparisonTable && comparisonTable.length > 0 && abtablecheck==false) {
                    if( window.comparecheck==false){
                        window.comparecheck=true;
                        flixtracking.products.comparisonv2.init();
                    }
                }else if( window.flixJsCallbacks[ab_res_id] && window.flixJsCallbacks[ab_res_id].inpage
                        && window.flixJsCallbacks[ab_res_id].ab_id =='707'
                        && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages!='undefined'
                        &&
                        (
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_comparison_table !='undefined' && typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_comparison_table =="boolean")
                            ||
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.disable_inpage =="boolean")
                            ||
                            (typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template !='undefined' &&   typeof window.flixJsCallbacks[ab_res_id].inpage.inpages.change_template =="boolean")


                        )
                    ){
                    window.addEventListener('scroll', flixtracking.products.comparisonv2.checkViewport);
                }

                /* Reviews tracking */

                flixtracking.products.reviewsContainer = FlixjQ('.inpage_selector_reviews');
                if (flixtracking.products.reviewsContainer && flixtracking.products.reviewsContainer.length > 0) {
                    flixtracking.products.reviews.init();
                }

                /*Initialization page position tracking*/

                if(FlixjQ.fn.inPage=='undefined' || (FlixjQ.fn.inPage && FlixjQ.fn.inPage.hasOwn( FlixjQ.fn.inPage.data.ab_data ))) {
                    if(FlixjQ("#inpage_container").length>0){
                        flixtracking.products.pagetracking.init();
                    }
                }else{
                    logqa('No time tracking');
                    if(typeof FlixjQ.fn.inPage!='undefined' && typeof FlixjQ.fn.inPage.logTime!='undefined'){
                       FlixjQ.fn.inPage.logTime= function(){}
                    }
                    if(typeof FlixjQ.fn.minisite!='undefined' && typeof FlixjQ.fn.minisite.logTime!='undefined'){
                       FlixjQ.fn.minisite.logTime= function(){}
                    }
                    if(typeof FlixjQ.fn.compMinisite!='undefined' && typeof FlixjQ.fn.compMinisite.logTime!='undefined'){
                       FlixjQ.fn.compMinisite.logTime= function(){}
                    }
                    if(typeof instance!='undefined' && typeof instance.logTime!='undefined'){
                       instance.logTime= function(){}
                    }

                }



                //load 3dft JS and CSS */
                if(!window.threedcheck)
                    window.threedcheck=false


                if (FlixjQ('#flix-3dfwsrc').length && window.threedcheck==false) {
                    logqa('Load 3dtw');                
                    window.threedcheck=true;
                    flixtracking.loadComp(flixtracking.site_url + 'static/3dfw/3dfw.js');
                    
                }

                if(FlixjQ('[skey]').length>0){
                    flixtracking.products.logotracking.init();
                }

                if(FlixjQ('#flix-ugc-galfeatures').length>0){
                    flixtracking.products.ugctracking.init();
                }

                //default button tracking

                flixtracking.products.buttontracking.init();

                var compcc=0
                function checkCompButton(){
                    if(FlixjQ('#inpage-iframe-modal a') && FlixjQ('#inpage-iframe-modal a').length && FlixjQ('#inpage-iframe-modal a').attr('onclick').search('scrollToComplimentary')!=-1){
                        var s=FlixjQ('#inpage-iframe-modal a').attr('onclick')
                        var id= s.split('(\"#link')[1].split('\")')[0]
                        if(FlixjQ('[id^=flixinpage_'+id+']').length && FlixjQ('[id^=flixinpage_'+id+']').html().length==0){
                            FlixjQ('#inpage-iframe-modal a').hide();
                            setTimeout(function(){
                                if(compcc<10)
                                    checkCompButton()
                                compcc++;
                            }, 2000)
                        }else{
                            FlixjQ('#inpage-iframe-modal a').show()
                        }

                    }
                }
                //hide comp button if abtest hides complementary inpages
                if(FlixjQ.fn.inPage && FlixjQ.fn.inPage.hasOwn( FlixjQ.fn.inPage.data.ab_data ))
                    checkCompButton();

            }, 500);

            

            flixtracking.globalTrackingInit = true;
        }
    },
    retailercheck:{
        //cnet
        //rcn=retail competitor name
        //rcc=retail competitor content
        //1:CNET, 2:24TTL, 3:Loadbee, 4:Content Driver, 5:Syndigo
        check:false,        
        init: function(data){ 
            logqa('retailercheck');
            
                flixtracking.retailercheck.check=true;
                setTimeout(function(){
                    if (typeof flixtracking != 'undefined')
                    flixtracking.retailercheck.check=false;
                }, 1000);
                flixtracking.retailercheck.cn='';
                flixtracking.retailercheck.cc='';
            
                if((document.getElementById('ccs-inline-content') && document.getElementById('ccs-inline-content')!=null) || (document.getElementById('ccs-logos') && document.getElementById('ccs-logos')!=null && document.getElementById('ccs-logos').childNodes.length>0) ){
                    if(flixtracking.retailercheck.cn!=''){flixtracking.retailercheck.cn+='|'; flixtracking.retailercheck.cc+='|'}
                    flixtracking.retailercheck.cnet(data);
                }                
                if(document.querySelectorAll('[class^="__ttl__widget"]').length){
                    if(flixtracking.retailercheck.cn!=''){flixtracking.retailercheck.cn+='|'; flixtracking.retailercheck.cc+='|'}
                    flixtracking.retailercheck.twentyfourttl(data);
                }
                if(document.querySelectorAll('.loadbeeTabContent').length){
                    if(flixtracking.retailercheck.cn!=''){flixtracking.retailercheck.cn+='|'; flixtracking.retailercheck.cc+='|'}
                    flixtracking.retailercheck.loadbee(data);
                }            
                if((document.getElementById('syndi_powerpage') && document.getElementById('syndi_powerpage')!=null ) || (document.getElementById('syndigo-hero-image') && document.getElementById('syndigo-hero-image')!=null && document.getElementById('syndigo-hero-image').childNodes.length>0) ){
                    if(flixtracking.retailercheck.cn!=''){flixtracking.retailercheck.cn+='|'; flixtracking.retailercheck.cc+='|'}
                    flixtracking.retailercheck.syndigo(data);  
                }            
                if(document.querySelectorAll('*[data-contentdriver]').length){
                    if(flixtracking.retailercheck.cn!=''){flixtracking.retailercheck.cn+='|'; flixtracking.retailercheck.cc+='|'}
                    flixtracking.retailercheck.contentdriver(data);
                }
                if(document.querySelectorAll('script[src*="1worldsync"]') && document.querySelectorAll('script[src*="1worldsync"]').length){
                    if(flixtracking.retailercheck.cn!=''){flixtracking.retailercheck.cn+='|'; flixtracking.retailercheck.cc+='|'}
                    flixtracking.retailercheck.oneworld(data);
                }
            
            
        },
        cnet: function(data){            
            flixtracking.retailercheck.cn+='cnet';
            try{
                if((document.querySelectorAll('.ccs-cc-inline') && document.querySelectorAll('.ccs-cc-inline').length && document.querySelectorAll('.ccs-cc-inline')[0].innerText.length>100) || document.getElementById('ccs-logos').innerHTML.length>10 ){
                    flixtracking.retailercheck.cc+='true';                    
                }else{                
                    flixtracking.retailercheck.cc+='false';                    
                } 
            }catch(e){ 
                flixtracking.retailercheck.cc+='false'; 
            }           
        },
        twentyfourttl: function(data){
            flixtracking.retailercheck.cn+='24ttl';
            try{
                if(document.querySelectorAll('[class^="__ttl__widget"]') && document.querySelectorAll('[class^="__ttl__widget"]').length && document.querySelectorAll('[class^="__ttl__widget"]')[0].innerText.length>100){                
                    flixtracking.retailercheck.cc+='true';                    
                }else{
                    flixtracking.retailercheck.cc+='false';                    
                }
            }catch(e){ 
                flixtracking.retailercheck.cc+='false'; 
            }
        },
        loadbee: function(data){
            flixtracking.retailercheck.cn+='loadbee';
            try{
                if(document.querySelectorAll('[class^="loadbeeTabContent"]').childNodes && document.querySelectorAll('[class^="__ttl__widget"]').childNodes.length>10){                
                    flixtracking.retailercheck.cc+='true';                    
                }else{
                    flixtracking.retailercheck.cc+='false';                    
                }
            }catch(e){ 
                flixtracking.retailercheck.cc+='false'; 
            }
        },
        syndigo: function(data){
            flixtracking.retailercheck.cn+='syndigo';
            try{
                if((document.getElementById('syndi_powerpage').childNodes.length>0 && document.getElementById('syndi_powerpage').innerHTML.length>10) || (typeof document.querySelector('syndigo-mosaic') !='undefined' && typeof document.querySelector('syndigo-mosaic').shadowRoot !='undefined'  && typeof document.querySelector('syndigo-mosaic').shadowRoot.querySelector('syndigo-mosaic-ribbon') !='undefined' && document.querySelector('syndigo-mosaic').shadowRoot.querySelector('syndigo-mosaic-ribbon') !=null  && typeof document.querySelector('syndigo-mosaic').shadowRoot.querySelector('syndigo-mosaic-ribbon').shadowRoot !='undefined'  && typeof document.querySelector('syndigo-mosaic').shadowRoot.querySelector('syndigo-mosaic-ribbon').shadowRoot.querySelector('.syndigo-mosaic-content') !='undefined' && document.querySelector('syndigo-mosaic').shadowRoot.querySelector('syndigo-mosaic-ribbon').shadowRoot.querySelector('.syndigo-mosaic-content')!=null )){
                    flixtracking.retailercheck.cc+='true';                    
                }else{               
                    flixtracking.retailercheck.cc+='false';                    
                }
            }catch(e){ 
                flixtracking.retailercheck.cc+='false'; 
            }
        },
        contentdriver: function(data){
            flixtracking.retailercheck.cn+='contentdriver';
            try{
                if(document.querySelectorAll('*[data-contentdriver]') && document.querySelectorAll('*[data-contentdriver]').length && document.querySelectorAll('*[data-contentdriver]')[0].innerText.length>100){ 
                    flixtracking.retailercheck.cc+='true';                    
                }else{               
                    flixtracking.retailercheck.cc+='false';                    
                }
            }catch(e){ 
                flixtracking.retailercheck.cc+='false'; 
            }
        },
        oneworld: function(data){
            flixtracking.retailercheck.cn+='oneworld';
            try{
                if(document.querySelectorAll('img[src*="1worldsync"]') && document.querySelectorAll('img[src*="1worldsync"]').length ){ 
                    flixtracking.retailercheck.cc+='true';                    
                }else{               
                    flixtracking.retailercheck.cc+='false';                    
                }
            }catch(e){ 
                flixtracking.retailercheck.cc+='false'; 
            }
        }        
    }


}
flixtracking.init();
}
/*tracking.js ends*/