(function() { 
 | 
    function require(path, parent, orig) { 
 | 
        var resolved = require.resolve(path); 
 | 
        if (null == resolved) { 
 | 
            orig = orig || path; 
 | 
            parent = parent || "root"; 
 | 
            var err = new Error('Failed to require "' + orig + '" from "' 
 | 
                    + parent + '"'); 
 | 
            err.path = orig; 
 | 
            err.parent = parent; 
 | 
            err.require = true; 
 | 
            throw err 
 | 
        } 
 | 
        var module = require.modules[resolved]; 
 | 
        if (!module._resolving && !module.exports) { 
 | 
            var mod = {}; 
 | 
            mod.exports = {}; 
 | 
            mod.client = mod.component = true; 
 | 
            module._resolving = true; 
 | 
            module.call(this, mod.exports, require.relative(resolved), mod); 
 | 
            delete module._resolving; 
 | 
            module.exports = mod.exports 
 | 
        } 
 | 
        return module.exports 
 | 
    } 
 | 
    require.modules = {}; 
 | 
    require.aliases = {}; 
 | 
    require.resolve = function(path) { 
 | 
        if (path.charAt(0) === "/") 
 | 
            path = path.slice(1); 
 | 
        var paths = [ path, path + ".js", path + ".json", path + "/index.js", 
 | 
                path + "/index.json" ]; 
 | 
        for (var i = 0; i < paths.length; i++) { 
 | 
            var path = paths[i]; 
 | 
            if (require.modules.hasOwnProperty(path)) 
 | 
                return path; 
 | 
            if (require.aliases.hasOwnProperty(path)) 
 | 
                return require.aliases[path] 
 | 
        } 
 | 
    }; 
 | 
    require.normalize = function(curr, path) { 
 | 
        var segs = []; 
 | 
        if ("." != path.charAt(0)) 
 | 
            return path; 
 | 
        curr = curr.split("/"); 
 | 
        path = path.split("/"); 
 | 
        for (var i = 0; i < path.length; ++i) { 
 | 
            if (".." == path[i]) { 
 | 
                curr.pop() 
 | 
            } else if ("." != path[i] && "" != path[i]) { 
 | 
                segs.push(path[i]) 
 | 
            } 
 | 
        } 
 | 
        return curr.concat(segs).join("/") 
 | 
    }; 
 | 
    require.register = function(path, definition) { 
 | 
        require.modules[path] = definition 
 | 
    }; 
 | 
    require.alias = function(from, to) { 
 | 
        if (!require.modules.hasOwnProperty(from)) { 
 | 
            throw new Error('Failed to alias "' + from + '", it does not exist') 
 | 
        } 
 | 
        require.aliases[to] = from 
 | 
    }; 
 | 
    require.relative = function(parent) { 
 | 
        var p = require.normalize(parent, ".."); 
 | 
        function lastIndexOf(arr, obj) { 
 | 
            var i = arr.length; 
 | 
            while (i--) { 
 | 
                if (arr[i] === obj) 
 | 
                    return i 
 | 
            } 
 | 
            return -1 
 | 
        } 
 | 
        function localRequire(path) { 
 | 
            var resolved = localRequire.resolve(path); 
 | 
            return require(resolved, parent, path) 
 | 
        } 
 | 
        localRequire.resolve = function(path) { 
 | 
            var c = path.charAt(0); 
 | 
            if ("/" == c) 
 | 
                return path.slice(1); 
 | 
            if ("." == c) 
 | 
                return require.normalize(p, path); 
 | 
            var segs = parent.split("/"); 
 | 
            var i = lastIndexOf(segs, "deps") + 1; 
 | 
            if (!i) 
 | 
                i = 0; 
 | 
            path = segs.slice(0, i + 1).join("/") + "/deps/" + path; 
 | 
            return path 
 | 
        }; 
 | 
        localRequire.exists = function(path) { 
 | 
            return require.modules.hasOwnProperty(localRequire.resolve(path)) 
 | 
        }; 
 | 
        return localRequire 
 | 
    }; 
 | 
    require.register("abpetkov-transitionize/transitionize.js", function( 
 | 
            exports, require, module) { 
 | 
        module.exports = Transitionize; 
 | 
        function Transitionize(element, props) { 
 | 
            if (!(this instanceof Transitionize)) 
 | 
                return new Transitionize(element, props); 
 | 
            this.element = element; 
 | 
            this.props = props || {}; 
 | 
            this.init() 
 | 
        } 
 | 
        Transitionize.prototype.isSafari = function() { 
 | 
            return /Safari/.test(navigator.userAgent) 
 | 
                    && /Apple Computer/.test(navigator.vendor) 
 | 
        }; 
 | 
        Transitionize.prototype.init = function() { 
 | 
            var transitions = []; 
 | 
            for ( var key in this.props) { 
 | 
                transitions.push(key + " " + this.props[key]) 
 | 
            } 
 | 
            this.element.style.transition = transitions.join(", "); 
 | 
            if (this.isSafari()) 
 | 
                this.element.style.webkitTransition = transitions.join(", ") 
 | 
        } 
 | 
    }); 
 | 
    require 
 | 
            .register( 
 | 
                    "ftlabs-fastclick/lib/fastclick.js", 
 | 
                    function(exports, require, module) { 
 | 
                        function FastClick(layer) { 
 | 
                            "use strict"; 
 | 
                            var oldOnClick, self = this; 
 | 
                            this.trackingClick = false; 
 | 
                            this.trackingClickStart = 0; 
 | 
                            this.targetElement = null; 
 | 
                            this.touchStartX = 0; 
 | 
                            this.touchStartY = 0; 
 | 
                            this.lastTouchIdentifier = 0; 
 | 
                            this.touchBoundary = 10; 
 | 
                            this.layer = layer; 
 | 
                            if (!layer || !layer.nodeType) { 
 | 
                                throw new TypeError( 
 | 
                                        "Layer must be a document node") 
 | 
                            } 
 | 
                            this.onClick = function() { 
 | 
                                return FastClick.prototype.onClick.apply(self, 
 | 
                                        arguments) 
 | 
                            }; 
 | 
                            this.onMouse = function() { 
 | 
                                return FastClick.prototype.onMouse.apply(self, 
 | 
                                        arguments) 
 | 
                            }; 
 | 
                            this.onTouchStart = function() { 
 | 
                                return FastClick.prototype.onTouchStart.apply( 
 | 
                                        self, arguments) 
 | 
                            }; 
 | 
                            this.onTouchMove = function() { 
 | 
                                return FastClick.prototype.onTouchMove.apply( 
 | 
                                        self, arguments) 
 | 
                            }; 
 | 
                            this.onTouchEnd = function() { 
 | 
                                return FastClick.prototype.onTouchEnd.apply( 
 | 
                                        self, arguments) 
 | 
                            }; 
 | 
                            this.onTouchCancel = function() { 
 | 
                                return FastClick.prototype.onTouchCancel.apply( 
 | 
                                        self, arguments) 
 | 
                            }; 
 | 
                            if (FastClick.notNeeded(layer)) { 
 | 
                                return 
 | 
                            } 
 | 
                            if (this.deviceIsAndroid) { 
 | 
                                layer.addEventListener("mouseover", 
 | 
                                        this.onMouse, true); 
 | 
                                layer.addEventListener("mousedown", 
 | 
                                        this.onMouse, true); 
 | 
                                layer.addEventListener("mouseup", this.onMouse, 
 | 
                                        true) 
 | 
                            } 
 | 
                            layer.addEventListener("click", this.onClick, true); 
 | 
                            layer.addEventListener("touchstart", 
 | 
                                    this.onTouchStart, false); 
 | 
                            layer.addEventListener("touchmove", 
 | 
                                    this.onTouchMove, false); 
 | 
                            layer.addEventListener("touchend", this.onTouchEnd, 
 | 
                                    false); 
 | 
                            layer.addEventListener("touchcancel", 
 | 
                                    this.onTouchCancel, false); 
 | 
                            if (!Event.prototype.stopImmediatePropagation) { 
 | 
                                layer.removeEventListener = function(type, 
 | 
                                        callback, capture) { 
 | 
                                    var rmv = Node.prototype.removeEventListener; 
 | 
                                    if (type === "click") { 
 | 
                                        rmv.call(layer, type, callback.hijacked 
 | 
                                                || callback, capture) 
 | 
                                    } else { 
 | 
                                        rmv 
 | 
                                                .call(layer, type, callback, 
 | 
                                                        capture) 
 | 
                                    } 
 | 
                                }; 
 | 
                                layer.addEventListener = function(type, 
 | 
                                        callback, capture) { 
 | 
                                    var adv = Node.prototype.addEventListener; 
 | 
                                    if (type === "click") { 
 | 
                                        adv 
 | 
                                                .call( 
 | 
                                                        layer, 
 | 
                                                        type, 
 | 
                                                        callback.hijacked 
 | 
                                                                || (callback.hijacked = function( 
 | 
                                                                        event) { 
 | 
                                                                    if (!event.propagationStopped) { 
 | 
                                                                        callback(event) 
 | 
                                                                    } 
 | 
                                                                }), capture) 
 | 
                                    } else { 
 | 
                                        adv 
 | 
                                                .call(layer, type, callback, 
 | 
                                                        capture) 
 | 
                                    } 
 | 
                                } 
 | 
                            } 
 | 
                            if (typeof layer.onclick === "function") { 
 | 
                                oldOnClick = layer.onclick; 
 | 
                                layer.addEventListener("click", 
 | 
                                        function(event) { 
 | 
                                            oldOnClick(event) 
 | 
                                        }, false); 
 | 
                                layer.onclick = null 
 | 
                            } 
 | 
                        } 
 | 
                        FastClick.prototype.deviceIsAndroid = navigator.userAgent 
 | 
                                .indexOf("Android") > 0; 
 | 
                        FastClick.prototype.deviceIsIOS = /iP(ad|hone|od)/ 
 | 
                                .test(navigator.userAgent); 
 | 
                        FastClick.prototype.deviceIsIOS4 = FastClick.prototype.deviceIsIOS 
 | 
                                && /OS 4_\d(_\d)?/.test(navigator.userAgent); 
 | 
                        FastClick.prototype.deviceIsIOSWithBadTarget = FastClick.prototype.deviceIsIOS 
 | 
                                && /OS ([6-9]|\d{2})_\d/ 
 | 
                                        .test(navigator.userAgent); 
 | 
                        FastClick.prototype.needsClick = function(target) { 
 | 
                            "use strict"; 
 | 
                            switch (target.nodeName.toLowerCase()) { 
 | 
                            case "button": 
 | 
                            case "select": 
 | 
                            case "textarea": 
 | 
                                if (target.disabled) { 
 | 
                                    return true 
 | 
                                } 
 | 
                                break; 
 | 
                            case "input": 
 | 
                                if (this.deviceIsIOS && target.type === "file" 
 | 
                                        || target.disabled) { 
 | 
                                    return true 
 | 
                                } 
 | 
                                break; 
 | 
                            case "label": 
 | 
                            case "video": 
 | 
                                return true 
 | 
                            } 
 | 
                            return /\bneedsclick\b/.test(target.className) 
 | 
                        }; 
 | 
                        FastClick.prototype.needsFocus = function(target) { 
 | 
                            "use strict"; 
 | 
                            switch (target.nodeName.toLowerCase()) { 
 | 
                            case "textarea": 
 | 
                                return true; 
 | 
                            case "select": 
 | 
                                return !this.deviceIsAndroid; 
 | 
                            case "input": 
 | 
                                switch (target.type) { 
 | 
                                case "button": 
 | 
                                case "checkbox": 
 | 
                                case "file": 
 | 
                                case "image": 
 | 
                                case "radio": 
 | 
                                case "submit": 
 | 
                                    return false 
 | 
                                } 
 | 
                                return !target.disabled && !target.readOnly; 
 | 
                            default: 
 | 
                                return /\bneedsfocus\b/.test(target.className) 
 | 
                            } 
 | 
                        }; 
 | 
                        FastClick.prototype.sendClick = function(targetElement, 
 | 
                                event) { 
 | 
                            "use strict"; 
 | 
                            var clickEvent, touch; 
 | 
                            if (document.activeElement 
 | 
                                    && document.activeElement !== targetElement) { 
 | 
                                document.activeElement.blur() 
 | 
                            } 
 | 
                            touch = event.changedTouches[0]; 
 | 
                            clickEvent = document.createEvent("MouseEvents"); 
 | 
                            clickEvent.initMouseEvent(this 
 | 
                                    .determineEventType(targetElement), true, 
 | 
                                    true, window, 1, touch.screenX, 
 | 
                                    touch.screenY, touch.clientX, 
 | 
                                    touch.clientY, false, false, false, false, 
 | 
                                    0, null); 
 | 
                            clickEvent.forwardedTouchEvent = true; 
 | 
                            targetElement.dispatchEvent(clickEvent) 
 | 
                        }; 
 | 
                        FastClick.prototype.determineEventType = function( 
 | 
                                targetElement) { 
 | 
                            "use strict"; 
 | 
                            if (this.deviceIsAndroid 
 | 
                                    && targetElement.tagName.toLowerCase() === "select") { 
 | 
                                return "mousedown" 
 | 
                            } 
 | 
                            return "click" 
 | 
                        }; 
 | 
                        FastClick.prototype.focus = function(targetElement) { 
 | 
                            "use strict"; 
 | 
                            var length; 
 | 
                            if (this.deviceIsIOS 
 | 
                                    && targetElement.setSelectionRange 
 | 
                                    && targetElement.type.indexOf("date") !== 0 
 | 
                                    && targetElement.type !== "time") { 
 | 
                                length = targetElement.value.length; 
 | 
                                targetElement.setSelectionRange(length, length) 
 | 
                            } else { 
 | 
                                targetElement.focus() 
 | 
                            } 
 | 
                        }; 
 | 
                        FastClick.prototype.updateScrollParent = function( 
 | 
                                targetElement) { 
 | 
                            "use strict"; 
 | 
                            var scrollParent, parentElement; 
 | 
                            scrollParent = targetElement.fastClickScrollParent; 
 | 
                            if (!scrollParent 
 | 
                                    || !scrollParent.contains(targetElement)) { 
 | 
                                parentElement = targetElement; 
 | 
                                do { 
 | 
                                    if (parentElement.scrollHeight > parentElement.offsetHeight) { 
 | 
                                        scrollParent = parentElement; 
 | 
                                        targetElement.fastClickScrollParent = parentElement; 
 | 
                                        break 
 | 
                                    } 
 | 
                                    parentElement = parentElement.parentElement 
 | 
                                } while (parentElement) 
 | 
                            } 
 | 
                            if (scrollParent) { 
 | 
                                scrollParent.fastClickLastScrollTop = scrollParent.scrollTop 
 | 
                            } 
 | 
                        }; 
 | 
                        FastClick.prototype.getTargetElementFromEventTarget = function( 
 | 
                                eventTarget) { 
 | 
                            "use strict"; 
 | 
                            if (eventTarget.nodeType === Node.TEXT_NODE) { 
 | 
                                return eventTarget.parentNode 
 | 
                            } 
 | 
                            return eventTarget 
 | 
                        }; 
 | 
                        FastClick.prototype.onTouchStart = function(event) { 
 | 
                            "use strict"; 
 | 
                            var targetElement, touch, selection; 
 | 
                            if (event.targetTouches.length > 1) { 
 | 
                                return true 
 | 
                            } 
 | 
                            targetElement = this 
 | 
                                    .getTargetElementFromEventTarget(event.target); 
 | 
                            touch = event.targetTouches[0]; 
 | 
                            if (this.deviceIsIOS) { 
 | 
                                selection = window.getSelection(); 
 | 
                                if (selection.rangeCount 
 | 
                                        && !selection.isCollapsed) { 
 | 
                                    return true 
 | 
                                } 
 | 
                                if (!this.deviceIsIOS4) { 
 | 
                                    if (touch.identifier === this.lastTouchIdentifier) { 
 | 
                                        event.preventDefault(); 
 | 
                                        return false 
 | 
                                    } 
 | 
                                    this.lastTouchIdentifier = touch.identifier; 
 | 
                                    this.updateScrollParent(targetElement) 
 | 
                                } 
 | 
                            } 
 | 
                            this.trackingClick = true; 
 | 
                            this.trackingClickStart = event.timeStamp; 
 | 
                            this.targetElement = targetElement; 
 | 
                            this.touchStartX = touch.pageX; 
 | 
                            this.touchStartY = touch.pageY; 
 | 
                            if (event.timeStamp - this.lastClickTime < 200) { 
 | 
                                event.preventDefault() 
 | 
                            } 
 | 
                            return true 
 | 
                        }; 
 | 
                        FastClick.prototype.touchHasMoved = function(event) { 
 | 
                            "use strict"; 
 | 
                            var touch = event.changedTouches[0], boundary = this.touchBoundary; 
 | 
                            if (Math.abs(touch.pageX - this.touchStartX) > boundary 
 | 
                                    || Math.abs(touch.pageY - this.touchStartY) > boundary) { 
 | 
                                return true 
 | 
                            } 
 | 
                            return false 
 | 
                        }; 
 | 
                        FastClick.prototype.onTouchMove = function(event) { 
 | 
                            "use strict"; 
 | 
                            if (!this.trackingClick) { 
 | 
                                return true 
 | 
                            } 
 | 
                            if (this.targetElement !== this 
 | 
                                    .getTargetElementFromEventTarget(event.target) 
 | 
                                    || this.touchHasMoved(event)) { 
 | 
                                this.trackingClick = false; 
 | 
                                this.targetElement = null 
 | 
                            } 
 | 
                            return true 
 | 
                        }; 
 | 
                        FastClick.prototype.findControl = function(labelElement) { 
 | 
                            "use strict"; 
 | 
                            if (labelElement.control !== undefined) { 
 | 
                                return labelElement.control 
 | 
                            } 
 | 
                            if (labelElement.htmlFor) { 
 | 
                                return document 
 | 
                                        .getElementById(labelElement.htmlFor) 
 | 
                            } 
 | 
                            return labelElement 
 | 
                                    .querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea") 
 | 
                        }; 
 | 
                        FastClick.prototype.onTouchEnd = function(event) { 
 | 
                            "use strict"; 
 | 
                            var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this.targetElement; 
 | 
                            if (!this.trackingClick) { 
 | 
                                return true 
 | 
                            } 
 | 
                            if (event.timeStamp - this.lastClickTime < 200) { 
 | 
                                this.cancelNextClick = true; 
 | 
                                return true 
 | 
                            } 
 | 
                            this.cancelNextClick = false; 
 | 
                            this.lastClickTime = event.timeStamp; 
 | 
                            trackingClickStart = this.trackingClickStart; 
 | 
                            this.trackingClick = false; 
 | 
                            this.trackingClickStart = 0; 
 | 
                            if (this.deviceIsIOSWithBadTarget) { 
 | 
                                touch = event.changedTouches[0]; 
 | 
                                targetElement = document.elementFromPoint( 
 | 
                                        touch.pageX - window.pageXOffset, 
 | 
                                        touch.pageY - window.pageYOffset) 
 | 
                                        || targetElement; 
 | 
                                targetElement.fastClickScrollParent = this.targetElement.fastClickScrollParent 
 | 
                            } 
 | 
                            targetTagName = targetElement.tagName.toLowerCase(); 
 | 
                            if (targetTagName === "label") { 
 | 
                                forElement = this.findControl(targetElement); 
 | 
                                if (forElement) { 
 | 
                                    this.focus(targetElement); 
 | 
                                    if (this.deviceIsAndroid) { 
 | 
                                        return false 
 | 
                                    } 
 | 
                                    targetElement = forElement 
 | 
                                } 
 | 
                            } else if (this.needsFocus(targetElement)) { 
 | 
                                if (event.timeStamp - trackingClickStart > 100 
 | 
                                        || this.deviceIsIOS 
 | 
                                        && window.top !== window 
 | 
                                        && targetTagName === "input") { 
 | 
                                    this.targetElement = null; 
 | 
                                    return false 
 | 
                                } 
 | 
                                this.focus(targetElement); 
 | 
                                if (!this.deviceIsIOS4 
 | 
                                        || targetTagName !== "select") { 
 | 
                                    this.targetElement = null; 
 | 
                                    event.preventDefault() 
 | 
                                } 
 | 
                                return false 
 | 
                            } 
 | 
                            if (this.deviceIsIOS && !this.deviceIsIOS4) { 
 | 
                                scrollParent = targetElement.fastClickScrollParent; 
 | 
                                if (scrollParent 
 | 
                                        && scrollParent.fastClickLastScrollTop !== scrollParent.scrollTop) { 
 | 
                                    return true 
 | 
                                } 
 | 
                            } 
 | 
                            if (!this.needsClick(targetElement)) { 
 | 
                                event.preventDefault(); 
 | 
                                this.sendClick(targetElement, event) 
 | 
                            } 
 | 
                            return false 
 | 
                        }; 
 | 
                        FastClick.prototype.onTouchCancel = function() { 
 | 
                            "use strict"; 
 | 
                            this.trackingClick = false; 
 | 
                            this.targetElement = null 
 | 
                        }; 
 | 
                        FastClick.prototype.onMouse = function(event) { 
 | 
                            "use strict"; 
 | 
                            if (!this.targetElement) { 
 | 
                                return true 
 | 
                            } 
 | 
                            if (event.forwardedTouchEvent) { 
 | 
                                return true 
 | 
                            } 
 | 
                            if (!event.cancelable) { 
 | 
                                return true 
 | 
                            } 
 | 
                            if (!this.needsClick(this.targetElement) 
 | 
                                    || this.cancelNextClick) { 
 | 
                                if (event.stopImmediatePropagation) { 
 | 
                                    event.stopImmediatePropagation() 
 | 
                                } else { 
 | 
                                    event.propagationStopped = true 
 | 
                                } 
 | 
                                event.stopPropagation(); 
 | 
                                event.preventDefault(); 
 | 
                                return false 
 | 
                            } 
 | 
                            return true 
 | 
                        }; 
 | 
                        FastClick.prototype.onClick = function(event) { 
 | 
                            "use strict"; 
 | 
                            var permitted; 
 | 
                            if (this.trackingClick) { 
 | 
                                this.targetElement = null; 
 | 
                                this.trackingClick = false; 
 | 
                                return true 
 | 
                            } 
 | 
                            if (event.target.type === "submit" 
 | 
                                    && event.detail === 0) { 
 | 
                                return true 
 | 
                            } 
 | 
                            permitted = this.onMouse(event); 
 | 
                            if (!permitted) { 
 | 
                                this.targetElement = null 
 | 
                            } 
 | 
                            return permitted 
 | 
                        }; 
 | 
                        FastClick.prototype.destroy = function() { 
 | 
                            "use strict"; 
 | 
                            var layer = this.layer; 
 | 
                            if (this.deviceIsAndroid) { 
 | 
                                layer.removeEventListener("mouseover", 
 | 
                                        this.onMouse, true); 
 | 
                                layer.removeEventListener("mousedown", 
 | 
                                        this.onMouse, true); 
 | 
                                layer.removeEventListener("mouseup", 
 | 
                                        this.onMouse, true) 
 | 
                            } 
 | 
                            layer.removeEventListener("click", this.onClick, 
 | 
                                    true); 
 | 
                            layer.removeEventListener("touchstart", 
 | 
                                    this.onTouchStart, false); 
 | 
                            layer.removeEventListener("touchmove", 
 | 
                                    this.onTouchMove, false); 
 | 
                            layer.removeEventListener("touchend", 
 | 
                                    this.onTouchEnd, false); 
 | 
                            layer.removeEventListener("touchcancel", 
 | 
                                    this.onTouchCancel, false) 
 | 
                        }; 
 | 
                        FastClick.notNeeded = function(layer) { 
 | 
                            "use strict"; 
 | 
                            var metaViewport; 
 | 
                            var chromeVersion; 
 | 
                            if (typeof window.ontouchstart === "undefined") { 
 | 
                                return true 
 | 
                            } 
 | 
                            chromeVersion = +(/Chrome\/([0-9]+)/ 
 | 
                                    .exec(navigator.userAgent) || [ , 0 ])[1]; 
 | 
                            if (chromeVersion) { 
 | 
                                if (FastClick.prototype.deviceIsAndroid) { 
 | 
                                    metaViewport = document 
 | 
                                            .querySelector("meta[name=viewport]"); 
 | 
                                    if (metaViewport) { 
 | 
                                        if (metaViewport.content 
 | 
                                                .indexOf("user-scalable=no") !== -1) { 
 | 
                                            return true 
 | 
                                        } 
 | 
                                        if (chromeVersion > 31 
 | 
                                                && window.innerWidth <= window.screen.width) { 
 | 
                                            return true 
 | 
                                        } 
 | 
                                    } 
 | 
                                } else { 
 | 
                                    return true 
 | 
                                } 
 | 
                            } 
 | 
                            if (layer.style.msTouchAction === "none") { 
 | 
                                return true 
 | 
                            } 
 | 
                            return false 
 | 
                        }; 
 | 
                        FastClick.attach = function(layer) { 
 | 
                            "use strict"; 
 | 
                            return new FastClick(layer) 
 | 
                        }; 
 | 
                        if (typeof define !== "undefined" && define.amd) { 
 | 
                            define(function() { 
 | 
                                "use strict"; 
 | 
                                return FastClick 
 | 
                            }) 
 | 
                        } else if (typeof module !== "undefined" 
 | 
                                && module.exports) { 
 | 
                            module.exports = FastClick.attach; 
 | 
                            module.exports.FastClick = FastClick 
 | 
                        } else { 
 | 
                            window.FastClick = FastClick 
 | 
                        } 
 | 
                    }); 
 | 
    require 
 | 
            .register( 
 | 
                    "switchery/switchery.js", 
 | 
                    function(exports, require, module) { 
 | 
                        var transitionize = require("transitionize"), fastclick = require("fastclick"); 
 | 
                        module.exports = Switchery; 
 | 
                        var defaults = { 
 | 
                            color : "#64bd63", 
 | 
                            secondaryColor : "#dfdfdf", 
 | 
                            className : "switchery", 
 | 
                            disabled : false, 
 | 
                            disabledOpacity : .5, 
 | 
                            speed : "0.4s" 
 | 
                        }; 
 | 
                        function Switchery(element, options) { 
 | 
                            if (!(this instanceof Switchery)) 
 | 
                                return new Switchery(element, options); 
 | 
                            this.element = element; 
 | 
                            this.options = options || {}; 
 | 
                            for ( var i in defaults) { 
 | 
                                if (this.options[i] == null) { 
 | 
                                    this.options[i] = defaults[i] 
 | 
                                } 
 | 
                            } 
 | 
                            if (this.element != null 
 | 
                                    && this.element.type == "checkbox") 
 | 
                                this.init() 
 | 
                        } 
 | 
                        Switchery.prototype.hide = function() { 
 | 
                            this.element.style.display = "none" 
 | 
                        }; 
 | 
                        Switchery.prototype.show = function() { 
 | 
                            var switcher = this.create(); 
 | 
                            this.insertAfter(this.element, switcher) 
 | 
                        }; 
 | 
                        Switchery.prototype.create = function() { 
 | 
                            this.switcher = document.createElement("span"); 
 | 
                            this.jack = document.createElement("small"); 
 | 
                            this.switcher.appendChild(this.jack); 
 | 
                            this.switcher.className = this.options.className; 
 | 
                            return this.switcher 
 | 
                        }; 
 | 
                        Switchery.prototype.insertAfter = function(reference, 
 | 
                                target) { 
 | 
                            reference.parentNode.insertBefore(target, 
 | 
                                    reference.nextSibling) 
 | 
                        }; 
 | 
                        Switchery.prototype.isChecked = function() { 
 | 
                            return this.element.checked 
 | 
                        }; 
 | 
                        Switchery.prototype.isDisabled = function() { 
 | 
                            return this.options.disabled 
 | 
                                    || this.element.disabled 
 | 
                        }; 
 | 
                        Switchery.prototype.setPosition = function(clicked) { 
 | 
                            var checked = this.isChecked(), switcher = this.switcher, jack = this.jack; 
 | 
                            if (clicked && checked) 
 | 
                                checked = false; 
 | 
                            else if (clicked && !checked) 
 | 
                                checked = true; 
 | 
                            if (checked === true) { 
 | 
                                this.element.checked = true; 
 | 
                                if (window.getComputedStyle) 
 | 
                                    jack.style.left = parseInt(window 
 | 
                                            .getComputedStyle(switcher).width) 
 | 
                                            - parseInt(window 
 | 
                                                    .getComputedStyle(jack).width) 
 | 
                                            + "px"; 
 | 
                                else 
 | 
                                    jack.style.left = parseInt(switcher.currentStyle["width"]) 
 | 
                                            - parseInt(jack.currentStyle["width"]) 
 | 
                                            + "px"; 
 | 
                                if (this.options.color) 
 | 
                                    this.colorize(); 
 | 
                                this.setSpeed() 
 | 
                            } else { 
 | 
                                jack.style.left = 0; 
 | 
                                this.element.checked = false; 
 | 
                                this.switcher.style.boxShadow = "inset 0 0 0 0 " 
 | 
                                        + this.options.secondaryColor; 
 | 
                                this.switcher.style.borderColor = this.options.secondaryColor; 
 | 
                                this.switcher.style.backgroundColor = ""; 
 | 
                                this.setSpeed() 
 | 
                            } 
 | 
                        }; 
 | 
                        Switchery.prototype.setSpeed = function() { 
 | 
                            var switcherProp = {}, jackProp = { 
 | 
                                left : this.options.speed.replace(/[a-z]/, "") 
 | 
                                        / 2 + "s" 
 | 
                            }; 
 | 
                            if (this.isChecked()) { 
 | 
                                switcherProp = { 
 | 
                                    border : this.options.speed, 
 | 
                                    "box-shadow" : this.options.speed, 
 | 
                                    "background-color" : this.options.speed 
 | 
                                            .replace(/[a-z]/, "") 
 | 
                                            * 3 + "s" 
 | 
                                } 
 | 
                            } else { 
 | 
                                switcherProp = { 
 | 
                                    border : this.options.speed, 
 | 
                                    "box-shadow" : this.options.speed 
 | 
                                } 
 | 
                            } 
 | 
                            transitionize(this.switcher, switcherProp); 
 | 
                            transitionize(this.jack, jackProp) 
 | 
                        }; 
 | 
                        Switchery.prototype.setAttributes = function() { 
 | 
                            var id = this.element.getAttribute("id"), name = this.element 
 | 
                                    .getAttribute("name"); 
 | 
                            if (id) 
 | 
                                this.switcher.setAttribute("id", id); 
 | 
                            if (name) 
 | 
                                this.switcher.setAttribute("name", name) 
 | 
                        }; 
 | 
                        Switchery.prototype.colorize = function() { 
 | 
                            this.switcher.style.backgroundColor = this.options.color; 
 | 
                            this.switcher.style.borderColor = this.options.color; 
 | 
                            this.switcher.style.boxShadow = "inset 0 0 0 16px " 
 | 
                                    + this.options.color 
 | 
                        }; 
 | 
                        Switchery.prototype.handleOnchange = function(state) { 
 | 
                            if (typeof Event === "function" 
 | 
                                    || !document.fireEvent) { 
 | 
                                var event = document.createEvent("HTMLEvents"); 
 | 
                                event.initEvent("change", true, true); 
 | 
                                this.element.dispatchEvent(event) 
 | 
                            } else { 
 | 
                                this.element.fireEvent("onchange") 
 | 
                            } 
 | 
                        }; 
 | 
                        Switchery.prototype.handleChange = function() { 
 | 
                            var self = this, el = this.element; 
 | 
                            if (el.addEventListener) { 
 | 
                                el.addEventListener("change", function() { 
 | 
                                    self.setPosition() 
 | 
                                }) 
 | 
                            } else { 
 | 
                                el.attachEvent("onchange", function() { 
 | 
                                    self.setPosition() 
 | 
                                }) 
 | 
                            } 
 | 
                        }; 
 | 
                        Switchery.prototype.handleClick = function() { 
 | 
                            var self = this, switcher = this.switcher; 
 | 
                            if (this.isDisabled() === false) { 
 | 
                                fastclick(switcher); 
 | 
                                if (switcher.addEventListener) { 
 | 
                                    switcher 
 | 
                                            .addEventListener( 
 | 
                                                    "click", 
 | 
                                                    function() { 
 | 
                                                        self.setPosition(true); 
 | 
                                                        self 
 | 
                                                                .handleOnchange(self.element.checked) 
 | 
                                                    }) 
 | 
                                } else { 
 | 
                                    switcher 
 | 
                                            .attachEvent( 
 | 
                                                    "onclick", 
 | 
                                                    function() { 
 | 
                                                        self.setPosition(true); 
 | 
                                                        self 
 | 
                                                                .handleOnchange(self.element.checked) 
 | 
                                                    }) 
 | 
                                } 
 | 
                            } else { 
 | 
                                this.element.disabled = true; 
 | 
                                this.switcher.style.opacity = this.options.disabledOpacity 
 | 
                            } 
 | 
                        }; 
 | 
                        Switchery.prototype.disableLabel = function() { 
 | 
                            var parent = this.element.parentNode, labels = document 
 | 
                                    .getElementsByTagName("label"), attached = null; 
 | 
                            for (var i = 0; i < labels.length; i++) { 
 | 
                                if (labels[i].getAttribute("for") === this.element.id) { 
 | 
                                    attached = true 
 | 
                                } 
 | 
                            } 
 | 
                            if (attached === true 
 | 
                                    || parent.tagName.toLowerCase() === "label") { 
 | 
                                if (parent.addEventListener) { 
 | 
                                    parent.addEventListener("click", 
 | 
                                            function(e) { 
 | 
                                                e.preventDefault() 
 | 
                                            }) 
 | 
                                } else { 
 | 
                                    parent.attachEvent("onclick", function(e) { 
 | 
                                        e.returnValue = false 
 | 
                                    }) 
 | 
                                } 
 | 
                            } 
 | 
                        }; 
 | 
                        Switchery.prototype.markAsSwitched = function() { 
 | 
                            this.element.setAttribute("data-switchery", true) 
 | 
                        }; 
 | 
                        Switchery.prototype.markedAsSwitched = function() { 
 | 
                            return this.element.getAttribute("data-switchery") 
 | 
                        }; 
 | 
                        Switchery.prototype.init = function() { 
 | 
                            this.hide(); 
 | 
                            this.show(); 
 | 
                            this.setPosition(); 
 | 
                            this.setAttributes(); 
 | 
                            this.markAsSwitched(); 
 | 
                            this.disableLabel(); 
 | 
                            this.handleChange(); 
 | 
                            this.handleClick() 
 | 
                        } 
 | 
                    }); 
 | 
    require.alias("abpetkov-transitionize/transitionize.js", 
 | 
            "switchery/deps/transitionize/transitionize.js"); 
 | 
    require.alias("abpetkov-transitionize/transitionize.js", 
 | 
            "switchery/deps/transitionize/index.js"); 
 | 
    require.alias("abpetkov-transitionize/transitionize.js", 
 | 
            "transitionize/index.js"); 
 | 
    require.alias("abpetkov-transitionize/transitionize.js", 
 | 
            "abpetkov-transitionize/index.js"); 
 | 
    require.alias("ftlabs-fastclick/lib/fastclick.js", 
 | 
            "switchery/deps/fastclick/lib/fastclick.js"); 
 | 
    require.alias("ftlabs-fastclick/lib/fastclick.js", 
 | 
            "switchery/deps/fastclick/index.js"); 
 | 
    require.alias("ftlabs-fastclick/lib/fastclick.js", "fastclick/index.js"); 
 | 
    require.alias("ftlabs-fastclick/lib/fastclick.js", 
 | 
            "ftlabs-fastclick/index.js"); 
 | 
    require.alias("switchery/switchery.js", "switchery/index.js"); 
 | 
    if (typeof exports == "object") { 
 | 
        module.exports = require("switchery") 
 | 
    } else if (typeof define == "function" && define.amd) { 
 | 
        define(function() { 
 | 
            return require("switchery") 
 | 
        }) 
 | 
    } else { 
 | 
        this["Switchery"] = require("switchery") 
 | 
    } 
 | 
})(); 
 |