/*! browser.js - v0.1.1 - 2014-05-31 */ (function(){"use strict";function a(a){return a=String(a),a.charAt(0).toUpperCase()+a.slice(1)}function b(a,b){var c=-1,e=a?a.length:0;if("number"==typeof e&&e>-1&&q>=e)for(;++c3?T=["WebKit"]:(z=/Opera/.test(U)&&(/OPR/.test(a)?"Blink":"Presto")||/\b(?:Midori|Nook|Safari)\b/i.test(a)&&"WebKit"||!T&&/\bMSIE\b/i.test(a)&&("Mac OS"==X?"Tasman":"Trident"))?T=[z]:/PlayStation(?! Vita)/i.test(U)&&"WebKit"==T&&(T=["NetFront"]),U||"Trident"!=T||(U="IE",S=(/\brv:([\d.]+)/.exec(a)||0)[1]),R){if(f(u,"global"))if(H&&(z=H.lang.System,O=z.getProperty("os.arch"),X=X||z.getProperty("os.name")+" "+z.getProperty("os.version")),f(u,"exports"))if(A&&f(u,"system")&&(z=[u.system])[0]){X||(X=z[0].os||null);try{z[1]=(z[1]=u.require)&&z[1]("ringo/engine").version,S=z[1].join("."),U="RingoJS"}catch(Y){z[0].global.system==u.system&&(U="Narwhal")}}else"object"==typeof u.process&&(z=u.process)?(U="Node.js",O=z.arch,X=z.platform,S=/[\d.]+/.exec(z.version)[0]):I&&(U="Rhino");else I&&(U="Rhino");else e(z=u.runtime)==D?(U="Adobe AIR",X=z.flash.system.Capabilities.os):e(z=u.phantom)==G?(U="PhantomJS",S=(z=z.version||null)&&z.major+"."+z.minor+"."+z.patch):"number"==typeof L.documentMode&&(z=/\bTrident\/(\d+)/i.exec(a))&&(S=[S,L.documentMode],(z=+z[1]+4)!=S[1]&&(P.push("IE "+S[1]+" mode"),T&&(T[1]=""),S[1]=z),S="IE"==U?String(S[1].toFixed(1)):S[0]);X=X&&c(X)}S&&(z=/(?:[ab]|dp|pre|[ab]\d+pre)(?:\d+\+?)?$/i.exec(S)||/(?:alpha|beta)(?: ?\d)?/i.exec(a+";"+(R&&x.appMinorVersion))||/\bMinefield\b/i.test(a)&&"a")&&(Q=/b/i.test(z)?"beta":"alpha",S=S.replace(RegExp(z+"\\+?$"),"")+("beta"==Q?K:J)+(/\d+\+?/.exec(z)||"")),"Fennec"==U||"Firefox"==U&&/Android|Firefox OS/.test(X)?U="Firefox Mobile":"Maxthon"==U&&S?S=S.replace(/\.[\d.]+/,".x"):"Silk"==U?(/Mobi/i.test(a)||(X="Android",P.unshift("desktop mode")),/Accelerated *= *true/i.test(a)&&P.unshift("accelerated")):"IE"==U&&(z=(/; *(?:XBLWP|ZuneWP)(\d+)/i.exec(a)||0)[1])?(U+=" Mobile",X="Windows Phone OS "+z+".x",P.unshift("desktop mode")):/Xbox/i.test(V)?(X=null,"Xbox 360"==V&&/IEMobile/.test(a)&&P.unshift("mobile mode")):"Chrome"!=U&&"IE"!=U&&(!U||V||/Browser|Mobi/.test(U))||"Windows CE"!=X&&!/Mobi/i.test(a)?"IE"==U&&R&&null===u.external?P.unshift("platform preview"):(/BlackBerry/.test(V)||/BB10/.test(a))&&(z=(RegExp(V.replace(/ +/g," *")+"/([.\\d]+)","i").exec(a)||0)[1]||S)?(z=[z,/BB10/.test(a)],X=(z[1]?(V=null,W="BlackBerry"):"Device Software")+" "+z[0],S=null):this!=d&&"Wii"!=V&&(R&&M||/Opera/.test(U)&&/\b(?:MSIE|Firefox)\b/i.test(a)||"Firefox"==U&&/OS X (?:\d+\.){2,}/.test(X)||"IE"==U&&(X&&!/^Win/.test(X)&&S>5.5||/Windows XP/.test(X)&&S>8||8==S&&!/Trident/.test(a)))&&!r.test(z=j.call(d,a.replace(r,"")+";"))&&z.name&&(z="ing as "+z.name+((z=z.version)?" "+z:""),r.test(U)?(/IE/.test(z)&&"Mac OS"==X&&(X=null),z="identify"+z):(z="mask"+z,U=N?c(N.replace(/([a-z])([A-Z])/g,"$1 $2")):"Opera",/IE/.test(z)&&(X=null),R||(S=null)),T=["Presto"],P.push(z)):U+=" Mobile",(z=(/\bAppleWebKit\/([\d.]+\+?)/i.exec(a)||0)[1])&&(z=[parseFloat(z.replace(/\.(\d)$/,".0$1")),z],"Safari"==U&&"+"==z[1].slice(-1)?(U="WebKit Nightly",Q="alpha",S=z[1].slice(0,-1)):(S==z[1]||S==(z[2]=(/\bSafari\/([\d.]+\+?)/i.exec(a)||0)[1]))&&(S=null),z[1]=(/\bChrome\/([\d.]+)/i.exec(a)||0)[1],537.36==z[0]&&537.36==z[2]&&parseFloat(z[1])>=28&&(T=["Blink"]),R&&(B||z[1])?(T&&(T[1]="like Chrome"),z=z[1]||(z=z[0],530>z?1:532>z?2:532.05>z?3:533>z?4:534.03>z?5:534.07>z?6:534.1>z?7:534.13>z?8:534.16>z?9:534.24>z?10:534.3>z?11:535.01>z?12:535.02>z?"13+":535.07>z?15:535.11>z?16:535.19>z?17:536.05>z?18:536.1>z?19:537.01>z?20:537.11>z?"21+":537.13>z?23:537.18>z?24:537.24>z?25:537.36>z?26:"Blink"!=T?"27":"28")):(T&&(T[1]="like Safari"),z=z[0],z=400>z?1:500>z?2:526>z?3:533>z?4:534>z?"4+":535>z?5:537>z?6:538>z?7:"7"),T&&(T[1]+=" "+(z+="number"==typeof z?".x":/[.+]/.test(z)?"":"+")),"Safari"==U&&(!S||parseInt(S)>45)&&(S=z)),"Opera"==U&&(z=/(?:zbov|zvav)$/.exec(X))?(U+=" ",P.unshift("desktop mode"),"zvav"==z?(U+="Mini",S=null):U+="Mobile"):"Safari"==U&&/Chrome/.exec(T&&T[1])&&(P.unshift("desktop mode"),U="Chrome Mobile",S=null,/OS X/.test(X)?(W="Apple",X="iOS 4.3+"):X=null),S&&0==S.indexOf(z=/[\d.]+$/.exec(X))&&a.indexOf("/"+z+"-")>-1&&(X=i(X.replace(z,""))),T&&!/Avant|Nook/.test(U)&&(/Browser|Lunascape|Maxthon/.test(U)||/^(?:Adobe|Arora|Midori|Phantom|Rekonq|Rock|Sleipnir|Web)/.test(U)&&T[1])&&(z=T[T.length-1])&&P.push(z),P.length&&(P=["("+P.join("; ")+")"]),W&&V&&V.indexOf(W)<0&&P.push("on "+W),V&&P.push((/^on /.test(P[P.length-1])?"":"on ")+V),X&&(z=/ ([\d.+]+)$/.exec(X),X={architecture:32,family:z?X.replace(z[0],""):X,version:z?z[1]:null,toString:function(){var a=this.version;return this.family+(a?" "+a:"")+(64==this.architecture?" 64-bit":"")}}),(z=/\b(?:AMD|IA|Win|WOW|x86_|x)64\b/i.exec(O))&&!/\bi686\b/i.test(O)&&(X&&(X.architecture=64,X.family=X.family.replace(RegExp(" *"+z),"")),U&&(/WOW64/i.test(a)||R&&/\w(?:86|32)$/.test(x.cpuClass||x.platform))&&P.unshift("32-bit")),a||(a=null);var Z={};return Z.description=a,Z.layout=T&&T[0],Z.manufacturer=W,Z.name=U,Z.prerelease=Q,Z.product=V,Z.ua=a,Z.version=U&&S,Z.os=X||{architecture:null,family:null,version:null,toString:function(){return"null"}},Z.parse=j,Z.toString=t,Z.version&&P.unshift(S),Z.name&&P.unshift(U),X&&U&&(X!=String(X).split(" ")[0]||X!=U.split(" ")[0]&&!V)&&P.push(V?"("+X+")":"on "+X),P.length&&(Z.description=P.join(" ")),Z}var k={"function":!0,object:!0},l=k[typeof window]&&window||this,m=l,n=k[typeof exports]&&exports,o=k[typeof module]&&module&&!module.nodeType&&module,p=n&&o&&"object"==typeof global&&global;!p||p.global!==p&&p.window!==p&&p.self!==p||(l=p);var q=Math.pow(2,53)-1,r=/Opera/,s=this,t=Object.prototype,u=t.hasOwnProperty,v=t.toString;"function"==typeof define&&"object"==typeof define.amd&&define.amd?define(function(){return j()}):n&&o?d(j(),function(a,b){n[b]=a}):l.platform=j()}).call(this),function(){var a,b,c,d,e,f,g,h,i,j,k,l=[].slice;for(String.prototype.strip=function(){return null!=String.prototype.trim?this.trim():this.replace(/^\s+|\s+$/g,"")},String.prototype.lstrip=function(){return this.replace(/^\s+/g,"")},String.prototype.rstrip=function(){return this.replace(/\s+$/g,"")},c=window.browser,b=window.platform,window.browser={},e=window.document.documentElement,browser.classes=function(){var a,c,d;return d=b.name.toLowerCase(),c={"os x":"mac"},a=b.os.family.toLowerCase(),a=c[a]||a.split(" ")[0],["ua-"+d,"os-"+a,""+a+"-"+d,"ua-"+d+parseInt(b.version)]},browser.noConflict=function(){return window.browser=c,this},f=function(a){var b;return b=new RegExp(a,"i"),e.className.match(b)},k=function(){var a,b,c,d,f;for(b=1<=arguments.length?l.call(arguments,0):[],f=[],c=0,d=b.length;d>c;c++)a=b[c],f.push(e.className=(a||"").replace(/\s+/," ").strip());return f},d=function(){var a,b,c,d,g;for(b=1<=arguments.length?l.call(arguments,0):[],g=[],c=0,d=b.length;d>c;c++)a=b[c],g.push(f(a)?void 0:k(e.className+" "+a));return g},j=function(){var a,b,c,d,g;for(b=1<=arguments.length?l.call(arguments,0):[],g=[],c=0,d=b.length;d>c;c++)a=b[c],g.push(f(a)?k(e.className.replace(a,"")):void 0);return g},j("no-js","nojs"),i=browser.classes(),g=0,h=i.length;h>g;g++)a=i[g],d(a);window.browser=browser}.call(this),function(){var a;a=browser.classes(),document.getElementById("extra_classes").innerHTML=a.join(" "),document.getElementById("all_classes").innerHTML=window.document.documentElement.className}.call(this);