function HistogramSlider(J){var K=false;var F=false;this.rangeDimVals=J.rangeDimVals;this.minDimVals=J.minDimVals;this.maxDimVals=J.maxDimVals;this.rangeDimensionName=J.rangeDimensionName;this.minDimensionName=J.minDimensionName;this.maxDimensionName=J.maxDimensionName;var O=0;var A=J.minDimVals.length;var C=J.histogramContainer;var I=J.sliderContainer;var E=J.getRangeHoverText;var N=J.histogramHeight;var H=J.onChange;var D=J.onSlide;var B=J.onHasRefinementsAvailable;var G=J.onNoRefinementsAvailable;this.drawHistogram=function(W){var R=W.refinements[this.rangeDimensionName];var P=0;$(R).each(function(){if(this.count>P){P=this.count;}});var S=[];var X="";var U=0;for(var Q=0;Q<this.rangeDimVals.length+2;Q++){X+="<div class='histoBars'><p class='labels'></p>"+"<div class='bars' style='background-position: 50% ";if(Q==0||Q==this.rangeDimVals.length+1){X+=N+"px;'></div>";}else{var T=0;if(U<R.length&&this.rangeDimVals[Q-1].id==R[U].id){T=R[U].count;U++;}var V=N-Math.round((T/P)*N);X+=V+"px;' id='"+this.rangeDimVals[Q-1].id+"'></div>";if(E&&T>0){X+="<p class='numCars'>"+E(T,this.rangeDimVals[Q-1])+"</p>";}}X+="</div>";}C.html(X);C.find(".bars").hover(function(){$(this).next().show();},function(){$(this).next().hide();});};var M=function(Q,P){C.find(".labels").each(function(R){if(R<Q||R>P){$(this).next().addClass("off");}else{$(this).next().removeClass("off");}});};this.getRangeCount=function(R,Q){var P=this.maxDimVals[this.maxDimVals.length-1].count;return P-(this.minDimVals[0].count-R.count)-(this.maxDimVals[this.maxDimVals.length-1].count-Q.count);};this.initializeSlider=function(){var P=this;I.slider({stepping:1,min:0,max:P.rangeDimVals.length+1,range:true,change:function(S,U){var Q=parseInt(I.slider("value",0));var W=parseInt(I.slider("value",1));var V=P.minDimVals[Q];var T=P.maxDimVals[W-2];var R=P.getRangeCount(V,T);if(R<=0&&!F){if(Q!=O){I.slider("moveTo","-=1");}else{I.slider("moveTo","+=1");}}else{H(V,T,R);O=Q;A=W;}},slide:function(S,U){var Q=parseInt(I.slider("value",0));var W=parseInt(I.slider("value",1));if(W<Q+2){if(Q!=O){I.slider("moveTo","-=1");}else{I.slider("moveTo","+=1");}}else{var V=P.minDimVals[Q];var T=P.maxDimVals[W-2];var R=P.getRangeCount(V,T);D(V,T,R);M(Q+1,W-1);}},handles:[{start:O,min:0,max:P.rangeDimVals.length-1},{start:A,min:2,max:P.rangeDimVals.length+1}]});};this.drawSlider=function(Z){var P=0;var V=this.maxDimVals.length-1;if(Z.totalHitsCount>0){var Y=Z.refinements[this.minDimensionName];var W=Y.length-1;for(var U=this.minDimVals.length-1;U>=0;U--){if(this.minDimVals[U].id==Y[W].id){this.minDimVals[U].count=Y[W].count;if(Y[W].selected){P=U;}if(W!=0){W--;}}else{this.minDimVals[U].count=0;}}var X=Z.refinements[this.maxDimensionName];W=0;for(var U=0;U<this.maxDimVals.length;U++){if(W<X.length&&this.maxDimVals[U].id==X[W].id){this.maxDimVals[U].count=X[W].count;if(X[W].selected){V=U;}W++;}else{this.maxDimVals[U].count=0;}}}var Q=P;var R=V+2;if(!K){O=Q;A=R;this.initializeSlider();K=true;}else{F=true;I.slider("moveTo",Q,0);I.slider("moveTo",R,1);F=false;}M(P+1,V+1);var T=this.minDimVals[P];var S=this.maxDimVals[V];D(T,S,this.getRangeCount(T,S));};var L=function(P,Q){return P==0&&Q==this.maxDimVals.length+1;};this.drawHistogramSlider=function(P){if(P.refinements[this.rangeDimensionName]){B();this.drawHistogram(P);this.drawSlider(P);}else{G();}};this.setMinHandlePosition=function(P){I.slider("moveTo",P,0);};this.getMinHandlePosition=function(){return O;};this.setMaxHandlePosition=function(P){I.slider("moveTo",P,1);};this.getMaxHandlePosition=function(){return A;};}