/**
 * @author Han Lin Yap < http://zencodez.net/ >
 * @copyright 2010 zencodez.net
 * @license http://creativecommons.org/licenses/by-sa/3.0/
 * @package Css3-Finalize
 * @version 1.16 - 2010-12-09
 * @website https://github.com/codler/jQuery-Css3-Finalize
 *
 * == Description == 
 * Some css3 attributes needs to have a prefix in front 
 * in order to work in different browser. The plugin takes 
 * care of that so you only need to write without the prefix.
 *
 * == Example Usage ==
 * // This will look for all style-tags and parse them.
 * $.cssFinalize('style');
 */
(function(a){a.cssFinalize=function(n,r){var o=false;if(!r){r={}}if(a.browser.webkit||a.browser.safari){o="webkit"}else{if(a.browser.mozilla){o="moz"}else{if(a.browser.msie){if(parseInt(a.browser.version.substr(0,1))<=7&&!r.shim){return true}o="ms"}else{if(a.browser.opera){o="o"}}}}function f(t){return function(u){return t}}var g={animation:["webkit"],"animation-delay":["webkit"],"animation-direction":["webkit"],"animation-duration":["webkit"],"animation-iteration-count":["webkit"],"animation-name":["webkit"],"animation-timing-function":["webkit"],"backface-visibility":["webkit"],"background-clip":["webkit","khtml"],"background-origin":["webkit","khtml"],"background-size":["moz","webkit","khtml"],"border-image":["moz","webkit"],"border-top-image":["moz","webkit"],"border-right-image":["moz","webkit"],"border-bottom-image":["moz","webkit"],"border-left-image":["moz","webkit"],"border-corner-image":["moz","webkit"],"border-top-left-image":["moz","webkit"],"border-top-right-image":["moz","webkit"],"border-bottom-left-image":["moz","webkit"],"border-bottom-right-image":["moz","webkit"],"border-radius":["moz"],"border-top-left-radius":[f("-moz-border-radius-topleft")],"border-top-right-radius":[f("-moz-border-radius-topright")],"border-bottom-right-radius":[f("-moz-border-radius-bottomright")],"border-bottom-left-radius":[f("-moz-border-radius-bottomleft")],"box-align":["moz","webkit"],"box-direction":["moz","webkit"],"box-flex":["moz","webkit"],"box-flex-group":["moz","webkit"],"box-lines":["moz","webkit"],"box-ordinal-group":["moz","webkit"],"box-orient":["moz","webkit"],"box-pack":["moz","webkit"],"box-shadow":["moz","webkit"],"box-sizing":["moz","webkit"],"column-count":["moz","webkit"],"column-gap":["moz","webkit"],"column-rule":["moz","webkit"],"column-rule-color":["moz","webkit"],"column-rule-style":["moz","webkit"],"column-rule-width":["moz","webkit"],"column-width":["moz","webkit"],columns:["webkit"],marquee:["webkit"],"marquee-direction":["webkit"],"marquee-speed":["webkit"],"marquee-style":["webkit"],perspective:["webkit"],"perspective-origin":["webkit"],"tab-size":["moz","o"],"text-overflow":["o"],"text-size-adjust":["webkit","ms"],transform:["moz","webkit","o","ms"],"transform-origin":["moz","webkit","o","ms"],"transform-style":["webkit"],transition:["moz","webkit","o"],"transition-delay":["moz","webkit","o"],"transition-duration":["moz","webkit","o"],"transition-property":["moz","webkit","o"],"transition-timing-function":["moz","webkit","o"],"user-modify":["moz","webkit","khtml"],"user-select":["moz","webkit","khtml"]};function e(t){var u="";a.each(t,function(v,w){u+=w.selector+"{";if(a.isArray(w.attributes)){u+=e(w.attributes)}else{a.each(w.attributes,function(y,x){u+=y+":"+x+";"})}u+="}"});return u}function q(v){var u=v.split(/(:[^;]*;?)/);u.pop();var t={};a.map(u,function(x,w){if(w%2==1){t[a.trim(u[w-1])]=a.trim(x.substr(1).replace(";",""))}});return t}function d(B){var w=B.split(/({[^{}]*})/);if(w[w.length-1].indexOf("}")==-1){w.pop()}var x=[];var u=false;var C;var z=0;var A;var y=0;while(y<w.length){if(y%2==0){var v=a.trim(w[y]);if(u){if(v.indexOf("}")!=-1){v=v.substr(1);w[y]=v;A=w.splice(z,y-z);A.shift();A.unshift(C[1]);x[x.length-1].attributes=d(A.join(""));u=false;y=z;continue}}else{if(v.indexOf("{")!=-1){C=v.split("{");v=a.trim(C[0]);u=true;z=y}if(v!=""){x.push({selector:v})}}}else{if(!u){x[x.length-1].attributes=q(w[y].substr(1,w[y].length-2))}}y++}return x}function p(t){t=t.replace(/\/\*((?:[^\*]|\*[^\/])*)\*\//g,"");t=t.replace(/\n/g,"");t=t.replace(/\r/g,"");t=t.replace(/\@import[^;]*;/g,"");return t}function k(t){if(a.isArray(t)){return{}}var u={};a.each(t,function(y,x){var v=l(y);if(v){u[v]=x}var z=h(y,x);if(z){u[y]=z}var w=m(y,x);if(w){u[w.property]=w.value}});return u}function l(t){if(t in g){for(prefix in g[t]){if(a.isFunction(g[t][prefix])){return g[t][prefix](t)}else{if(o==g[t][prefix]||!o){return"-"+g[t][prefix]+"-"+t}}}}return false}function h(u,t){if(o=="moz"){if(t.indexOf("calc")==0){return"-moz-"+t}if(parseInt(a.browser.version.substr(0,1))<4){if(u=="background-clip"||u=="background-origin"){if(t=="padding-box"){return"padding"}else{if(t=="border-box"){return"border"}else{if(t=="content-box"){return"content"}}}}}}if(r.shim){if(o=="ms"){if(parseInt(a.browser.version.substr(0,1))<=7){if(u.toUpperCase()=="DISPLAY"&&t=="inline-block"){return"inline"}if(u.toUpperCase()=="BACKGROUND-COLOR"&&t.indexOf("rgba")==0){return""}}}}return false}function m(u,t){if(r.shim){if(o=="ms"){if(parseInt(a.browser.version.substr(0,1))<=7){if(u.toUpperCase()=="BACKGROUND-COLOR"&&t.indexOf("rgba")==0){t=b(t);return{property:"filter",value:"progid:DXImageTransform.Microsoft.gradient(startColorStr='"+t+"',EndColorStr='"+t+"')"}}}}}return false}function i(t){if(o=="moz"){t=t.replace("::selection","::-moz-selection")}else{if(o=="webkit"){t=t.replace("@keyframes","@-webkit-keyframes")}}return t}function b(x){var u=x.replace(/^rgba\s?\(\s?(.*?)\s?\)$/,"$1").split(/,\s?/);var t=[];var w;for(var v=0;v<u.length;v++){if(v==3){u[v]*=255}w="0"+parseInt(u[v],10).toString(16);t.push(w.substr(w.length-2,2).toUpperCase())}t.splice(0,0,t.pop());return"#"+t.join("")}function c(u,v){v=p(v);if(a.trim(v)==""){return}var w=d(v);var t=[];a.each(w,function(x,z){if(z.attributes){var y=k(z.attributes);if(!a.isEmptyObject(y)){t.push({selector:i(z.selector),attributes:y})}else{if(i(z.selector)!=z.selector){t.push({selector:i(z.selector),attributes:z.attributes})}}}});u.addClass("css-finalize-read");if(t.length>0){s(u,t)}}if(!(n instanceof jQuery)){n=a(n)}n.each(function(t,u){var w=a(this);if(w.hasClass("css-finalize-read")||w.hasClass("css-finalized")){return true}if(this.tagName=="LINK"&&w.attr("rel")=="stylesheet"){try{a("<div />").load(this.href,function(x){c(w,x)})}catch(v){}}else{c(w,w.html())}});function s(t,u){t.after('<style class="css-finalized">'+e(u)+"</style>")}if(a.cssHooks){for(property in g){if((newProperty=l(property))!==false){j(property,newProperty)}}}function j(u,t){a.cssHooks[a.camelCase(u)]={get:function(x,w,v){return x.style[a.camelCase(t)]},set:function(v,w){v.style[a.camelCase(t)]=w}}}};a(function(){if(window.cssFinalize!==false){a.cssFinalize("style, link")}})})(jQuery);var cbSplit;if(!cbSplit){cbSplit=function(i,f,e){if(Object.prototype.toString.call(f)!=="[object RegExp]"){return cbSplit._nativeSplit.call(i,f,e)}var c=[],a=0,d=(f.ignoreCase?"i":"")+(f.multiline?"m":"")+(f.sticky?"y":""),f=RegExp(f.source,d+"g"),b,g,h,j;i=i+"";if(!cbSplit._compliantExecNpcg){b=RegExp("^"+f.source+"$(?!\\s)",d)}if(e===undefined||+e<0){e=Infinity}else{e=Math.floor(+e);if(!e){return[]}}while(g=f.exec(i)){h=g.index+g[0].length;if(h>a){c.push(i.slice(a,g.index));if(!cbSplit._compliantExecNpcg&&g.length>1){g[0].replace(b,function(){for(var k=1;k<arguments.length-2;k++){if(arguments[k]===undefined){g[k]=undefined}}})}if(g.length>1&&g.index<i.length){Array.prototype.push.apply(c,g.slice(1))}j=g[0].length;a=h;if(c.length>=e){break}}if(f.lastIndex===g.index){f.lastIndex++}}if(a===i.length){if(j||!f.test("")){c.push("")}}else{c.push(i.slice(a))}return c.length>e?c.slice(0,e):c};cbSplit._compliantExecNpcg=/()??/.exec("")[1]===undefined;cbSplit._nativeSplit=String.prototype.split}String.prototype.split=function(b,a){return cbSplit(this,b,a)};
