/*!
 * Modernizr JavaScript library 1.5
 * http://www.modernizr.com/
 *
 * Copyright (c) 2009-2010 Faruk Ates - http://farukat.es/
 * Dual-licensed under the BSD and MIT licenses.
 * http://www.modernizr.com/license/
 *
 * Featuring major contributions by
 * Paul Irish  - http://paulirish.com
 */
window.Modernizr = function(i, e, I) {
    function C(a, b) {
        for (var c in a)if (m[a[c]] !== I && (!b || b(a[c], D)))return true
    }

    function r(a, b) {
        var c = a.charAt(0).toUpperCase() + a.substr(1);
        return!!C([a,"Webkit" + c,"Moz" + c,"O" + c,"ms" + c,"Khtml" + c], b)
    }

    function P() {
        j[E] = function(a) {
            for (var b = 0,c = a.length; b < c; b++)J[a[b]] = !!(a[b]in n);
            return J
        }("autocomplete autofocus list placeholder max min multiple pattern required step".split(" "));
        j[Q] = function(a) {
            for (var b = 0,c,h = a.length; b < h; b++) {
                n.setAttribute("type", a[b]);
                if (c = n.type !==
                        "text") {
                    n.value = K;
                    /tel|search/.test(n.type) || (c = /url|email/.test(n.type) ? n.checkValidity && n.checkValidity() === false : n.value != K)
                }
                L[a[b]] = !!c
            }
            return L
        }("search tel url email datetime date month week time datetime-local number range color".split(" "))
    }

    var j = {},s = e.documentElement,D = e.createElement("modernizr"),m = D.style,n = e.createElement("input"),E = "input",Q = E + "types",K = ":)",M = Object.prototype.toString,y = " -o- -moz- -ms- -webkit- -khtml- ".split(" "),d = {},L = {},J = {},N = [],u = function() {
        var a = {select:"input",
            change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"},b = {};
        return function(c, h) {
            var t = arguments.length == 1;
            if (t && b[c])return b[c];
            h = h || document.createElement(a[c] || "div");
            c = "on" + c;
            var g = c in h;
            if (!g && h.setAttribute) {
                h.setAttribute(c, "return;");
                g = typeof h[c] == "function"
            }
            h = null;
            return t ? (b[c] = g) : g
        }
    }(),F = {}.hasOwnProperty,O;
    O = typeof F !== "undefined" && typeof F.call !== "undefined" ? function(a, b) {
        return F.call(a, b)
    } : function(a, b) {
        return b in a && typeof a.constructor.prototype[b] === "undefined"
    };
    d.canvas = function() {
        return!!e.createElement("canvas").getContext
    };
    d.canvastext = function() {
        return!!(d.canvas() && typeof e.createElement("canvas").getContext("2d").fillText == "function")
    };
    d.geolocation = function() {
        return!!navigator.geolocation
    };
    d.crosswindowmessaging = function() {
        return!!i.postMessage
    };
    d.websqldatabase = function() {
        var a = !!i.openDatabase;
        if (a)try {
            a = !!openDatabase("testdb", "1.0", "html5 test db", 2E5)
        } catch(b) {
            a = false
        }
        return a
    };
    d.indexedDB = function() {
        return!!i.indexedDB
    };
    d.hashchange = function() {
        return u("hashchange",
                i) && (document.documentMode === I || document.documentMode > 7)
    };
    d.historymanagement = function() {
        return!!(i.history && history.pushState)
    };
    d.draganddrop = function() {
        return u("drag") && u("dragstart") && u("dragenter") && u("dragover") && u("dragleave") && u("dragend") && u("drop")
    };
    d.websockets = function() {
        return"WebSocket"in i
    };
    d.rgba = function() {
        m.cssText = "background-color:rgba(150,255,150,.5)";
        return("" + m.backgroundColor).indexOf("rgba") !== -1
    };
    d.hsla = function() {
        m.cssText = "background-color:hsla(120,40%,100%,.5)";
        return("" +
                m.backgroundColor).indexOf("rgba") !== -1
    };
    d.multiplebgs = function() {
        m.cssText = "background:url(//:),url(//:),red url(//:)";
        return/(url\s*\(.*?){3}/.test(m.background)
    };
    d.backgroundsize = function() {
        return r("backgroundSize")
    };
    d.borderimage = function() {
        return r("borderImage")
    };
    d.borderradius = function() {
        return r("borderRadius", "", function(a) {
            return("" + a).indexOf("orderRadius") !== -1
        })
    };
    d.boxshadow = function() {
        return r("boxShadow")
    };
    d.opacity = function() {
        var a = y.join("opacity:.5;") + "";
        m.cssText = a;
        return("" + m.opacity).indexOf("0.5") !==
                -1
    };
    d.cssanimations = function() {
        return r("animationName")
    };
    d.csscolumns = function() {
        return r("columnCount")
    };
    d.cssgradients = function() {
        var a = ("background-image:" + y.join("gradient(linear,left top,right bottom,from(#9f9),to(white));background-image:") + y.join("linear-gradient(left top,#9f9, white);background-image:")).slice(0, -17);
        m.cssText = a;
        return("" + m.backgroundImage).indexOf("gradient") !== -1
    };
    d.cssreflections = function() {
        return r("boxReflect")
    };
    d.csstransforms = function() {
        return!!C(["transformProperty",
            "WebkitTransform","MozTransform","OTransform","msTransform"])
    };
    d.csstransforms3d = function() {
        var a = !!C(["perspectiveProperty","WebkitPerspective","MozPerspective","OPerspective","msPerspective"]);
        if (a) {
            var b = document.createElement("style"),c = e.createElement("div");
            b.textContent = "@media (" + y.join("transform-3d),(") + "modernizr){#modernizr{height:3px}}";
            e.getElementsByTagName("head")[0].appendChild(b);
            c.id = "modernizr";
            s.appendChild(c);
            a = c.offsetHeight === 3;
            b.parentNode.removeChild(b);
            c.parentNode.removeChild(c)
        }
        return a
    };
    d.csstransitions = function() {
        return r("transitionProperty")
    };
    d.fontface = function() {
        var a;
        if (/*@cc_on@if(@_jscript_version>=5)!@end@*/0)a = true; else {
            var b = e.createElement("style"),c = e.createElement("span"),h,t = false,g = e.body,o,w;
            b.textContent = "@font-face{font-family:testfont;src:url('data:font/ttf;base64,AAEAAAAMAIAAAwBAT1MvMliohmwAAADMAAAAVmNtYXCp5qrBAAABJAAAANhjdnQgACICiAAAAfwAAAAEZ2FzcP//AAMAAAIAAAAACGdseWYv5OZoAAACCAAAANxoZWFk69bnvwAAAuQAAAA2aGhlYQUJAt8AAAMcAAAAJGhtdHgGDgC4AAADQAAAABRsb2NhAIQAwgAAA1QAAAAMbWF4cABVANgAAANgAAAAIG5hbWUgXduAAAADgAAABPVwb3N03NkzmgAACHgAAAA4AAECBAEsAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAACAAMDAAAAAAAAgAACbwAAAAoAAAAAAAAAAFBmRWQAAAAgqS8DM/8zAFwDMwDNAAAABQAAAAAAAAAAAAMAAAADAAAAHAABAAAAAABGAAMAAQAAAK4ABAAqAAAABgAEAAEAAgAuqQD//wAAAC6pAP///9ZXAwAAAAAAAAACAAAABgBoAAAAAAAvAAEAAAAAAAAAAAAAAAAAAAABAAIAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEACoAAAAGAAQAAQACAC6pAP//AAAALqkA////1lcDAAAAAAAAAAIAAAAiAogAAAAB//8AAgACACIAAAEyAqoAAwAHAC6xAQAvPLIHBADtMrEGBdw8sgMCAO0yALEDAC88sgUEAO0ysgcGAfw8sgECAO0yMxEhESczESMiARDuzMwCqv1WIgJmAAACAFUAAAIRAc0ADwAfAAATFRQWOwEyNj0BNCYrASIGARQGKwEiJj0BNDY7ATIWFX8aIvAiGhoi8CIaAZIoN/43KCg3/jcoAWD0JB4eJPQkHh7++EY2NkbVRjY2RgAAAAABAEH/+QCdAEEACQAANjQ2MzIWFAYjIkEeEA8fHw8QDxwWFhwWAAAAAQAAAAIAAIuYbWpfDzz1AAsEAAAAAADFn9IuAAAAAMWf0i797/8zA4gDMwAAAAgAAgAAAAAAAAABAAADM/8zAFwDx/3v/98DiAABAAAAAAAAAAAAAAAAAAAABQF2ACIAAAAAAVUAAAJmAFUA3QBBAAAAKgAqACoAWgBuAAEAAAAFAFAABwBUAAQAAgAAAAEAAQAAAEAALgADAAMAAAAQAMYAAQAAAAAAAACLAAAAAQAAAAAAAQAhAIsAAQAAAAAAAgAFAKwAAQAAAAAAAwBDALEAAQAAAAAABAAnAPQAAQAAAAAABQAKARsAAQAAAAAABgAmASUAAQAAAAAADgAaAUsAAwABBAkAAAEWAWUAAwABBAkAAQBCAnsAAwABBAkAAgAKAr0AAwABBAkAAwCGAscAAwABBAkABABOA00AAwABBAkABQAUA5sAAwABBAkABgBMA68AAwABBAkADgA0A/tDb3B5cmlnaHQgMjAwOSBieSBEYW5pZWwgSm9obnNvbi4gIFJlbGVhc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgT3BlbiBGb250IExpY2Vuc2UuIEtheWFoIExpIGdseXBocyBhcmUgcmVsZWFzZWQgdW5kZXIgdGhlIEdQTCB2ZXJzaW9uIDMuYmFlYzJhOTJiZmZlNTAzMiAtIHN1YnNldCBvZiBKdXJhTGlnaHRiYWVjMmE5MmJmZmU1MDMyIC0gc3Vic2V0IG9mIEZvbnRGb3JnZSAyLjAgOiBKdXJhIExpZ2h0IDogMjMtMS0yMDA5YmFlYzJhOTJiZmZlNTAzMiAtIHN1YnNldCBvZiBKdXJhIExpZ2h0VmVyc2lvbiAyIGJhZWMyYTkyYmZmZTUwMzIgLSBzdWJzZXQgb2YgSnVyYUxpZ2h0aHR0cDovL3NjcmlwdHMuc2lsLm9yZy9PRkwAQwBvAHAAeQByAGkAZwBoAHQAIAAyADAAMAA5ACAAYgB5ACAARABhAG4AaQBlAGwAIABKAG8AaABuAHMAbwBuAC4AIAAgAFIAZQBsAGUAYQBzAGUAZAAgAHUAbgBkAGUAcgAgAHQAaABlACAAdABlAHIAbQBzACAAbwBmACAAdABoAGUAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUALgAgAEsAYQB5AGEAaAAgAEwAaQAgAGcAbAB5AHAAaABzACAAYQByAGUAIAByAGUAbABlAGEAcwBlAGQAIAB1AG4AZABlAHIAIAB0AGgAZQAgAEcAUABMACAAdgBlAHIAcwBpAG8AbgAgADMALgBiAGEAZQBjADIAYQA5ADIAYgBmAGYAZQA1ADAAMwAyACAALQAgAHMAdQBiAHMAZQB0ACAAbwBmACAASgB1AHIAYQBMAGkAZwBoAHQAYgBhAGUAYwAyAGEAOQAyAGIAZgBmAGUANQAwADMAMgAgAC0AIABzAHUAYgBzAGUAdAAgAG8AZgAgAEYAbwBuAHQARgBvAHIAZwBlACAAMgAuADAAIAA6ACAASgB1AHIAYQAgAEwAaQBnAGgAdAAgADoAIAAyADMALQAxAC0AMgAwADAAOQBiAGEAZQBjADIAYQA5ADIAYgBmAGYAZQA1ADAAMwAyACAALQAgAHMAdQBiAHMAZQB0ACAAbwBmACAASgB1AHIAYQAgAEwAaQBnAGgAdABWAGUAcgBzAGkAbwBuACAAMgAgAGIAYQBlAGMAMgBhADkAMgBiAGYAZgBlADUAMAAzADIAIAAtACAAcwB1AGIAcwBlAHQAIABvAGYAIABKAHUAcgBhAEwAaQBnAGgAdABoAHQAdABwADoALwAvAHMAYwByAGkAcAB0AHMALgBzAGkAbAAuAG8AcgBnAC8ATwBGAEwAAAAAAgAAAAAAAP+BADMAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAQACAQIAEQt6ZXJva2F5YWhsaQ==')}";
            e.getElementsByTagName("head")[0].appendChild(b);
            c.setAttribute("style", "font:99px _,arial,helvetica;position:absolute;visibility:hidden");
            if (!g) {
                g = s.appendChild(e.createElement("fontface"));
                t = true
            }
            c.innerHTML = "........";
            c.id = "fonttest";
            g.appendChild(c);
            h = c.offsetWidth * c.offsetHeight;
            c.style.font = "99px testfont,_,arial,helvetica";
            a = h !== c.offsetWidth * c.offsetHeight;
            var v = function() {
                if (g.parentNode) {
                    a = j.fontface = h !== c.offsetWidth * c.offsetHeight;
                    s.className = s.className.replace(/(no-)?fontface\b/, "") +
                            (a ? " " : " no-") + "fontface"
                }
            };
            setTimeout(v, 75);
            setTimeout(v, 150);
            addEventListener("load", function() {
                v();
                (w = true) && o && o(a);
                setTimeout(function() {
                    t || (g = c);
                    g.parentNode.removeChild(g);
                    b.parentNode.removeChild(b)
                }, 50)
            }, false)
        }
        j._fontfaceready = function(p) {
            w || a ? p(a) : (o = p)
        };
        return a || h !== c.offsetWidth
    };
    d.video = function() {
        var a = e.createElement("video"),b = !!a.canPlayType;
        if (b) {
            b = new Boolean(b);
            b.ogg = a.canPlayType('video/ogg; codecs="theora"');
            b.h264 = a.canPlayType('video/mp4; codecs="avc1.42E01E"');
            b.webm = a.canPlayType('video/webm; codecs="vp8, vorbis"')
        }
        return b
    };
    d.audio = function() {
        var a = e.createElement("audio"),b = !!a.canPlayType;
        if (b) {
            b = new Boolean(b);
            b.ogg = a.canPlayType('audio/ogg; codecs="vorbis"');
            b.mp3 = a.canPlayType("audio/mpeg;");
            b.wav = a.canPlayType('audio/wav; codecs="1"');
            b.m4a = a.canPlayType("audio/x-m4a;") || a.canPlayType("audio/aac;")
        }
        return b
    };
    d.localStorage = function() {
        return"localStorage"in i && i.localStorage !== null
    };
    d.sessionStorage = function() {
        try {
            return"sessionStorage"in i && i.sessionStorage !== null
        } catch(a) {
            return false
        }
    };
    d.webworkers = function() {
        return!!i.Worker
    };
    d.applicationCache = function() {
        var a = i.applicationCache;
        return!!(a && typeof a.status != "undefined" && typeof a.update == "function" && typeof a.swapCache == "function")
    };
    d.svg = function() {
        return!!e.createElementNS && !!e.createElementNS("http://www.w3.org/2000/svg", "svg").createSVGRect
    };
    d.smil = function() {
        return!!e.createElementNS && /SVG/.test(M.call(e.createElementNS("http://www.w3.org/2000/svg", "animate")))
    };
    d.svgclippaths = function() {
        return!!e.createElementNS && /SVG/.test(M.call(e.createElementNS("http://www.w3.org/2000/svg",
                "clipPath")))
    };
    for (var z in d)if (O(d, z))N.push(((j[z.toLowerCase()] = d[z]()) ? "" : "no-") + z.toLowerCase());
    j[E] || P();
    j.addTest = function(a, b) {
        a = a.toLowerCase();
        if (!j[a]) {
            b = !!b();
            s.className += " " + (b ? "" : "no-") + a;
            j[a] = b;
            return j
        }
    };
    m.cssText = "";
    D = n = null;
    (function() {
        var a = e.createElement("div");
        a.innerHTML = "<elem></elem>";
        return a.childNodes.length !== 1
    })() && function(a, b) {
        function c(f, k) {
            if (o[f])o[f].styleSheet.cssText += k; else {
                var l = t[G],q = b[A]("style");
                q.media = f;
                l.insertBefore(q, l[G]);
                o[f] = q;
                c(f, k)
            }
        }

        function h(f, k) {
            for (var l = new RegExp("\\b(" + w + ")\\b(?!.*[;}])", "gi"),q = function(B) {
                return".iepp_" + B
            },x = -1; ++x < f.length;) {
                k = f[x].media || k;
                h(f[x].imports, k);
                c(k, f[x].cssText.replace(l, q))
            }
        }

        for (var t = b.documentElement,g = b.createDocumentFragment(),o = {},w = "abbr|article|aside|audio|canvas|command|datalist|details|figure|figcaption|footer|header|hgroup|keygen|mark|meter|nav|output|progress|section|source|summary|time|video",v = w.split("|"),p = [],H = -1,G = "firstChild",A = "createElement"; ++H < v.length;) {
            b[A](v[H]);
            g[A](v[H])
        }
        g =
                g.appendChild(b[A]("div"));
        a.attachEvent("onbeforeprint", function() {
            for (var f,k = b.getElementsByTagName("*"),l,q,x = new RegExp("^" + w + "$", "i"),B = -1; ++B < k.length;)if ((f = k[B]) && (q = f.nodeName.match(x))) {
                l = new RegExp("^\\s*<" + q + "(.*)\\/" + q + ">\\s*$", "i");
                g.innerHTML = f.outerHTML.replace(/\r|\n/g, " ").replace(l, f.currentStyle.display == "block" ? "<div$1/div>" : "<span$1/span>");
                l = g.childNodes[0];
                l.className += " iepp_" + q;
                l = p[p.length] = [f,l];
                f.parentNode.replaceChild(l[1], l[0])
            }
            h(b.styleSheets, "all")
        });
        a.attachEvent("onafterprint",
                function() {
                    for (var f = -1,k; ++f < p.length;)p[f][1].parentNode.replaceChild(p[f][0], p[f][1]);
                    for (k in o)t[G].removeChild(o[k]);
                    o = {};
                    p = []
                })
    }(this, e);
    j._enableHTML5 = true;
    j._version = "1.5";
    s.className = s.className.replace(/\bno-js\b/, "") + " js";
    s.className += " " + N.join(" ");
    return j
}(this, this.document);

