(function(A){A.fn.columnize=function(B){var C={width:400,columns:false,buildOnce:false,overflow:false};var B=A.extend(C,B);return this.each(function(){var J=A(this);var M=J.height();var N=A("<div></div>");var D=0;var I=false;var E=J[0].childNodes;J.append(A(E));N.append(J.children().clone());L();if(!B.buildOnce){A(window).resize(function(){if(!B.buildOnce&&A.browser.msie){if(J.data("timeout")){clearTimeout(J.data("timeout"))}J.data("timeout",setTimeout(L,200))}else{if(!B.buildOnce){L()}else{}}})}function H(Q,V,X,Y){while(X.height()<Y&&V[0].childNodes.length){Q.append(V[0].childNodes[0])}if(Q[0].childNodes.length==0){return }var P=Q[0].childNodes;var R=P[P.length-1];Q[0].removeChild(R);var W=A(R);if(W[0].nodeType==3){var T=W[0].nodeValue;var S=B.width/18;if(B.accuracy){S=B.accuracy}var O;var U=null;while(X.height()<Y&&T.length){if(T.indexOf(" ",S)!="-1"){O=T.substring(0,T.indexOf(" ",S))}else{O=T}U=document.createTextNode(O);Q.append(U);if(T.length>S){T=T.substring(T.indexOf(" ",S))}else{T=""}}if(X.height()>=Y&&U!=null){Q[0].removeChild(U);T=U.nodeValue+T}if(T.length){W[0].nodeValue=T}else{return false}}if(V.children().length){V.prepend(W)}else{V.append(W)}return W[0].nodeType==3}function K(P,R,Q,O){if(R.children().length){$cloneMe=R.children(":first");$clone=$cloneMe.clone();if($clone.attr("nodeType")==1&&!$clone.hasClass("dontend")){P.append($clone);if($clone.is("img")&&Q.height()<O+20){$cloneMe.remove()}else{if(!$cloneMe.hasClass("dontsplit")&&Q.height()<O+20){$cloneMe.remove()}else{if($clone.is("img")||$cloneMe.hasClass("dontsplit")){$clone.remove()}else{$clone.empty();if(!H($clone,$cloneMe,Q,O)){if($cloneMe.children().length){K($clone,$cloneMe,Q,O)}}}}}}}}function F(){if(J.data("columnized")&&J.children().length==1){return }J.data("columnized",true);J.data("columnizing",true);J.empty();J.append(A("<div class='first last column' style='width:98%; padding: 3px; float: left;'></div>"));$col=J.children().eq(J.children().length-1);$destroyable=N.clone();if(B.overflow){targetHeight=B.overflow.height;H($col,$destroyable,$col,targetHeight);if(!$destroyable.children().find(":first-child").hasClass("dontend")){K($col,$destroyable,$col,targetHeight)}while(G($col.children(":last").get(0))){var R=$col.children(":last");R.remove();$destroyable.prepend(R)}var Q="";var T=document.createElement("DIV");while($destroyable[0].childNodes.length>0){var O=$destroyable[0].childNodes[0];for(var P=0;P<O.attributes.length;P++){if(O.attributes[P].nodeName.indexOf("jQuery")==0){O.removeAttribute(O.attributes[P].nodeName)}}T.innerHTML="";T.appendChild($destroyable[0].childNodes[0]);Q+=T.innerHTML}var S=A(B.overflow.id)[0];S.innerHTML=Q}else{$col.append($destroyable)}J.data("columnizing",false);if(B.overflow){B.overflow.doneFunc()}}function G(O){if(O.nodeType!=1){return false}if(A(O).hasClass("dontend")){return true}if(O.childNodes.length==0){return false}return G(O.childNodes[O.childNodes.length-1])}function L(){if(D==J.width()){return }D=J.width();var R=Math.round(J.width()/B.width);if(B.columns){R=B.columns}if(R<=1){return F()}if(J.data("columnizing")){return }J.data("columnized",true);J.data("columnizing",true);J.empty();J.append(A("<div style='width:"+(Math.round(100/R)-2)+"%; padding: 3px; float: left;'></div>"));b=J.children(":last");b.append(N.clone());M=b.height();J.empty();var T=M/R;var U=true;var V=3;if(B.overflow){V=1;T=B.overflow.height}for(var Y=0;Y<V;Y++){J.empty();var Z=N.clone();Z.css("visibility","hidden");for(var f=0;f<R;f++){var O=(f==0)?"first column":"column";var O=(f==R-1)?("last "+O):O;J.append(A("<div class='"+O+"' style='width:"+(Math.round(100/R)-2)+"%; float: left;'></div>"))}for(var f=0;f<R-(B.overflow?0:1);f++){var b=J.children().eq(f);H(b,Z,b,T);if(!Z.children().find(":first-child").hasClass("dontend")){K(b,Z,b,T)}else{}while(G(b.children(":last").get(0))){var P=b.children(":last");P.remove();Z.prepend(P)}}if(B.overflow){var W="";var a=document.createElement("DIV");while(Z[0].childNodes.length>0){var g=Z[0].childNodes[0];for(var f=0;f<g.attributes.length;f++){if(g.attributes[f].nodeName.indexOf("jQuery")==0){g.removeAttribute(g.attributes[f].nodeName)}}a.innerHTML="";a.appendChild(Z[0].childNodes[0]);W+=a.innerHTML}var c=A(B.overflow.id)[0];c.innerHTML=W}else{b=J.children().eq(J.children().length-1);while(Z.children().length){b.append(Z.children(":first"))}var Q=b.height();var X=Q-T;var h=0;var d=10000000;var e=0;J.children().each(function(i){return function(j){var k=i.children().eq(j).height();h+=k;if(k>e){e=k}if(k<d){d=k}}}(J));var S=h/R;if(e-d>30){T=S+30}else{if(Math.abs(S-T)>20){T=S}else{Y=V}}}J.append(A("<br style='clear:both;'>"))}J.find(".column").find(":first.removeiffirst").remove();J.find(".column").find(":last.removeiflast").remove();J.data("columnizing",false);if(B.overflow){B.overflow.doneFunc()}}})}})(jQuery);