var CLOSURE_NO_DEPS = true; var COMPILED = false; var goog = goog || {}; goog.global = this; goog.global.CLOSURE_UNCOMPILED_DEFINES; goog.global.CLOSURE_DEFINES; goog.isDef = function(val) { return val !== void 0; }; goog.exportPath_ = function(name, opt_object, opt_objectToExportTo) { var parts = name.split("."); var cur = opt_objectToExportTo || goog.global; if (!(parts[0] in cur) && cur.execScript) { cur.execScript("var " + parts[0]); } for (var part;parts.length && (part = parts.shift());) { if (!parts.length && goog.isDef(opt_object)) { cur[part] = opt_object; } else { if (cur[part]) { cur = cur[part]; } else { cur = cur[part] = {}; } } } }; goog.define = function(name, defaultValue) { var value = defaultValue; if (!COMPILED) { if (goog.global.CLOSURE_UNCOMPILED_DEFINES && Object.prototype.hasOwnProperty.call(goog.global.CLOSURE_UNCOMPILED_DEFINES, name)) { value = goog.global.CLOSURE_UNCOMPILED_DEFINES[name]; } else { if (goog.global.CLOSURE_DEFINES && Object.prototype.hasOwnProperty.call(goog.global.CLOSURE_DEFINES, name)) { value = goog.global.CLOSURE_DEFINES[name]; } } } goog.exportPath_(name, value); }; goog.DEBUG = true; goog.define("goog.LOCALE", "en"); goog.define("goog.TRUSTED_SITE", true); goog.define("goog.STRICT_MODE_COMPATIBLE", false); goog.provide = function(name) { if (!COMPILED) { if (goog.isProvided_(name)) { throw new Error('Namespace "' + name + '" already declared.'); } delete goog.implicitNamespaces_[name]; var namespace = name; while (namespace = namespace.substring(0, namespace.lastIndexOf("."))) { if (goog.getObjectByName(namespace)) { break; } goog.implicitNamespaces_[namespace] = true; } } goog.exportPath_(name); }; goog.setTestOnly = function(opt_message) { if (COMPILED && !goog.DEBUG) { opt_message = opt_message || ""; throw new Error("Importing test-only code into non-debug environment" + (opt_message ? ": " + opt_message : ".")); } }; goog.forwardDeclare = function(name) { }; if (!COMPILED) { goog.isProvided_ = function(name) { return!goog.implicitNamespaces_[name] && goog.isDefAndNotNull(goog.getObjectByName(name)); }; goog.implicitNamespaces_ = {}; } goog.getObjectByName = function(name, opt_obj) { var parts = name.split("."); var cur = opt_obj || goog.global; for (var part;part = parts.shift();) { if (goog.isDefAndNotNull(cur[part])) { cur = cur[part]; } else { return null; } } return cur; }; goog.globalize = function(obj, opt_global) { var global = opt_global || goog.global; for (var x in obj) { global[x] = obj[x]; } }; goog.addDependency = function(relPath, provides, requires) { if (goog.DEPENDENCIES_ENABLED) { var provide, require; var path = relPath.replace(/\\/g, "/"); var deps = goog.dependencies_; for (var i = 0;provide = provides[i];i++) { deps.nameToPath[provide] = path; if (!(path in deps.pathToNames)) { deps.pathToNames[path] = {}; } deps.pathToNames[path][provide] = true; } for (var j = 0;require = requires[j];j++) { if (!(path in deps.requires)) { deps.requires[path] = {}; } deps.requires[path][require] = true; } } }; goog.define("goog.ENABLE_DEBUG_LOADER", true); goog.require = function(name) { if (!COMPILED) { if (goog.isProvided_(name)) { return; } if (goog.ENABLE_DEBUG_LOADER) { var path = goog.getPathFromDeps_(name); if (path) { goog.included_[path] = true; goog.writeScripts_(); return; } } var errorMessage = "goog.require could not find: " + name; if (goog.global.console) { goog.global.console["error"](errorMessage); } throw new Error(errorMessage); } }; goog.basePath = ""; goog.global.CLOSURE_BASE_PATH; goog.global.CLOSURE_NO_DEPS; goog.global.CLOSURE_IMPORT_SCRIPT; goog.nullFunction = function() { }; goog.identityFunction = function(opt_returnValue, var_args) { return opt_returnValue; }; goog.abstractMethod = function() { throw new Error("unimplemented abstract method"); }; goog.addSingletonGetter = function(ctor) { ctor.getInstance = function() { if (ctor.instance_) { return ctor.instance_; } if (goog.DEBUG) { goog.instantiatedSingletons_[goog.instantiatedSingletons_.length] = ctor; } return ctor.instance_ = new ctor; }; }; goog.instantiatedSingletons_ = []; goog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER; if (goog.DEPENDENCIES_ENABLED) { goog.included_ = {}; goog.dependencies_ = {pathToNames:{}, nameToPath:{}, requires:{}, visited:{}, written:{}}; goog.inHtmlDocument_ = function() { var doc = goog.global.document; return typeof doc != "undefined" && "write" in doc; }; goog.findBasePath_ = function() { if (goog.global.CLOSURE_BASE_PATH) { goog.basePath = goog.global.CLOSURE_BASE_PATH; return; } else { if (!goog.inHtmlDocument_()) { return; } } var doc = goog.global.document; var scripts = doc.getElementsByTagName("script"); for (var i = scripts.length - 1;i >= 0;--i) { var src = scripts[i].src; var qmark = src.lastIndexOf("?"); var l = qmark == -1 ? src.length : qmark; if (src.substr(l - 7, 7) == "base.js") { goog.basePath = src.substr(0, l - 7); return; } } }; goog.importScript_ = function(src) { var importScript = goog.global.CLOSURE_IMPORT_SCRIPT || goog.writeScriptTag_; if (!goog.dependencies_.written[src] && importScript(src)) { goog.dependencies_.written[src] = true; } }; goog.writeScriptTag_ = function(src) { if (goog.inHtmlDocument_()) { var doc = goog.global.document; if (doc.readyState == "complete") { var isDeps = /\bdeps.js$/.test(src); if (isDeps) { return false; } else { throw new Error('Cannot write "' + src + '" after document load'); } } doc.write('\x3cscript type\x3d"text/javascript" src\x3d"' + src + '"\x3e\x3c/' + "script\x3e"); return true; } else { return false; } }; goog.writeScripts_ = function() { var scripts = []; var seenScript = {}; var deps = goog.dependencies_; function visitNode(path) { if (path in deps.written) { return; } if (path in deps.visited) { if (!(path in seenScript)) { seenScript[path] = true; scripts.push(path); } return; } deps.visited[path] = true; if (path in deps.requires) { for (var requireName in deps.requires[path]) { if (!goog.isProvided_(requireName)) { if (requireName in deps.nameToPath) { visitNode(deps.nameToPath[requireName]); } else { throw new Error("Undefined nameToPath for " + requireName); } } } } if (!(path in seenScript)) { seenScript[path] = true; scripts.push(path); } } for (var path in goog.included_) { if (!deps.written[path]) { visitNode(path); } } for (var i = 0;i < scripts.length;i++) { if (scripts[i]) { goog.importScript_(goog.basePath + scripts[i]); } else { throw new Error("Undefined script input"); } } }; goog.getPathFromDeps_ = function(rule) { if (rule in goog.dependencies_.nameToPath) { return goog.dependencies_.nameToPath[rule]; } else { return null; } }; goog.findBasePath_(); if (!goog.global.CLOSURE_NO_DEPS) { goog.importScript_(goog.basePath + "deps.js"); } } goog.typeOf = function(value) { var s = typeof value; if (s == "object") { if (value) { if (value instanceof Array) { return "array"; } else { if (value instanceof Object) { return s; } } var className = Object.prototype.toString.call((value)); if (className == "[object Window]") { return "object"; } if (className == "[object Array]" || typeof value.length == "number" && typeof value.splice != "undefined" && typeof value.propertyIsEnumerable != "undefined" && !value.propertyIsEnumerable("splice")) { return "array"; } if (className == "[object Function]" || typeof value.call != "undefined" && typeof value.propertyIsEnumerable != "undefined" && !value.propertyIsEnumerable("call")) { return "function"; } } else { return "null"; } } else { if (s == "function" && typeof value.call == "undefined") { return "object"; } } return s; }; goog.isNull = function(val) { return val === null; }; goog.isDefAndNotNull = function(val) { return val != null; }; goog.isArray = function(val) { return goog.typeOf(val) == "array"; }; goog.isArrayLike = function(val) { var type = goog.typeOf(val); return type == "array" || type == "object" && typeof val.length == "number"; }; goog.isDateLike = function(val) { return goog.isObject(val) && typeof val.getFullYear == "function"; }; goog.isString = function(val) { return typeof val == "string"; }; goog.isBoolean = function(val) { return typeof val == "boolean"; }; goog.isNumber = function(val) { return typeof val == "number"; }; goog.isFunction = function(val) { return goog.typeOf(val) == "function"; }; goog.isObject = function(val) { var type = typeof val; return type == "object" && val != null || type == "function"; }; goog.getUid = function(obj) { return obj[goog.UID_PROPERTY_] || (obj[goog.UID_PROPERTY_] = ++goog.uidCounter_); }; goog.hasUid = function(obj) { return!!obj[goog.UID_PROPERTY_]; }; goog.removeUid = function(obj) { if ("removeAttribute" in obj) { obj.removeAttribute(goog.UID_PROPERTY_); } try { delete obj[goog.UID_PROPERTY_]; } catch (ex) { } }; goog.UID_PROPERTY_ = "closure_uid_" + (Math.random() * 1E9 >>> 0); goog.uidCounter_ = 0; goog.getHashCode = goog.getUid; goog.removeHashCode = goog.removeUid; goog.cloneObject = function(obj) { var type = goog.typeOf(obj); if (type == "object" || type == "array") { if (obj.clone) { return obj.clone(); } var clone = type == "array" ? [] : {}; for (var key in obj) { clone[key] = goog.cloneObject(obj[key]); } return clone; } return obj; }; goog.bindNative_ = function(fn, selfObj, var_args) { return(fn.call.apply(fn.bind, arguments)); }; goog.bindJs_ = function(fn, selfObj, var_args) { if (!fn) { throw new Error; } if (arguments.length > 2) { var boundArgs = Array.prototype.slice.call(arguments, 2); return function() { var newArgs = Array.prototype.slice.call(arguments); Array.prototype.unshift.apply(newArgs, boundArgs); return fn.apply(selfObj, newArgs); }; } else { return function() { return fn.apply(selfObj, arguments); }; } }; goog.bind = function(fn, selfObj, var_args) { if (Function.prototype.bind && Function.prototype.bind.toString().indexOf("native code") != -1) { goog.bind = goog.bindNative_; } else { goog.bind = goog.bindJs_; } return goog.bind.apply(null, arguments); }; goog.partial = function(fn, var_args) { var args = Array.prototype.slice.call(arguments, 1); return function() { var newArgs = args.slice(); newArgs.push.apply(newArgs, arguments); return fn.apply(this, newArgs); }; }; goog.mixin = function(target, source) { for (var x in source) { target[x] = source[x]; } }; goog.now = goog.TRUSTED_SITE && Date.now || function() { return+new Date; }; goog.globalEval = function(script) { if (goog.global.execScript) { goog.global.execScript(script, "JavaScript"); } else { if (goog.global.eval) { if (goog.evalWorksForGlobals_ == null) { goog.global.eval("var _et_ \x3d 1;"); if (typeof goog.global["_et_"] != "undefined") { delete goog.global["_et_"]; goog.evalWorksForGlobals_ = true; } else { goog.evalWorksForGlobals_ = false; } } if (goog.evalWorksForGlobals_) { goog.global.eval(script); } else { var doc = goog.global.document; var scriptElt = doc.createElement("script"); scriptElt.type = "text/javascript"; scriptElt.defer = false; scriptElt.appendChild(doc.createTextNode(script)); doc.body.appendChild(scriptElt); doc.body.removeChild(scriptElt); } } else { throw new Error("goog.globalEval not available"); } } }; goog.evalWorksForGlobals_ = null; goog.cssNameMapping_; goog.cssNameMappingStyle_; goog.getCssName = function(className, opt_modifier) { var getMapping = function(cssName) { return goog.cssNameMapping_[cssName] || cssName; }; var renameByParts = function(cssName) { var parts = cssName.split("-"); var mapped = []; for (var i = 0;i < parts.length;i++) { mapped.push(getMapping(parts[i])); } return mapped.join("-"); }; var rename; if (goog.cssNameMapping_) { rename = goog.cssNameMappingStyle_ == "BY_WHOLE" ? getMapping : renameByParts; } else { rename = function(a) { return a; }; } if (opt_modifier) { return className + "-" + rename(opt_modifier); } else { return rename(className); } }; goog.setCssNameMapping = function(mapping, opt_style) { goog.cssNameMapping_ = mapping; goog.cssNameMappingStyle_ = opt_style; }; goog.global.CLOSURE_CSS_NAME_MAPPING; if (!COMPILED && goog.global.CLOSURE_CSS_NAME_MAPPING) { goog.cssNameMapping_ = goog.global.CLOSURE_CSS_NAME_MAPPING; } goog.getMsg = function(str, opt_values) { if (opt_values) { str = str.replace(/\{\$([^}]+)}/g, function(match, key) { return key in opt_values ? opt_values[key] : match; }); } return str; }; goog.getMsgWithFallback = function(a, b) { return a; }; goog.exportSymbol = function(publicPath, object, opt_objectToExportTo) { goog.exportPath_(publicPath, object, opt_objectToExportTo); }; goog.exportProperty = function(object, publicName, symbol) { object[publicName] = symbol; }; goog.inherits = function(childCtor, parentCtor) { function tempCtor() { } tempCtor.prototype = parentCtor.prototype; childCtor.superClass_ = parentCtor.prototype; childCtor.prototype = new tempCtor; childCtor.prototype.constructor = childCtor; childCtor.base = function(me, methodName, var_args) { var args = Array.prototype.slice.call(arguments, 2); return parentCtor.prototype[methodName].apply(me, args); }; }; goog.base = function(me, opt_methodName, var_args) { var caller = arguments.callee.caller; if (goog.STRICT_MODE_COMPATIBLE || goog.DEBUG && !caller) { throw new Error("arguments.caller not defined. goog.base() cannot be used " + "with strict mode code. See " + "http://www.ecma-international.org/ecma-262/5.1/#sec-C"); } if (caller.superClass_) { return caller.superClass_.constructor.apply(me, Array.prototype.slice.call(arguments, 1)); } var args = Array.prototype.slice.call(arguments, 2); var foundCaller = false; for (var ctor = me.constructor;ctor;ctor = ctor.superClass_ && ctor.superClass_.constructor) { if (ctor.prototype[opt_methodName] === caller) { foundCaller = true; } else { if (foundCaller) { return ctor.prototype[opt_methodName].apply(me, args); } } } if (me[opt_methodName] === caller) { return me.constructor.prototype[opt_methodName].apply(me, args); } else { throw new Error("goog.base called from a method of one name " + "to a method of a different name"); } }; goog.scope = function(fn) { fn.call(goog.global); }; if (!COMPILED) { goog.global["COMPILED"] = COMPILED; } goog.defineClass = function(superClass, def) { var constructor = def.constructor; var statics = def.statics; if (!constructor || constructor == Object.prototype.constructor) { constructor = function() { throw new Error("cannot instantiate an interface (no constructor defined)."); }; } var cls = goog.defineClass.createSealingConstructor_(constructor, superClass); if (superClass) { goog.inherits(cls, superClass); } delete def.constructor; delete def.statics; goog.defineClass.applyProperties_(cls.prototype, def); if (statics != null) { if (statics instanceof Function) { statics(cls); } else { goog.defineClass.applyProperties_(cls, statics); } } return cls; }; goog.defineClass.ClassDescriptor; goog.define("goog.defineClass.SEAL_CLASS_INSTANCES", goog.DEBUG); goog.defineClass.createSealingConstructor_ = function(ctr, superClass) { if (goog.defineClass.SEAL_CLASS_INSTANCES && Object.seal instanceof Function) { if (superClass && superClass.prototype && superClass.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_]) { return ctr; } var wrappedCtr = function() { var instance = ctr.apply(this, arguments) || this; if (this.constructor === wrappedCtr) { Object.seal(instance); } return instance; }; return wrappedCtr; } return ctr; }; goog.defineClass.OBJECT_PROTOTYPE_FIELDS_ = ["constructor", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "valueOf"]; goog.defineClass.applyProperties_ = function(target, source) { var key; for (key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } for (var i = 0;i < goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length;i++) { key = goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[i]; if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } }; goog.tagUnsealableClass = function(ctr) { if (!COMPILED && goog.defineClass.SEAL_CLASS_INSTANCES) { ctr.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_] = true; } }; goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_ = "goog_defineClass_legacy_unsealable"; goog.provide("goog.string"); goog.provide("goog.string.Unicode"); goog.define("goog.string.DETECT_DOUBLE_ESCAPING", false); goog.string.Unicode = {NBSP:"\u00a0"}; goog.string.startsWith = function(str, prefix) { return str.lastIndexOf(prefix, 0) == 0; }; goog.string.endsWith = function(str, suffix) { var l = str.length - suffix.length; return l >= 0 && str.indexOf(suffix, l) == l; }; goog.string.caseInsensitiveStartsWith = function(str, prefix) { return goog.string.caseInsensitiveCompare(prefix, str.substr(0, prefix.length)) == 0; }; goog.string.caseInsensitiveEndsWith = function(str, suffix) { return goog.string.caseInsensitiveCompare(suffix, str.substr(str.length - suffix.length, suffix.length)) == 0; }; goog.string.caseInsensitiveEquals = function(str1, str2) { return str1.toLowerCase() == str2.toLowerCase(); }; goog.string.subs = function(str, var_args) { var splitParts = str.split("%s"); var returnString = ""; var subsArguments = Array.prototype.slice.call(arguments, 1); while (subsArguments.length && splitParts.length > 1) { returnString += splitParts.shift() + subsArguments.shift(); } return returnString + splitParts.join("%s"); }; goog.string.collapseWhitespace = function(str) { return str.replace(/[\s\xa0]+/g, " ").replace(/^\s+|\s+$/g, ""); }; goog.string.isEmpty = function(str) { return/^[\s\xa0]*$/.test(str); }; goog.string.isEmptySafe = function(str) { return goog.string.isEmpty(goog.string.makeSafe(str)); }; goog.string.isBreakingWhitespace = function(str) { return!/[^\t\n\r ]/.test(str); }; goog.string.isAlpha = function(str) { return!/[^a-zA-Z]/.test(str); }; goog.string.isNumeric = function(str) { return!/[^0-9]/.test(str); }; goog.string.isAlphaNumeric = function(str) { return!/[^a-zA-Z0-9]/.test(str); }; goog.string.isSpace = function(ch) { return ch == " "; }; goog.string.isUnicodeChar = function(ch) { return ch.length == 1 && ch >= " " && ch <= "~" || ch >= "\u0080" && ch <= "\ufffd"; }; goog.string.stripNewlines = function(str) { return str.replace(/(\r\n|\r|\n)+/g, " "); }; goog.string.canonicalizeNewlines = function(str) { return str.replace(/(\r\n|\r|\n)/g, "\n"); }; goog.string.normalizeWhitespace = function(str) { return str.replace(/\xa0|\s/g, " "); }; goog.string.normalizeSpaces = function(str) { return str.replace(/\xa0|[ \t]+/g, " "); }; goog.string.collapseBreakingSpaces = function(str) { return str.replace(/[\t\r\n ]+/g, " ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g, ""); }; goog.string.trim = function(str) { return str.replace(/^[\s\xa0]+|[\s\xa0]+$/g, ""); }; goog.string.trimLeft = function(str) { return str.replace(/^[\s\xa0]+/, ""); }; goog.string.trimRight = function(str) { return str.replace(/[\s\xa0]+$/, ""); }; goog.string.caseInsensitiveCompare = function(str1, str2) { var test1 = String(str1).toLowerCase(); var test2 = String(str2).toLowerCase(); if (test1 < test2) { return-1; } else { if (test1 == test2) { return 0; } else { return 1; } } }; goog.string.numerateCompareRegExp_ = /(\.\d+)|(\d+)|(\D+)/g; goog.string.numerateCompare = function(str1, str2) { if (str1 == str2) { return 0; } if (!str1) { return-1; } if (!str2) { return 1; } var tokens1 = str1.toLowerCase().match(goog.string.numerateCompareRegExp_); var tokens2 = str2.toLowerCase().match(goog.string.numerateCompareRegExp_); var count = Math.min(tokens1.length, tokens2.length); for (var i = 0;i < count;i++) { var a = tokens1[i]; var b = tokens2[i]; if (a != b) { var num1 = parseInt(a, 10); if (!isNaN(num1)) { var num2 = parseInt(b, 10); if (!isNaN(num2) && num1 - num2) { return num1 - num2; } } return a < b ? -1 : 1; } } if (tokens1.length != tokens2.length) { return tokens1.length - tokens2.length; } return str1 < str2 ? -1 : 1; }; goog.string.urlEncode = function(str) { return encodeURIComponent(String(str)); }; goog.string.urlDecode = function(str) { return decodeURIComponent(str.replace(/\+/g, " ")); }; goog.string.newLineToBr = function(str, opt_xml) { return str.replace(/(\r\n|\r|\n)/g, opt_xml ? "\x3cbr /\x3e" : "\x3cbr\x3e"); }; goog.string.htmlEscape = function(str, opt_isLikelyToContainHtmlChars) { if (opt_isLikelyToContainHtmlChars) { str = str.replace(goog.string.AMP_RE_, "\x26amp;").replace(goog.string.LT_RE_, "\x26lt;").replace(goog.string.GT_RE_, "\x26gt;").replace(goog.string.QUOT_RE_, "\x26quot;").replace(goog.string.SINGLE_QUOTE_RE_, "\x26#39;").replace(goog.string.NULL_RE_, "\x26#0;"); if (goog.string.DETECT_DOUBLE_ESCAPING) { str = str.replace(goog.string.E_RE_, "\x26#101;"); } return str; } else { if (!goog.string.ALL_RE_.test(str)) { return str; } if (str.indexOf("\x26") != -1) { str = str.replace(goog.string.AMP_RE_, "\x26amp;"); } if (str.indexOf("\x3c") != -1) { str = str.replace(goog.string.LT_RE_, "\x26lt;"); } if (str.indexOf("\x3e") != -1) { str = str.replace(goog.string.GT_RE_, "\x26gt;"); } if (str.indexOf('"') != -1) { str = str.replace(goog.string.QUOT_RE_, "\x26quot;"); } if (str.indexOf("'") != -1) { str = str.replace(goog.string.SINGLE_QUOTE_RE_, "\x26#39;"); } if (str.indexOf("\x00") != -1) { str = str.replace(goog.string.NULL_RE_, "\x26#0;"); } if (goog.string.DETECT_DOUBLE_ESCAPING && str.indexOf("e") != -1) { str = str.replace(goog.string.E_RE_, "\x26#101;"); } return str; } }; goog.string.AMP_RE_ = /&/g; goog.string.LT_RE_ = //g; goog.string.QUOT_RE_ = /"/g; goog.string.SINGLE_QUOTE_RE_ = /'/g; goog.string.NULL_RE_ = /\x00/g; goog.string.E_RE_ = /e/g; goog.string.ALL_RE_ = goog.string.DETECT_DOUBLE_ESCAPING ? /[\x00&<>"'e]/ : /[\x00&<>"']/; goog.string.unescapeEntities = function(str) { if (goog.string.contains(str, "\x26")) { if ("document" in goog.global) { return goog.string.unescapeEntitiesUsingDom_(str); } else { return goog.string.unescapePureXmlEntities_(str); } } return str; }; goog.string.unescapeEntitiesWithDocument = function(str, document) { if (goog.string.contains(str, "\x26")) { return goog.string.unescapeEntitiesUsingDom_(str, document); } return str; }; goog.string.unescapeEntitiesUsingDom_ = function(str, opt_document) { var seen = {"\x26amp;":"\x26", "\x26lt;":"\x3c", "\x26gt;":"\x3e", "\x26quot;":'"'}; var div; if (opt_document) { div = opt_document.createElement("div"); } else { div = goog.global.document.createElement("div"); } return str.replace(goog.string.HTML_ENTITY_PATTERN_, function(s, entity) { var value = seen[s]; if (value) { return value; } if (entity.charAt(0) == "#") { var n = Number("0" + entity.substr(1)); if (!isNaN(n)) { value = String.fromCharCode(n); } } if (!value) { div.innerHTML = s + " "; value = div.firstChild.nodeValue.slice(0, -1); } return seen[s] = value; }); }; goog.string.unescapePureXmlEntities_ = function(str) { return str.replace(/&([^;]+);/g, function(s, entity) { switch(entity) { case "amp": return "\x26"; case "lt": return "\x3c"; case "gt": return "\x3e"; case "quot": return'"'; default: if (entity.charAt(0) == "#") { var n = Number("0" + entity.substr(1)); if (!isNaN(n)) { return String.fromCharCode(n); } } return s; } }); }; goog.string.HTML_ENTITY_PATTERN_ = /&([^;\s<&]+);?/g; goog.string.whitespaceEscape = function(str, opt_xml) { return goog.string.newLineToBr(str.replace(/ /g, " \x26#160;"), opt_xml); }; goog.string.preserveSpaces = function(str) { return str.replace(/(^|[\n ]) /g, "$1" + goog.string.Unicode.NBSP); }; goog.string.stripQuotes = function(str, quoteChars) { var length = quoteChars.length; for (var i = 0;i < length;i++) { var quoteChar = length == 1 ? quoteChars : quoteChars.charAt(i); if (str.charAt(0) == quoteChar && str.charAt(str.length - 1) == quoteChar) { return str.substring(1, str.length - 1); } } return str; }; goog.string.truncate = function(str, chars, opt_protectEscapedCharacters) { if (opt_protectEscapedCharacters) { str = goog.string.unescapeEntities(str); } if (str.length > chars) { str = str.substring(0, chars - 3) + "..."; } if (opt_protectEscapedCharacters) { str = goog.string.htmlEscape(str); } return str; }; goog.string.truncateMiddle = function(str, chars, opt_protectEscapedCharacters, opt_trailingChars) { if (opt_protectEscapedCharacters) { str = goog.string.unescapeEntities(str); } if (opt_trailingChars && str.length > chars) { if (opt_trailingChars > chars) { opt_trailingChars = chars; } var endPoint = str.length - opt_trailingChars; var startPoint = chars - opt_trailingChars; str = str.substring(0, startPoint) + "..." + str.substring(endPoint); } else { if (str.length > chars) { var half = Math.floor(chars / 2); var endPos = str.length - half; half += chars % 2; str = str.substring(0, half) + "..." + str.substring(endPos); } } if (opt_protectEscapedCharacters) { str = goog.string.htmlEscape(str); } return str; }; goog.string.specialEscapeChars_ = {"\x00":"\\0", "\b":"\\b", "\f":"\\f", "\n":"\\n", "\r":"\\r", "\t":"\\t", "\x0B":"\\x0B", '"':'\\"', "\\":"\\\\"}; goog.string.jsEscapeCache_ = {"'":"\\'"}; goog.string.quote = function(s) { s = String(s); if (s.quote) { return s.quote(); } else { var sb = ['"']; for (var i = 0;i < s.length;i++) { var ch = s.charAt(i); var cc = ch.charCodeAt(0); sb[i + 1] = goog.string.specialEscapeChars_[ch] || (cc > 31 && cc < 127 ? ch : goog.string.escapeChar(ch)); } sb.push('"'); return sb.join(""); } }; goog.string.escapeString = function(str) { var sb = []; for (var i = 0;i < str.length;i++) { sb[i] = goog.string.escapeChar(str.charAt(i)); } return sb.join(""); }; goog.string.escapeChar = function(c) { if (c in goog.string.jsEscapeCache_) { return goog.string.jsEscapeCache_[c]; } if (c in goog.string.specialEscapeChars_) { return goog.string.jsEscapeCache_[c] = goog.string.specialEscapeChars_[c]; } var rv = c; var cc = c.charCodeAt(0); if (cc > 31 && cc < 127) { rv = c; } else { if (cc < 256) { rv = "\\x"; if (cc < 16 || cc > 256) { rv += "0"; } } else { rv = "\\u"; if (cc < 4096) { rv += "0"; } } rv += cc.toString(16).toUpperCase(); } return goog.string.jsEscapeCache_[c] = rv; }; goog.string.toMap = function(s) { var rv = {}; for (var i = 0;i < s.length;i++) { rv[s.charAt(i)] = true; } return rv; }; goog.string.contains = function(str, subString) { return str.indexOf(subString) != -1; }; goog.string.caseInsensitiveContains = function(str, subString) { return goog.string.contains(str.toLowerCase(), subString.toLowerCase()); }; goog.string.countOf = function(s, ss) { return s && ss ? s.split(ss).length - 1 : 0; }; goog.string.removeAt = function(s, index, stringLength) { var resultStr = s; if (index >= 0 && index < s.length && stringLength > 0) { resultStr = s.substr(0, index) + s.substr(index + stringLength, s.length - index - stringLength); } return resultStr; }; goog.string.remove = function(s, ss) { var re = new RegExp(goog.string.regExpEscape(ss), ""); return s.replace(re, ""); }; goog.string.removeAll = function(s, ss) { var re = new RegExp(goog.string.regExpEscape(ss), "g"); return s.replace(re, ""); }; goog.string.regExpEscape = function(s) { return String(s).replace(/([-()\[\]{}+?*.$\^|,:# right) { return 1; } } return 0; }; goog.string.HASHCODE_MAX_ = 4294967296; goog.string.hashCode = function(str) { var result = 0; for (var i = 0;i < str.length;++i) { result = 31 * result + str.charCodeAt(i); result %= goog.string.HASHCODE_MAX_; } return result; }; goog.string.uniqueStringCounter_ = Math.random() * 2147483648 | 0; goog.string.createUniqueString = function() { return "goog_" + goog.string.uniqueStringCounter_++; }; goog.string.toNumber = function(str) { var num = Number(str); if (num == 0 && goog.string.isEmpty(str)) { return NaN; } return num; }; goog.string.isLowerCamelCase = function(str) { return/^[a-z]+([A-Z][a-z]*)*$/.test(str); }; goog.string.isUpperCamelCase = function(str) { return/^([A-Z][a-z]*)+$/.test(str); }; goog.string.toCamelCase = function(str) { return String(str).replace(/\-([a-z])/g, function(all, match) { return match.toUpperCase(); }); }; goog.string.toSelectorCase = function(str) { return String(str).replace(/([A-Z])/g, "-$1").toLowerCase(); }; goog.string.toTitleCase = function(str, opt_delimiters) { var delimiters = goog.isString(opt_delimiters) ? goog.string.regExpEscape(opt_delimiters) : "\\s"; delimiters = delimiters ? "|[" + delimiters + "]+" : ""; var regexp = new RegExp("(^" + delimiters + ")([a-z])", "g"); return str.replace(regexp, function(all, p1, p2) { return p1 + p2.toUpperCase(); }); }; goog.string.parseInt = function(value) { if (isFinite(value)) { value = String(value); } if (goog.isString(value)) { return/^\s*-?0x/i.test(value) ? parseInt(value, 16) : parseInt(value, 10); } return NaN; }; goog.string.splitLimit = function(str, separator, limit) { var parts = str.split(separator); var returnVal = []; while (limit > 0 && parts.length) { returnVal.push(parts.shift()); limit--; } if (parts.length) { returnVal.push(parts.join(separator)); } return returnVal; }; goog.provide("goog.object"); goog.object.forEach = function(obj, f, opt_obj) { for (var key in obj) { f.call(opt_obj, obj[key], key, obj); } }; goog.object.filter = function(obj, f, opt_obj) { var res = {}; for (var key in obj) { if (f.call(opt_obj, obj[key], key, obj)) { res[key] = obj[key]; } } return res; }; goog.object.map = function(obj, f, opt_obj) { var res = {}; for (var key in obj) { res[key] = f.call(opt_obj, obj[key], key, obj); } return res; }; goog.object.some = function(obj, f, opt_obj) { for (var key in obj) { if (f.call(opt_obj, obj[key], key, obj)) { return true; } } return false; }; goog.object.every = function(obj, f, opt_obj) { for (var key in obj) { if (!f.call(opt_obj, obj[key], key, obj)) { return false; } } return true; }; goog.object.getCount = function(obj) { var rv = 0; for (var key in obj) { rv++; } return rv; }; goog.object.getAnyKey = function(obj) { for (var key in obj) { return key; } }; goog.object.getAnyValue = function(obj) { for (var key in obj) { return obj[key]; } }; goog.object.contains = function(obj, val) { return goog.object.containsValue(obj, val); }; goog.object.getValues = function(obj) { var res = []; var i = 0; for (var key in obj) { res[i++] = obj[key]; } return res; }; goog.object.getKeys = function(obj) { var res = []; var i = 0; for (var key in obj) { res[i++] = key; } return res; }; goog.object.getValueByKeys = function(obj, var_args) { var isArrayLike = goog.isArrayLike(var_args); var keys = isArrayLike ? var_args : arguments; for (var i = isArrayLike ? 0 : 1;i < keys.length;i++) { obj = obj[keys[i]]; if (!goog.isDef(obj)) { break; } } return obj; }; goog.object.containsKey = function(obj, key) { return key in obj; }; goog.object.containsValue = function(obj, val) { for (var key in obj) { if (obj[key] == val) { return true; } } return false; }; goog.object.findKey = function(obj, f, opt_this) { for (var key in obj) { if (f.call(opt_this, obj[key], key, obj)) { return key; } } return undefined; }; goog.object.findValue = function(obj, f, opt_this) { var key = goog.object.findKey(obj, f, opt_this); return key && obj[key]; }; goog.object.isEmpty = function(obj) { for (var key in obj) { return false; } return true; }; goog.object.clear = function(obj) { for (var i in obj) { delete obj[i]; } }; goog.object.remove = function(obj, key) { var rv; if (rv = key in obj) { delete obj[key]; } return rv; }; goog.object.add = function(obj, key, val) { if (key in obj) { throw new Error('The object already contains the key "' + key + '"'); } goog.object.set(obj, key, val); }; goog.object.get = function(obj, key, opt_val) { if (key in obj) { return obj[key]; } return opt_val; }; goog.object.set = function(obj, key, value) { obj[key] = value; }; goog.object.setIfUndefined = function(obj, key, value) { return key in obj ? obj[key] : obj[key] = value; }; goog.object.clone = function(obj) { var res = {}; for (var key in obj) { res[key] = obj[key]; } return res; }; goog.object.unsafeClone = function(obj) { var type = goog.typeOf(obj); if (type == "object" || type == "array") { if (obj.clone) { return obj.clone(); } var clone = type == "array" ? [] : {}; for (var key in obj) { clone[key] = goog.object.unsafeClone(obj[key]); } return clone; } return obj; }; goog.object.transpose = function(obj) { var transposed = {}; for (var key in obj) { transposed[obj[key]] = key; } return transposed; }; goog.object.PROTOTYPE_FIELDS_ = ["constructor", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "valueOf"]; goog.object.extend = function(target, var_args) { var key, source; for (var i = 1;i < arguments.length;i++) { source = arguments[i]; for (key in source) { target[key] = source[key]; } for (var j = 0;j < goog.object.PROTOTYPE_FIELDS_.length;j++) { key = goog.object.PROTOTYPE_FIELDS_[j]; if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } }; goog.object.create = function(var_args) { var argLength = arguments.length; if (argLength == 1 && goog.isArray(arguments[0])) { return goog.object.create.apply(null, arguments[0]); } if (argLength % 2) { throw new Error("Uneven number of arguments"); } var rv = {}; for (var i = 0;i < argLength;i += 2) { rv[arguments[i]] = arguments[i + 1]; } return rv; }; goog.object.createSet = function(var_args) { var argLength = arguments.length; if (argLength == 1 && goog.isArray(arguments[0])) { return goog.object.createSet.apply(null, arguments[0]); } var rv = {}; for (var i = 0;i < argLength;i++) { rv[arguments[i]] = true; } return rv; }; goog.object.createImmutableView = function(obj) { var result = obj; if (Object.isFrozen && !Object.isFrozen(obj)) { result = Object.create(obj); Object.freeze(result); } return result; }; goog.object.isImmutableView = function(obj) { return!!Object.isFrozen && Object.isFrozen(obj); }; goog.provide("goog.string.StringBuffer"); goog.string.StringBuffer = function(opt_a1, var_args) { if (opt_a1 != null) { this.append.apply(this, arguments); } }; goog.string.StringBuffer.prototype.buffer_ = ""; goog.string.StringBuffer.prototype.set = function(s) { this.buffer_ = "" + s; }; goog.string.StringBuffer.prototype.append = function(a1, opt_a2, var_args) { this.buffer_ += a1; if (opt_a2 != null) { for (var i = 1;i < arguments.length;i++) { this.buffer_ += arguments[i]; } } return this; }; goog.string.StringBuffer.prototype.clear = function() { this.buffer_ = ""; }; goog.string.StringBuffer.prototype.getLength = function() { return this.buffer_.length; }; goog.string.StringBuffer.prototype.toString = function() { return this.buffer_; }; goog.provide("goog.debug.Error"); goog.debug.Error = function(opt_msg) { if (Error.captureStackTrace) { Error.captureStackTrace(this, goog.debug.Error); } else { var stack = (new Error).stack; if (stack) { this.stack = stack; } } if (opt_msg) { this.message = String(opt_msg); } }; goog.inherits(goog.debug.Error, Error); goog.debug.Error.prototype.name = "CustomError"; goog.provide("goog.dom.NodeType"); goog.dom.NodeType = {ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, ENTITY_REFERENCE:5, ENTITY:6, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9, DOCUMENT_TYPE:10, DOCUMENT_FRAGMENT:11, NOTATION:12}; goog.provide("goog.asserts"); goog.provide("goog.asserts.AssertionError"); goog.require("goog.debug.Error"); goog.require("goog.dom.NodeType"); goog.require("goog.string"); goog.define("goog.asserts.ENABLE_ASSERTS", goog.DEBUG); goog.asserts.AssertionError = function(messagePattern, messageArgs) { messageArgs.unshift(messagePattern); goog.debug.Error.call(this, goog.string.subs.apply(null, messageArgs)); messageArgs.shift(); this.messagePattern = messagePattern; }; goog.inherits(goog.asserts.AssertionError, goog.debug.Error); goog.asserts.AssertionError.prototype.name = "AssertionError"; goog.asserts.DEFAULT_ERROR_HANDLER = function(e) { throw e; }; goog.asserts.errorHandler_ = goog.asserts.DEFAULT_ERROR_HANDLER; goog.asserts.doAssertFailure_ = function(defaultMessage, defaultArgs, givenMessage, givenArgs) { var message = "Assertion failed"; if (givenMessage) { message += ": " + givenMessage; var args = givenArgs; } else { if (defaultMessage) { message += ": " + defaultMessage; args = defaultArgs; } } var e = new goog.asserts.AssertionError("" + message, args || []); goog.asserts.errorHandler_(e); }; goog.asserts.setErrorHandler = function(errorHandler) { if (goog.asserts.ENABLE_ASSERTS) { goog.asserts.errorHandler_ = errorHandler; } }; goog.asserts.assert = function(condition, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !condition) { goog.asserts.doAssertFailure_("", null, opt_message, Array.prototype.slice.call(arguments, 2)); } return condition; }; goog.asserts.fail = function(opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS) { goog.asserts.errorHandler_(new goog.asserts.AssertionError("Failure" + (opt_message ? ": " + opt_message : ""), Array.prototype.slice.call(arguments, 1))); } }; goog.asserts.assertNumber = function(value, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !goog.isNumber(value)) { goog.asserts.doAssertFailure_("Expected number but got %s: %s.", [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2)); } return(value); }; goog.asserts.assertString = function(value, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !goog.isString(value)) { goog.asserts.doAssertFailure_("Expected string but got %s: %s.", [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2)); } return(value); }; goog.asserts.assertFunction = function(value, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !goog.isFunction(value)) { goog.asserts.doAssertFailure_("Expected function but got %s: %s.", [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2)); } return(value); }; goog.asserts.assertObject = function(value, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !goog.isObject(value)) { goog.asserts.doAssertFailure_("Expected object but got %s: %s.", [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2)); } return(value); }; goog.asserts.assertArray = function(value, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !goog.isArray(value)) { goog.asserts.doAssertFailure_("Expected array but got %s: %s.", [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2)); } return(value); }; goog.asserts.assertBoolean = function(value, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !goog.isBoolean(value)) { goog.asserts.doAssertFailure_("Expected boolean but got %s: %s.", [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2)); } return(value); }; goog.asserts.assertElement = function(value, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && (!goog.isObject(value) || value.nodeType != goog.dom.NodeType.ELEMENT)) { goog.asserts.doAssertFailure_("Expected Element but got %s: %s.", [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2)); } return(value); }; goog.asserts.assertInstanceof = function(value, type, opt_message, var_args) { if (goog.asserts.ENABLE_ASSERTS && !(value instanceof type)) { goog.asserts.doAssertFailure_("instanceof check failed.", null, opt_message, Array.prototype.slice.call(arguments, 3)); } return value; }; goog.asserts.assertObjectPrototypeIsIntact = function() { for (var key in Object.prototype) { goog.asserts.fail(key + " should not be enumerable in Object.prototype."); } }; goog.provide("goog.array"); goog.provide("goog.array.ArrayLike"); goog.require("goog.asserts"); goog.define("goog.NATIVE_ARRAY_PROTOTYPES", goog.TRUSTED_SITE); goog.define("goog.array.ASSUME_NATIVE_FUNCTIONS", false); goog.array.ArrayLike; goog.array.peek = function(array) { return array[array.length - 1]; }; goog.array.last = goog.array.peek; goog.array.ARRAY_PROTOTYPE_ = Array.prototype; goog.array.indexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.indexOf) ? function(arr, obj, opt_fromIndex) { goog.asserts.assert(arr.length != null); return goog.array.ARRAY_PROTOTYPE_.indexOf.call(arr, obj, opt_fromIndex); } : function(arr, obj, opt_fromIndex) { var fromIndex = opt_fromIndex == null ? 0 : opt_fromIndex < 0 ? Math.max(0, arr.length + opt_fromIndex) : opt_fromIndex; if (goog.isString(arr)) { if (!goog.isString(obj) || obj.length != 1) { return-1; } return arr.indexOf(obj, fromIndex); } for (var i = fromIndex;i < arr.length;i++) { if (i in arr && arr[i] === obj) { return i; } } return-1; }; goog.array.lastIndexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.lastIndexOf) ? function(arr, obj, opt_fromIndex) { goog.asserts.assert(arr.length != null); var fromIndex = opt_fromIndex == null ? arr.length - 1 : opt_fromIndex; return goog.array.ARRAY_PROTOTYPE_.lastIndexOf.call(arr, obj, fromIndex); } : function(arr, obj, opt_fromIndex) { var fromIndex = opt_fromIndex == null ? arr.length - 1 : opt_fromIndex; if (fromIndex < 0) { fromIndex = Math.max(0, arr.length + fromIndex); } if (goog.isString(arr)) { if (!goog.isString(obj) || obj.length != 1) { return-1; } return arr.lastIndexOf(obj, fromIndex); } for (var i = fromIndex;i >= 0;i--) { if (i in arr && arr[i] === obj) { return i; } } return-1; }; goog.array.forEach = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.forEach) ? function(arr, f, opt_obj) { goog.asserts.assert(arr.length != null); goog.array.ARRAY_PROTOTYPE_.forEach.call(arr, f, opt_obj); } : function(arr, f, opt_obj) { var l = arr.length; var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = 0;i < l;i++) { if (i in arr2) { f.call(opt_obj, arr2[i], i, arr); } } }; goog.array.forEachRight = function(arr, f, opt_obj) { var l = arr.length; var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = l - 1;i >= 0;--i) { if (i in arr2) { f.call(opt_obj, arr2[i], i, arr); } } }; goog.array.filter = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.filter) ? function(arr, f, opt_obj) { goog.asserts.assert(arr.length != null); return goog.array.ARRAY_PROTOTYPE_.filter.call(arr, f, opt_obj); } : function(arr, f, opt_obj) { var l = arr.length; var res = []; var resLength = 0; var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = 0;i < l;i++) { if (i in arr2) { var val = arr2[i]; if (f.call(opt_obj, val, i, arr)) { res[resLength++] = val; } } } return res; }; goog.array.map = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.map) ? function(arr, f, opt_obj) { goog.asserts.assert(arr.length != null); return goog.array.ARRAY_PROTOTYPE_.map.call(arr, f, opt_obj); } : function(arr, f, opt_obj) { var l = arr.length; var res = new Array(l); var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = 0;i < l;i++) { if (i in arr2) { res[i] = f.call(opt_obj, arr2[i], i, arr); } } return res; }; goog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.reduce) ? function(arr, f, val, opt_obj) { goog.asserts.assert(arr.length != null); if (opt_obj) { f = goog.bind(f, opt_obj); } return goog.array.ARRAY_PROTOTYPE_.reduce.call(arr, f, val); } : function(arr, f, val, opt_obj) { var rval = val; goog.array.forEach(arr, function(val, index) { rval = f.call(opt_obj, rval, val, index, arr); }); return rval; }; goog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.reduceRight) ? function(arr, f, val, opt_obj) { goog.asserts.assert(arr.length != null); if (opt_obj) { f = goog.bind(f, opt_obj); } return goog.array.ARRAY_PROTOTYPE_.reduceRight.call(arr, f, val); } : function(arr, f, val, opt_obj) { var rval = val; goog.array.forEachRight(arr, function(val, index) { rval = f.call(opt_obj, rval, val, index, arr); }); return rval; }; goog.array.some = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.some) ? function(arr, f, opt_obj) { goog.asserts.assert(arr.length != null); return goog.array.ARRAY_PROTOTYPE_.some.call(arr, f, opt_obj); } : function(arr, f, opt_obj) { var l = arr.length; var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = 0;i < l;i++) { if (i in arr2 && f.call(opt_obj, arr2[i], i, arr)) { return true; } } return false; }; goog.array.every = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || goog.array.ARRAY_PROTOTYPE_.every) ? function(arr, f, opt_obj) { goog.asserts.assert(arr.length != null); return goog.array.ARRAY_PROTOTYPE_.every.call(arr, f, opt_obj); } : function(arr, f, opt_obj) { var l = arr.length; var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = 0;i < l;i++) { if (i in arr2 && !f.call(opt_obj, arr2[i], i, arr)) { return false; } } return true; }; goog.array.count = function(arr, f, opt_obj) { var count = 0; goog.array.forEach(arr, function(element, index, arr) { if (f.call(opt_obj, element, index, arr)) { ++count; } }, opt_obj); return count; }; goog.array.find = function(arr, f, opt_obj) { var i = goog.array.findIndex(arr, f, opt_obj); return i < 0 ? null : goog.isString(arr) ? arr.charAt(i) : arr[i]; }; goog.array.findIndex = function(arr, f, opt_obj) { var l = arr.length; var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = 0;i < l;i++) { if (i in arr2 && f.call(opt_obj, arr2[i], i, arr)) { return i; } } return-1; }; goog.array.findRight = function(arr, f, opt_obj) { var i = goog.array.findIndexRight(arr, f, opt_obj); return i < 0 ? null : goog.isString(arr) ? arr.charAt(i) : arr[i]; }; goog.array.findIndexRight = function(arr, f, opt_obj) { var l = arr.length; var arr2 = goog.isString(arr) ? arr.split("") : arr; for (var i = l - 1;i >= 0;i--) { if (i in arr2 && f.call(opt_obj, arr2[i], i, arr)) { return i; } } return-1; }; goog.array.contains = function(arr, obj) { return goog.array.indexOf(arr, obj) >= 0; }; goog.array.isEmpty = function(arr) { return arr.length == 0; }; goog.array.clear = function(arr) { if (!goog.isArray(arr)) { for (var i = arr.length - 1;i >= 0;i--) { delete arr[i]; } } arr.length = 0; }; goog.array.insert = function(arr, obj) { if (!goog.array.contains(arr, obj)) { arr.push(obj); } }; goog.array.insertAt = function(arr, obj, opt_i) { goog.array.splice(arr, opt_i, 0, obj); }; goog.array.insertArrayAt = function(arr, elementsToAdd, opt_i) { goog.partial(goog.array.splice, arr, opt_i, 0).apply(null, elementsToAdd); }; goog.array.insertBefore = function(arr, obj, opt_obj2) { var i; if (arguments.length == 2 || (i = goog.array.indexOf(arr, opt_obj2)) < 0) { arr.push(obj); } else { goog.array.insertAt(arr, obj, i); } }; goog.array.remove = function(arr, obj) { var i = goog.array.indexOf(arr, obj); var rv; if (rv = i >= 0) { goog.array.removeAt(arr, i); } return rv; }; goog.array.removeAt = function(arr, i) { goog.asserts.assert(arr.length != null); return goog.array.ARRAY_PROTOTYPE_.splice.call(arr, i, 1).length == 1; }; goog.array.removeIf = function(arr, f, opt_obj) { var i = goog.array.findIndex(arr, f, opt_obj); if (i >= 0) { goog.array.removeAt(arr, i); return true; } return false; }; goog.array.concat = function(var_args) { return goog.array.ARRAY_PROTOTYPE_.concat.apply(goog.array.ARRAY_PROTOTYPE_, arguments); }; goog.array.join = function(var_args) { return goog.array.ARRAY_PROTOTYPE_.concat.apply(goog.array.ARRAY_PROTOTYPE_, arguments); }; goog.array.toArray = function(object) { var length = object.length; if (length > 0) { var rv = new Array(length); for (var i = 0;i < length;i++) { rv[i] = object[i]; } return rv; } return[]; }; goog.array.clone = goog.array.toArray; goog.array.extend = function(arr1, var_args) { for (var i = 1;i < arguments.length;i++) { var arr2 = arguments[i]; var isArrayLike; if (goog.isArray(arr2) || (isArrayLike = goog.isArrayLike(arr2)) && Object.prototype.hasOwnProperty.call(arr2, "callee")) { arr1.push.apply(arr1, arr2); } else { if (isArrayLike) { var len1 = arr1.length; var len2 = arr2.length; for (var j = 0;j < len2;j++) { arr1[len1 + j] = arr2[j]; } } else { arr1.push(arr2); } } } }; goog.array.splice = function(arr, index, howMany, var_args) { goog.asserts.assert(arr.length != null); return goog.array.ARRAY_PROTOTYPE_.splice.apply(arr, goog.array.slice(arguments, 1)); }; goog.array.slice = function(arr, start, opt_end) { goog.asserts.assert(arr.length != null); if (arguments.length <= 2) { return goog.array.ARRAY_PROTOTYPE_.slice.call(arr, start); } else { return goog.array.ARRAY_PROTOTYPE_.slice.call(arr, start, opt_end); } }; goog.array.removeDuplicates = function(arr, opt_rv, opt_hashFn) { var returnArray = opt_rv || arr; var defaultHashFn = function(item) { return goog.isObject(current) ? "o" + goog.getUid(current) : (typeof current).charAt(0) + current; }; var hashFn = opt_hashFn || defaultHashFn; var seen = {}, cursorInsert = 0, cursorRead = 0; while (cursorRead < arr.length) { var current = arr[cursorRead++]; var key = hashFn(current); if (!Object.prototype.hasOwnProperty.call(seen, key)) { seen[key] = true; returnArray[cursorInsert++] = current; } } returnArray.length = cursorInsert; }; goog.array.binarySearch = function(arr, target, opt_compareFn) { return goog.array.binarySearch_(arr, opt_compareFn || goog.array.defaultCompare, false, target); }; goog.array.binarySelect = function(arr, evaluator, opt_obj) { return goog.array.binarySearch_(arr, evaluator, true, undefined, opt_obj); }; goog.array.binarySearch_ = function(arr, compareFn, isEvaluator, opt_target, opt_selfObj) { var left = 0; var right = arr.length; var found; while (left < right) { var middle = left + right >> 1; var compareResult; if (isEvaluator) { compareResult = compareFn.call(opt_selfObj, arr[middle], middle, arr); } else { compareResult = compareFn(opt_target, arr[middle]); } if (compareResult > 0) { left = middle + 1; } else { right = middle; found = !compareResult; } } return found ? left : ~left; }; goog.array.sort = function(arr, opt_compareFn) { arr.sort(opt_compareFn || goog.array.defaultCompare); }; goog.array.stableSort = function(arr, opt_compareFn) { for (var i = 0;i < arr.length;i++) { arr[i] = {index:i, value:arr[i]}; } var valueCompareFn = opt_compareFn || goog.array.defaultCompare; function stableCompareFn(obj1, obj2) { return valueCompareFn(obj1.value, obj2.value) || obj1.index - obj2.index; } goog.array.sort(arr, stableCompareFn); for (var i = 0;i < arr.length;i++) { arr[i] = arr[i].value; } }; goog.array.sortObjectsByKey = function(arr, key, opt_compareFn) { var compare = opt_compareFn || goog.array.defaultCompare; goog.array.sort(arr, function(a, b) { return compare(a[key], b[key]); }); }; goog.array.isSorted = function(arr, opt_compareFn, opt_strict) { var compare = opt_compareFn || goog.array.defaultCompare; for (var i = 1;i < arr.length;i++) { var compareResult = compare(arr[i - 1], arr[i]); if (compareResult > 0 || compareResult == 0 && opt_strict) { return false; } } return true; }; goog.array.equals = function(arr1, arr2, opt_equalsFn) { if (!goog.isArrayLike(arr1) || !goog.isArrayLike(arr2) || arr1.length != arr2.length) { return false; } var l = arr1.length; var equalsFn = opt_equalsFn || goog.array.defaultCompareEquality; for (var i = 0;i < l;i++) { if (!equalsFn(arr1[i], arr2[i])) { return false; } } return true; }; goog.array.compare3 = function(arr1, arr2, opt_compareFn) { var compare = opt_compareFn || goog.array.defaultCompare; var l = Math.min(arr1.length, arr2.length); for (var i = 0;i < l;i++) { var result = compare(arr1[i], arr2[i]); if (result != 0) { return result; } } return goog.array.defaultCompare(arr1.length, arr2.length); }; goog.array.defaultCompare = function(a, b) { return a > b ? 1 : a < b ? -1 : 0; }; goog.array.defaultCompareEquality = function(a, b) { return a === b; }; goog.array.binaryInsert = function(array, value, opt_compareFn) { var index = goog.array.binarySearch(array, value, opt_compareFn); if (index < 0) { goog.array.insertAt(array, value, -(index + 1)); return true; } return false; }; goog.array.binaryRemove = function(array, value, opt_compareFn) { var index = goog.array.binarySearch(array, value, opt_compareFn); return index >= 0 ? goog.array.removeAt(array, index) : false; }; goog.array.bucket = function(array, sorter, opt_obj) { var buckets = {}; for (var i = 0;i < array.length;i++) { var value = array[i]; var key = sorter.call(opt_obj, value, i, array); if (goog.isDef(key)) { var bucket = buckets[key] || (buckets[key] = []); bucket.push(value); } } return buckets; }; goog.array.toObject = function(arr, keyFunc, opt_obj) { var ret = {}; goog.array.forEach(arr, function(element, index) { ret[keyFunc.call(opt_obj, element, index, arr)] = element; }); return ret; }; goog.array.range = function(startOrEnd, opt_end, opt_step) { var array = []; var start = 0; var end = startOrEnd; var step = opt_step || 1; if (opt_end !== undefined) { start = startOrEnd; end = opt_end; } if (step * (end - start) < 0) { return[]; } if (step > 0) { for (var i = start;i < end;i += step) { array.push(i); } } else { for (var i = start;i > end;i += step) { array.push(i); } } return array; }; goog.array.repeat = function(value, n) { var array = []; for (var i = 0;i < n;i++) { array[i] = value; } return array; }; goog.array.flatten = function(var_args) { var result = []; for (var i = 0;i < arguments.length;i++) { var element = arguments[i]; if (goog.isArray(element)) { result.push.apply(result, goog.array.flatten.apply(null, element)); } else { result.push(element); } } return result; }; goog.array.rotate = function(array, n) { goog.asserts.assert(array.length != null); if (array.length) { n %= array.length; if (n > 0) { goog.array.ARRAY_PROTOTYPE_.unshift.apply(array, array.splice(-n, n)); } else { if (n < 0) { goog.array.ARRAY_PROTOTYPE_.push.apply(array, array.splice(0, -n)); } } } return array; }; goog.array.moveItem = function(arr, fromIndex, toIndex) { goog.asserts.assert(fromIndex >= 0 && fromIndex < arr.length); goog.asserts.assert(toIndex >= 0 && toIndex < arr.length); var removedItems = goog.array.ARRAY_PROTOTYPE_.splice.call(arr, fromIndex, 1); goog.array.ARRAY_PROTOTYPE_.splice.call(arr, toIndex, 0, removedItems[0]); }; goog.array.zip = function(var_args) { if (!arguments.length) { return[]; } var result = []; for (var i = 0;true;i++) { var value = []; for (var j = 0;j < arguments.length;j++) { var arr = arguments[j]; if (i >= arr.length) { return result; } value.push(arr[i]); } result.push(value); } }; goog.array.shuffle = function(arr, opt_randFn) { var randFn = opt_randFn || Math.random; for (var i = arr.length - 1;i > 0;i--) { var j = Math.floor(randFn() * (i + 1)); var tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp; } }; goog.provide("cljs.core"); goog.require("goog.array"); goog.require("goog.array"); goog.require("goog.object"); goog.require("goog.object"); goog.require("goog.string.StringBuffer"); goog.require("goog.string.StringBuffer"); goog.require("goog.string"); goog.require("goog.string"); cljs.core._STAR_clojurescript_version_STAR_ = "0.0-2280"; cljs.core._STAR_unchecked_if_STAR_ = false; cljs.core._STAR_print_fn_STAR_ = function _STAR_print_fn_STAR_(_) { throw new Error("No *print-fn* fn set for evaluation environment"); }; cljs.core.set_print_fn_BANG_ = function set_print_fn_BANG_(f) { return cljs.core._STAR_print_fn_STAR_ = f; }; cljs.core._STAR_flush_on_newline_STAR_ = true; cljs.core._STAR_print_newline_STAR_ = true; cljs.core._STAR_print_readably_STAR_ = true; cljs.core._STAR_print_meta_STAR_ = false; cljs.core._STAR_print_dup_STAR_ = false; cljs.core._STAR_print_length_STAR_ = null; cljs.core._STAR_print_level_STAR_ = null; cljs.core.pr_opts = function pr_opts() { return new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null, "flush-on-newline", "flush-on-newline", -151457939), cljs.core._STAR_flush_on_newline_STAR_, new cljs.core.Keyword(null, "readably", "readably", 1129599760), cljs.core._STAR_print_readably_STAR_, new cljs.core.Keyword(null, "meta", "meta", 1499536964), cljs.core._STAR_print_meta_STAR_, new cljs.core.Keyword(null, "dup", "dup", 556298533), cljs.core._STAR_print_dup_STAR_, new cljs.core.Keyword(null, "print-length", "print-length", 1931866356), cljs.core._STAR_print_length_STAR_], null); }; cljs.core.enable_console_print_BANG_ = function enable_console_print_BANG_() { cljs.core._STAR_print_newline_STAR_ = false; return cljs.core._STAR_print_fn_STAR_ = function() { var G__5236__delegate = function(args) { return console.log.apply(console, cljs.core.into_array.call(null, args)); }; var G__5236 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5236__delegate.call(this, args); }; G__5236.cljs$lang$maxFixedArity = 0; G__5236.cljs$lang$applyTo = function(arglist__5237) { var args = cljs.core.seq(arglist__5237); return G__5236__delegate(args); }; G__5236.cljs$core$IFn$_invoke$arity$variadic = G__5236__delegate; return G__5236; }(); }; cljs.core.truth_ = function truth_(x) { return x != null && x !== false; }; cljs.core.not_native = null; cljs.core.identical_QMARK_ = function identical_QMARK_(x, y) { return x === y; }; cljs.core.nil_QMARK_ = function nil_QMARK_(x) { return x == null; }; cljs.core.array_QMARK_ = function array_QMARK_(x) { return x instanceof Array; }; cljs.core.number_QMARK_ = function number_QMARK_(n) { return typeof n === "number"; }; cljs.core.not = function not(x) { if (cljs.core.truth_(x)) { return false; } else { return true; } }; cljs.core.some_QMARK_ = function some_QMARK_(x) { return!(x == null); }; cljs.core.object_QMARK_ = function object_QMARK_(x) { if (!(x == null)) { return x.constructor === Object; } else { return false; } }; cljs.core.string_QMARK_ = function string_QMARK_(x) { return goog.isString(x); }; cljs.core.native_satisfies_QMARK_ = function native_satisfies_QMARK_(p, x) { var x__$1 = x == null ? null : x; if (p[goog.typeOf(x__$1)]) { return true; } else { if (p["_"]) { return true; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return false; } else { return null; } } } }; cljs.core.is_proto_ = function is_proto_(x) { return x.constructor.prototype === x; }; cljs.core._STAR_main_cli_fn_STAR_ = null; cljs.core.type = function type(x) { if (x == null) { return null; } else { return x.constructor; } }; cljs.core.missing_protocol = function missing_protocol(proto, obj) { var ty = cljs.core.type.call(null, obj); var ty__$1 = cljs.core.truth_(function() { var and__3532__auto__ = ty; if (cljs.core.truth_(and__3532__auto__)) { return ty.cljs$lang$type; } else { return and__3532__auto__; } }()) ? ty.cljs$lang$ctorStr : goog.typeOf(obj); return new Error(["No protocol method ", proto, " defined for type ", ty__$1, ": ", obj].join("")); }; cljs.core.type__GT_str = function type__GT_str(ty) { var temp__4124__auto__ = ty.cljs$lang$ctorStr; if (cljs.core.truth_(temp__4124__auto__)) { var s = temp__4124__auto__; return s; } else { return "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(ty); } }; cljs.core.make_array = function() { var make_array = null; var make_array__1 = function(size) { return new Array(size); }; var make_array__2 = function(type, size) { return make_array.call(null, size); }; make_array = function(type, size) { switch(arguments.length) { case 1: return make_array__1.call(this, type); case 2: return make_array__2.call(this, type, size); } throw new Error("Invalid arity: " + arguments.length); }; make_array.cljs$core$IFn$_invoke$arity$1 = make_array__1; make_array.cljs$core$IFn$_invoke$arity$2 = make_array__2; return make_array; }(); cljs.core.aclone = function aclone(arr) { var len = arr.length; var new_arr = new Array(len); var n__4400__auto___5238 = len; var i_5239 = 0; while (true) { if (i_5239 < n__4400__auto___5238) { new_arr[i_5239] = arr[i_5239]; var G__5240 = i_5239 + 1; i_5239 = G__5240; continue; } else { } break; } return new_arr; }; cljs.core.array = function array(var_args) { return Array.prototype.slice.call(arguments); }; cljs.core.aget = function() { var aget = null; var aget__2 = function(array, i) { return array[i]; }; var aget__3 = function() { var G__5241__delegate = function(array, i, idxs) { return cljs.core.apply.call(null, aget, aget.call(null, array, i), idxs); }; var G__5241 = function(array, i, var_args) { var idxs = null; if (arguments.length > 2) { idxs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5241__delegate.call(this, array, i, idxs); }; G__5241.cljs$lang$maxFixedArity = 2; G__5241.cljs$lang$applyTo = function(arglist__5242) { var array = cljs.core.first(arglist__5242); arglist__5242 = cljs.core.next(arglist__5242); var i = cljs.core.first(arglist__5242); var idxs = cljs.core.rest(arglist__5242); return G__5241__delegate(array, i, idxs); }; G__5241.cljs$core$IFn$_invoke$arity$variadic = G__5241__delegate; return G__5241; }(); aget = function(array, i, var_args) { var idxs = var_args; switch(arguments.length) { case 2: return aget__2.call(this, array, i); default: return aget__3.cljs$core$IFn$_invoke$arity$variadic(array, i, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; aget.cljs$lang$maxFixedArity = 2; aget.cljs$lang$applyTo = aget__3.cljs$lang$applyTo; aget.cljs$core$IFn$_invoke$arity$2 = aget__2; aget.cljs$core$IFn$_invoke$arity$variadic = aget__3.cljs$core$IFn$_invoke$arity$variadic; return aget; }(); cljs.core.aset = function() { var aset = null; var aset__3 = function(array, i, val) { return array[i] = val; }; var aset__4 = function() { var G__5243__delegate = function(array, idx, idx2, idxv) { return cljs.core.apply.call(null, aset, array[idx], idx2, idxv); }; var G__5243 = function(array, idx, idx2, var_args) { var idxv = null; if (arguments.length > 3) { idxv = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5243__delegate.call(this, array, idx, idx2, idxv); }; G__5243.cljs$lang$maxFixedArity = 3; G__5243.cljs$lang$applyTo = function(arglist__5244) { var array = cljs.core.first(arglist__5244); arglist__5244 = cljs.core.next(arglist__5244); var idx = cljs.core.first(arglist__5244); arglist__5244 = cljs.core.next(arglist__5244); var idx2 = cljs.core.first(arglist__5244); var idxv = cljs.core.rest(arglist__5244); return G__5243__delegate(array, idx, idx2, idxv); }; G__5243.cljs$core$IFn$_invoke$arity$variadic = G__5243__delegate; return G__5243; }(); aset = function(array, idx, idx2, var_args) { var idxv = var_args; switch(arguments.length) { case 3: return aset__3.call(this, array, idx, idx2); default: return aset__4.cljs$core$IFn$_invoke$arity$variadic(array, idx, idx2, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; aset.cljs$lang$maxFixedArity = 3; aset.cljs$lang$applyTo = aset__4.cljs$lang$applyTo; aset.cljs$core$IFn$_invoke$arity$3 = aset__3; aset.cljs$core$IFn$_invoke$arity$variadic = aset__4.cljs$core$IFn$_invoke$arity$variadic; return aset; }(); cljs.core.alength = function alength(array) { return array.length; }; cljs.core.into_array = function() { var into_array = null; var into_array__1 = function(aseq) { return into_array.call(null, null, aseq); }; var into_array__2 = function(type, aseq) { return cljs.core.reduce.call(null, function(a, x) { a.push(x); return a; }, [], aseq); }; into_array = function(type, aseq) { switch(arguments.length) { case 1: return into_array__1.call(this, type); case 2: return into_array__2.call(this, type, aseq); } throw new Error("Invalid arity: " + arguments.length); }; into_array.cljs$core$IFn$_invoke$arity$1 = into_array__1; into_array.cljs$core$IFn$_invoke$arity$2 = into_array__2; return into_array; }(); cljs.core.Fn = function() { var obj5246 = {}; return obj5246; }(); cljs.core.IFn = function() { var obj5248 = {}; return obj5248; }(); cljs.core._invoke = function() { var _invoke = null; var _invoke__1 = function(this$) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$1; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$1(this$); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$); } }; var _invoke__2 = function(this$, a) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$2; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$2(this$, a); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a); } }; var _invoke__3 = function(this$, a, b) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$3; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$3(this$, a, b); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b); } }; var _invoke__4 = function(this$, a, b, c) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$4; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$4(this$, a, b, c); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c); } }; var _invoke__5 = function(this$, a, b, c, d) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$5; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$5(this$, a, b, c, d); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d); } }; var _invoke__6 = function(this$, a, b, c, d, e) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$6; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$6(this$, a, b, c, d, e); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e); } }; var _invoke__7 = function(this$, a, b, c, d, e, f) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$7; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$7(this$, a, b, c, d, e, f); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f); } }; var _invoke__8 = function(this$, a, b, c, d, e, f, g) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$8; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$8(this$, a, b, c, d, e, f, g); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g); } }; var _invoke__9 = function(this$, a, b, c, d, e, f, g, h) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$9; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$9(this$, a, b, c, d, e, f, g, h); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h); } }; var _invoke__10 = function(this$, a, b, c, d, e, f, g, h, i) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$10; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$10(this$, a, b, c, d, e, f, g, h, i); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i); } }; var _invoke__11 = function(this$, a, b, c, d, e, f, g, h, i, j) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$11; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$11(this$, a, b, c, d, e, f, g, h, i, j); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j); } }; var _invoke__12 = function(this$, a, b, c, d, e, f, g, h, i, j, k) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$12; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$12(this$, a, b, c, d, e, f, g, h, i, j, k); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k); } }; var _invoke__13 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$13; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$13(this$, a, b, c, d, e, f, g, h, i, j, k, l); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l); } }; var _invoke__14 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$14; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$14(this$, a, b, c, d, e, f, g, h, i, j, k, l, m); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m); } }; var _invoke__15 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$15; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$15(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n); } }; var _invoke__16 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$16; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$16(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); } }; var _invoke__17 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$17; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$17(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); } }; var _invoke__18 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$18; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$18(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); } }; var _invoke__19 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$19; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$19(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s); } }; var _invoke__20 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$20; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$20(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t); } }; var _invoke__21 = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t, rest) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IFn$_invoke$arity$21; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IFn$_invoke$arity$21(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t, rest); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._invoke[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._invoke["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IFn.-invoke", this$); } } }().call(null, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t, rest); } }; _invoke = function(this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t, rest) { switch(arguments.length) { case 1: return _invoke__1.call(this, this$); case 2: return _invoke__2.call(this, this$, a); case 3: return _invoke__3.call(this, this$, a, b); case 4: return _invoke__4.call(this, this$, a, b, c); case 5: return _invoke__5.call(this, this$, a, b, c, d); case 6: return _invoke__6.call(this, this$, a, b, c, d, e); case 7: return _invoke__7.call(this, this$, a, b, c, d, e, f); case 8: return _invoke__8.call(this, this$, a, b, c, d, e, f, g); case 9: return _invoke__9.call(this, this$, a, b, c, d, e, f, g, h); case 10: return _invoke__10.call(this, this$, a, b, c, d, e, f, g, h, i); case 11: return _invoke__11.call(this, this$, a, b, c, d, e, f, g, h, i, j); case 12: return _invoke__12.call(this, this$, a, b, c, d, e, f, g, h, i, j, k); case 13: return _invoke__13.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l); case 14: return _invoke__14.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m); case 15: return _invoke__15.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n); case 16: return _invoke__16.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); case 17: return _invoke__17.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); case 18: return _invoke__18.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); case 19: return _invoke__19.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s); case 20: return _invoke__20.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t); case 21: return _invoke__21.call(this, this$, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t, rest); } throw new Error("Invalid arity: " + arguments.length); }; _invoke.cljs$core$IFn$_invoke$arity$1 = _invoke__1; _invoke.cljs$core$IFn$_invoke$arity$2 = _invoke__2; _invoke.cljs$core$IFn$_invoke$arity$3 = _invoke__3; _invoke.cljs$core$IFn$_invoke$arity$4 = _invoke__4; _invoke.cljs$core$IFn$_invoke$arity$5 = _invoke__5; _invoke.cljs$core$IFn$_invoke$arity$6 = _invoke__6; _invoke.cljs$core$IFn$_invoke$arity$7 = _invoke__7; _invoke.cljs$core$IFn$_invoke$arity$8 = _invoke__8; _invoke.cljs$core$IFn$_invoke$arity$9 = _invoke__9; _invoke.cljs$core$IFn$_invoke$arity$10 = _invoke__10; _invoke.cljs$core$IFn$_invoke$arity$11 = _invoke__11; _invoke.cljs$core$IFn$_invoke$arity$12 = _invoke__12; _invoke.cljs$core$IFn$_invoke$arity$13 = _invoke__13; _invoke.cljs$core$IFn$_invoke$arity$14 = _invoke__14; _invoke.cljs$core$IFn$_invoke$arity$15 = _invoke__15; _invoke.cljs$core$IFn$_invoke$arity$16 = _invoke__16; _invoke.cljs$core$IFn$_invoke$arity$17 = _invoke__17; _invoke.cljs$core$IFn$_invoke$arity$18 = _invoke__18; _invoke.cljs$core$IFn$_invoke$arity$19 = _invoke__19; _invoke.cljs$core$IFn$_invoke$arity$20 = _invoke__20; _invoke.cljs$core$IFn$_invoke$arity$21 = _invoke__21; return _invoke; }(); cljs.core.ICloneable = function() { var obj5250 = {}; return obj5250; }(); cljs.core._clone = function _clone(value) { if (function() { var and__3532__auto__ = value; if (and__3532__auto__) { return value.cljs$core$ICloneable$_clone$arity$1; } else { return and__3532__auto__; } }()) { return value.cljs$core$ICloneable$_clone$arity$1(value); } else { var x__4171__auto__ = value == null ? null : value; return function() { var or__3544__auto__ = cljs.core._clone[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._clone["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ICloneable.-clone", value); } } }().call(null, value); } }; cljs.core.ICounted = function() { var obj5252 = {}; return obj5252; }(); cljs.core._count = function _count(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ICounted$_count$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ICounted$_count$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._count[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._count["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ICounted.-count", coll); } } }().call(null, coll); } }; cljs.core.IEmptyableCollection = function() { var obj5254 = {}; return obj5254; }(); cljs.core._empty = function _empty(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IEmptyableCollection$_empty$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IEmptyableCollection$_empty$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._empty[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._empty["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IEmptyableCollection.-empty", coll); } } }().call(null, coll); } }; cljs.core.ICollection = function() { var obj5256 = {}; return obj5256; }(); cljs.core._conj = function _conj(coll, o) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ICollection$_conj$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ICollection$_conj$arity$2(coll, o); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._conj[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._conj["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ICollection.-conj", coll); } } }().call(null, coll, o); } }; cljs.core.IIndexed = function() { var obj5258 = {}; return obj5258; }(); cljs.core._nth = function() { var _nth = null; var _nth__2 = function(coll, n) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IIndexed$_nth$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IIndexed$_nth$arity$2(coll, n); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._nth[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._nth["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IIndexed.-nth", coll); } } }().call(null, coll, n); } }; var _nth__3 = function(coll, n, not_found) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IIndexed$_nth$arity$3; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IIndexed$_nth$arity$3(coll, n, not_found); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._nth[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._nth["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IIndexed.-nth", coll); } } }().call(null, coll, n, not_found); } }; _nth = function(coll, n, not_found) { switch(arguments.length) { case 2: return _nth__2.call(this, coll, n); case 3: return _nth__3.call(this, coll, n, not_found); } throw new Error("Invalid arity: " + arguments.length); }; _nth.cljs$core$IFn$_invoke$arity$2 = _nth__2; _nth.cljs$core$IFn$_invoke$arity$3 = _nth__3; return _nth; }(); cljs.core.ASeq = function() { var obj5260 = {}; return obj5260; }(); cljs.core.ISeq = function() { var obj5262 = {}; return obj5262; }(); cljs.core._first = function _first(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ISeq$_first$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ISeq$_first$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._first[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._first["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISeq.-first", coll); } } }().call(null, coll); } }; cljs.core._rest = function _rest(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ISeq$_rest$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ISeq$_rest$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._rest[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._rest["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISeq.-rest", coll); } } }().call(null, coll); } }; cljs.core.INext = function() { var obj5264 = {}; return obj5264; }(); cljs.core._next = function _next(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$INext$_next$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$INext$_next$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._next[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._next["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "INext.-next", coll); } } }().call(null, coll); } }; cljs.core.ILookup = function() { var obj5266 = {}; return obj5266; }(); cljs.core._lookup = function() { var _lookup = null; var _lookup__2 = function(o, k) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$ILookup$_lookup$arity$2; } else { return and__3532__auto__; } }()) { return o.cljs$core$ILookup$_lookup$arity$2(o, k); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._lookup[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._lookup["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ILookup.-lookup", o); } } }().call(null, o, k); } }; var _lookup__3 = function(o, k, not_found) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$ILookup$_lookup$arity$3; } else { return and__3532__auto__; } }()) { return o.cljs$core$ILookup$_lookup$arity$3(o, k, not_found); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._lookup[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._lookup["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ILookup.-lookup", o); } } }().call(null, o, k, not_found); } }; _lookup = function(o, k, not_found) { switch(arguments.length) { case 2: return _lookup__2.call(this, o, k); case 3: return _lookup__3.call(this, o, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; _lookup.cljs$core$IFn$_invoke$arity$2 = _lookup__2; _lookup.cljs$core$IFn$_invoke$arity$3 = _lookup__3; return _lookup; }(); cljs.core.IAssociative = function() { var obj5268 = {}; return obj5268; }(); cljs.core._contains_key_QMARK_ = function _contains_key_QMARK_(coll, k) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IAssociative$_contains_key_QMARK_$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IAssociative$_contains_key_QMARK_$arity$2(coll, k); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._contains_key_QMARK_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._contains_key_QMARK_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IAssociative.-contains-key?", coll); } } }().call(null, coll, k); } }; cljs.core._assoc = function _assoc(coll, k, v) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IAssociative$_assoc$arity$3; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IAssociative$_assoc$arity$3(coll, k, v); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._assoc[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._assoc["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IAssociative.-assoc", coll); } } }().call(null, coll, k, v); } }; cljs.core.IMap = function() { var obj5270 = {}; return obj5270; }(); cljs.core._dissoc = function _dissoc(coll, k) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IMap$_dissoc$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IMap$_dissoc$arity$2(coll, k); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._dissoc[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._dissoc["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMap.-dissoc", coll); } } }().call(null, coll, k); } }; cljs.core.IMapEntry = function() { var obj5272 = {}; return obj5272; }(); cljs.core._key = function _key(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IMapEntry$_key$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IMapEntry$_key$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._key[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._key["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMapEntry.-key", coll); } } }().call(null, coll); } }; cljs.core._val = function _val(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IMapEntry$_val$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IMapEntry$_val$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._val[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._val["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMapEntry.-val", coll); } } }().call(null, coll); } }; cljs.core.ISet = function() { var obj5274 = {}; return obj5274; }(); cljs.core._disjoin = function _disjoin(coll, v) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ISet$_disjoin$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ISet$_disjoin$arity$2(coll, v); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._disjoin[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._disjoin["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISet.-disjoin", coll); } } }().call(null, coll, v); } }; cljs.core.IStack = function() { var obj5276 = {}; return obj5276; }(); cljs.core._peek = function _peek(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IStack$_peek$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IStack$_peek$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._peek[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._peek["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IStack.-peek", coll); } } }().call(null, coll); } }; cljs.core._pop = function _pop(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IStack$_pop$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IStack$_pop$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._pop[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._pop["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IStack.-pop", coll); } } }().call(null, coll); } }; cljs.core.IVector = function() { var obj5278 = {}; return obj5278; }(); cljs.core._assoc_n = function _assoc_n(coll, n, val) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IVector$_assoc_n$arity$3; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IVector$_assoc_n$arity$3(coll, n, val); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._assoc_n[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._assoc_n["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IVector.-assoc-n", coll); } } }().call(null, coll, n, val); } }; cljs.core.IDeref = function() { var obj5280 = {}; return obj5280; }(); cljs.core._deref = function _deref(o) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IDeref$_deref$arity$1; } else { return and__3532__auto__; } }()) { return o.cljs$core$IDeref$_deref$arity$1(o); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._deref[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._deref["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IDeref.-deref", o); } } }().call(null, o); } }; cljs.core.IDerefWithTimeout = function() { var obj5282 = {}; return obj5282; }(); cljs.core._deref_with_timeout = function _deref_with_timeout(o, msec, timeout_val) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IDerefWithTimeout$_deref_with_timeout$arity$3; } else { return and__3532__auto__; } }()) { return o.cljs$core$IDerefWithTimeout$_deref_with_timeout$arity$3(o, msec, timeout_val); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._deref_with_timeout[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._deref_with_timeout["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IDerefWithTimeout.-deref-with-timeout", o); } } }().call(null, o, msec, timeout_val); } }; cljs.core.IMeta = function() { var obj5284 = {}; return obj5284; }(); cljs.core._meta = function _meta(o) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IMeta$_meta$arity$1; } else { return and__3532__auto__; } }()) { return o.cljs$core$IMeta$_meta$arity$1(o); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._meta[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._meta["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMeta.-meta", o); } } }().call(null, o); } }; cljs.core.IWithMeta = function() { var obj5286 = {}; return obj5286; }(); cljs.core._with_meta = function _with_meta(o, meta) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IWithMeta$_with_meta$arity$2; } else { return and__3532__auto__; } }()) { return o.cljs$core$IWithMeta$_with_meta$arity$2(o, meta); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._with_meta[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._with_meta["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IWithMeta.-with-meta", o); } } }().call(null, o, meta); } }; cljs.core.IReduce = function() { var obj5288 = {}; return obj5288; }(); cljs.core._reduce = function() { var _reduce = null; var _reduce__2 = function(coll, f) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IReduce$_reduce$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IReduce$_reduce$arity$2(coll, f); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._reduce[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._reduce["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IReduce.-reduce", coll); } } }().call(null, coll, f); } }; var _reduce__3 = function(coll, f, start) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IReduce$_reduce$arity$3; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IReduce$_reduce$arity$3(coll, f, start); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._reduce[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._reduce["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IReduce.-reduce", coll); } } }().call(null, coll, f, start); } }; _reduce = function(coll, f, start) { switch(arguments.length) { case 2: return _reduce__2.call(this, coll, f); case 3: return _reduce__3.call(this, coll, f, start); } throw new Error("Invalid arity: " + arguments.length); }; _reduce.cljs$core$IFn$_invoke$arity$2 = _reduce__2; _reduce.cljs$core$IFn$_invoke$arity$3 = _reduce__3; return _reduce; }(); cljs.core.IKVReduce = function() { var obj5290 = {}; return obj5290; }(); cljs.core._kv_reduce = function _kv_reduce(coll, f, init) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IKVReduce$_kv_reduce$arity$3; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IKVReduce$_kv_reduce$arity$3(coll, f, init); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._kv_reduce[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._kv_reduce["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IKVReduce.-kv-reduce", coll); } } }().call(null, coll, f, init); } }; cljs.core.IEquiv = function() { var obj5292 = {}; return obj5292; }(); cljs.core._equiv = function _equiv(o, other) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IEquiv$_equiv$arity$2; } else { return and__3532__auto__; } }()) { return o.cljs$core$IEquiv$_equiv$arity$2(o, other); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._equiv[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._equiv["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IEquiv.-equiv", o); } } }().call(null, o, other); } }; cljs.core.IHash = function() { var obj5294 = {}; return obj5294; }(); cljs.core._hash = function _hash(o) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IHash$_hash$arity$1; } else { return and__3532__auto__; } }()) { return o.cljs$core$IHash$_hash$arity$1(o); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._hash[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._hash["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IHash.-hash", o); } } }().call(null, o); } }; cljs.core.ISeqable = function() { var obj5296 = {}; return obj5296; }(); cljs.core._seq = function _seq(o) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$ISeqable$_seq$arity$1; } else { return and__3532__auto__; } }()) { return o.cljs$core$ISeqable$_seq$arity$1(o); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._seq[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._seq["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISeqable.-seq", o); } } }().call(null, o); } }; cljs.core.ISequential = function() { var obj5298 = {}; return obj5298; }(); cljs.core.IList = function() { var obj5300 = {}; return obj5300; }(); cljs.core.IRecord = function() { var obj5302 = {}; return obj5302; }(); cljs.core.IReversible = function() { var obj5304 = {}; return obj5304; }(); cljs.core._rseq = function _rseq(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IReversible$_rseq$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IReversible$_rseq$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._rseq[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._rseq["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IReversible.-rseq", coll); } } }().call(null, coll); } }; cljs.core.ISorted = function() { var obj5306 = {}; return obj5306; }(); cljs.core._sorted_seq = function _sorted_seq(coll, ascending_QMARK_) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ISorted$_sorted_seq$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ISorted$_sorted_seq$arity$2(coll, ascending_QMARK_); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._sorted_seq[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._sorted_seq["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISorted.-sorted-seq", coll); } } }().call(null, coll, ascending_QMARK_); } }; cljs.core._sorted_seq_from = function _sorted_seq_from(coll, k, ascending_QMARK_) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ISorted$_sorted_seq_from$arity$3; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ISorted$_sorted_seq_from$arity$3(coll, k, ascending_QMARK_); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._sorted_seq_from[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._sorted_seq_from["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISorted.-sorted-seq-from", coll); } } }().call(null, coll, k, ascending_QMARK_); } }; cljs.core._entry_key = function _entry_key(coll, entry) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ISorted$_entry_key$arity$2; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ISorted$_entry_key$arity$2(coll, entry); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._entry_key[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._entry_key["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISorted.-entry-key", coll); } } }().call(null, coll, entry); } }; cljs.core._comparator = function _comparator(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$ISorted$_comparator$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$ISorted$_comparator$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._comparator[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._comparator["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISorted.-comparator", coll); } } }().call(null, coll); } }; cljs.core.IWriter = function() { var obj5308 = {}; return obj5308; }(); cljs.core._write = function _write(writer, s) { if (function() { var and__3532__auto__ = writer; if (and__3532__auto__) { return writer.cljs$core$IWriter$_write$arity$2; } else { return and__3532__auto__; } }()) { return writer.cljs$core$IWriter$_write$arity$2(writer, s); } else { var x__4171__auto__ = writer == null ? null : writer; return function() { var or__3544__auto__ = cljs.core._write[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._write["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IWriter.-write", writer); } } }().call(null, writer, s); } }; cljs.core._flush = function _flush(writer) { if (function() { var and__3532__auto__ = writer; if (and__3532__auto__) { return writer.cljs$core$IWriter$_flush$arity$1; } else { return and__3532__auto__; } }()) { return writer.cljs$core$IWriter$_flush$arity$1(writer); } else { var x__4171__auto__ = writer == null ? null : writer; return function() { var or__3544__auto__ = cljs.core._flush[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._flush["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IWriter.-flush", writer); } } }().call(null, writer); } }; cljs.core.IPrintWithWriter = function() { var obj5310 = {}; return obj5310; }(); cljs.core._pr_writer = function _pr_writer(o, writer, opts) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IPrintWithWriter$_pr_writer$arity$3; } else { return and__3532__auto__; } }()) { return o.cljs$core$IPrintWithWriter$_pr_writer$arity$3(o, writer, opts); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._pr_writer[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._pr_writer["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IPrintWithWriter.-pr-writer", o); } } }().call(null, o, writer, opts); } }; cljs.core.IPending = function() { var obj5312 = {}; return obj5312; }(); cljs.core._realized_QMARK_ = function _realized_QMARK_(d) { if (function() { var and__3532__auto__ = d; if (and__3532__auto__) { return d.cljs$core$IPending$_realized_QMARK_$arity$1; } else { return and__3532__auto__; } }()) { return d.cljs$core$IPending$_realized_QMARK_$arity$1(d); } else { var x__4171__auto__ = d == null ? null : d; return function() { var or__3544__auto__ = cljs.core._realized_QMARK_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._realized_QMARK_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IPending.-realized?", d); } } }().call(null, d); } }; cljs.core.IWatchable = function() { var obj5314 = {}; return obj5314; }(); cljs.core._notify_watches = function _notify_watches(this$, oldval, newval) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IWatchable$_notify_watches$arity$3; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IWatchable$_notify_watches$arity$3(this$, oldval, newval); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._notify_watches[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._notify_watches["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IWatchable.-notify-watches", this$); } } }().call(null, this$, oldval, newval); } }; cljs.core._add_watch = function _add_watch(this$, key, f) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IWatchable$_add_watch$arity$3; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IWatchable$_add_watch$arity$3(this$, key, f); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._add_watch[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._add_watch["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IWatchable.-add-watch", this$); } } }().call(null, this$, key, f); } }; cljs.core._remove_watch = function _remove_watch(this$, key) { if (function() { var and__3532__auto__ = this$; if (and__3532__auto__) { return this$.cljs$core$IWatchable$_remove_watch$arity$2; } else { return and__3532__auto__; } }()) { return this$.cljs$core$IWatchable$_remove_watch$arity$2(this$, key); } else { var x__4171__auto__ = this$ == null ? null : this$; return function() { var or__3544__auto__ = cljs.core._remove_watch[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._remove_watch["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IWatchable.-remove-watch", this$); } } }().call(null, this$, key); } }; cljs.core.IEditableCollection = function() { var obj5316 = {}; return obj5316; }(); cljs.core._as_transient = function _as_transient(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IEditableCollection$_as_transient$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IEditableCollection$_as_transient$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._as_transient[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._as_transient["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IEditableCollection.-as-transient", coll); } } }().call(null, coll); } }; cljs.core.ITransientCollection = function() { var obj5318 = {}; return obj5318; }(); cljs.core._conj_BANG_ = function _conj_BANG_(tcoll, val) { if (function() { var and__3532__auto__ = tcoll; if (and__3532__auto__) { return tcoll.cljs$core$ITransientCollection$_conj_BANG_$arity$2; } else { return and__3532__auto__; } }()) { return tcoll.cljs$core$ITransientCollection$_conj_BANG_$arity$2(tcoll, val); } else { var x__4171__auto__ = tcoll == null ? null : tcoll; return function() { var or__3544__auto__ = cljs.core._conj_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._conj_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ITransientCollection.-conj!", tcoll); } } }().call(null, tcoll, val); } }; cljs.core._persistent_BANG_ = function _persistent_BANG_(tcoll) { if (function() { var and__3532__auto__ = tcoll; if (and__3532__auto__) { return tcoll.cljs$core$ITransientCollection$_persistent_BANG_$arity$1; } else { return and__3532__auto__; } }()) { return tcoll.cljs$core$ITransientCollection$_persistent_BANG_$arity$1(tcoll); } else { var x__4171__auto__ = tcoll == null ? null : tcoll; return function() { var or__3544__auto__ = cljs.core._persistent_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._persistent_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ITransientCollection.-persistent!", tcoll); } } }().call(null, tcoll); } }; cljs.core.ITransientAssociative = function() { var obj5320 = {}; return obj5320; }(); cljs.core._assoc_BANG_ = function _assoc_BANG_(tcoll, key, val) { if (function() { var and__3532__auto__ = tcoll; if (and__3532__auto__) { return tcoll.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3; } else { return and__3532__auto__; } }()) { return tcoll.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3(tcoll, key, val); } else { var x__4171__auto__ = tcoll == null ? null : tcoll; return function() { var or__3544__auto__ = cljs.core._assoc_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._assoc_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ITransientAssociative.-assoc!", tcoll); } } }().call(null, tcoll, key, val); } }; cljs.core.ITransientMap = function() { var obj5322 = {}; return obj5322; }(); cljs.core._dissoc_BANG_ = function _dissoc_BANG_(tcoll, key) { if (function() { var and__3532__auto__ = tcoll; if (and__3532__auto__) { return tcoll.cljs$core$ITransientMap$_dissoc_BANG_$arity$2; } else { return and__3532__auto__; } }()) { return tcoll.cljs$core$ITransientMap$_dissoc_BANG_$arity$2(tcoll, key); } else { var x__4171__auto__ = tcoll == null ? null : tcoll; return function() { var or__3544__auto__ = cljs.core._dissoc_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._dissoc_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ITransientMap.-dissoc!", tcoll); } } }().call(null, tcoll, key); } }; cljs.core.ITransientVector = function() { var obj5324 = {}; return obj5324; }(); cljs.core._assoc_n_BANG_ = function _assoc_n_BANG_(tcoll, n, val) { if (function() { var and__3532__auto__ = tcoll; if (and__3532__auto__) { return tcoll.cljs$core$ITransientVector$_assoc_n_BANG_$arity$3; } else { return and__3532__auto__; } }()) { return tcoll.cljs$core$ITransientVector$_assoc_n_BANG_$arity$3(tcoll, n, val); } else { var x__4171__auto__ = tcoll == null ? null : tcoll; return function() { var or__3544__auto__ = cljs.core._assoc_n_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._assoc_n_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ITransientVector.-assoc-n!", tcoll); } } }().call(null, tcoll, n, val); } }; cljs.core._pop_BANG_ = function _pop_BANG_(tcoll) { if (function() { var and__3532__auto__ = tcoll; if (and__3532__auto__) { return tcoll.cljs$core$ITransientVector$_pop_BANG_$arity$1; } else { return and__3532__auto__; } }()) { return tcoll.cljs$core$ITransientVector$_pop_BANG_$arity$1(tcoll); } else { var x__4171__auto__ = tcoll == null ? null : tcoll; return function() { var or__3544__auto__ = cljs.core._pop_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._pop_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ITransientVector.-pop!", tcoll); } } }().call(null, tcoll); } }; cljs.core.ITransientSet = function() { var obj5326 = {}; return obj5326; }(); cljs.core._disjoin_BANG_ = function _disjoin_BANG_(tcoll, v) { if (function() { var and__3532__auto__ = tcoll; if (and__3532__auto__) { return tcoll.cljs$core$ITransientSet$_disjoin_BANG_$arity$2; } else { return and__3532__auto__; } }()) { return tcoll.cljs$core$ITransientSet$_disjoin_BANG_$arity$2(tcoll, v); } else { var x__4171__auto__ = tcoll == null ? null : tcoll; return function() { var or__3544__auto__ = cljs.core._disjoin_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._disjoin_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ITransientSet.-disjoin!", tcoll); } } }().call(null, tcoll, v); } }; cljs.core.IComparable = function() { var obj5328 = {}; return obj5328; }(); cljs.core._compare = function _compare(x, y) { if (function() { var and__3532__auto__ = x; if (and__3532__auto__) { return x.cljs$core$IComparable$_compare$arity$2; } else { return and__3532__auto__; } }()) { return x.cljs$core$IComparable$_compare$arity$2(x, y); } else { var x__4171__auto__ = x == null ? null : x; return function() { var or__3544__auto__ = cljs.core._compare[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._compare["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IComparable.-compare", x); } } }().call(null, x, y); } }; cljs.core.IChunk = function() { var obj5330 = {}; return obj5330; }(); cljs.core._drop_first = function _drop_first(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IChunk$_drop_first$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IChunk$_drop_first$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._drop_first[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._drop_first["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IChunk.-drop-first", coll); } } }().call(null, coll); } }; cljs.core.IChunkedSeq = function() { var obj5332 = {}; return obj5332; }(); cljs.core._chunked_first = function _chunked_first(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IChunkedSeq$_chunked_first$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IChunkedSeq$_chunked_first$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._chunked_first[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._chunked_first["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IChunkedSeq.-chunked-first", coll); } } }().call(null, coll); } }; cljs.core._chunked_rest = function _chunked_rest(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IChunkedSeq$_chunked_rest$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IChunkedSeq$_chunked_rest$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._chunked_rest[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._chunked_rest["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IChunkedSeq.-chunked-rest", coll); } } }().call(null, coll); } }; cljs.core.IChunkedNext = function() { var obj5334 = {}; return obj5334; }(); cljs.core._chunked_next = function _chunked_next(coll) { if (function() { var and__3532__auto__ = coll; if (and__3532__auto__) { return coll.cljs$core$IChunkedNext$_chunked_next$arity$1; } else { return and__3532__auto__; } }()) { return coll.cljs$core$IChunkedNext$_chunked_next$arity$1(coll); } else { var x__4171__auto__ = coll == null ? null : coll; return function() { var or__3544__auto__ = cljs.core._chunked_next[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._chunked_next["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IChunkedNext.-chunked-next", coll); } } }().call(null, coll); } }; cljs.core.INamed = function() { var obj5336 = {}; return obj5336; }(); cljs.core._name = function _name(x) { if (function() { var and__3532__auto__ = x; if (and__3532__auto__) { return x.cljs$core$INamed$_name$arity$1; } else { return and__3532__auto__; } }()) { return x.cljs$core$INamed$_name$arity$1(x); } else { var x__4171__auto__ = x == null ? null : x; return function() { var or__3544__auto__ = cljs.core._name[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._name["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "INamed.-name", x); } } }().call(null, x); } }; cljs.core._namespace = function _namespace(x) { if (function() { var and__3532__auto__ = x; if (and__3532__auto__) { return x.cljs$core$INamed$_namespace$arity$1; } else { return and__3532__auto__; } }()) { return x.cljs$core$INamed$_namespace$arity$1(x); } else { var x__4171__auto__ = x == null ? null : x; return function() { var or__3544__auto__ = cljs.core._namespace[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._namespace["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "INamed.-namespace", x); } } }().call(null, x); } }; cljs.core.StringBufferWriter = function(sb) { this.sb = sb; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 1073741824; }; cljs.core.StringBufferWriter.cljs$lang$type = true; cljs.core.StringBufferWriter.cljs$lang$ctorStr = "cljs.core/StringBufferWriter"; cljs.core.StringBufferWriter.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/StringBufferWriter"); }; cljs.core.StringBufferWriter.prototype.cljs$core$IWriter$_write$arity$2 = function(_, s) { var self__ = this; var ___$1 = this; return self__.sb.append(s); }; cljs.core.StringBufferWriter.prototype.cljs$core$IWriter$_flush$arity$1 = function(_) { var self__ = this; var ___$1 = this; return null; }; cljs.core.__GT_StringBufferWriter = function __GT_StringBufferWriter(sb) { return new cljs.core.StringBufferWriter(sb); }; cljs.core.pr_str_STAR_ = function pr_str_STAR_(obj) { var sb = new goog.string.StringBuffer; var writer = new cljs.core.StringBufferWriter(sb); cljs.core._pr_writer.call(null, obj, writer, cljs.core.pr_opts.call(null)); cljs.core._flush.call(null, writer); return "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb); }; cljs.core.int_rotate_left = function int_rotate_left(x, n) { return x << n | x >>> -n; }; if (typeof Math.imul !== "undefined" && !(Math.imul.call(null, 4294967295, 5) === 0)) { cljs.core.imul = function imul(a, b) { return Math.imul(a, b); }; } else { cljs.core.imul = function imul(a, b) { var ah = a >>> 16 & 65535; var al = a & 65535; var bh = b >>> 16 & 65535; var bl = b & 65535; return al * bl + (ah * bl + al * bh << 16 >>> 0) | 0; }; } cljs.core.m3_seed = 0; cljs.core.m3_C1 = 3432918353; cljs.core.m3_C2 = 461845907; cljs.core.m3_mix_K1 = function m3_mix_K1(k1) { return cljs.core.imul.call(null, cljs.core.int_rotate_left.call(null, cljs.core.imul.call(null, k1, cljs.core.m3_C1), 15), cljs.core.m3_C2); }; cljs.core.m3_mix_H1 = function m3_mix_H1(h1, k1) { return cljs.core.imul.call(null, cljs.core.int_rotate_left.call(null, h1 ^ k1, 13), 5) + 3864292196; }; cljs.core.m3_fmix = function m3_fmix(h1, len) { var h1__$1 = h1; var h1__$2 = h1__$1 ^ len; var h1__$3 = h1__$2 ^ h1__$2 >>> 16; var h1__$4 = cljs.core.imul.call(null, h1__$3, 2246822507); var h1__$5 = h1__$4 ^ h1__$4 >>> 13; var h1__$6 = cljs.core.imul.call(null, h1__$5, 3266489909); var h1__$7 = h1__$6 ^ h1__$6 >>> 16; return h1__$7; }; cljs.core.m3_hash_int = function m3_hash_int(in$) { if (in$ === 0) { return in$; } else { var k1 = cljs.core.m3_mix_K1.call(null, in$); var h1 = cljs.core.m3_mix_H1.call(null, cljs.core.m3_seed, k1); return cljs.core.m3_fmix.call(null, h1, 4); } }; cljs.core.m3_hash_unencoded_chars = function m3_hash_unencoded_chars(in$) { var h1 = function() { var i = 1; var h1 = cljs.core.m3_seed; while (true) { if (i < in$.length) { var G__5337 = i + 2; var G__5338 = cljs.core.m3_mix_H1.call(null, h1, cljs.core.m3_mix_K1.call(null, in$.charCodeAt(i - 1) | in$.charCodeAt(i) << 16)); i = G__5337; h1 = G__5338; continue; } else { return h1; } break; } }(); var h1__$1 = (in$.length & 1) === 1 ? h1 ^ cljs.core.m3_mix_K1.call(null, in$.charCodeAt(in$.length - 1)) : h1; return cljs.core.m3_fmix.call(null, h1__$1, cljs.core.imul.call(null, 2, in$.length)); }; cljs.core.string_hash_cache = function() { var obj5340 = {}; return obj5340; }(); cljs.core.string_hash_cache_count = 0; cljs.core.hash_string_STAR_ = function hash_string_STAR_(s) { if (!(s == null)) { var len = s.length; if (len > 0) { var i = 0; var hash = 0; while (true) { if (i < len) { var G__5341 = i + 1; var G__5342 = cljs.core.imul.call(null, 31, hash) + s.charCodeAt(i); i = G__5341; hash = G__5342; continue; } else { return hash; } break; } } else { return 0; } } else { return 0; } }; cljs.core.add_to_string_hash_cache = function add_to_string_hash_cache(k) { var h = cljs.core.hash_string_STAR_.call(null, k); cljs.core.string_hash_cache[k] = h; cljs.core.string_hash_cache_count = cljs.core.string_hash_cache_count + 1; return h; }; cljs.core.hash_string = function hash_string(k) { if (cljs.core.string_hash_cache_count > 255) { cljs.core.string_hash_cache = function() { var obj5346 = {}; return obj5346; }(); cljs.core.string_hash_cache_count = 0; } else { } var h = cljs.core.string_hash_cache[k]; if (typeof h === "number") { return h; } else { return cljs.core.add_to_string_hash_cache.call(null, k); } }; cljs.core.hash = function hash(o) { if (function() { var G__5348 = o; if (G__5348) { var bit__4187__auto__ = G__5348.cljs$lang$protocol_mask$partition0$ & 4194304; if (bit__4187__auto__ || G__5348.cljs$core$IHash$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._hash.call(null, o); } else { if (typeof o === "number") { return Math.floor(o) % 2147483647; } else { if (o === true) { return 1; } else { if (o === false) { return 0; } else { if (typeof o === "string") { return cljs.core.m3_hash_int.call(null, cljs.core.hash_string.call(null, o)); } else { if (o == null) { return 0; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core._hash.call(null, o); } else { return null; } } } } } } } }; cljs.core.hash_combine = function hash_combine(seed, hash) { return seed ^ hash + 2654435769 + (seed << 6) + (seed >> 2); }; cljs.core.instance_QMARK_ = function instance_QMARK_(t, o) { return o instanceof t; }; cljs.core.symbol_QMARK_ = function symbol_QMARK_(x) { return x instanceof cljs.core.Symbol; }; cljs.core.hash_symbol = function hash_symbol(sym) { return cljs.core.hash_combine.call(null, cljs.core.m3_hash_unencoded_chars.call(null, sym.name), cljs.core.hash_string.call(null, sym.ns)); }; cljs.core.compare_symbols = function compare_symbols(a, b) { if (cljs.core.truth_(cljs.core._EQ_.call(null, a, b))) { return 0; } else { if (cljs.core.truth_(function() { var and__3532__auto__ = cljs.core.not.call(null, a.ns); if (and__3532__auto__) { return b.ns; } else { return and__3532__auto__; } }())) { return-1; } else { if (cljs.core.truth_(a.ns)) { if (cljs.core.not.call(null, b.ns)) { return 1; } else { var nsc = cljs.core.compare.call(null, a.ns, b.ns); if (nsc === 0) { return cljs.core.compare.call(null, a.name, b.name); } else { return nsc; } } } else { if (new cljs.core.Keyword(null, "default", "default", -1987822328)) { return cljs.core.compare.call(null, a.name, b.name); } else { return null; } } } } }; cljs.core.Symbol = function(ns, name, str, _hash, _meta) { this.ns = ns; this.name = name; this.str = str; this._hash = _hash; this._meta = _meta; this.cljs$lang$protocol_mask$partition0$ = 2154168321; this.cljs$lang$protocol_mask$partition1$ = 4096; }; cljs.core.Symbol.cljs$lang$type = true; cljs.core.Symbol.cljs$lang$ctorStr = "cljs.core/Symbol"; cljs.core.Symbol.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Symbol"); }; cljs.core.Symbol.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(o, writer, _) { var self__ = this; var o__$1 = this; return cljs.core._write.call(null, writer, self__.str); }; cljs.core.Symbol.prototype.cljs$core$INamed$_name$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.name; }; cljs.core.Symbol.prototype.cljs$core$INamed$_namespace$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.ns; }; cljs.core.Symbol.prototype.cljs$core$IHash$_hash$arity$1 = function(sym) { var self__ = this; var sym__$1 = this; var h__3955__auto__ = self__._hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_symbol.call(null, sym__$1); self__._hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.Symbol.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(_, new_meta) { var self__ = this; var ___$1 = this; return new cljs.core.Symbol(self__.ns, self__.name, self__.str, self__._hash, new_meta); }; cljs.core.Symbol.prototype.cljs$core$IMeta$_meta$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__._meta; }; cljs.core.Symbol.prototype.call = function() { var G__5350 = null; var G__5350__2 = function(self__, coll) { var self__ = this; var self____$1 = this; var sym = self____$1; return cljs.core._lookup.call(null, coll, sym, null); }; var G__5350__3 = function(self__, coll, not_found) { var self__ = this; var self____$1 = this; var sym = self____$1; return cljs.core._lookup.call(null, coll, sym, not_found); }; G__5350 = function(self__, coll, not_found) { switch(arguments.length) { case 2: return G__5350__2.call(this, self__, coll); case 3: return G__5350__3.call(this, self__, coll, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5350; }(); cljs.core.Symbol.prototype.apply = function(self__, args5349) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5349))); }; cljs.core.Symbol.prototype.cljs$core$IFn$_invoke$arity$1 = function(coll) { var self__ = this; var sym = this; return cljs.core._lookup.call(null, coll, sym, null); }; cljs.core.Symbol.prototype.cljs$core$IFn$_invoke$arity$2 = function(coll, not_found) { var self__ = this; var sym = this; return cljs.core._lookup.call(null, coll, sym, not_found); }; cljs.core.Symbol.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(_, other) { var self__ = this; var ___$1 = this; if (other instanceof cljs.core.Symbol) { return self__.str === other.str; } else { return false; } }; cljs.core.Symbol.prototype.toString = function() { var self__ = this; var _ = this; return self__.str; }; cljs.core.Symbol.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.__GT_Symbol = function __GT_Symbol(ns, name, str, _hash, _meta) { return new cljs.core.Symbol(ns, name, str, _hash, _meta); }; cljs.core.symbol = function() { var symbol = null; var symbol__1 = function(name) { if (name instanceof cljs.core.Symbol) { return name; } else { return symbol.call(null, null, name); } }; var symbol__2 = function(ns, name) { var sym_str = !(ns == null) ? "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns) + "/" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(name) : name; return new cljs.core.Symbol(ns, name, sym_str, null, null); }; symbol = function(ns, name) { switch(arguments.length) { case 1: return symbol__1.call(this, ns); case 2: return symbol__2.call(this, ns, name); } throw new Error("Invalid arity: " + arguments.length); }; symbol.cljs$core$IFn$_invoke$arity$1 = symbol__1; symbol.cljs$core$IFn$_invoke$arity$2 = symbol__2; return symbol; }(); cljs.core.clone = function clone(value) { return cljs.core._clone.call(null, value); }; cljs.core.cloneable_QMARK_ = function cloneable_QMARK_(value) { var G__5352 = value; if (G__5352) { var bit__4194__auto__ = G__5352.cljs$lang$protocol_mask$partition1$ & 8192; if (bit__4194__auto__ || G__5352.cljs$core$ICloneable$) { return true; } else { if (!G__5352.cljs$lang$protocol_mask$partition1$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ICloneable, G__5352); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ICloneable, G__5352); } }; cljs.core.seq = function seq(coll) { if (coll == null) { return null; } else { if (function() { var G__5354 = coll; if (G__5354) { var bit__4187__auto__ = G__5354.cljs$lang$protocol_mask$partition0$ & 8388608; if (bit__4187__auto__ || G__5354.cljs$core$ISeqable$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._seq.call(null, coll); } else { if (coll instanceof Array) { if (coll.length === 0) { return null; } else { return new cljs.core.IndexedSeq(coll, 0); } } else { if (typeof coll === "string") { if (coll.length === 0) { return null; } else { return new cljs.core.IndexedSeq(coll, 0); } } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeqable, coll)) { return cljs.core._seq.call(null, coll); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(coll) + " is not ISeqable"); } else { return null; } } } } } } }; cljs.core.first = function first(coll) { if (coll == null) { return null; } else { if (function() { var G__5356 = coll; if (G__5356) { var bit__4187__auto__ = G__5356.cljs$lang$protocol_mask$partition0$ & 64; if (bit__4187__auto__ || G__5356.cljs$core$ISeq$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._first.call(null, coll); } else { var s = cljs.core.seq.call(null, coll); if (s == null) { return null; } else { return cljs.core._first.call(null, s); } } } }; cljs.core.rest = function rest(coll) { if (!(coll == null)) { if (function() { var G__5358 = coll; if (G__5358) { var bit__4187__auto__ = G__5358.cljs$lang$protocol_mask$partition0$ & 64; if (bit__4187__auto__ || G__5358.cljs$core$ISeq$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._rest.call(null, coll); } else { var s = cljs.core.seq.call(null, coll); if (s) { return cljs.core._rest.call(null, s); } else { return cljs.core.List.EMPTY; } } } else { return cljs.core.List.EMPTY; } }; cljs.core.next = function next(coll) { if (coll == null) { return null; } else { if (function() { var G__5360 = coll; if (G__5360) { var bit__4187__auto__ = G__5360.cljs$lang$protocol_mask$partition0$ & 128; if (bit__4187__auto__ || G__5360.cljs$core$INext$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._next.call(null, coll); } else { return cljs.core.seq.call(null, cljs.core.rest.call(null, coll)); } } }; cljs.core._EQ_ = function() { var _EQ_ = null; var _EQ___1 = function(x) { return true; }; var _EQ___2 = function(x, y) { if (x == null) { return y == null; } else { return x === y || cljs.core._equiv.call(null, x, y); } }; var _EQ___3 = function() { var G__5361__delegate = function(x, y, more) { while (true) { if (_EQ_.call(null, x, y)) { if (cljs.core.next.call(null, more)) { var G__5362 = y; var G__5363 = cljs.core.first.call(null, more); var G__5364 = cljs.core.next.call(null, more); x = G__5362; y = G__5363; more = G__5364; continue; } else { return _EQ_.call(null, y, cljs.core.first.call(null, more)); } } else { return false; } break; } }; var G__5361 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5361__delegate.call(this, x, y, more); }; G__5361.cljs$lang$maxFixedArity = 2; G__5361.cljs$lang$applyTo = function(arglist__5365) { var x = cljs.core.first(arglist__5365); arglist__5365 = cljs.core.next(arglist__5365); var y = cljs.core.first(arglist__5365); var more = cljs.core.rest(arglist__5365); return G__5361__delegate(x, y, more); }; G__5361.cljs$core$IFn$_invoke$arity$variadic = G__5361__delegate; return G__5361; }(); _EQ_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return _EQ___1.call(this, x); case 2: return _EQ___2.call(this, x, y); default: return _EQ___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _EQ_.cljs$lang$maxFixedArity = 2; _EQ_.cljs$lang$applyTo = _EQ___3.cljs$lang$applyTo; _EQ_.cljs$core$IFn$_invoke$arity$1 = _EQ___1; _EQ_.cljs$core$IFn$_invoke$arity$2 = _EQ___2; _EQ_.cljs$core$IFn$_invoke$arity$variadic = _EQ___3.cljs$core$IFn$_invoke$arity$variadic; return _EQ_; }(); cljs.core.mix_collection_hash = function mix_collection_hash(hash_basis, count) { var h1 = cljs.core.m3_seed; var k1 = cljs.core.m3_mix_K1.call(null, hash_basis); var h1__$1 = cljs.core.m3_mix_H1.call(null, h1, k1); return cljs.core.m3_fmix.call(null, h1__$1, count); }; cljs.core.hash_ordered_coll = function hash_ordered_coll(coll) { var n = 0; var hash_code = 1; var coll__$1 = cljs.core.seq.call(null, coll); while (true) { if (!(coll__$1 == null)) { var G__5366 = n + 1; var G__5367 = cljs.core.imul.call(null, 31, hash_code) + cljs.core.hash.call(null, cljs.core.first.call(null, coll__$1)) | 0; var G__5368 = cljs.core.next.call(null, coll__$1); n = G__5366; hash_code = G__5367; coll__$1 = G__5368; continue; } else { return cljs.core.mix_collection_hash.call(null, hash_code, n); } break; } }; cljs.core.hash_unordered_coll = function hash_unordered_coll(coll) { var n = 0; var hash_code = 0; var coll__$1 = cljs.core.seq.call(null, coll); while (true) { if (!(coll__$1 == null)) { var G__5369 = n + 1; var G__5370 = hash_code + cljs.core.hash.call(null, cljs.core.first.call(null, coll__$1)) | 0; var G__5371 = cljs.core.next.call(null, coll__$1); n = G__5369; hash_code = G__5370; coll__$1 = G__5371; continue; } else { return cljs.core.mix_collection_hash.call(null, hash_code, n); } break; } }; cljs.core.ICounted["null"] = true; cljs.core._count["null"] = function(_) { return 0; }; Date.prototype.cljs$core$IEquiv$ = true; Date.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(o, other) { var o__$1 = this; return other instanceof Date && o__$1.toString() === other.toString(); }; cljs.core.IEquiv["number"] = true; cljs.core._equiv["number"] = function(x, o) { return x === o; }; cljs.core.IMeta["function"] = true; cljs.core._meta["function"] = function(_) { return null; }; cljs.core.Fn["function"] = true; cljs.core.IHash["_"] = true; cljs.core._hash["_"] = function(o) { return goog.getUid(o); }; cljs.core.inc = function inc(x) { return x + 1; }; cljs.core.Reduced = function(val) { this.val = val; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32768; }; cljs.core.Reduced.cljs$lang$type = true; cljs.core.Reduced.cljs$lang$ctorStr = "cljs.core/Reduced"; cljs.core.Reduced.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Reduced"); }; cljs.core.Reduced.prototype.cljs$core$IDeref$_deref$arity$1 = function(o) { var self__ = this; var o__$1 = this; return self__.val; }; cljs.core.__GT_Reduced = function __GT_Reduced(val) { return new cljs.core.Reduced(val); }; cljs.core.reduced = function reduced(x) { return new cljs.core.Reduced(x); }; cljs.core.reduced_QMARK_ = function reduced_QMARK_(r) { return r instanceof cljs.core.Reduced; }; cljs.core.ci_reduce = function() { var ci_reduce = null; var ci_reduce__2 = function(cicoll, f) { var cnt = cljs.core._count.call(null, cicoll); if (cnt === 0) { return f.call(null); } else { var val = cljs.core._nth.call(null, cicoll, 0); var n = 1; while (true) { if (n < cnt) { var nval = f.call(null, val, cljs.core._nth.call(null, cicoll, n)); if (cljs.core.reduced_QMARK_.call(null, nval)) { return cljs.core.deref.call(null, nval); } else { var G__5372 = nval; var G__5373 = n + 1; val = G__5372; n = G__5373; continue; } } else { return val; } break; } } }; var ci_reduce__3 = function(cicoll, f, val) { var cnt = cljs.core._count.call(null, cicoll); var val__$1 = val; var n = 0; while (true) { if (n < cnt) { var nval = f.call(null, val__$1, cljs.core._nth.call(null, cicoll, n)); if (cljs.core.reduced_QMARK_.call(null, nval)) { return cljs.core.deref.call(null, nval); } else { var G__5374 = nval; var G__5375 = n + 1; val__$1 = G__5374; n = G__5375; continue; } } else { return val__$1; } break; } }; var ci_reduce__4 = function(cicoll, f, val, idx) { var cnt = cljs.core._count.call(null, cicoll); var val__$1 = val; var n = idx; while (true) { if (n < cnt) { var nval = f.call(null, val__$1, cljs.core._nth.call(null, cicoll, n)); if (cljs.core.reduced_QMARK_.call(null, nval)) { return cljs.core.deref.call(null, nval); } else { var G__5376 = nval; var G__5377 = n + 1; val__$1 = G__5376; n = G__5377; continue; } } else { return val__$1; } break; } }; ci_reduce = function(cicoll, f, val, idx) { switch(arguments.length) { case 2: return ci_reduce__2.call(this, cicoll, f); case 3: return ci_reduce__3.call(this, cicoll, f, val); case 4: return ci_reduce__4.call(this, cicoll, f, val, idx); } throw new Error("Invalid arity: " + arguments.length); }; ci_reduce.cljs$core$IFn$_invoke$arity$2 = ci_reduce__2; ci_reduce.cljs$core$IFn$_invoke$arity$3 = ci_reduce__3; ci_reduce.cljs$core$IFn$_invoke$arity$4 = ci_reduce__4; return ci_reduce; }(); cljs.core.array_reduce = function() { var array_reduce = null; var array_reduce__2 = function(arr, f) { var cnt = arr.length; if (arr.length === 0) { return f.call(null); } else { var val = arr[0]; var n = 1; while (true) { if (n < cnt) { var nval = f.call(null, val, arr[n]); if (cljs.core.reduced_QMARK_.call(null, nval)) { return cljs.core.deref.call(null, nval); } else { var G__5378 = nval; var G__5379 = n + 1; val = G__5378; n = G__5379; continue; } } else { return val; } break; } } }; var array_reduce__3 = function(arr, f, val) { var cnt = arr.length; var val__$1 = val; var n = 0; while (true) { if (n < cnt) { var nval = f.call(null, val__$1, arr[n]); if (cljs.core.reduced_QMARK_.call(null, nval)) { return cljs.core.deref.call(null, nval); } else { var G__5380 = nval; var G__5381 = n + 1; val__$1 = G__5380; n = G__5381; continue; } } else { return val__$1; } break; } }; var array_reduce__4 = function(arr, f, val, idx) { var cnt = arr.length; var val__$1 = val; var n = idx; while (true) { if (n < cnt) { var nval = f.call(null, val__$1, arr[n]); if (cljs.core.reduced_QMARK_.call(null, nval)) { return cljs.core.deref.call(null, nval); } else { var G__5382 = nval; var G__5383 = n + 1; val__$1 = G__5382; n = G__5383; continue; } } else { return val__$1; } break; } }; array_reduce = function(arr, f, val, idx) { switch(arguments.length) { case 2: return array_reduce__2.call(this, arr, f); case 3: return array_reduce__3.call(this, arr, f, val); case 4: return array_reduce__4.call(this, arr, f, val, idx); } throw new Error("Invalid arity: " + arguments.length); }; array_reduce.cljs$core$IFn$_invoke$arity$2 = array_reduce__2; array_reduce.cljs$core$IFn$_invoke$arity$3 = array_reduce__3; array_reduce.cljs$core$IFn$_invoke$arity$4 = array_reduce__4; return array_reduce; }(); cljs.core.counted_QMARK_ = function counted_QMARK_(x) { var G__5385 = x; if (G__5385) { var bit__4194__auto__ = G__5385.cljs$lang$protocol_mask$partition0$ & 2; if (bit__4194__auto__ || G__5385.cljs$core$ICounted$) { return true; } else { if (!G__5385.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ICounted, G__5385); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ICounted, G__5385); } }; cljs.core.indexed_QMARK_ = function indexed_QMARK_(x) { var G__5387 = x; if (G__5387) { var bit__4194__auto__ = G__5387.cljs$lang$protocol_mask$partition0$ & 16; if (bit__4194__auto__ || G__5387.cljs$core$IIndexed$) { return true; } else { if (!G__5387.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IIndexed, G__5387); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IIndexed, G__5387); } }; cljs.core.IndexedSeq = function(arr, i) { this.arr = arr; this.i = i; this.cljs$lang$protocol_mask$partition0$ = 166199550; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.IndexedSeq.cljs$lang$type = true; cljs.core.IndexedSeq.cljs$lang$ctorStr = "cljs.core/IndexedSeq"; cljs.core.IndexedSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/IndexedSeq"); }; cljs.core.IndexedSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.IndexedSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.IndexedSeq.prototype.cljs$core$IIndexed$_nth$arity$2 = function(coll, n) { var self__ = this; var coll__$1 = this; var i__$1 = n + self__.i; if (i__$1 < self__.arr.length) { return self__.arr[i__$1]; } else { return null; } }; cljs.core.IndexedSeq.prototype.cljs$core$IIndexed$_nth$arity$3 = function(coll, n, not_found) { var self__ = this; var coll__$1 = this; var i__$1 = n + self__.i; if (i__$1 < self__.arr.length) { return self__.arr[i__$1]; } else { return not_found; } }; cljs.core.IndexedSeq.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.IndexedSeq(self__.arr, self__.i); }; cljs.core.IndexedSeq.prototype.cljs$core$INext$_next$arity$1 = function(_) { var self__ = this; var ___$1 = this; if (self__.i + 1 < self__.arr.length) { return new cljs.core.IndexedSeq(self__.arr, self__.i + 1); } else { return null; } }; cljs.core.IndexedSeq.prototype.cljs$core$ICounted$_count$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.arr.length - self__.i; }; cljs.core.IndexedSeq.prototype.cljs$core$IReversible$_rseq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var c = cljs.core._count.call(null, coll__$1); if (c > 0) { return new cljs.core.RSeq(coll__$1, c - 1, null); } else { return null; } }; cljs.core.IndexedSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.hash_ordered_coll.call(null, coll__$1); }; cljs.core.IndexedSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.IndexedSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.List.EMPTY; }; cljs.core.IndexedSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.array_reduce.call(null, self__.arr, f, self__.arr[self__.i], self__.i + 1); }; cljs.core.IndexedSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.array_reduce.call(null, self__.arr, f, start, self__.i); }; cljs.core.IndexedSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.arr[self__.i]; }; cljs.core.IndexedSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(_) { var self__ = this; var ___$1 = this; if (self__.i + 1 < self__.arr.length) { return new cljs.core.IndexedSeq(self__.arr, self__.i + 1); } else { return cljs.core.List.EMPTY; } }; cljs.core.IndexedSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return this$__$1; }; cljs.core.IndexedSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_IndexedSeq = function __GT_IndexedSeq(arr, i) { return new cljs.core.IndexedSeq(arr, i); }; cljs.core.prim_seq = function() { var prim_seq = null; var prim_seq__1 = function(prim) { return prim_seq.call(null, prim, 0); }; var prim_seq__2 = function(prim, i) { if (i < prim.length) { return new cljs.core.IndexedSeq(prim, i); } else { return null; } }; prim_seq = function(prim, i) { switch(arguments.length) { case 1: return prim_seq__1.call(this, prim); case 2: return prim_seq__2.call(this, prim, i); } throw new Error("Invalid arity: " + arguments.length); }; prim_seq.cljs$core$IFn$_invoke$arity$1 = prim_seq__1; prim_seq.cljs$core$IFn$_invoke$arity$2 = prim_seq__2; return prim_seq; }(); cljs.core.array_seq = function() { var array_seq = null; var array_seq__1 = function(array) { return cljs.core.prim_seq.call(null, array, 0); }; var array_seq__2 = function(array, i) { return cljs.core.prim_seq.call(null, array, i); }; array_seq = function(array, i) { switch(arguments.length) { case 1: return array_seq__1.call(this, array); case 2: return array_seq__2.call(this, array, i); } throw new Error("Invalid arity: " + arguments.length); }; array_seq.cljs$core$IFn$_invoke$arity$1 = array_seq__1; array_seq.cljs$core$IFn$_invoke$arity$2 = array_seq__2; return array_seq; }(); cljs.core.RSeq = function(ci, i, meta) { this.ci = ci; this.i = i; this.meta = meta; this.cljs$lang$protocol_mask$partition0$ = 32374990; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.RSeq.cljs$lang$type = true; cljs.core.RSeq.cljs$lang$ctorStr = "cljs.core/RSeq"; cljs.core.RSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/RSeq"); }; cljs.core.RSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.RSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.RSeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.RSeq.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.RSeq(self__.ci, self__.i, self__.meta); }; cljs.core.RSeq.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.i > 0) { return new cljs.core.RSeq(self__.ci, self__.i - 1, null); } else { return null; } }; cljs.core.RSeq.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.i + 1; }; cljs.core.RSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.hash_ordered_coll.call(null, coll__$1); }; cljs.core.RSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.RSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.RSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(col, f) { var self__ = this; var col__$1 = this; return cljs.core.seq_reduce.call(null, f, col__$1); }; cljs.core.RSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(col, f, start) { var self__ = this; var col__$1 = this; return cljs.core.seq_reduce.call(null, f, start, col__$1); }; cljs.core.RSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._nth.call(null, self__.ci, self__.i); }; cljs.core.RSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.i > 0) { return new cljs.core.RSeq(self__.ci, self__.i - 1, null); } else { return cljs.core.List.EMPTY; } }; cljs.core.RSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.RSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, new_meta) { var self__ = this; var coll__$1 = this; return new cljs.core.RSeq(self__.ci, self__.i, new_meta); }; cljs.core.RSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_RSeq = function __GT_RSeq(ci, i, meta) { return new cljs.core.RSeq(ci, i, meta); }; cljs.core.second = function second(coll) { return cljs.core.first.call(null, cljs.core.next.call(null, coll)); }; cljs.core.ffirst = function ffirst(coll) { return cljs.core.first.call(null, cljs.core.first.call(null, coll)); }; cljs.core.nfirst = function nfirst(coll) { return cljs.core.next.call(null, cljs.core.first.call(null, coll)); }; cljs.core.fnext = function fnext(coll) { return cljs.core.first.call(null, cljs.core.next.call(null, coll)); }; cljs.core.nnext = function nnext(coll) { return cljs.core.next.call(null, cljs.core.next.call(null, coll)); }; cljs.core.last = function last(s) { while (true) { var sn = cljs.core.next.call(null, s); if (!(sn == null)) { var G__5388 = sn; s = G__5388; continue; } else { return cljs.core.first.call(null, s); } break; } }; cljs.core.IEquiv["_"] = true; cljs.core._equiv["_"] = function(x, o) { return x === o; }; cljs.core.conj = function() { var conj = null; var conj__2 = function(coll, x) { if (!(coll == null)) { return cljs.core._conj.call(null, coll, x); } else { return cljs.core._conj.call(null, cljs.core.List.EMPTY, x); } }; var conj__3 = function() { var G__5389__delegate = function(coll, x, xs) { while (true) { if (cljs.core.truth_(xs)) { var G__5390 = conj.call(null, coll, x); var G__5391 = cljs.core.first.call(null, xs); var G__5392 = cljs.core.next.call(null, xs); coll = G__5390; x = G__5391; xs = G__5392; continue; } else { return conj.call(null, coll, x); } break; } }; var G__5389 = function(coll, x, var_args) { var xs = null; if (arguments.length > 2) { xs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5389__delegate.call(this, coll, x, xs); }; G__5389.cljs$lang$maxFixedArity = 2; G__5389.cljs$lang$applyTo = function(arglist__5393) { var coll = cljs.core.first(arglist__5393); arglist__5393 = cljs.core.next(arglist__5393); var x = cljs.core.first(arglist__5393); var xs = cljs.core.rest(arglist__5393); return G__5389__delegate(coll, x, xs); }; G__5389.cljs$core$IFn$_invoke$arity$variadic = G__5389__delegate; return G__5389; }(); conj = function(coll, x, var_args) { var xs = var_args; switch(arguments.length) { case 2: return conj__2.call(this, coll, x); default: return conj__3.cljs$core$IFn$_invoke$arity$variadic(coll, x, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; conj.cljs$lang$maxFixedArity = 2; conj.cljs$lang$applyTo = conj__3.cljs$lang$applyTo; conj.cljs$core$IFn$_invoke$arity$2 = conj__2; conj.cljs$core$IFn$_invoke$arity$variadic = conj__3.cljs$core$IFn$_invoke$arity$variadic; return conj; }(); cljs.core.empty = function empty(coll) { if (coll == null) { return null; } else { return cljs.core._empty.call(null, coll); } }; cljs.core.accumulating_seq_count = function accumulating_seq_count(coll) { var s = cljs.core.seq.call(null, coll); var acc = 0; while (true) { if (cljs.core.counted_QMARK_.call(null, s)) { return acc + cljs.core._count.call(null, s); } else { var G__5394 = cljs.core.next.call(null, s); var G__5395 = acc + 1; s = G__5394; acc = G__5395; continue; } break; } }; cljs.core.count = function count(coll) { if (!(coll == null)) { if (function() { var G__5397 = coll; if (G__5397) { var bit__4187__auto__ = G__5397.cljs$lang$protocol_mask$partition0$ & 2; if (bit__4187__auto__ || G__5397.cljs$core$ICounted$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._count.call(null, coll); } else { if (coll instanceof Array) { return coll.length; } else { if (typeof coll === "string") { return coll.length; } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ICounted, coll)) { return cljs.core._count.call(null, coll); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.accumulating_seq_count.call(null, coll); } else { return null; } } } } } } else { return 0; } }; cljs.core.linear_traversal_nth = function() { var linear_traversal_nth = null; var linear_traversal_nth__2 = function(coll, n) { while (true) { if (coll == null) { throw new Error("Index out of bounds"); } else { if (n === 0) { if (cljs.core.seq.call(null, coll)) { return cljs.core.first.call(null, coll); } else { throw new Error("Index out of bounds"); } } else { if (cljs.core.indexed_QMARK_.call(null, coll)) { return cljs.core._nth.call(null, coll, n); } else { if (cljs.core.seq.call(null, coll)) { var G__5398 = cljs.core.next.call(null, coll); var G__5399 = n - 1; coll = G__5398; n = G__5399; continue; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("Index out of bounds"); } else { return null; } } } } } break; } }; var linear_traversal_nth__3 = function(coll, n, not_found) { while (true) { if (coll == null) { return not_found; } else { if (n === 0) { if (cljs.core.seq.call(null, coll)) { return cljs.core.first.call(null, coll); } else { return not_found; } } else { if (cljs.core.indexed_QMARK_.call(null, coll)) { return cljs.core._nth.call(null, coll, n, not_found); } else { if (cljs.core.seq.call(null, coll)) { var G__5400 = cljs.core.next.call(null, coll); var G__5401 = n - 1; var G__5402 = not_found; coll = G__5400; n = G__5401; not_found = G__5402; continue; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } } } break; } }; linear_traversal_nth = function(coll, n, not_found) { switch(arguments.length) { case 2: return linear_traversal_nth__2.call(this, coll, n); case 3: return linear_traversal_nth__3.call(this, coll, n, not_found); } throw new Error("Invalid arity: " + arguments.length); }; linear_traversal_nth.cljs$core$IFn$_invoke$arity$2 = linear_traversal_nth__2; linear_traversal_nth.cljs$core$IFn$_invoke$arity$3 = linear_traversal_nth__3; return linear_traversal_nth; }(); cljs.core.nth = function() { var nth = null; var nth__2 = function(coll, n) { if (!(typeof n === "number")) { throw new Error("index argument to nth must be a number"); } else { if (coll == null) { return coll; } else { if (function() { var G__5407 = coll; if (G__5407) { var bit__4187__auto__ = G__5407.cljs$lang$protocol_mask$partition0$ & 16; if (bit__4187__auto__ || G__5407.cljs$core$IIndexed$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._nth.call(null, coll, n); } else { if (coll instanceof Array) { if (n < coll.length) { return coll[n]; } else { return null; } } else { if (typeof coll === "string") { if (n < coll.length) { return coll[n]; } else { return null; } } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IIndexed, coll)) { return cljs.core._nth.call(null, coll, n); } else { if (function() { var G__5408 = coll; if (G__5408) { var bit__4194__auto__ = G__5408.cljs$lang$protocol_mask$partition0$ & 64; if (bit__4194__auto__ || G__5408.cljs$core$ISeq$) { return true; } else { if (!G__5408.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeq, G__5408); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeq, G__5408); } }()) { return cljs.core.linear_traversal_nth.call(null, coll, n); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("nth not supported on this type " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type__GT_str.call(null, cljs.core.type.call(null, coll)))); } else { return null; } } } } } } } } }; var nth__3 = function(coll, n, not_found) { if (!(typeof n === "number")) { throw new Error("index argument to nth must be a number."); } else { if (coll == null) { return not_found; } else { if (function() { var G__5409 = coll; if (G__5409) { var bit__4187__auto__ = G__5409.cljs$lang$protocol_mask$partition0$ & 16; if (bit__4187__auto__ || G__5409.cljs$core$IIndexed$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._nth.call(null, coll, n, not_found); } else { if (coll instanceof Array) { if (n < coll.length) { return coll[n]; } else { return not_found; } } else { if (typeof coll === "string") { if (n < coll.length) { return coll[n]; } else { return not_found; } } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IIndexed, coll)) { return cljs.core._nth.call(null, coll, n); } else { if (function() { var G__5410 = coll; if (G__5410) { var bit__4194__auto__ = G__5410.cljs$lang$protocol_mask$partition0$ & 64; if (bit__4194__auto__ || G__5410.cljs$core$ISeq$) { return true; } else { if (!G__5410.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeq, G__5410); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeq, G__5410); } }()) { return cljs.core.linear_traversal_nth.call(null, coll, n, not_found); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("nth not supported on this type " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type__GT_str.call(null, cljs.core.type.call(null, coll)))); } else { return null; } } } } } } } } }; nth = function(coll, n, not_found) { switch(arguments.length) { case 2: return nth__2.call(this, coll, n); case 3: return nth__3.call(this, coll, n, not_found); } throw new Error("Invalid arity: " + arguments.length); }; nth.cljs$core$IFn$_invoke$arity$2 = nth__2; nth.cljs$core$IFn$_invoke$arity$3 = nth__3; return nth; }(); cljs.core.get = function() { var get = null; var get__2 = function(o, k) { if (o == null) { return null; } else { if (function() { var G__5413 = o; if (G__5413) { var bit__4187__auto__ = G__5413.cljs$lang$protocol_mask$partition0$ & 256; if (bit__4187__auto__ || G__5413.cljs$core$ILookup$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._lookup.call(null, o, k); } else { if (o instanceof Array) { if (k < o.length) { return o[k]; } else { return null; } } else { if (typeof o === "string") { if (k < o.length) { return o[k]; } else { return null; } } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ILookup, o)) { return cljs.core._lookup.call(null, o, k); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return null; } else { return null; } } } } } } }; var get__3 = function(o, k, not_found) { if (!(o == null)) { if (function() { var G__5414 = o; if (G__5414) { var bit__4187__auto__ = G__5414.cljs$lang$protocol_mask$partition0$ & 256; if (bit__4187__auto__ || G__5414.cljs$core$ILookup$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._lookup.call(null, o, k, not_found); } else { if (o instanceof Array) { if (k < o.length) { return o[k]; } else { return not_found; } } else { if (typeof o === "string") { if (k < o.length) { return o[k]; } else { return not_found; } } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ILookup, o)) { return cljs.core._lookup.call(null, o, k, not_found); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } } } } else { return not_found; } }; get = function(o, k, not_found) { switch(arguments.length) { case 2: return get__2.call(this, o, k); case 3: return get__3.call(this, o, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; get.cljs$core$IFn$_invoke$arity$2 = get__2; get.cljs$core$IFn$_invoke$arity$3 = get__3; return get; }(); cljs.core.assoc = function() { var assoc = null; var assoc__3 = function(coll, k, v) { if (!(coll == null)) { return cljs.core._assoc.call(null, coll, k, v); } else { return cljs.core.PersistentHashMap.fromArrays.call(null, [k], [v]); } }; var assoc__4 = function() { var G__5415__delegate = function(coll, k, v, kvs) { while (true) { var ret = assoc.call(null, coll, k, v); if (cljs.core.truth_(kvs)) { var G__5416 = ret; var G__5417 = cljs.core.first.call(null, kvs); var G__5418 = cljs.core.second.call(null, kvs); var G__5419 = cljs.core.nnext.call(null, kvs); coll = G__5416; k = G__5417; v = G__5418; kvs = G__5419; continue; } else { return ret; } break; } }; var G__5415 = function(coll, k, v, var_args) { var kvs = null; if (arguments.length > 3) { kvs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5415__delegate.call(this, coll, k, v, kvs); }; G__5415.cljs$lang$maxFixedArity = 3; G__5415.cljs$lang$applyTo = function(arglist__5420) { var coll = cljs.core.first(arglist__5420); arglist__5420 = cljs.core.next(arglist__5420); var k = cljs.core.first(arglist__5420); arglist__5420 = cljs.core.next(arglist__5420); var v = cljs.core.first(arglist__5420); var kvs = cljs.core.rest(arglist__5420); return G__5415__delegate(coll, k, v, kvs); }; G__5415.cljs$core$IFn$_invoke$arity$variadic = G__5415__delegate; return G__5415; }(); assoc = function(coll, k, v, var_args) { var kvs = var_args; switch(arguments.length) { case 3: return assoc__3.call(this, coll, k, v); default: return assoc__4.cljs$core$IFn$_invoke$arity$variadic(coll, k, v, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; assoc.cljs$lang$maxFixedArity = 3; assoc.cljs$lang$applyTo = assoc__4.cljs$lang$applyTo; assoc.cljs$core$IFn$_invoke$arity$3 = assoc__3; assoc.cljs$core$IFn$_invoke$arity$variadic = assoc__4.cljs$core$IFn$_invoke$arity$variadic; return assoc; }(); cljs.core.dissoc = function() { var dissoc = null; var dissoc__1 = function(coll) { return coll; }; var dissoc__2 = function(coll, k) { if (coll == null) { return null; } else { return cljs.core._dissoc.call(null, coll, k); } }; var dissoc__3 = function() { var G__5421__delegate = function(coll, k, ks) { while (true) { if (coll == null) { return null; } else { var ret = dissoc.call(null, coll, k); if (cljs.core.truth_(ks)) { var G__5422 = ret; var G__5423 = cljs.core.first.call(null, ks); var G__5424 = cljs.core.next.call(null, ks); coll = G__5422; k = G__5423; ks = G__5424; continue; } else { return ret; } } break; } }; var G__5421 = function(coll, k, var_args) { var ks = null; if (arguments.length > 2) { ks = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5421__delegate.call(this, coll, k, ks); }; G__5421.cljs$lang$maxFixedArity = 2; G__5421.cljs$lang$applyTo = function(arglist__5425) { var coll = cljs.core.first(arglist__5425); arglist__5425 = cljs.core.next(arglist__5425); var k = cljs.core.first(arglist__5425); var ks = cljs.core.rest(arglist__5425); return G__5421__delegate(coll, k, ks); }; G__5421.cljs$core$IFn$_invoke$arity$variadic = G__5421__delegate; return G__5421; }(); dissoc = function(coll, k, var_args) { var ks = var_args; switch(arguments.length) { case 1: return dissoc__1.call(this, coll); case 2: return dissoc__2.call(this, coll, k); default: return dissoc__3.cljs$core$IFn$_invoke$arity$variadic(coll, k, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; dissoc.cljs$lang$maxFixedArity = 2; dissoc.cljs$lang$applyTo = dissoc__3.cljs$lang$applyTo; dissoc.cljs$core$IFn$_invoke$arity$1 = dissoc__1; dissoc.cljs$core$IFn$_invoke$arity$2 = dissoc__2; dissoc.cljs$core$IFn$_invoke$arity$variadic = dissoc__3.cljs$core$IFn$_invoke$arity$variadic; return dissoc; }(); cljs.core.fn_QMARK_ = function fn_QMARK_(f) { var or__3544__auto__ = goog.isFunction(f); if (or__3544__auto__) { return or__3544__auto__; } else { var G__5429 = f; if (G__5429) { var bit__4194__auto__ = null; if (cljs.core.truth_(function() { var or__3544__auto____$1 = bit__4194__auto__; if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { return G__5429.cljs$core$Fn$; } }())) { return true; } else { if (!G__5429.cljs$lang$protocol_mask$partition$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.Fn, G__5429); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.Fn, G__5429); } } }; cljs.core.MetaFn = function(afn, meta) { this.afn = afn; this.meta = meta; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 393217; }; cljs.core.MetaFn.cljs$lang$type = true; cljs.core.MetaFn.cljs$lang$ctorStr = "cljs.core/MetaFn"; cljs.core.MetaFn.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/MetaFn"); }; cljs.core.MetaFn.prototype.call = function() { var G__5431 = null; var G__5431__1 = function(self__) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null); }; var G__5431__2 = function(self__, a) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a); }; var G__5431__3 = function(self__, a, b) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b); }; var G__5431__4 = function(self__, a, b, c) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c); }; var G__5431__5 = function(self__, a, b, c, d) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d); }; var G__5431__6 = function(self__, a, b, c, d, e) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e); }; var G__5431__7 = function(self__, a, b, c, d, e, f) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f); }; var G__5431__8 = function(self__, a, b, c, d, e, f, g) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g); }; var G__5431__9 = function(self__, a, b, c, d, e, f, g, h) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h); }; var G__5431__10 = function(self__, a, b, c, d, e, f, g, h, i) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i); }; var G__5431__11 = function(self__, a, b, c, d, e, f, g, h, i, j) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j); }; var G__5431__12 = function(self__, a, b, c, d, e, f, g, h, i, j, k) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k); }; var G__5431__13 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l); }; var G__5431__14 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m); }; var G__5431__15 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n); }; var G__5431__16 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); }; var G__5431__17 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); }; var G__5431__18 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); }; var G__5431__19 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); }; var G__5431__20 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); }; var G__5431__21 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) { var self__ = this; var self____$1 = this; var _ = self____$1; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); }; var G__5431__22 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest) { var self__ = this; var self____$1 = this; var _ = self____$1; return cljs.core.apply.call(null, self__.afn, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); }; G__5431 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest) { switch(arguments.length) { case 1: return G__5431__1.call(this, self__); case 2: return G__5431__2.call(this, self__, a); case 3: return G__5431__3.call(this, self__, a, b); case 4: return G__5431__4.call(this, self__, a, b, c); case 5: return G__5431__5.call(this, self__, a, b, c, d); case 6: return G__5431__6.call(this, self__, a, b, c, d, e); case 7: return G__5431__7.call(this, self__, a, b, c, d, e, f); case 8: return G__5431__8.call(this, self__, a, b, c, d, e, f, g); case 9: return G__5431__9.call(this, self__, a, b, c, d, e, f, g, h); case 10: return G__5431__10.call(this, self__, a, b, c, d, e, f, g, h, i); case 11: return G__5431__11.call(this, self__, a, b, c, d, e, f, g, h, i, j); case 12: return G__5431__12.call(this, self__, a, b, c, d, e, f, g, h, i, j, k); case 13: return G__5431__13.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l); case 14: return G__5431__14.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m); case 15: return G__5431__15.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n); case 16: return G__5431__16.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); case 17: return G__5431__17.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); case 18: return G__5431__18.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); case 19: return G__5431__19.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); case 20: return G__5431__20.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); case 21: return G__5431__21.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); case 22: return G__5431__22.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); } throw new Error("Invalid arity: " + arguments.length); }; return G__5431; }(); cljs.core.MetaFn.prototype.apply = function(self__, args5430) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5430))); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$0 = function() { var self__ = this; var _ = this; return self__.afn.call(null); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$1 = function(a) { var self__ = this; var _ = this; return self__.afn.call(null, a); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$2 = function(a, b) { var self__ = this; var _ = this; return self__.afn.call(null, a, b); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$3 = function(a, b, c) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$4 = function(a, b, c, d) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$5 = function(a, b, c, d, e) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$6 = function(a, b, c, d, e, f) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$7 = function(a, b, c, d, e, f, g) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$8 = function(a, b, c, d, e, f, g, h) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$9 = function(a, b, c, d, e, f, g, h, i) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$10 = function(a, b, c, d, e, f, g, h, i, j) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$11 = function(a, b, c, d, e, f, g, h, i, j, k) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$12 = function(a, b, c, d, e, f, g, h, i, j, k, l) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$13 = function(a, b, c, d, e, f, g, h, i, j, k, l, m) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$14 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$15 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$16 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$17 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$18 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$19 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$20 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) { var self__ = this; var _ = this; return self__.afn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); }; cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$21 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest) { var self__ = this; var _ = this; return cljs.core.apply.call(null, self__.afn, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); }; cljs.core.MetaFn.prototype.cljs$core$Fn$ = true; cljs.core.MetaFn.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(_, new_meta) { var self__ = this; var ___$1 = this; return new cljs.core.MetaFn(self__.afn, new_meta); }; cljs.core.MetaFn.prototype.cljs$core$IMeta$_meta$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.meta; }; cljs.core.__GT_MetaFn = function __GT_MetaFn(afn, meta) { return new cljs.core.MetaFn(afn, meta); }; cljs.core.with_meta = function with_meta(o, meta) { if (cljs.core.fn_QMARK_.call(null, o) && !function() { var G__5435 = o; if (G__5435) { var bit__4194__auto__ = G__5435.cljs$lang$protocol_mask$partition0$ & 262144; if (bit__4194__auto__ || G__5435.cljs$core$IWithMeta$) { return true; } else { if (!G__5435.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IWithMeta, G__5435); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IWithMeta, G__5435); } }()) { return new cljs.core.MetaFn(o, meta); } else { if (o == null) { return null; } else { return cljs.core._with_meta.call(null, o, meta); } } }; cljs.core.meta = function meta(o) { if (function() { var and__3532__auto__ = !(o == null); if (and__3532__auto__) { var G__5439 = o; if (G__5439) { var bit__4194__auto__ = G__5439.cljs$lang$protocol_mask$partition0$ & 131072; if (bit__4194__auto__ || G__5439.cljs$core$IMeta$) { return true; } else { if (!G__5439.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMeta, G__5439); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMeta, G__5439); } } else { return and__3532__auto__; } }()) { return cljs.core._meta.call(null, o); } else { return null; } }; cljs.core.peek = function peek(coll) { if (coll == null) { return null; } else { return cljs.core._peek.call(null, coll); } }; cljs.core.pop = function pop(coll) { if (coll == null) { return null; } else { return cljs.core._pop.call(null, coll); } }; cljs.core.disj = function() { var disj = null; var disj__1 = function(coll) { return coll; }; var disj__2 = function(coll, k) { if (coll == null) { return null; } else { return cljs.core._disjoin.call(null, coll, k); } }; var disj__3 = function() { var G__5440__delegate = function(coll, k, ks) { while (true) { if (coll == null) { return null; } else { var ret = disj.call(null, coll, k); if (cljs.core.truth_(ks)) { var G__5441 = ret; var G__5442 = cljs.core.first.call(null, ks); var G__5443 = cljs.core.next.call(null, ks); coll = G__5441; k = G__5442; ks = G__5443; continue; } else { return ret; } } break; } }; var G__5440 = function(coll, k, var_args) { var ks = null; if (arguments.length > 2) { ks = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5440__delegate.call(this, coll, k, ks); }; G__5440.cljs$lang$maxFixedArity = 2; G__5440.cljs$lang$applyTo = function(arglist__5444) { var coll = cljs.core.first(arglist__5444); arglist__5444 = cljs.core.next(arglist__5444); var k = cljs.core.first(arglist__5444); var ks = cljs.core.rest(arglist__5444); return G__5440__delegate(coll, k, ks); }; G__5440.cljs$core$IFn$_invoke$arity$variadic = G__5440__delegate; return G__5440; }(); disj = function(coll, k, var_args) { var ks = var_args; switch(arguments.length) { case 1: return disj__1.call(this, coll); case 2: return disj__2.call(this, coll, k); default: return disj__3.cljs$core$IFn$_invoke$arity$variadic(coll, k, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; disj.cljs$lang$maxFixedArity = 2; disj.cljs$lang$applyTo = disj__3.cljs$lang$applyTo; disj.cljs$core$IFn$_invoke$arity$1 = disj__1; disj.cljs$core$IFn$_invoke$arity$2 = disj__2; disj.cljs$core$IFn$_invoke$arity$variadic = disj__3.cljs$core$IFn$_invoke$arity$variadic; return disj; }(); cljs.core.empty_QMARK_ = function empty_QMARK_(coll) { return coll == null || cljs.core.not.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.coll_QMARK_ = function coll_QMARK_(x) { if (x == null) { return false; } else { var G__5446 = x; if (G__5446) { var bit__4194__auto__ = G__5446.cljs$lang$protocol_mask$partition0$ & 8; if (bit__4194__auto__ || G__5446.cljs$core$ICollection$) { return true; } else { if (!G__5446.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ICollection, G__5446); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ICollection, G__5446); } } }; cljs.core.set_QMARK_ = function set_QMARK_(x) { if (x == null) { return false; } else { var G__5448 = x; if (G__5448) { var bit__4194__auto__ = G__5448.cljs$lang$protocol_mask$partition0$ & 4096; if (bit__4194__auto__ || G__5448.cljs$core$ISet$) { return true; } else { if (!G__5448.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISet, G__5448); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISet, G__5448); } } }; cljs.core.associative_QMARK_ = function associative_QMARK_(x) { var G__5450 = x; if (G__5450) { var bit__4194__auto__ = G__5450.cljs$lang$protocol_mask$partition0$ & 512; if (bit__4194__auto__ || G__5450.cljs$core$IAssociative$) { return true; } else { if (!G__5450.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IAssociative, G__5450); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IAssociative, G__5450); } }; cljs.core.sequential_QMARK_ = function sequential_QMARK_(x) { var G__5452 = x; if (G__5452) { var bit__4194__auto__ = G__5452.cljs$lang$protocol_mask$partition0$ & 16777216; if (bit__4194__auto__ || G__5452.cljs$core$ISequential$) { return true; } else { if (!G__5452.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISequential, G__5452); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISequential, G__5452); } }; cljs.core.sorted_QMARK_ = function sorted_QMARK_(x) { var G__5454 = x; if (G__5454) { var bit__4194__auto__ = G__5454.cljs$lang$protocol_mask$partition0$ & 268435456; if (bit__4194__auto__ || G__5454.cljs$core$ISorted$) { return true; } else { if (!G__5454.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISorted, G__5454); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISorted, G__5454); } }; cljs.core.reduceable_QMARK_ = function reduceable_QMARK_(x) { var G__5456 = x; if (G__5456) { var bit__4194__auto__ = G__5456.cljs$lang$protocol_mask$partition0$ & 524288; if (bit__4194__auto__ || G__5456.cljs$core$IReduce$) { return true; } else { if (!G__5456.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IReduce, G__5456); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IReduce, G__5456); } }; cljs.core.map_QMARK_ = function map_QMARK_(x) { if (x == null) { return false; } else { var G__5458 = x; if (G__5458) { var bit__4194__auto__ = G__5458.cljs$lang$protocol_mask$partition0$ & 1024; if (bit__4194__auto__ || G__5458.cljs$core$IMap$) { return true; } else { if (!G__5458.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMap, G__5458); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMap, G__5458); } } }; cljs.core.vector_QMARK_ = function vector_QMARK_(x) { var G__5460 = x; if (G__5460) { var bit__4194__auto__ = G__5460.cljs$lang$protocol_mask$partition0$ & 16384; if (bit__4194__auto__ || G__5460.cljs$core$IVector$) { return true; } else { if (!G__5460.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IVector, G__5460); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IVector, G__5460); } }; cljs.core.chunked_seq_QMARK_ = function chunked_seq_QMARK_(x) { var G__5462 = x; if (G__5462) { var bit__4187__auto__ = G__5462.cljs$lang$protocol_mask$partition1$ & 512; if (bit__4187__auto__ || G__5462.cljs$core$IChunkedSeq$) { return true; } else { return false; } } else { return false; } }; cljs.core.js_obj = function() { var js_obj = null; var js_obj__0 = function() { var obj5466 = {}; return obj5466; }; var js_obj__1 = function() { var G__5467__delegate = function(keyvals) { return cljs.core.apply.call(null, goog.object.create, keyvals); }; var G__5467 = function(var_args) { var keyvals = null; if (arguments.length > 0) { keyvals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5467__delegate.call(this, keyvals); }; G__5467.cljs$lang$maxFixedArity = 0; G__5467.cljs$lang$applyTo = function(arglist__5468) { var keyvals = cljs.core.seq(arglist__5468); return G__5467__delegate(keyvals); }; G__5467.cljs$core$IFn$_invoke$arity$variadic = G__5467__delegate; return G__5467; }(); js_obj = function(var_args) { var keyvals = var_args; switch(arguments.length) { case 0: return js_obj__0.call(this); default: return js_obj__1.cljs$core$IFn$_invoke$arity$variadic(cljs.core.array_seq(arguments, 0)); } throw new Error("Invalid arity: " + arguments.length); }; js_obj.cljs$lang$maxFixedArity = 0; js_obj.cljs$lang$applyTo = js_obj__1.cljs$lang$applyTo; js_obj.cljs$core$IFn$_invoke$arity$0 = js_obj__0; js_obj.cljs$core$IFn$_invoke$arity$variadic = js_obj__1.cljs$core$IFn$_invoke$arity$variadic; return js_obj; }(); cljs.core.js_keys = function js_keys(obj) { var keys = []; goog.object.forEach(obj, function(keys) { return function(val, key, obj__$1) { return keys.push(key); }; }(keys)); return keys; }; cljs.core.js_delete = function js_delete(obj, key) { return delete obj[key]; }; cljs.core.array_copy = function array_copy(from, i, to, j, len) { var i__$1 = i; var j__$1 = j; var len__$1 = len; while (true) { if (len__$1 === 0) { return to; } else { to[j__$1] = from[i__$1]; var G__5469 = i__$1 + 1; var G__5470 = j__$1 + 1; var G__5471 = len__$1 - 1; i__$1 = G__5469; j__$1 = G__5470; len__$1 = G__5471; continue; } break; } }; cljs.core.array_copy_downward = function array_copy_downward(from, i, to, j, len) { var i__$1 = i + (len - 1); var j__$1 = j + (len - 1); var len__$1 = len; while (true) { if (len__$1 === 0) { return to; } else { to[j__$1] = from[i__$1]; var G__5472 = i__$1 - 1; var G__5473 = j__$1 - 1; var G__5474 = len__$1 - 1; i__$1 = G__5472; j__$1 = G__5473; len__$1 = G__5474; continue; } break; } }; cljs.core.lookup_sentinel = function() { var obj5476 = {}; return obj5476; }(); cljs.core.false_QMARK_ = function false_QMARK_(x) { return x === false; }; cljs.core.true_QMARK_ = function true_QMARK_(x) { return x === true; }; cljs.core.undefined_QMARK_ = function undefined_QMARK_(x) { return void 0 === x; }; cljs.core.seq_QMARK_ = function seq_QMARK_(s) { if (s == null) { return false; } else { var G__5478 = s; if (G__5478) { var bit__4194__auto__ = G__5478.cljs$lang$protocol_mask$partition0$ & 64; if (bit__4194__auto__ || G__5478.cljs$core$ISeq$) { return true; } else { if (!G__5478.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeq, G__5478); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeq, G__5478); } } }; cljs.core.seqable_QMARK_ = function seqable_QMARK_(s) { var G__5480 = s; if (G__5480) { var bit__4194__auto__ = G__5480.cljs$lang$protocol_mask$partition0$ & 8388608; if (bit__4194__auto__ || G__5480.cljs$core$ISeqable$) { return true; } else { if (!G__5480.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeqable, G__5480); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ISeqable, G__5480); } }; cljs.core.boolean$ = function boolean$(x) { if (cljs.core.truth_(x)) { return true; } else { return false; } }; cljs.core.ifn_QMARK_ = function ifn_QMARK_(f) { var or__3544__auto__ = cljs.core.fn_QMARK_.call(null, f); if (or__3544__auto__) { return or__3544__auto__; } else { var G__5484 = f; if (G__5484) { var bit__4194__auto__ = G__5484.cljs$lang$protocol_mask$partition0$ & 1; if (bit__4194__auto__ || G__5484.cljs$core$IFn$) { return true; } else { if (!G__5484.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IFn, G__5484); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IFn, G__5484); } } }; cljs.core.integer_QMARK_ = function integer_QMARK_(n) { return typeof n === "number" && !isNaN(n) && !(n === Infinity) && parseFloat(n) === parseInt(n, 10); }; cljs.core.contains_QMARK_ = function contains_QMARK_(coll, v) { if (cljs.core.get.call(null, coll, v, cljs.core.lookup_sentinel) === cljs.core.lookup_sentinel) { return false; } else { return true; } }; cljs.core.find = function find(coll, k) { if (!(coll == null) && cljs.core.associative_QMARK_.call(null, coll) && cljs.core.contains_QMARK_.call(null, coll, k)) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k, cljs.core.get.call(null, coll, k)], null); } else { return null; } }; cljs.core.distinct_QMARK_ = function() { var distinct_QMARK_ = null; var distinct_QMARK___1 = function(x) { return true; }; var distinct_QMARK___2 = function(x, y) { return!cljs.core._EQ_.call(null, x, y); }; var distinct_QMARK___3 = function() { var G__5485__delegate = function(x, y, more) { if (!cljs.core._EQ_.call(null, x, y)) { var s = cljs.core.PersistentHashSet.fromArray([x, y], true); var xs = more; while (true) { var x__$1 = cljs.core.first.call(null, xs); var etc = cljs.core.next.call(null, xs); if (cljs.core.truth_(xs)) { if (cljs.core.contains_QMARK_.call(null, s, x__$1)) { return false; } else { var G__5486 = cljs.core.conj.call(null, s, x__$1); var G__5487 = etc; s = G__5486; xs = G__5487; continue; } } else { return true; } break; } } else { return false; } }; var G__5485 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5485__delegate.call(this, x, y, more); }; G__5485.cljs$lang$maxFixedArity = 2; G__5485.cljs$lang$applyTo = function(arglist__5488) { var x = cljs.core.first(arglist__5488); arglist__5488 = cljs.core.next(arglist__5488); var y = cljs.core.first(arglist__5488); var more = cljs.core.rest(arglist__5488); return G__5485__delegate(x, y, more); }; G__5485.cljs$core$IFn$_invoke$arity$variadic = G__5485__delegate; return G__5485; }(); distinct_QMARK_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return distinct_QMARK___1.call(this, x); case 2: return distinct_QMARK___2.call(this, x, y); default: return distinct_QMARK___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; distinct_QMARK_.cljs$lang$maxFixedArity = 2; distinct_QMARK_.cljs$lang$applyTo = distinct_QMARK___3.cljs$lang$applyTo; distinct_QMARK_.cljs$core$IFn$_invoke$arity$1 = distinct_QMARK___1; distinct_QMARK_.cljs$core$IFn$_invoke$arity$2 = distinct_QMARK___2; distinct_QMARK_.cljs$core$IFn$_invoke$arity$variadic = distinct_QMARK___3.cljs$core$IFn$_invoke$arity$variadic; return distinct_QMARK_; }(); cljs.core.sequence = function sequence(coll) { if (cljs.core.seq_QMARK_.call(null, coll)) { return coll; } else { var or__3544__auto__ = cljs.core.seq.call(null, coll); if (or__3544__auto__) { return or__3544__auto__; } else { return cljs.core.List.EMPTY; } } }; cljs.core.compare = function compare(x, y) { if (x === y) { return 0; } else { if (x == null) { return-1; } else { if (y == null) { return 1; } else { if (cljs.core.type.call(null, x) === cljs.core.type.call(null, y)) { if (function() { var G__5490 = x; if (G__5490) { var bit__4187__auto__ = G__5490.cljs$lang$protocol_mask$partition1$ & 2048; if (bit__4187__auto__ || G__5490.cljs$core$IComparable$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._compare.call(null, x, y); } else { return goog.array.defaultCompare(x, y); } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("compare on non-nil objects of different types"); } else { return null; } } } } } }; cljs.core.compare_indexed = function() { var compare_indexed = null; var compare_indexed__2 = function(xs, ys) { var xl = cljs.core.count.call(null, xs); var yl = cljs.core.count.call(null, ys); if (xl < yl) { return-1; } else { if (xl > yl) { return 1; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return compare_indexed.call(null, xs, ys, xl, 0); } else { return null; } } } }; var compare_indexed__4 = function(xs, ys, len, n) { while (true) { var d = cljs.core.compare.call(null, cljs.core.nth.call(null, xs, n), cljs.core.nth.call(null, ys, n)); if (d === 0 && n + 1 < len) { var G__5491 = xs; var G__5492 = ys; var G__5493 = len; var G__5494 = n + 1; xs = G__5491; ys = G__5492; len = G__5493; n = G__5494; continue; } else { return d; } break; } }; compare_indexed = function(xs, ys, len, n) { switch(arguments.length) { case 2: return compare_indexed__2.call(this, xs, ys); case 4: return compare_indexed__4.call(this, xs, ys, len, n); } throw new Error("Invalid arity: " + arguments.length); }; compare_indexed.cljs$core$IFn$_invoke$arity$2 = compare_indexed__2; compare_indexed.cljs$core$IFn$_invoke$arity$4 = compare_indexed__4; return compare_indexed; }(); cljs.core.fn__GT_comparator = function fn__GT_comparator(f) { if (cljs.core._EQ_.call(null, f, cljs.core.compare)) { return cljs.core.compare; } else { return function(x, y) { var r = f.call(null, x, y); if (typeof r === "number") { return r; } else { if (cljs.core.truth_(r)) { return-1; } else { if (cljs.core.truth_(f.call(null, y, x))) { return 1; } else { return 0; } } } }; } }; cljs.core.sort = function() { var sort = null; var sort__1 = function(coll) { return sort.call(null, cljs.core.compare, coll); }; var sort__2 = function(comp, coll) { if (cljs.core.seq.call(null, coll)) { var a = cljs.core.to_array.call(null, coll); goog.array.stableSort(a, cljs.core.fn__GT_comparator.call(null, comp)); return cljs.core.seq.call(null, a); } else { return cljs.core.List.EMPTY; } }; sort = function(comp, coll) { switch(arguments.length) { case 1: return sort__1.call(this, comp); case 2: return sort__2.call(this, comp, coll); } throw new Error("Invalid arity: " + arguments.length); }; sort.cljs$core$IFn$_invoke$arity$1 = sort__1; sort.cljs$core$IFn$_invoke$arity$2 = sort__2; return sort; }(); cljs.core.sort_by = function() { var sort_by = null; var sort_by__2 = function(keyfn, coll) { return sort_by.call(null, keyfn, cljs.core.compare, coll); }; var sort_by__3 = function(keyfn, comp, coll) { return cljs.core.sort.call(null, function(x, y) { return cljs.core.fn__GT_comparator.call(null, comp).call(null, keyfn.call(null, x), keyfn.call(null, y)); }, coll); }; sort_by = function(keyfn, comp, coll) { switch(arguments.length) { case 2: return sort_by__2.call(this, keyfn, comp); case 3: return sort_by__3.call(this, keyfn, comp, coll); } throw new Error("Invalid arity: " + arguments.length); }; sort_by.cljs$core$IFn$_invoke$arity$2 = sort_by__2; sort_by.cljs$core$IFn$_invoke$arity$3 = sort_by__3; return sort_by; }(); cljs.core.seq_reduce = function() { var seq_reduce = null; var seq_reduce__2 = function(f, coll) { var temp__4124__auto__ = cljs.core.seq.call(null, coll); if (temp__4124__auto__) { var s = temp__4124__auto__; return cljs.core.reduce.call(null, f, cljs.core.first.call(null, s), cljs.core.next.call(null, s)); } else { return f.call(null); } }; var seq_reduce__3 = function(f, val, coll) { var val__$1 = val; var coll__$1 = cljs.core.seq.call(null, coll); while (true) { if (coll__$1) { var nval = f.call(null, val__$1, cljs.core.first.call(null, coll__$1)); if (cljs.core.reduced_QMARK_.call(null, nval)) { return cljs.core.deref.call(null, nval); } else { var G__5495 = nval; var G__5496 = cljs.core.next.call(null, coll__$1); val__$1 = G__5495; coll__$1 = G__5496; continue; } } else { return val__$1; } break; } }; seq_reduce = function(f, val, coll) { switch(arguments.length) { case 2: return seq_reduce__2.call(this, f, val); case 3: return seq_reduce__3.call(this, f, val, coll); } throw new Error("Invalid arity: " + arguments.length); }; seq_reduce.cljs$core$IFn$_invoke$arity$2 = seq_reduce__2; seq_reduce.cljs$core$IFn$_invoke$arity$3 = seq_reduce__3; return seq_reduce; }(); cljs.core.shuffle = function shuffle(coll) { var a = cljs.core.to_array.call(null, coll); goog.array.shuffle(a); return cljs.core.vec.call(null, a); }; cljs.core.reduce = function() { var reduce = null; var reduce__2 = function(f, coll) { if (function() { var G__5499 = coll; if (G__5499) { var bit__4187__auto__ = G__5499.cljs$lang$protocol_mask$partition0$ & 524288; if (bit__4187__auto__ || G__5499.cljs$core$IReduce$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._reduce.call(null, coll, f); } else { if (coll instanceof Array) { return cljs.core.array_reduce.call(null, coll, f); } else { if (typeof coll === "string") { return cljs.core.array_reduce.call(null, coll, f); } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IReduce, coll)) { return cljs.core._reduce.call(null, coll, f); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.seq_reduce.call(null, f, coll); } else { return null; } } } } } }; var reduce__3 = function(f, val, coll) { if (function() { var G__5500 = coll; if (G__5500) { var bit__4187__auto__ = G__5500.cljs$lang$protocol_mask$partition0$ & 524288; if (bit__4187__auto__ || G__5500.cljs$core$IReduce$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._reduce.call(null, coll, f, val); } else { if (coll instanceof Array) { return cljs.core.array_reduce.call(null, coll, f, val); } else { if (typeof coll === "string") { return cljs.core.array_reduce.call(null, coll, f, val); } else { if (cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IReduce, coll)) { return cljs.core._reduce.call(null, coll, f, val); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.seq_reduce.call(null, f, val, coll); } else { return null; } } } } } }; reduce = function(f, val, coll) { switch(arguments.length) { case 2: return reduce__2.call(this, f, val); case 3: return reduce__3.call(this, f, val, coll); } throw new Error("Invalid arity: " + arguments.length); }; reduce.cljs$core$IFn$_invoke$arity$2 = reduce__2; reduce.cljs$core$IFn$_invoke$arity$3 = reduce__3; return reduce; }(); cljs.core.reduce_kv = function reduce_kv(f, init, coll) { if (!(coll == null)) { return cljs.core._kv_reduce.call(null, coll, f, init); } else { return init; } }; cljs.core._PLUS_ = function() { var _PLUS_ = null; var _PLUS___0 = function() { return 0; }; var _PLUS___1 = function(x) { return x; }; var _PLUS___2 = function(x, y) { return x + y; }; var _PLUS___3 = function() { var G__5501__delegate = function(x, y, more) { return cljs.core.reduce.call(null, _PLUS_, x + y, more); }; var G__5501 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5501__delegate.call(this, x, y, more); }; G__5501.cljs$lang$maxFixedArity = 2; G__5501.cljs$lang$applyTo = function(arglist__5502) { var x = cljs.core.first(arglist__5502); arglist__5502 = cljs.core.next(arglist__5502); var y = cljs.core.first(arglist__5502); var more = cljs.core.rest(arglist__5502); return G__5501__delegate(x, y, more); }; G__5501.cljs$core$IFn$_invoke$arity$variadic = G__5501__delegate; return G__5501; }(); _PLUS_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 0: return _PLUS___0.call(this); case 1: return _PLUS___1.call(this, x); case 2: return _PLUS___2.call(this, x, y); default: return _PLUS___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _PLUS_.cljs$lang$maxFixedArity = 2; _PLUS_.cljs$lang$applyTo = _PLUS___3.cljs$lang$applyTo; _PLUS_.cljs$core$IFn$_invoke$arity$0 = _PLUS___0; _PLUS_.cljs$core$IFn$_invoke$arity$1 = _PLUS___1; _PLUS_.cljs$core$IFn$_invoke$arity$2 = _PLUS___2; _PLUS_.cljs$core$IFn$_invoke$arity$variadic = _PLUS___3.cljs$core$IFn$_invoke$arity$variadic; return _PLUS_; }(); cljs.core._ = function() { var _ = null; var ___1 = function(x) { return-x; }; var ___2 = function(x, y) { return x - y; }; var ___3 = function() { var G__5503__delegate = function(x, y, more) { return cljs.core.reduce.call(null, _, x - y, more); }; var G__5503 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5503__delegate.call(this, x, y, more); }; G__5503.cljs$lang$maxFixedArity = 2; G__5503.cljs$lang$applyTo = function(arglist__5504) { var x = cljs.core.first(arglist__5504); arglist__5504 = cljs.core.next(arglist__5504); var y = cljs.core.first(arglist__5504); var more = cljs.core.rest(arglist__5504); return G__5503__delegate(x, y, more); }; G__5503.cljs$core$IFn$_invoke$arity$variadic = G__5503__delegate; return G__5503; }(); _ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return ___1.call(this, x); case 2: return ___2.call(this, x, y); default: return ___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _.cljs$lang$maxFixedArity = 2; _.cljs$lang$applyTo = ___3.cljs$lang$applyTo; _.cljs$core$IFn$_invoke$arity$1 = ___1; _.cljs$core$IFn$_invoke$arity$2 = ___2; _.cljs$core$IFn$_invoke$arity$variadic = ___3.cljs$core$IFn$_invoke$arity$variadic; return _; }(); cljs.core._STAR_ = function() { var _STAR_ = null; var _STAR___0 = function() { return 1; }; var _STAR___1 = function(x) { return x; }; var _STAR___2 = function(x, y) { return x * y; }; var _STAR___3 = function() { var G__5505__delegate = function(x, y, more) { return cljs.core.reduce.call(null, _STAR_, x * y, more); }; var G__5505 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5505__delegate.call(this, x, y, more); }; G__5505.cljs$lang$maxFixedArity = 2; G__5505.cljs$lang$applyTo = function(arglist__5506) { var x = cljs.core.first(arglist__5506); arglist__5506 = cljs.core.next(arglist__5506); var y = cljs.core.first(arglist__5506); var more = cljs.core.rest(arglist__5506); return G__5505__delegate(x, y, more); }; G__5505.cljs$core$IFn$_invoke$arity$variadic = G__5505__delegate; return G__5505; }(); _STAR_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 0: return _STAR___0.call(this); case 1: return _STAR___1.call(this, x); case 2: return _STAR___2.call(this, x, y); default: return _STAR___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _STAR_.cljs$lang$maxFixedArity = 2; _STAR_.cljs$lang$applyTo = _STAR___3.cljs$lang$applyTo; _STAR_.cljs$core$IFn$_invoke$arity$0 = _STAR___0; _STAR_.cljs$core$IFn$_invoke$arity$1 = _STAR___1; _STAR_.cljs$core$IFn$_invoke$arity$2 = _STAR___2; _STAR_.cljs$core$IFn$_invoke$arity$variadic = _STAR___3.cljs$core$IFn$_invoke$arity$variadic; return _STAR_; }(); cljs.core._SLASH_ = function() { var _SLASH_ = null; var _SLASH___1 = function(x) { return _SLASH_.call(null, 1, x); }; var _SLASH___2 = function(x, y) { return x / y; }; var _SLASH___3 = function() { var G__5507__delegate = function(x, y, more) { return cljs.core.reduce.call(null, _SLASH_, _SLASH_.call(null, x, y), more); }; var G__5507 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5507__delegate.call(this, x, y, more); }; G__5507.cljs$lang$maxFixedArity = 2; G__5507.cljs$lang$applyTo = function(arglist__5508) { var x = cljs.core.first(arglist__5508); arglist__5508 = cljs.core.next(arglist__5508); var y = cljs.core.first(arglist__5508); var more = cljs.core.rest(arglist__5508); return G__5507__delegate(x, y, more); }; G__5507.cljs$core$IFn$_invoke$arity$variadic = G__5507__delegate; return G__5507; }(); _SLASH_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return _SLASH___1.call(this, x); case 2: return _SLASH___2.call(this, x, y); default: return _SLASH___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _SLASH_.cljs$lang$maxFixedArity = 2; _SLASH_.cljs$lang$applyTo = _SLASH___3.cljs$lang$applyTo; _SLASH_.cljs$core$IFn$_invoke$arity$1 = _SLASH___1; _SLASH_.cljs$core$IFn$_invoke$arity$2 = _SLASH___2; _SLASH_.cljs$core$IFn$_invoke$arity$variadic = _SLASH___3.cljs$core$IFn$_invoke$arity$variadic; return _SLASH_; }(); cljs.core._LT_ = function() { var _LT_ = null; var _LT___1 = function(x) { return true; }; var _LT___2 = function(x, y) { return x < y; }; var _LT___3 = function() { var G__5509__delegate = function(x, y, more) { while (true) { if (x < y) { if (cljs.core.next.call(null, more)) { var G__5510 = y; var G__5511 = cljs.core.first.call(null, more); var G__5512 = cljs.core.next.call(null, more); x = G__5510; y = G__5511; more = G__5512; continue; } else { return y < cljs.core.first.call(null, more); } } else { return false; } break; } }; var G__5509 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5509__delegate.call(this, x, y, more); }; G__5509.cljs$lang$maxFixedArity = 2; G__5509.cljs$lang$applyTo = function(arglist__5513) { var x = cljs.core.first(arglist__5513); arglist__5513 = cljs.core.next(arglist__5513); var y = cljs.core.first(arglist__5513); var more = cljs.core.rest(arglist__5513); return G__5509__delegate(x, y, more); }; G__5509.cljs$core$IFn$_invoke$arity$variadic = G__5509__delegate; return G__5509; }(); _LT_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return _LT___1.call(this, x); case 2: return _LT___2.call(this, x, y); default: return _LT___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _LT_.cljs$lang$maxFixedArity = 2; _LT_.cljs$lang$applyTo = _LT___3.cljs$lang$applyTo; _LT_.cljs$core$IFn$_invoke$arity$1 = _LT___1; _LT_.cljs$core$IFn$_invoke$arity$2 = _LT___2; _LT_.cljs$core$IFn$_invoke$arity$variadic = _LT___3.cljs$core$IFn$_invoke$arity$variadic; return _LT_; }(); cljs.core._LT__EQ_ = function() { var _LT__EQ_ = null; var _LT__EQ___1 = function(x) { return true; }; var _LT__EQ___2 = function(x, y) { return x <= y; }; var _LT__EQ___3 = function() { var G__5514__delegate = function(x, y, more) { while (true) { if (x <= y) { if (cljs.core.next.call(null, more)) { var G__5515 = y; var G__5516 = cljs.core.first.call(null, more); var G__5517 = cljs.core.next.call(null, more); x = G__5515; y = G__5516; more = G__5517; continue; } else { return y <= cljs.core.first.call(null, more); } } else { return false; } break; } }; var G__5514 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5514__delegate.call(this, x, y, more); }; G__5514.cljs$lang$maxFixedArity = 2; G__5514.cljs$lang$applyTo = function(arglist__5518) { var x = cljs.core.first(arglist__5518); arglist__5518 = cljs.core.next(arglist__5518); var y = cljs.core.first(arglist__5518); var more = cljs.core.rest(arglist__5518); return G__5514__delegate(x, y, more); }; G__5514.cljs$core$IFn$_invoke$arity$variadic = G__5514__delegate; return G__5514; }(); _LT__EQ_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return _LT__EQ___1.call(this, x); case 2: return _LT__EQ___2.call(this, x, y); default: return _LT__EQ___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _LT__EQ_.cljs$lang$maxFixedArity = 2; _LT__EQ_.cljs$lang$applyTo = _LT__EQ___3.cljs$lang$applyTo; _LT__EQ_.cljs$core$IFn$_invoke$arity$1 = _LT__EQ___1; _LT__EQ_.cljs$core$IFn$_invoke$arity$2 = _LT__EQ___2; _LT__EQ_.cljs$core$IFn$_invoke$arity$variadic = _LT__EQ___3.cljs$core$IFn$_invoke$arity$variadic; return _LT__EQ_; }(); cljs.core._GT_ = function() { var _GT_ = null; var _GT___1 = function(x) { return true; }; var _GT___2 = function(x, y) { return x > y; }; var _GT___3 = function() { var G__5519__delegate = function(x, y, more) { while (true) { if (x > y) { if (cljs.core.next.call(null, more)) { var G__5520 = y; var G__5521 = cljs.core.first.call(null, more); var G__5522 = cljs.core.next.call(null, more); x = G__5520; y = G__5521; more = G__5522; continue; } else { return y > cljs.core.first.call(null, more); } } else { return false; } break; } }; var G__5519 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5519__delegate.call(this, x, y, more); }; G__5519.cljs$lang$maxFixedArity = 2; G__5519.cljs$lang$applyTo = function(arglist__5523) { var x = cljs.core.first(arglist__5523); arglist__5523 = cljs.core.next(arglist__5523); var y = cljs.core.first(arglist__5523); var more = cljs.core.rest(arglist__5523); return G__5519__delegate(x, y, more); }; G__5519.cljs$core$IFn$_invoke$arity$variadic = G__5519__delegate; return G__5519; }(); _GT_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return _GT___1.call(this, x); case 2: return _GT___2.call(this, x, y); default: return _GT___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _GT_.cljs$lang$maxFixedArity = 2; _GT_.cljs$lang$applyTo = _GT___3.cljs$lang$applyTo; _GT_.cljs$core$IFn$_invoke$arity$1 = _GT___1; _GT_.cljs$core$IFn$_invoke$arity$2 = _GT___2; _GT_.cljs$core$IFn$_invoke$arity$variadic = _GT___3.cljs$core$IFn$_invoke$arity$variadic; return _GT_; }(); cljs.core._GT__EQ_ = function() { var _GT__EQ_ = null; var _GT__EQ___1 = function(x) { return true; }; var _GT__EQ___2 = function(x, y) { return x >= y; }; var _GT__EQ___3 = function() { var G__5524__delegate = function(x, y, more) { while (true) { if (x >= y) { if (cljs.core.next.call(null, more)) { var G__5525 = y; var G__5526 = cljs.core.first.call(null, more); var G__5527 = cljs.core.next.call(null, more); x = G__5525; y = G__5526; more = G__5527; continue; } else { return y >= cljs.core.first.call(null, more); } } else { return false; } break; } }; var G__5524 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5524__delegate.call(this, x, y, more); }; G__5524.cljs$lang$maxFixedArity = 2; G__5524.cljs$lang$applyTo = function(arglist__5528) { var x = cljs.core.first(arglist__5528); arglist__5528 = cljs.core.next(arglist__5528); var y = cljs.core.first(arglist__5528); var more = cljs.core.rest(arglist__5528); return G__5524__delegate(x, y, more); }; G__5524.cljs$core$IFn$_invoke$arity$variadic = G__5524__delegate; return G__5524; }(); _GT__EQ_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return _GT__EQ___1.call(this, x); case 2: return _GT__EQ___2.call(this, x, y); default: return _GT__EQ___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _GT__EQ_.cljs$lang$maxFixedArity = 2; _GT__EQ_.cljs$lang$applyTo = _GT__EQ___3.cljs$lang$applyTo; _GT__EQ_.cljs$core$IFn$_invoke$arity$1 = _GT__EQ___1; _GT__EQ_.cljs$core$IFn$_invoke$arity$2 = _GT__EQ___2; _GT__EQ_.cljs$core$IFn$_invoke$arity$variadic = _GT__EQ___3.cljs$core$IFn$_invoke$arity$variadic; return _GT__EQ_; }(); cljs.core.dec = function dec(x) { return x - 1; }; cljs.core.max = function() { var max = null; var max__1 = function(x) { return x; }; var max__2 = function(x, y) { var x__3851__auto__ = x; var y__3852__auto__ = y; return x__3851__auto__ > y__3852__auto__ ? x__3851__auto__ : y__3852__auto__; }; var max__3 = function() { var G__5529__delegate = function(x, y, more) { return cljs.core.reduce.call(null, max, function() { var x__3851__auto__ = x; var y__3852__auto__ = y; return x__3851__auto__ > y__3852__auto__ ? x__3851__auto__ : y__3852__auto__; }(), more); }; var G__5529 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5529__delegate.call(this, x, y, more); }; G__5529.cljs$lang$maxFixedArity = 2; G__5529.cljs$lang$applyTo = function(arglist__5530) { var x = cljs.core.first(arglist__5530); arglist__5530 = cljs.core.next(arglist__5530); var y = cljs.core.first(arglist__5530); var more = cljs.core.rest(arglist__5530); return G__5529__delegate(x, y, more); }; G__5529.cljs$core$IFn$_invoke$arity$variadic = G__5529__delegate; return G__5529; }(); max = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return max__1.call(this, x); case 2: return max__2.call(this, x, y); default: return max__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; max.cljs$lang$maxFixedArity = 2; max.cljs$lang$applyTo = max__3.cljs$lang$applyTo; max.cljs$core$IFn$_invoke$arity$1 = max__1; max.cljs$core$IFn$_invoke$arity$2 = max__2; max.cljs$core$IFn$_invoke$arity$variadic = max__3.cljs$core$IFn$_invoke$arity$variadic; return max; }(); cljs.core.min = function() { var min = null; var min__1 = function(x) { return x; }; var min__2 = function(x, y) { var x__3858__auto__ = x; var y__3859__auto__ = y; return x__3858__auto__ < y__3859__auto__ ? x__3858__auto__ : y__3859__auto__; }; var min__3 = function() { var G__5531__delegate = function(x, y, more) { return cljs.core.reduce.call(null, min, function() { var x__3858__auto__ = x; var y__3859__auto__ = y; return x__3858__auto__ < y__3859__auto__ ? x__3858__auto__ : y__3859__auto__; }(), more); }; var G__5531 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5531__delegate.call(this, x, y, more); }; G__5531.cljs$lang$maxFixedArity = 2; G__5531.cljs$lang$applyTo = function(arglist__5532) { var x = cljs.core.first(arglist__5532); arglist__5532 = cljs.core.next(arglist__5532); var y = cljs.core.first(arglist__5532); var more = cljs.core.rest(arglist__5532); return G__5531__delegate(x, y, more); }; G__5531.cljs$core$IFn$_invoke$arity$variadic = G__5531__delegate; return G__5531; }(); min = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return min__1.call(this, x); case 2: return min__2.call(this, x, y); default: return min__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; min.cljs$lang$maxFixedArity = 2; min.cljs$lang$applyTo = min__3.cljs$lang$applyTo; min.cljs$core$IFn$_invoke$arity$1 = min__1; min.cljs$core$IFn$_invoke$arity$2 = min__2; min.cljs$core$IFn$_invoke$arity$variadic = min__3.cljs$core$IFn$_invoke$arity$variadic; return min; }(); cljs.core.byte$ = function byte$(x) { return x; }; cljs.core.char$ = function char$(x) { if (typeof x === "number") { return String.fromCharCode(x); } else { if (typeof x === "string" && x.length === 1) { return x; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("Argument to char must be a character or number"); } else { return null; } } } }; cljs.core.short$ = function short$(x) { return x; }; cljs.core.float$ = function float$(x) { return x; }; cljs.core.double$ = function double$(x) { return x; }; cljs.core.unchecked_byte = function unchecked_byte(x) { return x; }; cljs.core.unchecked_char = function unchecked_char(x) { return x; }; cljs.core.unchecked_short = function unchecked_short(x) { return x; }; cljs.core.unchecked_float = function unchecked_float(x) { return x; }; cljs.core.unchecked_double = function unchecked_double(x) { return x; }; cljs.core.unchecked_add = function() { var unchecked_add = null; var unchecked_add__0 = function() { return 0; }; var unchecked_add__1 = function(x) { return x; }; var unchecked_add__2 = function(x, y) { return x + y; }; var unchecked_add__3 = function() { var G__5533__delegate = function(x, y, more) { return cljs.core.reduce.call(null, unchecked_add, x + y, more); }; var G__5533 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5533__delegate.call(this, x, y, more); }; G__5533.cljs$lang$maxFixedArity = 2; G__5533.cljs$lang$applyTo = function(arglist__5534) { var x = cljs.core.first(arglist__5534); arglist__5534 = cljs.core.next(arglist__5534); var y = cljs.core.first(arglist__5534); var more = cljs.core.rest(arglist__5534); return G__5533__delegate(x, y, more); }; G__5533.cljs$core$IFn$_invoke$arity$variadic = G__5533__delegate; return G__5533; }(); unchecked_add = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 0: return unchecked_add__0.call(this); case 1: return unchecked_add__1.call(this, x); case 2: return unchecked_add__2.call(this, x, y); default: return unchecked_add__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; unchecked_add.cljs$lang$maxFixedArity = 2; unchecked_add.cljs$lang$applyTo = unchecked_add__3.cljs$lang$applyTo; unchecked_add.cljs$core$IFn$_invoke$arity$0 = unchecked_add__0; unchecked_add.cljs$core$IFn$_invoke$arity$1 = unchecked_add__1; unchecked_add.cljs$core$IFn$_invoke$arity$2 = unchecked_add__2; unchecked_add.cljs$core$IFn$_invoke$arity$variadic = unchecked_add__3.cljs$core$IFn$_invoke$arity$variadic; return unchecked_add; }(); cljs.core.unchecked_add_int = function() { var unchecked_add_int = null; var unchecked_add_int__0 = function() { return 0; }; var unchecked_add_int__1 = function(x) { return x; }; var unchecked_add_int__2 = function(x, y) { return x + y; }; var unchecked_add_int__3 = function() { var G__5535__delegate = function(x, y, more) { return cljs.core.reduce.call(null, unchecked_add_int, x + y, more); }; var G__5535 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5535__delegate.call(this, x, y, more); }; G__5535.cljs$lang$maxFixedArity = 2; G__5535.cljs$lang$applyTo = function(arglist__5536) { var x = cljs.core.first(arglist__5536); arglist__5536 = cljs.core.next(arglist__5536); var y = cljs.core.first(arglist__5536); var more = cljs.core.rest(arglist__5536); return G__5535__delegate(x, y, more); }; G__5535.cljs$core$IFn$_invoke$arity$variadic = G__5535__delegate; return G__5535; }(); unchecked_add_int = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 0: return unchecked_add_int__0.call(this); case 1: return unchecked_add_int__1.call(this, x); case 2: return unchecked_add_int__2.call(this, x, y); default: return unchecked_add_int__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; unchecked_add_int.cljs$lang$maxFixedArity = 2; unchecked_add_int.cljs$lang$applyTo = unchecked_add_int__3.cljs$lang$applyTo; unchecked_add_int.cljs$core$IFn$_invoke$arity$0 = unchecked_add_int__0; unchecked_add_int.cljs$core$IFn$_invoke$arity$1 = unchecked_add_int__1; unchecked_add_int.cljs$core$IFn$_invoke$arity$2 = unchecked_add_int__2; unchecked_add_int.cljs$core$IFn$_invoke$arity$variadic = unchecked_add_int__3.cljs$core$IFn$_invoke$arity$variadic; return unchecked_add_int; }(); cljs.core.unchecked_dec = function unchecked_dec(x) { return x - 1; }; cljs.core.unchecked_dec_int = function unchecked_dec_int(x) { return x - 1; }; cljs.core.unchecked_divide_int = function() { var unchecked_divide_int = null; var unchecked_divide_int__1 = function(x) { return unchecked_divide_int.call(null, 1, x); }; var unchecked_divide_int__2 = function(x, y) { return x / y; }; var unchecked_divide_int__3 = function() { var G__5537__delegate = function(x, y, more) { return cljs.core.reduce.call(null, unchecked_divide_int, unchecked_divide_int.call(null, x, y), more); }; var G__5537 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5537__delegate.call(this, x, y, more); }; G__5537.cljs$lang$maxFixedArity = 2; G__5537.cljs$lang$applyTo = function(arglist__5538) { var x = cljs.core.first(arglist__5538); arglist__5538 = cljs.core.next(arglist__5538); var y = cljs.core.first(arglist__5538); var more = cljs.core.rest(arglist__5538); return G__5537__delegate(x, y, more); }; G__5537.cljs$core$IFn$_invoke$arity$variadic = G__5537__delegate; return G__5537; }(); unchecked_divide_int = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return unchecked_divide_int__1.call(this, x); case 2: return unchecked_divide_int__2.call(this, x, y); default: return unchecked_divide_int__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; unchecked_divide_int.cljs$lang$maxFixedArity = 2; unchecked_divide_int.cljs$lang$applyTo = unchecked_divide_int__3.cljs$lang$applyTo; unchecked_divide_int.cljs$core$IFn$_invoke$arity$1 = unchecked_divide_int__1; unchecked_divide_int.cljs$core$IFn$_invoke$arity$2 = unchecked_divide_int__2; unchecked_divide_int.cljs$core$IFn$_invoke$arity$variadic = unchecked_divide_int__3.cljs$core$IFn$_invoke$arity$variadic; return unchecked_divide_int; }(); cljs.core.unchecked_inc = function unchecked_inc(x) { return x + 1; }; cljs.core.unchecked_inc_int = function unchecked_inc_int(x) { return x + 1; }; cljs.core.unchecked_multiply = function() { var unchecked_multiply = null; var unchecked_multiply__0 = function() { return 1; }; var unchecked_multiply__1 = function(x) { return x; }; var unchecked_multiply__2 = function(x, y) { return x * y; }; var unchecked_multiply__3 = function() { var G__5539__delegate = function(x, y, more) { return cljs.core.reduce.call(null, unchecked_multiply, x * y, more); }; var G__5539 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5539__delegate.call(this, x, y, more); }; G__5539.cljs$lang$maxFixedArity = 2; G__5539.cljs$lang$applyTo = function(arglist__5540) { var x = cljs.core.first(arglist__5540); arglist__5540 = cljs.core.next(arglist__5540); var y = cljs.core.first(arglist__5540); var more = cljs.core.rest(arglist__5540); return G__5539__delegate(x, y, more); }; G__5539.cljs$core$IFn$_invoke$arity$variadic = G__5539__delegate; return G__5539; }(); unchecked_multiply = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 0: return unchecked_multiply__0.call(this); case 1: return unchecked_multiply__1.call(this, x); case 2: return unchecked_multiply__2.call(this, x, y); default: return unchecked_multiply__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; unchecked_multiply.cljs$lang$maxFixedArity = 2; unchecked_multiply.cljs$lang$applyTo = unchecked_multiply__3.cljs$lang$applyTo; unchecked_multiply.cljs$core$IFn$_invoke$arity$0 = unchecked_multiply__0; unchecked_multiply.cljs$core$IFn$_invoke$arity$1 = unchecked_multiply__1; unchecked_multiply.cljs$core$IFn$_invoke$arity$2 = unchecked_multiply__2; unchecked_multiply.cljs$core$IFn$_invoke$arity$variadic = unchecked_multiply__3.cljs$core$IFn$_invoke$arity$variadic; return unchecked_multiply; }(); cljs.core.unchecked_multiply_int = function() { var unchecked_multiply_int = null; var unchecked_multiply_int__0 = function() { return 1; }; var unchecked_multiply_int__1 = function(x) { return x; }; var unchecked_multiply_int__2 = function(x, y) { return x * y; }; var unchecked_multiply_int__3 = function() { var G__5541__delegate = function(x, y, more) { return cljs.core.reduce.call(null, unchecked_multiply_int, x * y, more); }; var G__5541 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5541__delegate.call(this, x, y, more); }; G__5541.cljs$lang$maxFixedArity = 2; G__5541.cljs$lang$applyTo = function(arglist__5542) { var x = cljs.core.first(arglist__5542); arglist__5542 = cljs.core.next(arglist__5542); var y = cljs.core.first(arglist__5542); var more = cljs.core.rest(arglist__5542); return G__5541__delegate(x, y, more); }; G__5541.cljs$core$IFn$_invoke$arity$variadic = G__5541__delegate; return G__5541; }(); unchecked_multiply_int = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 0: return unchecked_multiply_int__0.call(this); case 1: return unchecked_multiply_int__1.call(this, x); case 2: return unchecked_multiply_int__2.call(this, x, y); default: return unchecked_multiply_int__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; unchecked_multiply_int.cljs$lang$maxFixedArity = 2; unchecked_multiply_int.cljs$lang$applyTo = unchecked_multiply_int__3.cljs$lang$applyTo; unchecked_multiply_int.cljs$core$IFn$_invoke$arity$0 = unchecked_multiply_int__0; unchecked_multiply_int.cljs$core$IFn$_invoke$arity$1 = unchecked_multiply_int__1; unchecked_multiply_int.cljs$core$IFn$_invoke$arity$2 = unchecked_multiply_int__2; unchecked_multiply_int.cljs$core$IFn$_invoke$arity$variadic = unchecked_multiply_int__3.cljs$core$IFn$_invoke$arity$variadic; return unchecked_multiply_int; }(); cljs.core.unchecked_negate = function unchecked_negate(x) { return-x; }; cljs.core.unchecked_negate_int = function unchecked_negate_int(x) { return-x; }; cljs.core.unchecked_remainder_int = function unchecked_remainder_int(x, n) { return cljs.core.mod.call(null, x, n); }; cljs.core.unchecked_subtract = function() { var unchecked_subtract = null; var unchecked_subtract__1 = function(x) { return-x; }; var unchecked_subtract__2 = function(x, y) { return x - y; }; var unchecked_subtract__3 = function() { var G__5543__delegate = function(x, y, more) { return cljs.core.reduce.call(null, unchecked_subtract, x - y, more); }; var G__5543 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5543__delegate.call(this, x, y, more); }; G__5543.cljs$lang$maxFixedArity = 2; G__5543.cljs$lang$applyTo = function(arglist__5544) { var x = cljs.core.first(arglist__5544); arglist__5544 = cljs.core.next(arglist__5544); var y = cljs.core.first(arglist__5544); var more = cljs.core.rest(arglist__5544); return G__5543__delegate(x, y, more); }; G__5543.cljs$core$IFn$_invoke$arity$variadic = G__5543__delegate; return G__5543; }(); unchecked_subtract = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return unchecked_subtract__1.call(this, x); case 2: return unchecked_subtract__2.call(this, x, y); default: return unchecked_subtract__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; unchecked_subtract.cljs$lang$maxFixedArity = 2; unchecked_subtract.cljs$lang$applyTo = unchecked_subtract__3.cljs$lang$applyTo; unchecked_subtract.cljs$core$IFn$_invoke$arity$1 = unchecked_subtract__1; unchecked_subtract.cljs$core$IFn$_invoke$arity$2 = unchecked_subtract__2; unchecked_subtract.cljs$core$IFn$_invoke$arity$variadic = unchecked_subtract__3.cljs$core$IFn$_invoke$arity$variadic; return unchecked_subtract; }(); cljs.core.unchecked_subtract_int = function() { var unchecked_subtract_int = null; var unchecked_subtract_int__1 = function(x) { return-x; }; var unchecked_subtract_int__2 = function(x, y) { return x - y; }; var unchecked_subtract_int__3 = function() { var G__5545__delegate = function(x, y, more) { return cljs.core.reduce.call(null, unchecked_subtract_int, x - y, more); }; var G__5545 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5545__delegate.call(this, x, y, more); }; G__5545.cljs$lang$maxFixedArity = 2; G__5545.cljs$lang$applyTo = function(arglist__5546) { var x = cljs.core.first(arglist__5546); arglist__5546 = cljs.core.next(arglist__5546); var y = cljs.core.first(arglist__5546); var more = cljs.core.rest(arglist__5546); return G__5545__delegate(x, y, more); }; G__5545.cljs$core$IFn$_invoke$arity$variadic = G__5545__delegate; return G__5545; }(); unchecked_subtract_int = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return unchecked_subtract_int__1.call(this, x); case 2: return unchecked_subtract_int__2.call(this, x, y); default: return unchecked_subtract_int__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; unchecked_subtract_int.cljs$lang$maxFixedArity = 2; unchecked_subtract_int.cljs$lang$applyTo = unchecked_subtract_int__3.cljs$lang$applyTo; unchecked_subtract_int.cljs$core$IFn$_invoke$arity$1 = unchecked_subtract_int__1; unchecked_subtract_int.cljs$core$IFn$_invoke$arity$2 = unchecked_subtract_int__2; unchecked_subtract_int.cljs$core$IFn$_invoke$arity$variadic = unchecked_subtract_int__3.cljs$core$IFn$_invoke$arity$variadic; return unchecked_subtract_int; }(); cljs.core.fix = function fix(q) { if (q >= 0) { return Math.floor.call(null, q); } else { return Math.ceil.call(null, q); } }; cljs.core.int$ = function int$(x) { return x | 0; }; cljs.core.unchecked_int = function unchecked_int(x) { return cljs.core.fix.call(null, x); }; cljs.core.long$ = function long$(x) { return cljs.core.fix.call(null, x); }; cljs.core.unchecked_long = function unchecked_long(x) { return cljs.core.fix.call(null, x); }; cljs.core.booleans = function booleans(x) { return x; }; cljs.core.bytes = function bytes(x) { return x; }; cljs.core.chars = function chars(x) { return x; }; cljs.core.shorts = function shorts(x) { return x; }; cljs.core.ints = function ints(x) { return x; }; cljs.core.floats = function floats(x) { return x; }; cljs.core.doubles = function doubles(x) { return x; }; cljs.core.longs = function longs(x) { return x; }; cljs.core.js_mod = function js_mod(n, d) { return n % d; }; cljs.core.mod = function mod(n, d) { return(n % d + d) % d; }; cljs.core.quot = function quot(n, d) { var rem = n % d; return cljs.core.fix.call(null, (n - rem) / d); }; cljs.core.rem = function rem(n, d) { var q = cljs.core.quot.call(null, n, d); return n - d * q; }; cljs.core.rand = function() { var rand = null; var rand__0 = function() { return Math.random.call(null); }; var rand__1 = function(n) { return n * rand.call(null); }; rand = function(n) { switch(arguments.length) { case 0: return rand__0.call(this); case 1: return rand__1.call(this, n); } throw new Error("Invalid arity: " + arguments.length); }; rand.cljs$core$IFn$_invoke$arity$0 = rand__0; rand.cljs$core$IFn$_invoke$arity$1 = rand__1; return rand; }(); cljs.core.rand_int = function rand_int(n) { return cljs.core.fix.call(null, cljs.core.rand.call(null, n)); }; cljs.core.bit_xor = function bit_xor(x, y) { return x ^ y; }; cljs.core.bit_and = function bit_and(x, y) { return x & y; }; cljs.core.bit_or = function bit_or(x, y) { return x | y; }; cljs.core.bit_and_not = function bit_and_not(x, y) { return x & ~y; }; cljs.core.bit_clear = function bit_clear(x, n) { return x & ~(1 << n); }; cljs.core.bit_flip = function bit_flip(x, n) { return x ^ 1 << n; }; cljs.core.bit_not = function bit_not(x) { return~x; }; cljs.core.bit_set = function bit_set(x, n) { return x | 1 << n; }; cljs.core.bit_test = function bit_test(x, n) { return(x & 1 << n) != 0; }; cljs.core.bit_shift_left = function bit_shift_left(x, n) { return x << n; }; cljs.core.bit_shift_right = function bit_shift_right(x, n) { return x >> n; }; cljs.core.bit_shift_right_zero_fill = function bit_shift_right_zero_fill(x, n) { return x >>> n; }; cljs.core.unsigned_bit_shift_right = function unsigned_bit_shift_right(x, n) { return x >>> n; }; cljs.core.bit_count = function bit_count(v) { var v__$1 = v - (v >> 1 & 1431655765); var v__$2 = (v__$1 & 858993459) + (v__$1 >> 2 & 858993459); return(v__$2 + (v__$2 >> 4) & 252645135) * 16843009 >> 24; }; cljs.core._EQ__EQ_ = function() { var _EQ__EQ_ = null; var _EQ__EQ___1 = function(x) { return true; }; var _EQ__EQ___2 = function(x, y) { return cljs.core._equiv.call(null, x, y); }; var _EQ__EQ___3 = function() { var G__5547__delegate = function(x, y, more) { while (true) { if (_EQ__EQ_.call(null, x, y)) { if (cljs.core.next.call(null, more)) { var G__5548 = y; var G__5549 = cljs.core.first.call(null, more); var G__5550 = cljs.core.next.call(null, more); x = G__5548; y = G__5549; more = G__5550; continue; } else { return _EQ__EQ_.call(null, y, cljs.core.first.call(null, more)); } } else { return false; } break; } }; var G__5547 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5547__delegate.call(this, x, y, more); }; G__5547.cljs$lang$maxFixedArity = 2; G__5547.cljs$lang$applyTo = function(arglist__5551) { var x = cljs.core.first(arglist__5551); arglist__5551 = cljs.core.next(arglist__5551); var y = cljs.core.first(arglist__5551); var more = cljs.core.rest(arglist__5551); return G__5547__delegate(x, y, more); }; G__5547.cljs$core$IFn$_invoke$arity$variadic = G__5547__delegate; return G__5547; }(); _EQ__EQ_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return _EQ__EQ___1.call(this, x); case 2: return _EQ__EQ___2.call(this, x, y); default: return _EQ__EQ___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; _EQ__EQ_.cljs$lang$maxFixedArity = 2; _EQ__EQ_.cljs$lang$applyTo = _EQ__EQ___3.cljs$lang$applyTo; _EQ__EQ_.cljs$core$IFn$_invoke$arity$1 = _EQ__EQ___1; _EQ__EQ_.cljs$core$IFn$_invoke$arity$2 = _EQ__EQ___2; _EQ__EQ_.cljs$core$IFn$_invoke$arity$variadic = _EQ__EQ___3.cljs$core$IFn$_invoke$arity$variadic; return _EQ__EQ_; }(); cljs.core.pos_QMARK_ = function pos_QMARK_(n) { return n > 0; }; cljs.core.zero_QMARK_ = function zero_QMARK_(n) { return n === 0; }; cljs.core.neg_QMARK_ = function neg_QMARK_(x) { return x < 0; }; cljs.core.nthnext = function nthnext(coll, n) { var n__$1 = n; var xs = cljs.core.seq.call(null, coll); while (true) { if (xs && n__$1 > 0) { var G__5552 = n__$1 - 1; var G__5553 = cljs.core.next.call(null, xs); n__$1 = G__5552; xs = G__5553; continue; } else { return xs; } break; } }; cljs.core.str = function() { var str = null; var str__0 = function() { return ""; }; var str__1 = function(x) { if (x == null) { return ""; } else { return x.toString(); } }; var str__2 = function() { var G__5554__delegate = function(x, ys) { var sb = new goog.string.StringBuffer(str.call(null, x)); var more = ys; while (true) { if (cljs.core.truth_(more)) { var G__5555 = sb.append(str.call(null, cljs.core.first.call(null, more))); var G__5556 = cljs.core.next.call(null, more); sb = G__5555; more = G__5556; continue; } else { return sb.toString(); } break; } }; var G__5554 = function(x, var_args) { var ys = null; if (arguments.length > 1) { ys = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return G__5554__delegate.call(this, x, ys); }; G__5554.cljs$lang$maxFixedArity = 1; G__5554.cljs$lang$applyTo = function(arglist__5557) { var x = cljs.core.first(arglist__5557); var ys = cljs.core.rest(arglist__5557); return G__5554__delegate(x, ys); }; G__5554.cljs$core$IFn$_invoke$arity$variadic = G__5554__delegate; return G__5554; }(); str = function(x, var_args) { var ys = var_args; switch(arguments.length) { case 0: return str__0.call(this); case 1: return str__1.call(this, x); default: return str__2.cljs$core$IFn$_invoke$arity$variadic(x, cljs.core.array_seq(arguments, 1)); } throw new Error("Invalid arity: " + arguments.length); }; str.cljs$lang$maxFixedArity = 1; str.cljs$lang$applyTo = str__2.cljs$lang$applyTo; str.cljs$core$IFn$_invoke$arity$0 = str__0; str.cljs$core$IFn$_invoke$arity$1 = str__1; str.cljs$core$IFn$_invoke$arity$variadic = str__2.cljs$core$IFn$_invoke$arity$variadic; return str; }(); cljs.core.subs = function() { var subs = null; var subs__2 = function(s, start) { return s.substring(start); }; var subs__3 = function(s, start, end) { return s.substring(start, end); }; subs = function(s, start, end) { switch(arguments.length) { case 2: return subs__2.call(this, s, start); case 3: return subs__3.call(this, s, start, end); } throw new Error("Invalid arity: " + arguments.length); }; subs.cljs$core$IFn$_invoke$arity$2 = subs__2; subs.cljs$core$IFn$_invoke$arity$3 = subs__3; return subs; }(); cljs.core.equiv_sequential = function equiv_sequential(x, y) { return cljs.core.boolean$.call(null, cljs.core.sequential_QMARK_.call(null, y) ? function() { var xs = cljs.core.seq.call(null, x); var ys = cljs.core.seq.call(null, y); while (true) { if (xs == null) { return ys == null; } else { if (ys == null) { return false; } else { if (cljs.core._EQ_.call(null, cljs.core.first.call(null, xs), cljs.core.first.call(null, ys))) { var G__5558 = cljs.core.next.call(null, xs); var G__5559 = cljs.core.next.call(null, ys); xs = G__5558; ys = G__5559; continue; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return false; } else { return null; } } } } break; } }() : null); }; cljs.core.hash_coll = function hash_coll(coll) { if (cljs.core.seq.call(null, coll)) { var res = cljs.core.hash.call(null, cljs.core.first.call(null, coll)); var s = cljs.core.next.call(null, coll); while (true) { if (s == null) { return res; } else { var G__5560 = cljs.core.hash_combine.call(null, res, cljs.core.hash.call(null, cljs.core.first.call(null, s))); var G__5561 = cljs.core.next.call(null, s); res = G__5560; s = G__5561; continue; } break; } } else { return 0; } }; cljs.core.hash_imap = function hash_imap(m) { var h = 0; var s = cljs.core.seq.call(null, m); while (true) { if (s) { var e = cljs.core.first.call(null, s); var G__5562 = (h + (cljs.core.hash.call(null, cljs.core.key.call(null, e)) ^ cljs.core.hash.call(null, cljs.core.val.call(null, e)))) % 4503599627370496; var G__5563 = cljs.core.next.call(null, s); h = G__5562; s = G__5563; continue; } else { return h; } break; } }; cljs.core.hash_iset = function hash_iset(s) { var h = 0; var s__$1 = cljs.core.seq.call(null, s); while (true) { if (s__$1) { var e = cljs.core.first.call(null, s__$1); var G__5564 = (h + cljs.core.hash.call(null, e)) % 4503599627370496; var G__5565 = cljs.core.next.call(null, s__$1); h = G__5564; s__$1 = G__5565; continue; } else { return h; } break; } }; cljs.core.extend_object_BANG_ = function extend_object_BANG_(obj, fn_map) { var seq__5572_5578 = cljs.core.seq.call(null, fn_map); var chunk__5573_5579 = null; var count__5574_5580 = 0; var i__5575_5581 = 0; while (true) { if (i__5575_5581 < count__5574_5580) { var vec__5576_5582 = cljs.core._nth.call(null, chunk__5573_5579, i__5575_5581); var key_name_5583 = cljs.core.nth.call(null, vec__5576_5582, 0, null); var f_5584 = cljs.core.nth.call(null, vec__5576_5582, 1, null); var str_name_5585 = cljs.core.name.call(null, key_name_5583); obj[str_name_5585] = f_5584; var G__5586 = seq__5572_5578; var G__5587 = chunk__5573_5579; var G__5588 = count__5574_5580; var G__5589 = i__5575_5581 + 1; seq__5572_5578 = G__5586; chunk__5573_5579 = G__5587; count__5574_5580 = G__5588; i__5575_5581 = G__5589; continue; } else { var temp__4126__auto___5590 = cljs.core.seq.call(null, seq__5572_5578); if (temp__4126__auto___5590) { var seq__5572_5591__$1 = temp__4126__auto___5590; if (cljs.core.chunked_seq_QMARK_.call(null, seq__5572_5591__$1)) { var c__4300__auto___5592 = cljs.core.chunk_first.call(null, seq__5572_5591__$1); var G__5593 = cljs.core.chunk_rest.call(null, seq__5572_5591__$1); var G__5594 = c__4300__auto___5592; var G__5595 = cljs.core.count.call(null, c__4300__auto___5592); var G__5596 = 0; seq__5572_5578 = G__5593; chunk__5573_5579 = G__5594; count__5574_5580 = G__5595; i__5575_5581 = G__5596; continue; } else { var vec__5577_5597 = cljs.core.first.call(null, seq__5572_5591__$1); var key_name_5598 = cljs.core.nth.call(null, vec__5577_5597, 0, null); var f_5599 = cljs.core.nth.call(null, vec__5577_5597, 1, null); var str_name_5600 = cljs.core.name.call(null, key_name_5598); obj[str_name_5600] = f_5599; var G__5601 = cljs.core.next.call(null, seq__5572_5591__$1); var G__5602 = null; var G__5603 = 0; var G__5604 = 0; seq__5572_5578 = G__5601; chunk__5573_5579 = G__5602; count__5574_5580 = G__5603; i__5575_5581 = G__5604; continue; } } else { } } break; } return obj; }; cljs.core.List = function(meta, first, rest, count, __hash) { this.meta = meta; this.first = first; this.rest = rest; this.count = count; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 65937646; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.List.cljs$lang$type = true; cljs.core.List.cljs$lang$ctorStr = "cljs.core/List"; cljs.core.List.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/List"); }; cljs.core.List.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.List.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.List.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.List.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.List(self__.meta, self__.first, self__.rest, self__.count, self__.__hash); }; cljs.core.List.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.count === 1) { return null; } else { return self__.rest; } }; cljs.core.List.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.count; }; cljs.core.List.prototype.cljs$core$IStack$_peek$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.first; }; cljs.core.List.prototype.cljs$core$IStack$_pop$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._rest.call(null, coll__$1); }; cljs.core.List.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.List.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.List.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.List.EMPTY; }; cljs.core.List.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.List.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.List.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.first; }; cljs.core.List.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.count === 1) { return cljs.core.List.EMPTY; } else { return self__.rest; } }; cljs.core.List.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.List.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.List(meta__$1, self__.first, self__.rest, self__.count, self__.__hash); }; cljs.core.List.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return new cljs.core.List(self__.meta, o, coll__$1, self__.count + 1, null); }; cljs.core.__GT_List = function __GT_List(meta, first, rest, count, __hash) { return new cljs.core.List(meta, first, rest, count, __hash); }; cljs.core.EmptyList = function(meta) { this.meta = meta; this.cljs$lang$protocol_mask$partition0$ = 65937614; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.EmptyList.cljs$lang$type = true; cljs.core.EmptyList.cljs$lang$ctorStr = "cljs.core/EmptyList"; cljs.core.EmptyList.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/EmptyList"); }; cljs.core.EmptyList.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.EmptyList.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.EmptyList.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.EmptyList.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.EmptyList(self__.meta); }; cljs.core.EmptyList.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return null; }; cljs.core.EmptyList.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return 0; }; cljs.core.EmptyList.prototype.cljs$core$IStack$_peek$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return null; }; cljs.core.EmptyList.prototype.cljs$core$IStack$_pop$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; throw new Error("Can't pop empty list"); }; cljs.core.EmptyList.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return 0; }; cljs.core.EmptyList.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.EmptyList.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.EmptyList.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.EmptyList.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.EmptyList.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return null; }; cljs.core.EmptyList.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.List.EMPTY; }; cljs.core.EmptyList.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return null; }; cljs.core.EmptyList.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.EmptyList(meta__$1); }; cljs.core.EmptyList.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return new cljs.core.List(self__.meta, o, null, 1, null); }; cljs.core.__GT_EmptyList = function __GT_EmptyList(meta) { return new cljs.core.EmptyList(meta); }; cljs.core.List.EMPTY = new cljs.core.EmptyList(null); cljs.core.reversible_QMARK_ = function reversible_QMARK_(coll) { var G__5606 = coll; if (G__5606) { var bit__4194__auto__ = G__5606.cljs$lang$protocol_mask$partition0$ & 134217728; if (bit__4194__auto__ || G__5606.cljs$core$IReversible$) { return true; } else { if (!G__5606.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IReversible, G__5606); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IReversible, G__5606); } }; cljs.core.rseq = function rseq(coll) { return cljs.core._rseq.call(null, coll); }; cljs.core.reverse = function reverse(coll) { if (cljs.core.reversible_QMARK_.call(null, coll)) { return cljs.core.rseq.call(null, coll); } else { return cljs.core.reduce.call(null, cljs.core.conj, cljs.core.List.EMPTY, coll); } }; cljs.core.list = function() { var list__delegate = function(xs) { var arr = xs instanceof cljs.core.IndexedSeq && xs.i === 0 ? xs.arr : function() { var arr = []; var xs__$1 = xs; while (true) { if (!(xs__$1 == null)) { arr.push(cljs.core._first.call(null, xs__$1)); var G__5607 = cljs.core._next.call(null, xs__$1); xs__$1 = G__5607; continue; } else { return arr; } break; } }(); var i = arr.length; var r = cljs.core.List.EMPTY; while (true) { if (i > 0) { var G__5608 = i - 1; var G__5609 = cljs.core._conj.call(null, r, arr[i - 1]); i = G__5608; r = G__5609; continue; } else { return r; } break; } }; var list = function(var_args) { var xs = null; if (arguments.length > 0) { xs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return list__delegate.call(this, xs); }; list.cljs$lang$maxFixedArity = 0; list.cljs$lang$applyTo = function(arglist__5610) { var xs = cljs.core.seq(arglist__5610); return list__delegate(xs); }; list.cljs$core$IFn$_invoke$arity$variadic = list__delegate; return list; }(); cljs.core.Cons = function(meta, first, rest, __hash) { this.meta = meta; this.first = first; this.rest = rest; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 65929452; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.Cons.cljs$lang$type = true; cljs.core.Cons.cljs$lang$ctorStr = "cljs.core/Cons"; cljs.core.Cons.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Cons"); }; cljs.core.Cons.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.Cons.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.Cons.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.Cons.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.Cons(self__.meta, self__.first, self__.rest, self__.__hash); }; cljs.core.Cons.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.rest == null) { return null; } else { return cljs.core.seq.call(null, self__.rest); } }; cljs.core.Cons.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.Cons.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.Cons.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.Cons.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.Cons.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.Cons.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.first; }; cljs.core.Cons.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.rest == null) { return cljs.core.List.EMPTY; } else { return self__.rest; } }; cljs.core.Cons.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.Cons.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.Cons(meta__$1, self__.first, self__.rest, self__.__hash); }; cljs.core.Cons.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return new cljs.core.Cons(null, o, coll__$1, self__.__hash); }; cljs.core.__GT_Cons = function __GT_Cons(meta, first, rest, __hash) { return new cljs.core.Cons(meta, first, rest, __hash); }; cljs.core.cons = function cons(x, coll) { if (function() { var or__3544__auto__ = coll == null; if (or__3544__auto__) { return or__3544__auto__; } else { var G__5614 = coll; if (G__5614) { var bit__4187__auto__ = G__5614.cljs$lang$protocol_mask$partition0$ & 64; if (bit__4187__auto__ || G__5614.cljs$core$ISeq$) { return true; } else { return false; } } else { return false; } } }()) { return new cljs.core.Cons(null, x, coll, null); } else { return new cljs.core.Cons(null, x, cljs.core.seq.call(null, coll), null); } }; cljs.core.list_QMARK_ = function list_QMARK_(x) { var G__5616 = x; if (G__5616) { var bit__4194__auto__ = G__5616.cljs$lang$protocol_mask$partition0$ & 33554432; if (bit__4194__auto__ || G__5616.cljs$core$IList$) { return true; } else { if (!G__5616.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IList, G__5616); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IList, G__5616); } }; cljs.core.hash_keyword = function hash_keyword(k) { return cljs.core.hash_symbol.call(null, k) + 2654435769 | 0; }; cljs.core.Keyword = function(ns, name, fqn, _hash) { this.ns = ns; this.name = name; this.fqn = fqn; this._hash = _hash; this.cljs$lang$protocol_mask$partition0$ = 2153775105; this.cljs$lang$protocol_mask$partition1$ = 4096; }; cljs.core.Keyword.cljs$lang$type = true; cljs.core.Keyword.cljs$lang$ctorStr = "cljs.core/Keyword"; cljs.core.Keyword.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Keyword"); }; cljs.core.Keyword.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(o, writer, _) { var self__ = this; var o__$1 = this; return cljs.core._write.call(null, writer, ":" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.fqn)); }; cljs.core.Keyword.prototype.cljs$core$INamed$_name$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.name; }; cljs.core.Keyword.prototype.cljs$core$INamed$_namespace$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.ns; }; cljs.core.Keyword.prototype.cljs$core$IHash$_hash$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; var h__3955__auto__ = self__._hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_keyword.call(null, this$__$1); self__._hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.Keyword.prototype.call = function() { var G__5618 = null; var G__5618__2 = function(self__, coll) { var self__ = this; var self____$1 = this; var kw = self____$1; return cljs.core.get.call(null, coll, kw); }; var G__5618__3 = function(self__, coll, not_found) { var self__ = this; var self____$1 = this; var kw = self____$1; return cljs.core.get.call(null, coll, kw, not_found); }; G__5618 = function(self__, coll, not_found) { switch(arguments.length) { case 2: return G__5618__2.call(this, self__, coll); case 3: return G__5618__3.call(this, self__, coll, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5618; }(); cljs.core.Keyword.prototype.apply = function(self__, args5617) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5617))); }; cljs.core.Keyword.prototype.cljs$core$IFn$_invoke$arity$1 = function(coll) { var self__ = this; var kw = this; return cljs.core.get.call(null, coll, kw); }; cljs.core.Keyword.prototype.cljs$core$IFn$_invoke$arity$2 = function(coll, not_found) { var self__ = this; var kw = this; return cljs.core.get.call(null, coll, kw, not_found); }; cljs.core.Keyword.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(_, other) { var self__ = this; var ___$1 = this; if (other instanceof cljs.core.Keyword) { return self__.fqn === other.fqn; } else { return false; } }; cljs.core.Keyword.prototype.toString = function() { var self__ = this; var _ = this; return ":" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.fqn); }; cljs.core.Keyword.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.__GT_Keyword = function __GT_Keyword(ns, name, fqn, _hash) { return new cljs.core.Keyword(ns, name, fqn, _hash); }; cljs.core.keyword_QMARK_ = function keyword_QMARK_(x) { return x instanceof cljs.core.Keyword; }; cljs.core.keyword_identical_QMARK_ = function keyword_identical_QMARK_(x, y) { if (x === y) { return true; } else { if (x instanceof cljs.core.Keyword && y instanceof cljs.core.Keyword) { return x.fqn === y.fqn; } else { return false; } } }; cljs.core.namespace = function namespace(x) { if (function() { var G__5620 = x; if (G__5620) { var bit__4187__auto__ = G__5620.cljs$lang$protocol_mask$partition1$ & 4096; if (bit__4187__auto__ || G__5620.cljs$core$INamed$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._namespace.call(null, x); } else { throw new Error("Doesn't support namespace: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(x)); } }; cljs.core.keyword = function() { var keyword = null; var keyword__1 = function(name) { if (name instanceof cljs.core.Keyword) { return name; } else { if (name instanceof cljs.core.Symbol) { return new cljs.core.Keyword(cljs.core.namespace.call(null, name), cljs.core.name.call(null, name), name.str, null); } else { if (typeof name === "string") { var parts = name.split("/"); if (parts.length === 2) { return new cljs.core.Keyword(parts[0], parts[1], name, null); } else { return new cljs.core.Keyword(null, parts[0], name, null); } } else { return null; } } } }; var keyword__2 = function(ns, name) { return new cljs.core.Keyword(ns, name, "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.truth_(ns) ? "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns) + "/" : null) + cljs.core.str.cljs$core$IFn$_invoke$arity$1(name), null); }; keyword = function(ns, name) { switch(arguments.length) { case 1: return keyword__1.call(this, ns); case 2: return keyword__2.call(this, ns, name); } throw new Error("Invalid arity: " + arguments.length); }; keyword.cljs$core$IFn$_invoke$arity$1 = keyword__1; keyword.cljs$core$IFn$_invoke$arity$2 = keyword__2; return keyword; }(); cljs.core.LazySeq = function(meta, fn, s, __hash) { this.meta = meta; this.fn = fn; this.s = s; this.__hash = __hash; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32374988; }; cljs.core.LazySeq.cljs$lang$type = true; cljs.core.LazySeq.cljs$lang$ctorStr = "cljs.core/LazySeq"; cljs.core.LazySeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/LazySeq"); }; cljs.core.LazySeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.LazySeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.LazySeq.prototype.sval = function() { var self__ = this; var coll = this; if (self__.fn == null) { return self__.s; } else { self__.s = self__.fn.call(null); self__.fn = null; return self__.s; } }; cljs.core.LazySeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.LazySeq.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; cljs.core._seq.call(null, coll__$1); if (self__.s == null) { return null; } else { return cljs.core.next.call(null, self__.s); } }; cljs.core.LazySeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.LazySeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.LazySeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.LazySeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.LazySeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.LazySeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; cljs.core._seq.call(null, coll__$1); if (self__.s == null) { return null; } else { return cljs.core.first.call(null, self__.s); } }; cljs.core.LazySeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; cljs.core._seq.call(null, coll__$1); if (!(self__.s == null)) { return cljs.core.rest.call(null, self__.s); } else { return cljs.core.List.EMPTY; } }; cljs.core.LazySeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; coll__$1.sval(); if (self__.s == null) { return null; } else { var ls = self__.s; while (true) { if (ls instanceof cljs.core.LazySeq) { var G__5621 = ls.sval(); ls = G__5621; continue; } else { self__.s = ls; return cljs.core.seq.call(null, self__.s); } break; } } }; cljs.core.LazySeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.LazySeq(meta__$1, self__.fn, self__.s, self__.__hash); }; cljs.core.LazySeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_LazySeq = function __GT_LazySeq(meta, fn, s, __hash) { return new cljs.core.LazySeq(meta, fn, s, __hash); }; cljs.core.ChunkBuffer = function(buf, end) { this.buf = buf; this.end = end; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 2; }; cljs.core.ChunkBuffer.cljs$lang$type = true; cljs.core.ChunkBuffer.cljs$lang$ctorStr = "cljs.core/ChunkBuffer"; cljs.core.ChunkBuffer.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ChunkBuffer"); }; cljs.core.ChunkBuffer.prototype.cljs$core$ICounted$_count$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.end; }; cljs.core.ChunkBuffer.prototype.add = function(o) { var self__ = this; var _ = this; self__.buf[self__.end] = o; return self__.end = self__.end + 1; }; cljs.core.ChunkBuffer.prototype.chunk = function(o) { var self__ = this; var _ = this; var ret = new cljs.core.ArrayChunk(self__.buf, 0, self__.end); self__.buf = null; return ret; }; cljs.core.__GT_ChunkBuffer = function __GT_ChunkBuffer(buf, end) { return new cljs.core.ChunkBuffer(buf, end); }; cljs.core.chunk_buffer = function chunk_buffer(capacity) { return new cljs.core.ChunkBuffer(new Array(capacity), 0); }; cljs.core.ArrayChunk = function(arr, off, end) { this.arr = arr; this.off = off; this.end = end; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 524306; }; cljs.core.ArrayChunk.cljs$lang$type = true; cljs.core.ArrayChunk.cljs$lang$ctorStr = "cljs.core/ArrayChunk"; cljs.core.ArrayChunk.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ArrayChunk"); }; cljs.core.ArrayChunk.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.array_reduce.call(null, self__.arr, f, self__.arr[self__.off], self__.off + 1); }; cljs.core.ArrayChunk.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.array_reduce.call(null, self__.arr, f, start, self__.off); }; cljs.core.ArrayChunk.prototype.cljs$core$IChunk$ = true; cljs.core.ArrayChunk.prototype.cljs$core$IChunk$_drop_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.off === self__.end) { throw new Error("-drop-first of empty chunk"); } else { return new cljs.core.ArrayChunk(self__.arr, self__.off + 1, self__.end); } }; cljs.core.ArrayChunk.prototype.cljs$core$IIndexed$_nth$arity$2 = function(coll, i) { var self__ = this; var coll__$1 = this; return self__.arr[self__.off + i]; }; cljs.core.ArrayChunk.prototype.cljs$core$IIndexed$_nth$arity$3 = function(coll, i, not_found) { var self__ = this; var coll__$1 = this; if (i >= 0 && i < self__.end - self__.off) { return self__.arr[self__.off + i]; } else { return not_found; } }; cljs.core.ArrayChunk.prototype.cljs$core$ICounted$_count$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.end - self__.off; }; cljs.core.__GT_ArrayChunk = function __GT_ArrayChunk(arr, off, end) { return new cljs.core.ArrayChunk(arr, off, end); }; cljs.core.array_chunk = function() { var array_chunk = null; var array_chunk__1 = function(arr) { return new cljs.core.ArrayChunk(arr, 0, arr.length); }; var array_chunk__2 = function(arr, off) { return new cljs.core.ArrayChunk(arr, off, arr.length); }; var array_chunk__3 = function(arr, off, end) { return new cljs.core.ArrayChunk(arr, off, end); }; array_chunk = function(arr, off, end) { switch(arguments.length) { case 1: return array_chunk__1.call(this, arr); case 2: return array_chunk__2.call(this, arr, off); case 3: return array_chunk__3.call(this, arr, off, end); } throw new Error("Invalid arity: " + arguments.length); }; array_chunk.cljs$core$IFn$_invoke$arity$1 = array_chunk__1; array_chunk.cljs$core$IFn$_invoke$arity$2 = array_chunk__2; array_chunk.cljs$core$IFn$_invoke$arity$3 = array_chunk__3; return array_chunk; }(); cljs.core.ChunkedCons = function(chunk, more, meta, __hash) { this.chunk = chunk; this.more = more; this.meta = meta; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 31850732; this.cljs$lang$protocol_mask$partition1$ = 1536; }; cljs.core.ChunkedCons.cljs$lang$type = true; cljs.core.ChunkedCons.cljs$lang$ctorStr = "cljs.core/ChunkedCons"; cljs.core.ChunkedCons.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ChunkedCons"); }; cljs.core.ChunkedCons.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.ChunkedCons.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.ChunkedCons.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.ChunkedCons.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (cljs.core._count.call(null, self__.chunk) > 1) { return new cljs.core.ChunkedCons(cljs.core._drop_first.call(null, self__.chunk), self__.more, self__.meta, null); } else { var more__$1 = cljs.core._seq.call(null, self__.more); if (more__$1 == null) { return null; } else { return more__$1; } } }; cljs.core.ChunkedCons.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.ChunkedCons.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.ChunkedCons.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.ChunkedCons.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._nth.call(null, self__.chunk, 0); }; cljs.core.ChunkedCons.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (cljs.core._count.call(null, self__.chunk) > 1) { return new cljs.core.ChunkedCons(cljs.core._drop_first.call(null, self__.chunk), self__.more, self__.meta, null); } else { if (self__.more == null) { return cljs.core.List.EMPTY; } else { return self__.more; } } }; cljs.core.ChunkedCons.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.ChunkedCons.prototype.cljs$core$IChunkedSeq$_chunked_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.chunk; }; cljs.core.ChunkedCons.prototype.cljs$core$IChunkedSeq$_chunked_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.more == null) { return cljs.core.List.EMPTY; } else { return self__.more; } }; cljs.core.ChunkedCons.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, m) { var self__ = this; var coll__$1 = this; return new cljs.core.ChunkedCons(self__.chunk, self__.more, m, self__.__hash); }; cljs.core.ChunkedCons.prototype.cljs$core$ICollection$_conj$arity$2 = function(this$, o) { var self__ = this; var this$__$1 = this; return cljs.core.cons.call(null, o, this$__$1); }; cljs.core.ChunkedCons.prototype.cljs$core$IChunkedNext$_chunked_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.more == null) { return null; } else { return self__.more; } }; cljs.core.__GT_ChunkedCons = function __GT_ChunkedCons(chunk, more, meta, __hash) { return new cljs.core.ChunkedCons(chunk, more, meta, __hash); }; cljs.core.chunk_cons = function chunk_cons(chunk, rest) { if (cljs.core._count.call(null, chunk) === 0) { return rest; } else { return new cljs.core.ChunkedCons(chunk, rest, null, null); } }; cljs.core.chunk_append = function chunk_append(b, x) { return b.add(x); }; cljs.core.chunk = function chunk(b) { return b.chunk(); }; cljs.core.chunk_first = function chunk_first(s) { return cljs.core._chunked_first.call(null, s); }; cljs.core.chunk_rest = function chunk_rest(s) { return cljs.core._chunked_rest.call(null, s); }; cljs.core.chunk_next = function chunk_next(s) { if (function() { var G__5623 = s; if (G__5623) { var bit__4187__auto__ = G__5623.cljs$lang$protocol_mask$partition1$ & 1024; if (bit__4187__auto__ || G__5623.cljs$core$IChunkedNext$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._chunked_next.call(null, s); } else { return cljs.core.seq.call(null, cljs.core._chunked_rest.call(null, s)); } }; cljs.core.to_array = function to_array(s) { var ary = []; var s__$1 = s; while (true) { if (cljs.core.seq.call(null, s__$1)) { ary.push(cljs.core.first.call(null, s__$1)); var G__5624 = cljs.core.next.call(null, s__$1); s__$1 = G__5624; continue; } else { return ary; } break; } }; cljs.core.to_array_2d = function to_array_2d(coll) { var ret = new Array(cljs.core.count.call(null, coll)); var i_5625 = 0; var xs_5626 = cljs.core.seq.call(null, coll); while (true) { if (xs_5626) { ret[i_5625] = cljs.core.to_array.call(null, cljs.core.first.call(null, xs_5626)); var G__5627 = i_5625 + 1; var G__5628 = cljs.core.next.call(null, xs_5626); i_5625 = G__5627; xs_5626 = G__5628; continue; } else { } break; } return ret; }; cljs.core.int_array = function() { var int_array = null; var int_array__1 = function(size_or_seq) { if (typeof size_or_seq === "number") { return int_array.call(null, size_or_seq, null); } else { return cljs.core.into_array.call(null, size_or_seq); } }; var int_array__2 = function(size, init_val_or_seq) { var a = new Array(size); if (cljs.core.seq_QMARK_.call(null, init_val_or_seq)) { var s = cljs.core.seq.call(null, init_val_or_seq); var i = 0; var s__$1 = s; while (true) { if (s__$1 && i < size) { a[i] = cljs.core.first.call(null, s__$1); var G__5629 = i + 1; var G__5630 = cljs.core.next.call(null, s__$1); i = G__5629; s__$1 = G__5630; continue; } else { return a; } break; } } else { var n__4400__auto___5631 = size; var i_5632 = 0; while (true) { if (i_5632 < n__4400__auto___5631) { a[i_5632] = init_val_or_seq; var G__5633 = i_5632 + 1; i_5632 = G__5633; continue; } else { } break; } return a; } }; int_array = function(size, init_val_or_seq) { switch(arguments.length) { case 1: return int_array__1.call(this, size); case 2: return int_array__2.call(this, size, init_val_or_seq); } throw new Error("Invalid arity: " + arguments.length); }; int_array.cljs$core$IFn$_invoke$arity$1 = int_array__1; int_array.cljs$core$IFn$_invoke$arity$2 = int_array__2; return int_array; }(); cljs.core.long_array = function() { var long_array = null; var long_array__1 = function(size_or_seq) { if (typeof size_or_seq === "number") { return long_array.call(null, size_or_seq, null); } else { return cljs.core.into_array.call(null, size_or_seq); } }; var long_array__2 = function(size, init_val_or_seq) { var a = new Array(size); if (cljs.core.seq_QMARK_.call(null, init_val_or_seq)) { var s = cljs.core.seq.call(null, init_val_or_seq); var i = 0; var s__$1 = s; while (true) { if (s__$1 && i < size) { a[i] = cljs.core.first.call(null, s__$1); var G__5634 = i + 1; var G__5635 = cljs.core.next.call(null, s__$1); i = G__5634; s__$1 = G__5635; continue; } else { return a; } break; } } else { var n__4400__auto___5636 = size; var i_5637 = 0; while (true) { if (i_5637 < n__4400__auto___5636) { a[i_5637] = init_val_or_seq; var G__5638 = i_5637 + 1; i_5637 = G__5638; continue; } else { } break; } return a; } }; long_array = function(size, init_val_or_seq) { switch(arguments.length) { case 1: return long_array__1.call(this, size); case 2: return long_array__2.call(this, size, init_val_or_seq); } throw new Error("Invalid arity: " + arguments.length); }; long_array.cljs$core$IFn$_invoke$arity$1 = long_array__1; long_array.cljs$core$IFn$_invoke$arity$2 = long_array__2; return long_array; }(); cljs.core.double_array = function() { var double_array = null; var double_array__1 = function(size_or_seq) { if (typeof size_or_seq === "number") { return double_array.call(null, size_or_seq, null); } else { return cljs.core.into_array.call(null, size_or_seq); } }; var double_array__2 = function(size, init_val_or_seq) { var a = new Array(size); if (cljs.core.seq_QMARK_.call(null, init_val_or_seq)) { var s = cljs.core.seq.call(null, init_val_or_seq); var i = 0; var s__$1 = s; while (true) { if (s__$1 && i < size) { a[i] = cljs.core.first.call(null, s__$1); var G__5639 = i + 1; var G__5640 = cljs.core.next.call(null, s__$1); i = G__5639; s__$1 = G__5640; continue; } else { return a; } break; } } else { var n__4400__auto___5641 = size; var i_5642 = 0; while (true) { if (i_5642 < n__4400__auto___5641) { a[i_5642] = init_val_or_seq; var G__5643 = i_5642 + 1; i_5642 = G__5643; continue; } else { } break; } return a; } }; double_array = function(size, init_val_or_seq) { switch(arguments.length) { case 1: return double_array__1.call(this, size); case 2: return double_array__2.call(this, size, init_val_or_seq); } throw new Error("Invalid arity: " + arguments.length); }; double_array.cljs$core$IFn$_invoke$arity$1 = double_array__1; double_array.cljs$core$IFn$_invoke$arity$2 = double_array__2; return double_array; }(); cljs.core.object_array = function() { var object_array = null; var object_array__1 = function(size_or_seq) { if (typeof size_or_seq === "number") { return object_array.call(null, size_or_seq, null); } else { return cljs.core.into_array.call(null, size_or_seq); } }; var object_array__2 = function(size, init_val_or_seq) { var a = new Array(size); if (cljs.core.seq_QMARK_.call(null, init_val_or_seq)) { var s = cljs.core.seq.call(null, init_val_or_seq); var i = 0; var s__$1 = s; while (true) { if (s__$1 && i < size) { a[i] = cljs.core.first.call(null, s__$1); var G__5644 = i + 1; var G__5645 = cljs.core.next.call(null, s__$1); i = G__5644; s__$1 = G__5645; continue; } else { return a; } break; } } else { var n__4400__auto___5646 = size; var i_5647 = 0; while (true) { if (i_5647 < n__4400__auto___5646) { a[i_5647] = init_val_or_seq; var G__5648 = i_5647 + 1; i_5647 = G__5648; continue; } else { } break; } return a; } }; object_array = function(size, init_val_or_seq) { switch(arguments.length) { case 1: return object_array__1.call(this, size); case 2: return object_array__2.call(this, size, init_val_or_seq); } throw new Error("Invalid arity: " + arguments.length); }; object_array.cljs$core$IFn$_invoke$arity$1 = object_array__1; object_array.cljs$core$IFn$_invoke$arity$2 = object_array__2; return object_array; }(); cljs.core.bounded_count = function bounded_count(s, n) { if (cljs.core.counted_QMARK_.call(null, s)) { return cljs.core.count.call(null, s); } else { var s__$1 = s; var i = n; var sum = 0; while (true) { if (i > 0 && cljs.core.seq.call(null, s__$1)) { var G__5649 = cljs.core.next.call(null, s__$1); var G__5650 = i - 1; var G__5651 = sum + 1; s__$1 = G__5649; i = G__5650; sum = G__5651; continue; } else { return sum; } break; } } }; cljs.core.spread = function spread(arglist) { if (arglist == null) { return null; } else { if (cljs.core.next.call(null, arglist) == null) { return cljs.core.seq.call(null, cljs.core.first.call(null, arglist)); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.cons.call(null, cljs.core.first.call(null, arglist), spread.call(null, cljs.core.next.call(null, arglist))); } else { return null; } } } }; cljs.core.concat = function() { var concat = null; var concat__0 = function() { return new cljs.core.LazySeq(null, function() { return null; }, null, null); }; var concat__1 = function(x) { return new cljs.core.LazySeq(null, function() { return x; }, null, null); }; var concat__2 = function(x, y) { return new cljs.core.LazySeq(null, function() { var s = cljs.core.seq.call(null, x); if (s) { if (cljs.core.chunked_seq_QMARK_.call(null, s)) { return cljs.core.chunk_cons.call(null, cljs.core.chunk_first.call(null, s), concat.call(null, cljs.core.chunk_rest.call(null, s), y)); } else { return cljs.core.cons.call(null, cljs.core.first.call(null, s), concat.call(null, cljs.core.rest.call(null, s), y)); } } else { return y; } }, null, null); }; var concat__3 = function() { var G__5652__delegate = function(x, y, zs) { var cat = function cat(xys, zs__$1) { return new cljs.core.LazySeq(null, function() { var xys__$1 = cljs.core.seq.call(null, xys); if (xys__$1) { if (cljs.core.chunked_seq_QMARK_.call(null, xys__$1)) { return cljs.core.chunk_cons.call(null, cljs.core.chunk_first.call(null, xys__$1), cat.call(null, cljs.core.chunk_rest.call(null, xys__$1), zs__$1)); } else { return cljs.core.cons.call(null, cljs.core.first.call(null, xys__$1), cat.call(null, cljs.core.rest.call(null, xys__$1), zs__$1)); } } else { if (cljs.core.truth_(zs__$1)) { return cat.call(null, cljs.core.first.call(null, zs__$1), cljs.core.next.call(null, zs__$1)); } else { return null; } } }, null, null); }; return cat.call(null, concat.call(null, x, y), zs); }; var G__5652 = function(x, y, var_args) { var zs = null; if (arguments.length > 2) { zs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5652__delegate.call(this, x, y, zs); }; G__5652.cljs$lang$maxFixedArity = 2; G__5652.cljs$lang$applyTo = function(arglist__5653) { var x = cljs.core.first(arglist__5653); arglist__5653 = cljs.core.next(arglist__5653); var y = cljs.core.first(arglist__5653); var zs = cljs.core.rest(arglist__5653); return G__5652__delegate(x, y, zs); }; G__5652.cljs$core$IFn$_invoke$arity$variadic = G__5652__delegate; return G__5652; }(); concat = function(x, y, var_args) { var zs = var_args; switch(arguments.length) { case 0: return concat__0.call(this); case 1: return concat__1.call(this, x); case 2: return concat__2.call(this, x, y); default: return concat__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; concat.cljs$lang$maxFixedArity = 2; concat.cljs$lang$applyTo = concat__3.cljs$lang$applyTo; concat.cljs$core$IFn$_invoke$arity$0 = concat__0; concat.cljs$core$IFn$_invoke$arity$1 = concat__1; concat.cljs$core$IFn$_invoke$arity$2 = concat__2; concat.cljs$core$IFn$_invoke$arity$variadic = concat__3.cljs$core$IFn$_invoke$arity$variadic; return concat; }(); cljs.core.list_STAR_ = function() { var list_STAR_ = null; var list_STAR___1 = function(args) { return cljs.core.seq.call(null, args); }; var list_STAR___2 = function(a, args) { return cljs.core.cons.call(null, a, args); }; var list_STAR___3 = function(a, b, args) { return cljs.core.cons.call(null, a, cljs.core.cons.call(null, b, args)); }; var list_STAR___4 = function(a, b, c, args) { return cljs.core.cons.call(null, a, cljs.core.cons.call(null, b, cljs.core.cons.call(null, c, args))); }; var list_STAR___5 = function() { var G__5654__delegate = function(a, b, c, d, more) { return cljs.core.cons.call(null, a, cljs.core.cons.call(null, b, cljs.core.cons.call(null, c, cljs.core.cons.call(null, d, cljs.core.spread.call(null, more))))); }; var G__5654 = function(a, b, c, d, var_args) { var more = null; if (arguments.length > 4) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4), 0); } return G__5654__delegate.call(this, a, b, c, d, more); }; G__5654.cljs$lang$maxFixedArity = 4; G__5654.cljs$lang$applyTo = function(arglist__5655) { var a = cljs.core.first(arglist__5655); arglist__5655 = cljs.core.next(arglist__5655); var b = cljs.core.first(arglist__5655); arglist__5655 = cljs.core.next(arglist__5655); var c = cljs.core.first(arglist__5655); arglist__5655 = cljs.core.next(arglist__5655); var d = cljs.core.first(arglist__5655); var more = cljs.core.rest(arglist__5655); return G__5654__delegate(a, b, c, d, more); }; G__5654.cljs$core$IFn$_invoke$arity$variadic = G__5654__delegate; return G__5654; }(); list_STAR_ = function(a, b, c, d, var_args) { var more = var_args; switch(arguments.length) { case 1: return list_STAR___1.call(this, a); case 2: return list_STAR___2.call(this, a, b); case 3: return list_STAR___3.call(this, a, b, c); case 4: return list_STAR___4.call(this, a, b, c, d); default: return list_STAR___5.cljs$core$IFn$_invoke$arity$variadic(a, b, c, d, cljs.core.array_seq(arguments, 4)); } throw new Error("Invalid arity: " + arguments.length); }; list_STAR_.cljs$lang$maxFixedArity = 4; list_STAR_.cljs$lang$applyTo = list_STAR___5.cljs$lang$applyTo; list_STAR_.cljs$core$IFn$_invoke$arity$1 = list_STAR___1; list_STAR_.cljs$core$IFn$_invoke$arity$2 = list_STAR___2; list_STAR_.cljs$core$IFn$_invoke$arity$3 = list_STAR___3; list_STAR_.cljs$core$IFn$_invoke$arity$4 = list_STAR___4; list_STAR_.cljs$core$IFn$_invoke$arity$variadic = list_STAR___5.cljs$core$IFn$_invoke$arity$variadic; return list_STAR_; }(); cljs.core.transient$ = function transient$(coll) { return cljs.core._as_transient.call(null, coll); }; cljs.core.persistent_BANG_ = function persistent_BANG_(tcoll) { return cljs.core._persistent_BANG_.call(null, tcoll); }; cljs.core.conj_BANG_ = function() { var conj_BANG_ = null; var conj_BANG___2 = function(tcoll, val) { return cljs.core._conj_BANG_.call(null, tcoll, val); }; var conj_BANG___3 = function() { var G__5656__delegate = function(tcoll, val, vals) { while (true) { var ntcoll = cljs.core._conj_BANG_.call(null, tcoll, val); if (cljs.core.truth_(vals)) { var G__5657 = ntcoll; var G__5658 = cljs.core.first.call(null, vals); var G__5659 = cljs.core.next.call(null, vals); tcoll = G__5657; val = G__5658; vals = G__5659; continue; } else { return ntcoll; } break; } }; var G__5656 = function(tcoll, val, var_args) { var vals = null; if (arguments.length > 2) { vals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5656__delegate.call(this, tcoll, val, vals); }; G__5656.cljs$lang$maxFixedArity = 2; G__5656.cljs$lang$applyTo = function(arglist__5660) { var tcoll = cljs.core.first(arglist__5660); arglist__5660 = cljs.core.next(arglist__5660); var val = cljs.core.first(arglist__5660); var vals = cljs.core.rest(arglist__5660); return G__5656__delegate(tcoll, val, vals); }; G__5656.cljs$core$IFn$_invoke$arity$variadic = G__5656__delegate; return G__5656; }(); conj_BANG_ = function(tcoll, val, var_args) { var vals = var_args; switch(arguments.length) { case 2: return conj_BANG___2.call(this, tcoll, val); default: return conj_BANG___3.cljs$core$IFn$_invoke$arity$variadic(tcoll, val, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; conj_BANG_.cljs$lang$maxFixedArity = 2; conj_BANG_.cljs$lang$applyTo = conj_BANG___3.cljs$lang$applyTo; conj_BANG_.cljs$core$IFn$_invoke$arity$2 = conj_BANG___2; conj_BANG_.cljs$core$IFn$_invoke$arity$variadic = conj_BANG___3.cljs$core$IFn$_invoke$arity$variadic; return conj_BANG_; }(); cljs.core.assoc_BANG_ = function() { var assoc_BANG_ = null; var assoc_BANG___3 = function(tcoll, key, val) { return cljs.core._assoc_BANG_.call(null, tcoll, key, val); }; var assoc_BANG___4 = function() { var G__5661__delegate = function(tcoll, key, val, kvs) { while (true) { var ntcoll = cljs.core._assoc_BANG_.call(null, tcoll, key, val); if (cljs.core.truth_(kvs)) { var G__5662 = ntcoll; var G__5663 = cljs.core.first.call(null, kvs); var G__5664 = cljs.core.second.call(null, kvs); var G__5665 = cljs.core.nnext.call(null, kvs); tcoll = G__5662; key = G__5663; val = G__5664; kvs = G__5665; continue; } else { return ntcoll; } break; } }; var G__5661 = function(tcoll, key, val, var_args) { var kvs = null; if (arguments.length > 3) { kvs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5661__delegate.call(this, tcoll, key, val, kvs); }; G__5661.cljs$lang$maxFixedArity = 3; G__5661.cljs$lang$applyTo = function(arglist__5666) { var tcoll = cljs.core.first(arglist__5666); arglist__5666 = cljs.core.next(arglist__5666); var key = cljs.core.first(arglist__5666); arglist__5666 = cljs.core.next(arglist__5666); var val = cljs.core.first(arglist__5666); var kvs = cljs.core.rest(arglist__5666); return G__5661__delegate(tcoll, key, val, kvs); }; G__5661.cljs$core$IFn$_invoke$arity$variadic = G__5661__delegate; return G__5661; }(); assoc_BANG_ = function(tcoll, key, val, var_args) { var kvs = var_args; switch(arguments.length) { case 3: return assoc_BANG___3.call(this, tcoll, key, val); default: return assoc_BANG___4.cljs$core$IFn$_invoke$arity$variadic(tcoll, key, val, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; assoc_BANG_.cljs$lang$maxFixedArity = 3; assoc_BANG_.cljs$lang$applyTo = assoc_BANG___4.cljs$lang$applyTo; assoc_BANG_.cljs$core$IFn$_invoke$arity$3 = assoc_BANG___3; assoc_BANG_.cljs$core$IFn$_invoke$arity$variadic = assoc_BANG___4.cljs$core$IFn$_invoke$arity$variadic; return assoc_BANG_; }(); cljs.core.dissoc_BANG_ = function() { var dissoc_BANG_ = null; var dissoc_BANG___2 = function(tcoll, key) { return cljs.core._dissoc_BANG_.call(null, tcoll, key); }; var dissoc_BANG___3 = function() { var G__5667__delegate = function(tcoll, key, ks) { while (true) { var ntcoll = cljs.core._dissoc_BANG_.call(null, tcoll, key); if (cljs.core.truth_(ks)) { var G__5668 = ntcoll; var G__5669 = cljs.core.first.call(null, ks); var G__5670 = cljs.core.next.call(null, ks); tcoll = G__5668; key = G__5669; ks = G__5670; continue; } else { return ntcoll; } break; } }; var G__5667 = function(tcoll, key, var_args) { var ks = null; if (arguments.length > 2) { ks = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5667__delegate.call(this, tcoll, key, ks); }; G__5667.cljs$lang$maxFixedArity = 2; G__5667.cljs$lang$applyTo = function(arglist__5671) { var tcoll = cljs.core.first(arglist__5671); arglist__5671 = cljs.core.next(arglist__5671); var key = cljs.core.first(arglist__5671); var ks = cljs.core.rest(arglist__5671); return G__5667__delegate(tcoll, key, ks); }; G__5667.cljs$core$IFn$_invoke$arity$variadic = G__5667__delegate; return G__5667; }(); dissoc_BANG_ = function(tcoll, key, var_args) { var ks = var_args; switch(arguments.length) { case 2: return dissoc_BANG___2.call(this, tcoll, key); default: return dissoc_BANG___3.cljs$core$IFn$_invoke$arity$variadic(tcoll, key, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; dissoc_BANG_.cljs$lang$maxFixedArity = 2; dissoc_BANG_.cljs$lang$applyTo = dissoc_BANG___3.cljs$lang$applyTo; dissoc_BANG_.cljs$core$IFn$_invoke$arity$2 = dissoc_BANG___2; dissoc_BANG_.cljs$core$IFn$_invoke$arity$variadic = dissoc_BANG___3.cljs$core$IFn$_invoke$arity$variadic; return dissoc_BANG_; }(); cljs.core.pop_BANG_ = function pop_BANG_(tcoll) { return cljs.core._pop_BANG_.call(null, tcoll); }; cljs.core.disj_BANG_ = function() { var disj_BANG_ = null; var disj_BANG___2 = function(tcoll, val) { return cljs.core._disjoin_BANG_.call(null, tcoll, val); }; var disj_BANG___3 = function() { var G__5672__delegate = function(tcoll, val, vals) { while (true) { var ntcoll = cljs.core._disjoin_BANG_.call(null, tcoll, val); if (cljs.core.truth_(vals)) { var G__5673 = ntcoll; var G__5674 = cljs.core.first.call(null, vals); var G__5675 = cljs.core.next.call(null, vals); tcoll = G__5673; val = G__5674; vals = G__5675; continue; } else { return ntcoll; } break; } }; var G__5672 = function(tcoll, val, var_args) { var vals = null; if (arguments.length > 2) { vals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5672__delegate.call(this, tcoll, val, vals); }; G__5672.cljs$lang$maxFixedArity = 2; G__5672.cljs$lang$applyTo = function(arglist__5676) { var tcoll = cljs.core.first(arglist__5676); arglist__5676 = cljs.core.next(arglist__5676); var val = cljs.core.first(arglist__5676); var vals = cljs.core.rest(arglist__5676); return G__5672__delegate(tcoll, val, vals); }; G__5672.cljs$core$IFn$_invoke$arity$variadic = G__5672__delegate; return G__5672; }(); disj_BANG_ = function(tcoll, val, var_args) { var vals = var_args; switch(arguments.length) { case 2: return disj_BANG___2.call(this, tcoll, val); default: return disj_BANG___3.cljs$core$IFn$_invoke$arity$variadic(tcoll, val, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; disj_BANG_.cljs$lang$maxFixedArity = 2; disj_BANG_.cljs$lang$applyTo = disj_BANG___3.cljs$lang$applyTo; disj_BANG_.cljs$core$IFn$_invoke$arity$2 = disj_BANG___2; disj_BANG_.cljs$core$IFn$_invoke$arity$variadic = disj_BANG___3.cljs$core$IFn$_invoke$arity$variadic; return disj_BANG_; }(); cljs.core.apply_to = function apply_to(f, argc, args) { var args__$1 = cljs.core.seq.call(null, args); if (argc === 0) { return f.call(null); } else { var a4444 = cljs.core._first.call(null, args__$1); var args__$2 = cljs.core._rest.call(null, args__$1); if (argc === 1) { if (f.cljs$core$IFn$_invoke$arity$1) { return f.cljs$core$IFn$_invoke$arity$1(a4444); } else { return f.call(null, a4444); } } else { var b4445 = cljs.core._first.call(null, args__$2); var args__$3 = cljs.core._rest.call(null, args__$2); if (argc === 2) { if (f.cljs$core$IFn$_invoke$arity$2) { return f.cljs$core$IFn$_invoke$arity$2(a4444, b4445); } else { return f.call(null, a4444, b4445); } } else { var c4446 = cljs.core._first.call(null, args__$3); var args__$4 = cljs.core._rest.call(null, args__$3); if (argc === 3) { if (f.cljs$core$IFn$_invoke$arity$3) { return f.cljs$core$IFn$_invoke$arity$3(a4444, b4445, c4446); } else { return f.call(null, a4444, b4445, c4446); } } else { var d4447 = cljs.core._first.call(null, args__$4); var args__$5 = cljs.core._rest.call(null, args__$4); if (argc === 4) { if (f.cljs$core$IFn$_invoke$arity$4) { return f.cljs$core$IFn$_invoke$arity$4(a4444, b4445, c4446, d4447); } else { return f.call(null, a4444, b4445, c4446, d4447); } } else { var e4448 = cljs.core._first.call(null, args__$5); var args__$6 = cljs.core._rest.call(null, args__$5); if (argc === 5) { if (f.cljs$core$IFn$_invoke$arity$5) { return f.cljs$core$IFn$_invoke$arity$5(a4444, b4445, c4446, d4447, e4448); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448); } } else { var f4449 = cljs.core._first.call(null, args__$6); var args__$7 = cljs.core._rest.call(null, args__$6); if (argc === 6) { if (f.cljs$core$IFn$_invoke$arity$6) { return f.cljs$core$IFn$_invoke$arity$6(a4444, b4445, c4446, d4447, e4448, f4449); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449); } } else { var g4450 = cljs.core._first.call(null, args__$7); var args__$8 = cljs.core._rest.call(null, args__$7); if (argc === 7) { if (f.cljs$core$IFn$_invoke$arity$7) { return f.cljs$core$IFn$_invoke$arity$7(a4444, b4445, c4446, d4447, e4448, f4449, g4450); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450); } } else { var h4451 = cljs.core._first.call(null, args__$8); var args__$9 = cljs.core._rest.call(null, args__$8); if (argc === 8) { if (f.cljs$core$IFn$_invoke$arity$8) { return f.cljs$core$IFn$_invoke$arity$8(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451); } } else { var i4452 = cljs.core._first.call(null, args__$9); var args__$10 = cljs.core._rest.call(null, args__$9); if (argc === 9) { if (f.cljs$core$IFn$_invoke$arity$9) { return f.cljs$core$IFn$_invoke$arity$9(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452); } } else { var j4453 = cljs.core._first.call(null, args__$10); var args__$11 = cljs.core._rest.call(null, args__$10); if (argc === 10) { if (f.cljs$core$IFn$_invoke$arity$10) { return f.cljs$core$IFn$_invoke$arity$10(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453); } } else { var k4454 = cljs.core._first.call(null, args__$11); var args__$12 = cljs.core._rest.call(null, args__$11); if (argc === 11) { if (f.cljs$core$IFn$_invoke$arity$11) { return f.cljs$core$IFn$_invoke$arity$11(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454); } } else { var l4455 = cljs.core._first.call(null, args__$12); var args__$13 = cljs.core._rest.call(null, args__$12); if (argc === 12) { if (f.cljs$core$IFn$_invoke$arity$12) { return f.cljs$core$IFn$_invoke$arity$12(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455); } } else { var m4456 = cljs.core._first.call(null, args__$13); var args__$14 = cljs.core._rest.call(null, args__$13); if (argc === 13) { if (f.cljs$core$IFn$_invoke$arity$13) { return f.cljs$core$IFn$_invoke$arity$13(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456); } } else { var n4457 = cljs.core._first.call(null, args__$14); var args__$15 = cljs.core._rest.call(null, args__$14); if (argc === 14) { if (f.cljs$core$IFn$_invoke$arity$14) { return f.cljs$core$IFn$_invoke$arity$14(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457); } } else { var o4458 = cljs.core._first.call(null, args__$15); var args__$16 = cljs.core._rest.call(null, args__$15); if (argc === 15) { if (f.cljs$core$IFn$_invoke$arity$15) { return f.cljs$core$IFn$_invoke$arity$15(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458); } } else { var p4459 = cljs.core._first.call(null, args__$16); var args__$17 = cljs.core._rest.call(null, args__$16); if (argc === 16) { if (f.cljs$core$IFn$_invoke$arity$16) { return f.cljs$core$IFn$_invoke$arity$16(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459); } } else { var q4460 = cljs.core._first.call(null, args__$17); var args__$18 = cljs.core._rest.call(null, args__$17); if (argc === 17) { if (f.cljs$core$IFn$_invoke$arity$17) { return f.cljs$core$IFn$_invoke$arity$17(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460); } } else { var r4461 = cljs.core._first.call(null, args__$18); var args__$19 = cljs.core._rest.call(null, args__$18); if (argc === 18) { if (f.cljs$core$IFn$_invoke$arity$18) { return f.cljs$core$IFn$_invoke$arity$18(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460, r4461); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460, r4461); } } else { var s4462 = cljs.core._first.call(null, args__$19); var args__$20 = cljs.core._rest.call(null, args__$19); if (argc === 19) { if (f.cljs$core$IFn$_invoke$arity$19) { return f.cljs$core$IFn$_invoke$arity$19(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460, r4461, s4462); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460, r4461, s4462); } } else { var t4463 = cljs.core._first.call(null, args__$20); var args__$21 = cljs.core._rest.call(null, args__$20); if (argc === 20) { if (f.cljs$core$IFn$_invoke$arity$20) { return f.cljs$core$IFn$_invoke$arity$20(a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460, r4461, s4462, t4463); } else { return f.call(null, a4444, b4445, c4446, d4447, e4448, f4449, g4450, h4451, i4452, j4453, k4454, l4455, m4456, n4457, o4458, p4459, q4460, r4461, s4462, t4463); } } else { throw new Error("Only up to 20 arguments supported on functions"); } } } } } } } } } } } } } } } } } } } } } }; cljs.core.apply = function() { var apply = null; var apply__2 = function(f, args) { var fixed_arity = f.cljs$lang$maxFixedArity; if (f.cljs$lang$applyTo) { var bc = cljs.core.bounded_count.call(null, args, fixed_arity + 1); if (bc <= fixed_arity) { return cljs.core.apply_to.call(null, f, bc, args); } else { return f.cljs$lang$applyTo(args); } } else { return f.apply(f, cljs.core.to_array.call(null, args)); } }; var apply__3 = function(f, x, args) { var arglist = cljs.core.list_STAR_.call(null, x, args); var fixed_arity = f.cljs$lang$maxFixedArity; if (f.cljs$lang$applyTo) { var bc = cljs.core.bounded_count.call(null, arglist, fixed_arity + 1); if (bc <= fixed_arity) { return cljs.core.apply_to.call(null, f, bc, arglist); } else { return f.cljs$lang$applyTo(arglist); } } else { return f.apply(f, cljs.core.to_array.call(null, arglist)); } }; var apply__4 = function(f, x, y, args) { var arglist = cljs.core.list_STAR_.call(null, x, y, args); var fixed_arity = f.cljs$lang$maxFixedArity; if (f.cljs$lang$applyTo) { var bc = cljs.core.bounded_count.call(null, arglist, fixed_arity + 1); if (bc <= fixed_arity) { return cljs.core.apply_to.call(null, f, bc, arglist); } else { return f.cljs$lang$applyTo(arglist); } } else { return f.apply(f, cljs.core.to_array.call(null, arglist)); } }; var apply__5 = function(f, x, y, z, args) { var arglist = cljs.core.list_STAR_.call(null, x, y, z, args); var fixed_arity = f.cljs$lang$maxFixedArity; if (f.cljs$lang$applyTo) { var bc = cljs.core.bounded_count.call(null, arglist, fixed_arity + 1); if (bc <= fixed_arity) { return cljs.core.apply_to.call(null, f, bc, arglist); } else { return f.cljs$lang$applyTo(arglist); } } else { return f.apply(f, cljs.core.to_array.call(null, arglist)); } }; var apply__6 = function() { var G__5677__delegate = function(f, a, b, c, d, args) { var arglist = cljs.core.cons.call(null, a, cljs.core.cons.call(null, b, cljs.core.cons.call(null, c, cljs.core.cons.call(null, d, cljs.core.spread.call(null, args))))); var fixed_arity = f.cljs$lang$maxFixedArity; if (f.cljs$lang$applyTo) { var bc = cljs.core.bounded_count.call(null, arglist, fixed_arity + 1); if (bc <= fixed_arity) { return cljs.core.apply_to.call(null, f, bc, arglist); } else { return f.cljs$lang$applyTo(arglist); } } else { return f.apply(f, cljs.core.to_array.call(null, arglist)); } }; var G__5677 = function(f, a, b, c, d, var_args) { var args = null; if (arguments.length > 5) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 5), 0); } return G__5677__delegate.call(this, f, a, b, c, d, args); }; G__5677.cljs$lang$maxFixedArity = 5; G__5677.cljs$lang$applyTo = function(arglist__5678) { var f = cljs.core.first(arglist__5678); arglist__5678 = cljs.core.next(arglist__5678); var a = cljs.core.first(arglist__5678); arglist__5678 = cljs.core.next(arglist__5678); var b = cljs.core.first(arglist__5678); arglist__5678 = cljs.core.next(arglist__5678); var c = cljs.core.first(arglist__5678); arglist__5678 = cljs.core.next(arglist__5678); var d = cljs.core.first(arglist__5678); var args = cljs.core.rest(arglist__5678); return G__5677__delegate(f, a, b, c, d, args); }; G__5677.cljs$core$IFn$_invoke$arity$variadic = G__5677__delegate; return G__5677; }(); apply = function(f, a, b, c, d, var_args) { var args = var_args; switch(arguments.length) { case 2: return apply__2.call(this, f, a); case 3: return apply__3.call(this, f, a, b); case 4: return apply__4.call(this, f, a, b, c); case 5: return apply__5.call(this, f, a, b, c, d); default: return apply__6.cljs$core$IFn$_invoke$arity$variadic(f, a, b, c, d, cljs.core.array_seq(arguments, 5)); } throw new Error("Invalid arity: " + arguments.length); }; apply.cljs$lang$maxFixedArity = 5; apply.cljs$lang$applyTo = apply__6.cljs$lang$applyTo; apply.cljs$core$IFn$_invoke$arity$2 = apply__2; apply.cljs$core$IFn$_invoke$arity$3 = apply__3; apply.cljs$core$IFn$_invoke$arity$4 = apply__4; apply.cljs$core$IFn$_invoke$arity$5 = apply__5; apply.cljs$core$IFn$_invoke$arity$variadic = apply__6.cljs$core$IFn$_invoke$arity$variadic; return apply; }(); cljs.core.vary_meta = function() { var vary_meta = null; var vary_meta__2 = function(obj, f) { return cljs.core.with_meta.call(null, obj, f.call(null, cljs.core.meta.call(null, obj))); }; var vary_meta__3 = function(obj, f, a) { return cljs.core.with_meta.call(null, obj, f.call(null, cljs.core.meta.call(null, obj), a)); }; var vary_meta__4 = function(obj, f, a, b) { return cljs.core.with_meta.call(null, obj, f.call(null, cljs.core.meta.call(null, obj), a, b)); }; var vary_meta__5 = function(obj, f, a, b, c) { return cljs.core.with_meta.call(null, obj, f.call(null, cljs.core.meta.call(null, obj), a, b, c)); }; var vary_meta__6 = function(obj, f, a, b, c, d) { return cljs.core.with_meta.call(null, obj, f.call(null, cljs.core.meta.call(null, obj), a, b, c, d)); }; var vary_meta__7 = function() { var G__5679__delegate = function(obj, f, a, b, c, d, args) { return cljs.core.with_meta.call(null, obj, cljs.core.apply.call(null, f, cljs.core.meta.call(null, obj), a, b, c, d, args)); }; var G__5679 = function(obj, f, a, b, c, d, var_args) { var args = null; if (arguments.length > 6) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 6), 0); } return G__5679__delegate.call(this, obj, f, a, b, c, d, args); }; G__5679.cljs$lang$maxFixedArity = 6; G__5679.cljs$lang$applyTo = function(arglist__5680) { var obj = cljs.core.first(arglist__5680); arglist__5680 = cljs.core.next(arglist__5680); var f = cljs.core.first(arglist__5680); arglist__5680 = cljs.core.next(arglist__5680); var a = cljs.core.first(arglist__5680); arglist__5680 = cljs.core.next(arglist__5680); var b = cljs.core.first(arglist__5680); arglist__5680 = cljs.core.next(arglist__5680); var c = cljs.core.first(arglist__5680); arglist__5680 = cljs.core.next(arglist__5680); var d = cljs.core.first(arglist__5680); var args = cljs.core.rest(arglist__5680); return G__5679__delegate(obj, f, a, b, c, d, args); }; G__5679.cljs$core$IFn$_invoke$arity$variadic = G__5679__delegate; return G__5679; }(); vary_meta = function(obj, f, a, b, c, d, var_args) { var args = var_args; switch(arguments.length) { case 2: return vary_meta__2.call(this, obj, f); case 3: return vary_meta__3.call(this, obj, f, a); case 4: return vary_meta__4.call(this, obj, f, a, b); case 5: return vary_meta__5.call(this, obj, f, a, b, c); case 6: return vary_meta__6.call(this, obj, f, a, b, c, d); default: return vary_meta__7.cljs$core$IFn$_invoke$arity$variadic(obj, f, a, b, c, d, cljs.core.array_seq(arguments, 6)); } throw new Error("Invalid arity: " + arguments.length); }; vary_meta.cljs$lang$maxFixedArity = 6; vary_meta.cljs$lang$applyTo = vary_meta__7.cljs$lang$applyTo; vary_meta.cljs$core$IFn$_invoke$arity$2 = vary_meta__2; vary_meta.cljs$core$IFn$_invoke$arity$3 = vary_meta__3; vary_meta.cljs$core$IFn$_invoke$arity$4 = vary_meta__4; vary_meta.cljs$core$IFn$_invoke$arity$5 = vary_meta__5; vary_meta.cljs$core$IFn$_invoke$arity$6 = vary_meta__6; vary_meta.cljs$core$IFn$_invoke$arity$variadic = vary_meta__7.cljs$core$IFn$_invoke$arity$variadic; return vary_meta; }(); cljs.core.not_EQ_ = function() { var not_EQ_ = null; var not_EQ___1 = function(x) { return false; }; var not_EQ___2 = function(x, y) { return!cljs.core._EQ_.call(null, x, y); }; var not_EQ___3 = function() { var G__5681__delegate = function(x, y, more) { return cljs.core.not.call(null, cljs.core.apply.call(null, cljs.core._EQ_, x, y, more)); }; var G__5681 = function(x, y, var_args) { var more = null; if (arguments.length > 2) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5681__delegate.call(this, x, y, more); }; G__5681.cljs$lang$maxFixedArity = 2; G__5681.cljs$lang$applyTo = function(arglist__5682) { var x = cljs.core.first(arglist__5682); arglist__5682 = cljs.core.next(arglist__5682); var y = cljs.core.first(arglist__5682); var more = cljs.core.rest(arglist__5682); return G__5681__delegate(x, y, more); }; G__5681.cljs$core$IFn$_invoke$arity$variadic = G__5681__delegate; return G__5681; }(); not_EQ_ = function(x, y, var_args) { var more = var_args; switch(arguments.length) { case 1: return not_EQ___1.call(this, x); case 2: return not_EQ___2.call(this, x, y); default: return not_EQ___3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; not_EQ_.cljs$lang$maxFixedArity = 2; not_EQ_.cljs$lang$applyTo = not_EQ___3.cljs$lang$applyTo; not_EQ_.cljs$core$IFn$_invoke$arity$1 = not_EQ___1; not_EQ_.cljs$core$IFn$_invoke$arity$2 = not_EQ___2; not_EQ_.cljs$core$IFn$_invoke$arity$variadic = not_EQ___3.cljs$core$IFn$_invoke$arity$variadic; return not_EQ_; }(); cljs.core.not_empty = function not_empty(coll) { if (cljs.core.seq.call(null, coll)) { return coll; } else { return null; } }; cljs.core.every_QMARK_ = function every_QMARK_(pred, coll) { while (true) { if (cljs.core.seq.call(null, coll) == null) { return true; } else { if (cljs.core.truth_(pred.call(null, cljs.core.first.call(null, coll)))) { var G__5683 = pred; var G__5684 = cljs.core.next.call(null, coll); pred = G__5683; coll = G__5684; continue; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return false; } else { return null; } } } break; } }; cljs.core.not_every_QMARK_ = function not_every_QMARK_(pred, coll) { return!cljs.core.every_QMARK_.call(null, pred, coll); }; cljs.core.some = function some(pred, coll) { while (true) { if (cljs.core.seq.call(null, coll)) { var or__3544__auto__ = pred.call(null, cljs.core.first.call(null, coll)); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var G__5685 = pred; var G__5686 = cljs.core.next.call(null, coll); pred = G__5685; coll = G__5686; continue; } } else { return null; } break; } }; cljs.core.not_any_QMARK_ = function not_any_QMARK_(pred, coll) { return cljs.core.not.call(null, cljs.core.some.call(null, pred, coll)); }; cljs.core.even_QMARK_ = function even_QMARK_(n) { if (cljs.core.integer_QMARK_.call(null, n)) { return(n & 1) === 0; } else { throw new Error("Argument must be an integer: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(n)); } }; cljs.core.odd_QMARK_ = function odd_QMARK_(n) { return!cljs.core.even_QMARK_.call(null, n); }; cljs.core.identity = function identity(x) { return x; }; cljs.core.complement = function complement(f) { return function() { var G__5687 = null; var G__5687__0 = function() { return cljs.core.not.call(null, f.call(null)); }; var G__5687__1 = function(x) { return cljs.core.not.call(null, f.call(null, x)); }; var G__5687__2 = function(x, y) { return cljs.core.not.call(null, f.call(null, x, y)); }; var G__5687__3 = function() { var G__5688__delegate = function(x, y, zs) { return cljs.core.not.call(null, cljs.core.apply.call(null, f, x, y, zs)); }; var G__5688 = function(x, y, var_args) { var zs = null; if (arguments.length > 2) { zs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5688__delegate.call(this, x, y, zs); }; G__5688.cljs$lang$maxFixedArity = 2; G__5688.cljs$lang$applyTo = function(arglist__5689) { var x = cljs.core.first(arglist__5689); arglist__5689 = cljs.core.next(arglist__5689); var y = cljs.core.first(arglist__5689); var zs = cljs.core.rest(arglist__5689); return G__5688__delegate(x, y, zs); }; G__5688.cljs$core$IFn$_invoke$arity$variadic = G__5688__delegate; return G__5688; }(); G__5687 = function(x, y, var_args) { var zs = var_args; switch(arguments.length) { case 0: return G__5687__0.call(this); case 1: return G__5687__1.call(this, x); case 2: return G__5687__2.call(this, x, y); default: return G__5687__3.cljs$core$IFn$_invoke$arity$variadic(x, y, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; G__5687.cljs$lang$maxFixedArity = 2; G__5687.cljs$lang$applyTo = G__5687__3.cljs$lang$applyTo; return G__5687; }(); }; cljs.core.constantly = function constantly(x) { return function() { var G__5690__delegate = function(args) { return x; }; var G__5690 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5690__delegate.call(this, args); }; G__5690.cljs$lang$maxFixedArity = 0; G__5690.cljs$lang$applyTo = function(arglist__5691) { var args = cljs.core.seq(arglist__5691); return G__5690__delegate(args); }; G__5690.cljs$core$IFn$_invoke$arity$variadic = G__5690__delegate; return G__5690; }(); }; cljs.core.comp = function() { var comp = null; var comp__0 = function() { return cljs.core.identity; }; var comp__1 = function(f) { return f; }; var comp__2 = function(f, g) { return function() { var G__5692 = null; var G__5692__0 = function() { return f.call(null, g.call(null)); }; var G__5692__1 = function(x) { return f.call(null, g.call(null, x)); }; var G__5692__2 = function(x, y) { return f.call(null, g.call(null, x, y)); }; var G__5692__3 = function(x, y, z) { return f.call(null, g.call(null, x, y, z)); }; var G__5692__4 = function() { var G__5693__delegate = function(x, y, z, args) { return f.call(null, cljs.core.apply.call(null, g, x, y, z, args)); }; var G__5693 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5693__delegate.call(this, x, y, z, args); }; G__5693.cljs$lang$maxFixedArity = 3; G__5693.cljs$lang$applyTo = function(arglist__5694) { var x = cljs.core.first(arglist__5694); arglist__5694 = cljs.core.next(arglist__5694); var y = cljs.core.first(arglist__5694); arglist__5694 = cljs.core.next(arglist__5694); var z = cljs.core.first(arglist__5694); var args = cljs.core.rest(arglist__5694); return G__5693__delegate(x, y, z, args); }; G__5693.cljs$core$IFn$_invoke$arity$variadic = G__5693__delegate; return G__5693; }(); G__5692 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return G__5692__0.call(this); case 1: return G__5692__1.call(this, x); case 2: return G__5692__2.call(this, x, y); case 3: return G__5692__3.call(this, x, y, z); default: return G__5692__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__5692.cljs$lang$maxFixedArity = 3; G__5692.cljs$lang$applyTo = G__5692__4.cljs$lang$applyTo; return G__5692; }(); }; var comp__3 = function(f, g, h) { return function() { var G__5695 = null; var G__5695__0 = function() { return f.call(null, g.call(null, h.call(null))); }; var G__5695__1 = function(x) { return f.call(null, g.call(null, h.call(null, x))); }; var G__5695__2 = function(x, y) { return f.call(null, g.call(null, h.call(null, x, y))); }; var G__5695__3 = function(x, y, z) { return f.call(null, g.call(null, h.call(null, x, y, z))); }; var G__5695__4 = function() { var G__5696__delegate = function(x, y, z, args) { return f.call(null, g.call(null, cljs.core.apply.call(null, h, x, y, z, args))); }; var G__5696 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5696__delegate.call(this, x, y, z, args); }; G__5696.cljs$lang$maxFixedArity = 3; G__5696.cljs$lang$applyTo = function(arglist__5697) { var x = cljs.core.first(arglist__5697); arglist__5697 = cljs.core.next(arglist__5697); var y = cljs.core.first(arglist__5697); arglist__5697 = cljs.core.next(arglist__5697); var z = cljs.core.first(arglist__5697); var args = cljs.core.rest(arglist__5697); return G__5696__delegate(x, y, z, args); }; G__5696.cljs$core$IFn$_invoke$arity$variadic = G__5696__delegate; return G__5696; }(); G__5695 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return G__5695__0.call(this); case 1: return G__5695__1.call(this, x); case 2: return G__5695__2.call(this, x, y); case 3: return G__5695__3.call(this, x, y, z); default: return G__5695__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__5695.cljs$lang$maxFixedArity = 3; G__5695.cljs$lang$applyTo = G__5695__4.cljs$lang$applyTo; return G__5695; }(); }; var comp__4 = function() { var G__5698__delegate = function(f1, f2, f3, fs) { var fs__$1 = cljs.core.reverse.call(null, cljs.core.list_STAR_.call(null, f1, f2, f3, fs)); return function(fs__$1) { return function() { var G__5699__delegate = function(args) { var ret = cljs.core.apply.call(null, cljs.core.first.call(null, fs__$1), args); var fs__$2 = cljs.core.next.call(null, fs__$1); while (true) { if (fs__$2) { var G__5700 = cljs.core.first.call(null, fs__$2).call(null, ret); var G__5701 = cljs.core.next.call(null, fs__$2); ret = G__5700; fs__$2 = G__5701; continue; } else { return ret; } break; } }; var G__5699 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5699__delegate.call(this, args); }; G__5699.cljs$lang$maxFixedArity = 0; G__5699.cljs$lang$applyTo = function(arglist__5702) { var args = cljs.core.seq(arglist__5702); return G__5699__delegate(args); }; G__5699.cljs$core$IFn$_invoke$arity$variadic = G__5699__delegate; return G__5699; }(); }(fs__$1); }; var G__5698 = function(f1, f2, f3, var_args) { var fs = null; if (arguments.length > 3) { fs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5698__delegate.call(this, f1, f2, f3, fs); }; G__5698.cljs$lang$maxFixedArity = 3; G__5698.cljs$lang$applyTo = function(arglist__5703) { var f1 = cljs.core.first(arglist__5703); arglist__5703 = cljs.core.next(arglist__5703); var f2 = cljs.core.first(arglist__5703); arglist__5703 = cljs.core.next(arglist__5703); var f3 = cljs.core.first(arglist__5703); var fs = cljs.core.rest(arglist__5703); return G__5698__delegate(f1, f2, f3, fs); }; G__5698.cljs$core$IFn$_invoke$arity$variadic = G__5698__delegate; return G__5698; }(); comp = function(f1, f2, f3, var_args) { var fs = var_args; switch(arguments.length) { case 0: return comp__0.call(this); case 1: return comp__1.call(this, f1); case 2: return comp__2.call(this, f1, f2); case 3: return comp__3.call(this, f1, f2, f3); default: return comp__4.cljs$core$IFn$_invoke$arity$variadic(f1, f2, f3, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; comp.cljs$lang$maxFixedArity = 3; comp.cljs$lang$applyTo = comp__4.cljs$lang$applyTo; comp.cljs$core$IFn$_invoke$arity$0 = comp__0; comp.cljs$core$IFn$_invoke$arity$1 = comp__1; comp.cljs$core$IFn$_invoke$arity$2 = comp__2; comp.cljs$core$IFn$_invoke$arity$3 = comp__3; comp.cljs$core$IFn$_invoke$arity$variadic = comp__4.cljs$core$IFn$_invoke$arity$variadic; return comp; }(); cljs.core.partial = function() { var partial = null; var partial__1 = function(f) { return f; }; var partial__2 = function(f, arg1) { return function() { var G__5704__delegate = function(args) { return cljs.core.apply.call(null, f, arg1, args); }; var G__5704 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5704__delegate.call(this, args); }; G__5704.cljs$lang$maxFixedArity = 0; G__5704.cljs$lang$applyTo = function(arglist__5705) { var args = cljs.core.seq(arglist__5705); return G__5704__delegate(args); }; G__5704.cljs$core$IFn$_invoke$arity$variadic = G__5704__delegate; return G__5704; }(); }; var partial__3 = function(f, arg1, arg2) { return function() { var G__5706__delegate = function(args) { return cljs.core.apply.call(null, f, arg1, arg2, args); }; var G__5706 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5706__delegate.call(this, args); }; G__5706.cljs$lang$maxFixedArity = 0; G__5706.cljs$lang$applyTo = function(arglist__5707) { var args = cljs.core.seq(arglist__5707); return G__5706__delegate(args); }; G__5706.cljs$core$IFn$_invoke$arity$variadic = G__5706__delegate; return G__5706; }(); }; var partial__4 = function(f, arg1, arg2, arg3) { return function() { var G__5708__delegate = function(args) { return cljs.core.apply.call(null, f, arg1, arg2, arg3, args); }; var G__5708 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5708__delegate.call(this, args); }; G__5708.cljs$lang$maxFixedArity = 0; G__5708.cljs$lang$applyTo = function(arglist__5709) { var args = cljs.core.seq(arglist__5709); return G__5708__delegate(args); }; G__5708.cljs$core$IFn$_invoke$arity$variadic = G__5708__delegate; return G__5708; }(); }; var partial__5 = function() { var G__5710__delegate = function(f, arg1, arg2, arg3, more) { return function() { var G__5711__delegate = function(args) { return cljs.core.apply.call(null, f, arg1, arg2, arg3, cljs.core.concat.call(null, more, args)); }; var G__5711 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5711__delegate.call(this, args); }; G__5711.cljs$lang$maxFixedArity = 0; G__5711.cljs$lang$applyTo = function(arglist__5712) { var args = cljs.core.seq(arglist__5712); return G__5711__delegate(args); }; G__5711.cljs$core$IFn$_invoke$arity$variadic = G__5711__delegate; return G__5711; }(); }; var G__5710 = function(f, arg1, arg2, arg3, var_args) { var more = null; if (arguments.length > 4) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4), 0); } return G__5710__delegate.call(this, f, arg1, arg2, arg3, more); }; G__5710.cljs$lang$maxFixedArity = 4; G__5710.cljs$lang$applyTo = function(arglist__5713) { var f = cljs.core.first(arglist__5713); arglist__5713 = cljs.core.next(arglist__5713); var arg1 = cljs.core.first(arglist__5713); arglist__5713 = cljs.core.next(arglist__5713); var arg2 = cljs.core.first(arglist__5713); arglist__5713 = cljs.core.next(arglist__5713); var arg3 = cljs.core.first(arglist__5713); var more = cljs.core.rest(arglist__5713); return G__5710__delegate(f, arg1, arg2, arg3, more); }; G__5710.cljs$core$IFn$_invoke$arity$variadic = G__5710__delegate; return G__5710; }(); partial = function(f, arg1, arg2, arg3, var_args) { var more = var_args; switch(arguments.length) { case 1: return partial__1.call(this, f); case 2: return partial__2.call(this, f, arg1); case 3: return partial__3.call(this, f, arg1, arg2); case 4: return partial__4.call(this, f, arg1, arg2, arg3); default: return partial__5.cljs$core$IFn$_invoke$arity$variadic(f, arg1, arg2, arg3, cljs.core.array_seq(arguments, 4)); } throw new Error("Invalid arity: " + arguments.length); }; partial.cljs$lang$maxFixedArity = 4; partial.cljs$lang$applyTo = partial__5.cljs$lang$applyTo; partial.cljs$core$IFn$_invoke$arity$1 = partial__1; partial.cljs$core$IFn$_invoke$arity$2 = partial__2; partial.cljs$core$IFn$_invoke$arity$3 = partial__3; partial.cljs$core$IFn$_invoke$arity$4 = partial__4; partial.cljs$core$IFn$_invoke$arity$variadic = partial__5.cljs$core$IFn$_invoke$arity$variadic; return partial; }(); cljs.core.fnil = function() { var fnil = null; var fnil__2 = function(f, x) { return function() { var G__5714 = null; var G__5714__1 = function(a) { return f.call(null, a == null ? x : a); }; var G__5714__2 = function(a, b) { return f.call(null, a == null ? x : a, b); }; var G__5714__3 = function(a, b, c) { return f.call(null, a == null ? x : a, b, c); }; var G__5714__4 = function() { var G__5715__delegate = function(a, b, c, ds) { return cljs.core.apply.call(null, f, a == null ? x : a, b, c, ds); }; var G__5715 = function(a, b, c, var_args) { var ds = null; if (arguments.length > 3) { ds = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5715__delegate.call(this, a, b, c, ds); }; G__5715.cljs$lang$maxFixedArity = 3; G__5715.cljs$lang$applyTo = function(arglist__5716) { var a = cljs.core.first(arglist__5716); arglist__5716 = cljs.core.next(arglist__5716); var b = cljs.core.first(arglist__5716); arglist__5716 = cljs.core.next(arglist__5716); var c = cljs.core.first(arglist__5716); var ds = cljs.core.rest(arglist__5716); return G__5715__delegate(a, b, c, ds); }; G__5715.cljs$core$IFn$_invoke$arity$variadic = G__5715__delegate; return G__5715; }(); G__5714 = function(a, b, c, var_args) { var ds = var_args; switch(arguments.length) { case 1: return G__5714__1.call(this, a); case 2: return G__5714__2.call(this, a, b); case 3: return G__5714__3.call(this, a, b, c); default: return G__5714__4.cljs$core$IFn$_invoke$arity$variadic(a, b, c, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__5714.cljs$lang$maxFixedArity = 3; G__5714.cljs$lang$applyTo = G__5714__4.cljs$lang$applyTo; return G__5714; }(); }; var fnil__3 = function(f, x, y) { return function() { var G__5717 = null; var G__5717__2 = function(a, b) { return f.call(null, a == null ? x : a, b == null ? y : b); }; var G__5717__3 = function(a, b, c) { return f.call(null, a == null ? x : a, b == null ? y : b, c); }; var G__5717__4 = function() { var G__5718__delegate = function(a, b, c, ds) { return cljs.core.apply.call(null, f, a == null ? x : a, b == null ? y : b, c, ds); }; var G__5718 = function(a, b, c, var_args) { var ds = null; if (arguments.length > 3) { ds = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5718__delegate.call(this, a, b, c, ds); }; G__5718.cljs$lang$maxFixedArity = 3; G__5718.cljs$lang$applyTo = function(arglist__5719) { var a = cljs.core.first(arglist__5719); arglist__5719 = cljs.core.next(arglist__5719); var b = cljs.core.first(arglist__5719); arglist__5719 = cljs.core.next(arglist__5719); var c = cljs.core.first(arglist__5719); var ds = cljs.core.rest(arglist__5719); return G__5718__delegate(a, b, c, ds); }; G__5718.cljs$core$IFn$_invoke$arity$variadic = G__5718__delegate; return G__5718; }(); G__5717 = function(a, b, c, var_args) { var ds = var_args; switch(arguments.length) { case 2: return G__5717__2.call(this, a, b); case 3: return G__5717__3.call(this, a, b, c); default: return G__5717__4.cljs$core$IFn$_invoke$arity$variadic(a, b, c, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__5717.cljs$lang$maxFixedArity = 3; G__5717.cljs$lang$applyTo = G__5717__4.cljs$lang$applyTo; return G__5717; }(); }; var fnil__4 = function(f, x, y, z) { return function() { var G__5720 = null; var G__5720__2 = function(a, b) { return f.call(null, a == null ? x : a, b == null ? y : b); }; var G__5720__3 = function(a, b, c) { return f.call(null, a == null ? x : a, b == null ? y : b, c == null ? z : c); }; var G__5720__4 = function() { var G__5721__delegate = function(a, b, c, ds) { return cljs.core.apply.call(null, f, a == null ? x : a, b == null ? y : b, c == null ? z : c, ds); }; var G__5721 = function(a, b, c, var_args) { var ds = null; if (arguments.length > 3) { ds = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5721__delegate.call(this, a, b, c, ds); }; G__5721.cljs$lang$maxFixedArity = 3; G__5721.cljs$lang$applyTo = function(arglist__5722) { var a = cljs.core.first(arglist__5722); arglist__5722 = cljs.core.next(arglist__5722); var b = cljs.core.first(arglist__5722); arglist__5722 = cljs.core.next(arglist__5722); var c = cljs.core.first(arglist__5722); var ds = cljs.core.rest(arglist__5722); return G__5721__delegate(a, b, c, ds); }; G__5721.cljs$core$IFn$_invoke$arity$variadic = G__5721__delegate; return G__5721; }(); G__5720 = function(a, b, c, var_args) { var ds = var_args; switch(arguments.length) { case 2: return G__5720__2.call(this, a, b); case 3: return G__5720__3.call(this, a, b, c); default: return G__5720__4.cljs$core$IFn$_invoke$arity$variadic(a, b, c, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__5720.cljs$lang$maxFixedArity = 3; G__5720.cljs$lang$applyTo = G__5720__4.cljs$lang$applyTo; return G__5720; }(); }; fnil = function(f, x, y, z) { switch(arguments.length) { case 2: return fnil__2.call(this, f, x); case 3: return fnil__3.call(this, f, x, y); case 4: return fnil__4.call(this, f, x, y, z); } throw new Error("Invalid arity: " + arguments.length); }; fnil.cljs$core$IFn$_invoke$arity$2 = fnil__2; fnil.cljs$core$IFn$_invoke$arity$3 = fnil__3; fnil.cljs$core$IFn$_invoke$arity$4 = fnil__4; return fnil; }(); cljs.core.map_indexed = function map_indexed(f, coll) { var mapi = function mapi(idx, coll__$1) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll__$1); if (temp__4126__auto__) { var s = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, s)) { var c = cljs.core.chunk_first.call(null, s); var size = cljs.core.count.call(null, c); var b = cljs.core.chunk_buffer.call(null, size); var n__4400__auto___5723 = size; var i_5724 = 0; while (true) { if (i_5724 < n__4400__auto___5723) { cljs.core.chunk_append.call(null, b, f.call(null, idx + i_5724, cljs.core._nth.call(null, c, i_5724))); var G__5725 = i_5724 + 1; i_5724 = G__5725; continue; } else { } break; } return cljs.core.chunk_cons.call(null, cljs.core.chunk.call(null, b), mapi.call(null, idx + size, cljs.core.chunk_rest.call(null, s))); } else { return cljs.core.cons.call(null, f.call(null, idx, cljs.core.first.call(null, s)), mapi.call(null, idx + 1, cljs.core.rest.call(null, s))); } } else { return null; } }, null, null); }; return mapi.call(null, 0, coll); }; cljs.core.keep = function keep(f, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, s)) { var c = cljs.core.chunk_first.call(null, s); var size = cljs.core.count.call(null, c); var b = cljs.core.chunk_buffer.call(null, size); var n__4400__auto___5726 = size; var i_5727 = 0; while (true) { if (i_5727 < n__4400__auto___5726) { var x_5728 = f.call(null, cljs.core._nth.call(null, c, i_5727)); if (x_5728 == null) { } else { cljs.core.chunk_append.call(null, b, x_5728); } var G__5729 = i_5727 + 1; i_5727 = G__5729; continue; } else { } break; } return cljs.core.chunk_cons.call(null, cljs.core.chunk.call(null, b), keep.call(null, f, cljs.core.chunk_rest.call(null, s))); } else { var x = f.call(null, cljs.core.first.call(null, s)); if (x == null) { return keep.call(null, f, cljs.core.rest.call(null, s)); } else { return cljs.core.cons.call(null, x, keep.call(null, f, cljs.core.rest.call(null, s))); } } } else { return null; } }, null, null); }; cljs.core.keep_indexed = function keep_indexed(f, coll) { var keepi = function keepi(idx, coll__$1) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll__$1); if (temp__4126__auto__) { var s = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, s)) { var c = cljs.core.chunk_first.call(null, s); var size = cljs.core.count.call(null, c); var b = cljs.core.chunk_buffer.call(null, size); var n__4400__auto___5730 = size; var i_5731 = 0; while (true) { if (i_5731 < n__4400__auto___5730) { var x_5732 = f.call(null, idx + i_5731, cljs.core._nth.call(null, c, i_5731)); if (x_5732 == null) { } else { cljs.core.chunk_append.call(null, b, x_5732); } var G__5733 = i_5731 + 1; i_5731 = G__5733; continue; } else { } break; } return cljs.core.chunk_cons.call(null, cljs.core.chunk.call(null, b), keepi.call(null, idx + size, cljs.core.chunk_rest.call(null, s))); } else { var x = f.call(null, idx, cljs.core.first.call(null, s)); if (x == null) { return keepi.call(null, idx + 1, cljs.core.rest.call(null, s)); } else { return cljs.core.cons.call(null, x, keepi.call(null, idx + 1, cljs.core.rest.call(null, s))); } } } else { return null; } }, null, null); }; return keepi.call(null, 0, coll); }; cljs.core.every_pred = function() { var every_pred = null; var every_pred__1 = function(p) { return function() { var ep1 = null; var ep1__0 = function() { return true; }; var ep1__1 = function(x) { return cljs.core.boolean$.call(null, p.call(null, x)); }; var ep1__2 = function(x, y) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { return p.call(null, y); } else { return and__3532__auto__; } }()); }; var ep1__3 = function(x, y, z) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p.call(null, y); if (cljs.core.truth_(and__3532__auto____$1)) { return p.call(null, z); } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }()); }; var ep1__4 = function() { var G__5740__delegate = function(x, y, z, args) { return cljs.core.boolean$.call(null, ep1.call(null, x, y, z) && cljs.core.every_QMARK_.call(null, p, args)); }; var G__5740 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5740__delegate.call(this, x, y, z, args); }; G__5740.cljs$lang$maxFixedArity = 3; G__5740.cljs$lang$applyTo = function(arglist__5741) { var x = cljs.core.first(arglist__5741); arglist__5741 = cljs.core.next(arglist__5741); var y = cljs.core.first(arglist__5741); arglist__5741 = cljs.core.next(arglist__5741); var z = cljs.core.first(arglist__5741); var args = cljs.core.rest(arglist__5741); return G__5740__delegate(x, y, z, args); }; G__5740.cljs$core$IFn$_invoke$arity$variadic = G__5740__delegate; return G__5740; }(); ep1 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return ep1__0.call(this); case 1: return ep1__1.call(this, x); case 2: return ep1__2.call(this, x, y); case 3: return ep1__3.call(this, x, y, z); default: return ep1__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; ep1.cljs$lang$maxFixedArity = 3; ep1.cljs$lang$applyTo = ep1__4.cljs$lang$applyTo; ep1.cljs$core$IFn$_invoke$arity$0 = ep1__0; ep1.cljs$core$IFn$_invoke$arity$1 = ep1__1; ep1.cljs$core$IFn$_invoke$arity$2 = ep1__2; ep1.cljs$core$IFn$_invoke$arity$3 = ep1__3; ep1.cljs$core$IFn$_invoke$arity$variadic = ep1__4.cljs$core$IFn$_invoke$arity$variadic; return ep1; }(); }; var every_pred__2 = function(p1, p2) { return function() { var ep2 = null; var ep2__0 = function() { return true; }; var ep2__1 = function(x) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p1.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { return p2.call(null, x); } else { return and__3532__auto__; } }()); }; var ep2__2 = function(x, y) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p1.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p1.call(null, y); if (cljs.core.truth_(and__3532__auto____$1)) { var and__3532__auto____$2 = p2.call(null, x); if (cljs.core.truth_(and__3532__auto____$2)) { return p2.call(null, y); } else { return and__3532__auto____$2; } } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }()); }; var ep2__3 = function(x, y, z) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p1.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p1.call(null, y); if (cljs.core.truth_(and__3532__auto____$1)) { var and__3532__auto____$2 = p1.call(null, z); if (cljs.core.truth_(and__3532__auto____$2)) { var and__3532__auto____$3 = p2.call(null, x); if (cljs.core.truth_(and__3532__auto____$3)) { var and__3532__auto____$4 = p2.call(null, y); if (cljs.core.truth_(and__3532__auto____$4)) { return p2.call(null, z); } else { return and__3532__auto____$4; } } else { return and__3532__auto____$3; } } else { return and__3532__auto____$2; } } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }()); }; var ep2__4 = function() { var G__5742__delegate = function(x, y, z, args) { return cljs.core.boolean$.call(null, ep2.call(null, x, y, z) && cljs.core.every_QMARK_.call(null, function(p1__5734_SHARP_) { var and__3532__auto__ = p1.call(null, p1__5734_SHARP_); if (cljs.core.truth_(and__3532__auto__)) { return p2.call(null, p1__5734_SHARP_); } else { return and__3532__auto__; } }, args)); }; var G__5742 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5742__delegate.call(this, x, y, z, args); }; G__5742.cljs$lang$maxFixedArity = 3; G__5742.cljs$lang$applyTo = function(arglist__5743) { var x = cljs.core.first(arglist__5743); arglist__5743 = cljs.core.next(arglist__5743); var y = cljs.core.first(arglist__5743); arglist__5743 = cljs.core.next(arglist__5743); var z = cljs.core.first(arglist__5743); var args = cljs.core.rest(arglist__5743); return G__5742__delegate(x, y, z, args); }; G__5742.cljs$core$IFn$_invoke$arity$variadic = G__5742__delegate; return G__5742; }(); ep2 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return ep2__0.call(this); case 1: return ep2__1.call(this, x); case 2: return ep2__2.call(this, x, y); case 3: return ep2__3.call(this, x, y, z); default: return ep2__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; ep2.cljs$lang$maxFixedArity = 3; ep2.cljs$lang$applyTo = ep2__4.cljs$lang$applyTo; ep2.cljs$core$IFn$_invoke$arity$0 = ep2__0; ep2.cljs$core$IFn$_invoke$arity$1 = ep2__1; ep2.cljs$core$IFn$_invoke$arity$2 = ep2__2; ep2.cljs$core$IFn$_invoke$arity$3 = ep2__3; ep2.cljs$core$IFn$_invoke$arity$variadic = ep2__4.cljs$core$IFn$_invoke$arity$variadic; return ep2; }(); }; var every_pred__3 = function(p1, p2, p3) { return function() { var ep3 = null; var ep3__0 = function() { return true; }; var ep3__1 = function(x) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p1.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p2.call(null, x); if (cljs.core.truth_(and__3532__auto____$1)) { return p3.call(null, x); } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }()); }; var ep3__2 = function(x, y) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p1.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p2.call(null, x); if (cljs.core.truth_(and__3532__auto____$1)) { var and__3532__auto____$2 = p3.call(null, x); if (cljs.core.truth_(and__3532__auto____$2)) { var and__3532__auto____$3 = p1.call(null, y); if (cljs.core.truth_(and__3532__auto____$3)) { var and__3532__auto____$4 = p2.call(null, y); if (cljs.core.truth_(and__3532__auto____$4)) { return p3.call(null, y); } else { return and__3532__auto____$4; } } else { return and__3532__auto____$3; } } else { return and__3532__auto____$2; } } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }()); }; var ep3__3 = function(x, y, z) { return cljs.core.boolean$.call(null, function() { var and__3532__auto__ = p1.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p2.call(null, x); if (cljs.core.truth_(and__3532__auto____$1)) { var and__3532__auto____$2 = p3.call(null, x); if (cljs.core.truth_(and__3532__auto____$2)) { var and__3532__auto____$3 = p1.call(null, y); if (cljs.core.truth_(and__3532__auto____$3)) { var and__3532__auto____$4 = p2.call(null, y); if (cljs.core.truth_(and__3532__auto____$4)) { var and__3532__auto____$5 = p3.call(null, y); if (cljs.core.truth_(and__3532__auto____$5)) { var and__3532__auto____$6 = p1.call(null, z); if (cljs.core.truth_(and__3532__auto____$6)) { var and__3532__auto____$7 = p2.call(null, z); if (cljs.core.truth_(and__3532__auto____$7)) { return p3.call(null, z); } else { return and__3532__auto____$7; } } else { return and__3532__auto____$6; } } else { return and__3532__auto____$5; } } else { return and__3532__auto____$4; } } else { return and__3532__auto____$3; } } else { return and__3532__auto____$2; } } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }()); }; var ep3__4 = function() { var G__5744__delegate = function(x, y, z, args) { return cljs.core.boolean$.call(null, ep3.call(null, x, y, z) && cljs.core.every_QMARK_.call(null, function(p1__5735_SHARP_) { var and__3532__auto__ = p1.call(null, p1__5735_SHARP_); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p2.call(null, p1__5735_SHARP_); if (cljs.core.truth_(and__3532__auto____$1)) { return p3.call(null, p1__5735_SHARP_); } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }, args)); }; var G__5744 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5744__delegate.call(this, x, y, z, args); }; G__5744.cljs$lang$maxFixedArity = 3; G__5744.cljs$lang$applyTo = function(arglist__5745) { var x = cljs.core.first(arglist__5745); arglist__5745 = cljs.core.next(arglist__5745); var y = cljs.core.first(arglist__5745); arglist__5745 = cljs.core.next(arglist__5745); var z = cljs.core.first(arglist__5745); var args = cljs.core.rest(arglist__5745); return G__5744__delegate(x, y, z, args); }; G__5744.cljs$core$IFn$_invoke$arity$variadic = G__5744__delegate; return G__5744; }(); ep3 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return ep3__0.call(this); case 1: return ep3__1.call(this, x); case 2: return ep3__2.call(this, x, y); case 3: return ep3__3.call(this, x, y, z); default: return ep3__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; ep3.cljs$lang$maxFixedArity = 3; ep3.cljs$lang$applyTo = ep3__4.cljs$lang$applyTo; ep3.cljs$core$IFn$_invoke$arity$0 = ep3__0; ep3.cljs$core$IFn$_invoke$arity$1 = ep3__1; ep3.cljs$core$IFn$_invoke$arity$2 = ep3__2; ep3.cljs$core$IFn$_invoke$arity$3 = ep3__3; ep3.cljs$core$IFn$_invoke$arity$variadic = ep3__4.cljs$core$IFn$_invoke$arity$variadic; return ep3; }(); }; var every_pred__4 = function() { var G__5746__delegate = function(p1, p2, p3, ps) { var ps__$1 = cljs.core.list_STAR_.call(null, p1, p2, p3, ps); return function(ps__$1) { return function() { var epn = null; var epn__0 = function() { return true; }; var epn__1 = function(x) { return cljs.core.every_QMARK_.call(null, function(ps__$1) { return function(p1__5736_SHARP_) { return p1__5736_SHARP_.call(null, x); }; }(ps__$1), ps__$1); }; var epn__2 = function(x, y) { return cljs.core.every_QMARK_.call(null, function(ps__$1) { return function(p1__5737_SHARP_) { var and__3532__auto__ = p1__5737_SHARP_.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { return p1__5737_SHARP_.call(null, y); } else { return and__3532__auto__; } }; }(ps__$1), ps__$1); }; var epn__3 = function(x, y, z) { return cljs.core.every_QMARK_.call(null, function(ps__$1) { return function(p1__5738_SHARP_) { var and__3532__auto__ = p1__5738_SHARP_.call(null, x); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = p1__5738_SHARP_.call(null, y); if (cljs.core.truth_(and__3532__auto____$1)) { return p1__5738_SHARP_.call(null, z); } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }; }(ps__$1), ps__$1); }; var epn__4 = function() { var G__5747__delegate = function(x, y, z, args) { return cljs.core.boolean$.call(null, epn.call(null, x, y, z) && cljs.core.every_QMARK_.call(null, function(ps__$1) { return function(p1__5739_SHARP_) { return cljs.core.every_QMARK_.call(null, p1__5739_SHARP_, args); }; }(ps__$1), ps__$1)); }; var G__5747 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5747__delegate.call(this, x, y, z, args); }; G__5747.cljs$lang$maxFixedArity = 3; G__5747.cljs$lang$applyTo = function(arglist__5748) { var x = cljs.core.first(arglist__5748); arglist__5748 = cljs.core.next(arglist__5748); var y = cljs.core.first(arglist__5748); arglist__5748 = cljs.core.next(arglist__5748); var z = cljs.core.first(arglist__5748); var args = cljs.core.rest(arglist__5748); return G__5747__delegate(x, y, z, args); }; G__5747.cljs$core$IFn$_invoke$arity$variadic = G__5747__delegate; return G__5747; }(); epn = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return epn__0.call(this); case 1: return epn__1.call(this, x); case 2: return epn__2.call(this, x, y); case 3: return epn__3.call(this, x, y, z); default: return epn__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; epn.cljs$lang$maxFixedArity = 3; epn.cljs$lang$applyTo = epn__4.cljs$lang$applyTo; epn.cljs$core$IFn$_invoke$arity$0 = epn__0; epn.cljs$core$IFn$_invoke$arity$1 = epn__1; epn.cljs$core$IFn$_invoke$arity$2 = epn__2; epn.cljs$core$IFn$_invoke$arity$3 = epn__3; epn.cljs$core$IFn$_invoke$arity$variadic = epn__4.cljs$core$IFn$_invoke$arity$variadic; return epn; }(); }(ps__$1); }; var G__5746 = function(p1, p2, p3, var_args) { var ps = null; if (arguments.length > 3) { ps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5746__delegate.call(this, p1, p2, p3, ps); }; G__5746.cljs$lang$maxFixedArity = 3; G__5746.cljs$lang$applyTo = function(arglist__5749) { var p1 = cljs.core.first(arglist__5749); arglist__5749 = cljs.core.next(arglist__5749); var p2 = cljs.core.first(arglist__5749); arglist__5749 = cljs.core.next(arglist__5749); var p3 = cljs.core.first(arglist__5749); var ps = cljs.core.rest(arglist__5749); return G__5746__delegate(p1, p2, p3, ps); }; G__5746.cljs$core$IFn$_invoke$arity$variadic = G__5746__delegate; return G__5746; }(); every_pred = function(p1, p2, p3, var_args) { var ps = var_args; switch(arguments.length) { case 1: return every_pred__1.call(this, p1); case 2: return every_pred__2.call(this, p1, p2); case 3: return every_pred__3.call(this, p1, p2, p3); default: return every_pred__4.cljs$core$IFn$_invoke$arity$variadic(p1, p2, p3, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; every_pred.cljs$lang$maxFixedArity = 3; every_pred.cljs$lang$applyTo = every_pred__4.cljs$lang$applyTo; every_pred.cljs$core$IFn$_invoke$arity$1 = every_pred__1; every_pred.cljs$core$IFn$_invoke$arity$2 = every_pred__2; every_pred.cljs$core$IFn$_invoke$arity$3 = every_pred__3; every_pred.cljs$core$IFn$_invoke$arity$variadic = every_pred__4.cljs$core$IFn$_invoke$arity$variadic; return every_pred; }(); cljs.core.some_fn = function() { var some_fn = null; var some_fn__1 = function(p) { return function() { var sp1 = null; var sp1__0 = function() { return null; }; var sp1__1 = function(x) { return p.call(null, x); }; var sp1__2 = function(x, y) { var or__3544__auto__ = p.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return p.call(null, y); } }; var sp1__3 = function(x, y, z) { var or__3544__auto__ = p.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = p.call(null, y); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { return p.call(null, z); } } }; var sp1__4 = function() { var G__5756__delegate = function(x, y, z, args) { var or__3544__auto__ = sp1.call(null, x, y, z); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.some.call(null, p, args); } }; var G__5756 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5756__delegate.call(this, x, y, z, args); }; G__5756.cljs$lang$maxFixedArity = 3; G__5756.cljs$lang$applyTo = function(arglist__5757) { var x = cljs.core.first(arglist__5757); arglist__5757 = cljs.core.next(arglist__5757); var y = cljs.core.first(arglist__5757); arglist__5757 = cljs.core.next(arglist__5757); var z = cljs.core.first(arglist__5757); var args = cljs.core.rest(arglist__5757); return G__5756__delegate(x, y, z, args); }; G__5756.cljs$core$IFn$_invoke$arity$variadic = G__5756__delegate; return G__5756; }(); sp1 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return sp1__0.call(this); case 1: return sp1__1.call(this, x); case 2: return sp1__2.call(this, x, y); case 3: return sp1__3.call(this, x, y, z); default: return sp1__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; sp1.cljs$lang$maxFixedArity = 3; sp1.cljs$lang$applyTo = sp1__4.cljs$lang$applyTo; sp1.cljs$core$IFn$_invoke$arity$0 = sp1__0; sp1.cljs$core$IFn$_invoke$arity$1 = sp1__1; sp1.cljs$core$IFn$_invoke$arity$2 = sp1__2; sp1.cljs$core$IFn$_invoke$arity$3 = sp1__3; sp1.cljs$core$IFn$_invoke$arity$variadic = sp1__4.cljs$core$IFn$_invoke$arity$variadic; return sp1; }(); }; var some_fn__2 = function(p1, p2) { return function() { var sp2 = null; var sp2__0 = function() { return null; }; var sp2__1 = function(x) { var or__3544__auto__ = p1.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return p2.call(null, x); } }; var sp2__2 = function(x, y) { var or__3544__auto__ = p1.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = p1.call(null, y); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { var or__3544__auto____$2 = p2.call(null, x); if (cljs.core.truth_(or__3544__auto____$2)) { return or__3544__auto____$2; } else { return p2.call(null, y); } } } }; var sp2__3 = function(x, y, z) { var or__3544__auto__ = p1.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = p1.call(null, y); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { var or__3544__auto____$2 = p1.call(null, z); if (cljs.core.truth_(or__3544__auto____$2)) { return or__3544__auto____$2; } else { var or__3544__auto____$3 = p2.call(null, x); if (cljs.core.truth_(or__3544__auto____$3)) { return or__3544__auto____$3; } else { var or__3544__auto____$4 = p2.call(null, y); if (cljs.core.truth_(or__3544__auto____$4)) { return or__3544__auto____$4; } else { return p2.call(null, z); } } } } } }; var sp2__4 = function() { var G__5758__delegate = function(x, y, z, args) { var or__3544__auto__ = sp2.call(null, x, y, z); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.some.call(null, function(or__3544__auto__) { return function(p1__5750_SHARP_) { var or__3544__auto____$1 = p1.call(null, p1__5750_SHARP_); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { return p2.call(null, p1__5750_SHARP_); } }; }(or__3544__auto__), args); } }; var G__5758 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5758__delegate.call(this, x, y, z, args); }; G__5758.cljs$lang$maxFixedArity = 3; G__5758.cljs$lang$applyTo = function(arglist__5759) { var x = cljs.core.first(arglist__5759); arglist__5759 = cljs.core.next(arglist__5759); var y = cljs.core.first(arglist__5759); arglist__5759 = cljs.core.next(arglist__5759); var z = cljs.core.first(arglist__5759); var args = cljs.core.rest(arglist__5759); return G__5758__delegate(x, y, z, args); }; G__5758.cljs$core$IFn$_invoke$arity$variadic = G__5758__delegate; return G__5758; }(); sp2 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return sp2__0.call(this); case 1: return sp2__1.call(this, x); case 2: return sp2__2.call(this, x, y); case 3: return sp2__3.call(this, x, y, z); default: return sp2__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; sp2.cljs$lang$maxFixedArity = 3; sp2.cljs$lang$applyTo = sp2__4.cljs$lang$applyTo; sp2.cljs$core$IFn$_invoke$arity$0 = sp2__0; sp2.cljs$core$IFn$_invoke$arity$1 = sp2__1; sp2.cljs$core$IFn$_invoke$arity$2 = sp2__2; sp2.cljs$core$IFn$_invoke$arity$3 = sp2__3; sp2.cljs$core$IFn$_invoke$arity$variadic = sp2__4.cljs$core$IFn$_invoke$arity$variadic; return sp2; }(); }; var some_fn__3 = function(p1, p2, p3) { return function() { var sp3 = null; var sp3__0 = function() { return null; }; var sp3__1 = function(x) { var or__3544__auto__ = p1.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = p2.call(null, x); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { return p3.call(null, x); } } }; var sp3__2 = function(x, y) { var or__3544__auto__ = p1.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = p2.call(null, x); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { var or__3544__auto____$2 = p3.call(null, x); if (cljs.core.truth_(or__3544__auto____$2)) { return or__3544__auto____$2; } else { var or__3544__auto____$3 = p1.call(null, y); if (cljs.core.truth_(or__3544__auto____$3)) { return or__3544__auto____$3; } else { var or__3544__auto____$4 = p2.call(null, y); if (cljs.core.truth_(or__3544__auto____$4)) { return or__3544__auto____$4; } else { return p3.call(null, y); } } } } } }; var sp3__3 = function(x, y, z) { var or__3544__auto__ = p1.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = p2.call(null, x); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { var or__3544__auto____$2 = p3.call(null, x); if (cljs.core.truth_(or__3544__auto____$2)) { return or__3544__auto____$2; } else { var or__3544__auto____$3 = p1.call(null, y); if (cljs.core.truth_(or__3544__auto____$3)) { return or__3544__auto____$3; } else { var or__3544__auto____$4 = p2.call(null, y); if (cljs.core.truth_(or__3544__auto____$4)) { return or__3544__auto____$4; } else { var or__3544__auto____$5 = p3.call(null, y); if (cljs.core.truth_(or__3544__auto____$5)) { return or__3544__auto____$5; } else { var or__3544__auto____$6 = p1.call(null, z); if (cljs.core.truth_(or__3544__auto____$6)) { return or__3544__auto____$6; } else { var or__3544__auto____$7 = p2.call(null, z); if (cljs.core.truth_(or__3544__auto____$7)) { return or__3544__auto____$7; } else { return p3.call(null, z); } } } } } } } } }; var sp3__4 = function() { var G__5760__delegate = function(x, y, z, args) { var or__3544__auto__ = sp3.call(null, x, y, z); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.some.call(null, function(or__3544__auto__) { return function(p1__5751_SHARP_) { var or__3544__auto____$1 = p1.call(null, p1__5751_SHARP_); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { var or__3544__auto____$2 = p2.call(null, p1__5751_SHARP_); if (cljs.core.truth_(or__3544__auto____$2)) { return or__3544__auto____$2; } else { return p3.call(null, p1__5751_SHARP_); } } }; }(or__3544__auto__), args); } }; var G__5760 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5760__delegate.call(this, x, y, z, args); }; G__5760.cljs$lang$maxFixedArity = 3; G__5760.cljs$lang$applyTo = function(arglist__5761) { var x = cljs.core.first(arglist__5761); arglist__5761 = cljs.core.next(arglist__5761); var y = cljs.core.first(arglist__5761); arglist__5761 = cljs.core.next(arglist__5761); var z = cljs.core.first(arglist__5761); var args = cljs.core.rest(arglist__5761); return G__5760__delegate(x, y, z, args); }; G__5760.cljs$core$IFn$_invoke$arity$variadic = G__5760__delegate; return G__5760; }(); sp3 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return sp3__0.call(this); case 1: return sp3__1.call(this, x); case 2: return sp3__2.call(this, x, y); case 3: return sp3__3.call(this, x, y, z); default: return sp3__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; sp3.cljs$lang$maxFixedArity = 3; sp3.cljs$lang$applyTo = sp3__4.cljs$lang$applyTo; sp3.cljs$core$IFn$_invoke$arity$0 = sp3__0; sp3.cljs$core$IFn$_invoke$arity$1 = sp3__1; sp3.cljs$core$IFn$_invoke$arity$2 = sp3__2; sp3.cljs$core$IFn$_invoke$arity$3 = sp3__3; sp3.cljs$core$IFn$_invoke$arity$variadic = sp3__4.cljs$core$IFn$_invoke$arity$variadic; return sp3; }(); }; var some_fn__4 = function() { var G__5762__delegate = function(p1, p2, p3, ps) { var ps__$1 = cljs.core.list_STAR_.call(null, p1, p2, p3, ps); return function(ps__$1) { return function() { var spn = null; var spn__0 = function() { return null; }; var spn__1 = function(x) { return cljs.core.some.call(null, function(ps__$1) { return function(p1__5752_SHARP_) { return p1__5752_SHARP_.call(null, x); }; }(ps__$1), ps__$1); }; var spn__2 = function(x, y) { return cljs.core.some.call(null, function(ps__$1) { return function(p1__5753_SHARP_) { var or__3544__auto__ = p1__5753_SHARP_.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return p1__5753_SHARP_.call(null, y); } }; }(ps__$1), ps__$1); }; var spn__3 = function(x, y, z) { return cljs.core.some.call(null, function(ps__$1) { return function(p1__5754_SHARP_) { var or__3544__auto__ = p1__5754_SHARP_.call(null, x); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = p1__5754_SHARP_.call(null, y); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { return p1__5754_SHARP_.call(null, z); } } }; }(ps__$1), ps__$1); }; var spn__4 = function() { var G__5763__delegate = function(x, y, z, args) { var or__3544__auto__ = spn.call(null, x, y, z); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.some.call(null, function(or__3544__auto__, ps__$1) { return function(p1__5755_SHARP_) { return cljs.core.some.call(null, p1__5755_SHARP_, args); }; }(or__3544__auto__, ps__$1), ps__$1); } }; var G__5763 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5763__delegate.call(this, x, y, z, args); }; G__5763.cljs$lang$maxFixedArity = 3; G__5763.cljs$lang$applyTo = function(arglist__5764) { var x = cljs.core.first(arglist__5764); arglist__5764 = cljs.core.next(arglist__5764); var y = cljs.core.first(arglist__5764); arglist__5764 = cljs.core.next(arglist__5764); var z = cljs.core.first(arglist__5764); var args = cljs.core.rest(arglist__5764); return G__5763__delegate(x, y, z, args); }; G__5763.cljs$core$IFn$_invoke$arity$variadic = G__5763__delegate; return G__5763; }(); spn = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return spn__0.call(this); case 1: return spn__1.call(this, x); case 2: return spn__2.call(this, x, y); case 3: return spn__3.call(this, x, y, z); default: return spn__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; spn.cljs$lang$maxFixedArity = 3; spn.cljs$lang$applyTo = spn__4.cljs$lang$applyTo; spn.cljs$core$IFn$_invoke$arity$0 = spn__0; spn.cljs$core$IFn$_invoke$arity$1 = spn__1; spn.cljs$core$IFn$_invoke$arity$2 = spn__2; spn.cljs$core$IFn$_invoke$arity$3 = spn__3; spn.cljs$core$IFn$_invoke$arity$variadic = spn__4.cljs$core$IFn$_invoke$arity$variadic; return spn; }(); }(ps__$1); }; var G__5762 = function(p1, p2, p3, var_args) { var ps = null; if (arguments.length > 3) { ps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__5762__delegate.call(this, p1, p2, p3, ps); }; G__5762.cljs$lang$maxFixedArity = 3; G__5762.cljs$lang$applyTo = function(arglist__5765) { var p1 = cljs.core.first(arglist__5765); arglist__5765 = cljs.core.next(arglist__5765); var p2 = cljs.core.first(arglist__5765); arglist__5765 = cljs.core.next(arglist__5765); var p3 = cljs.core.first(arglist__5765); var ps = cljs.core.rest(arglist__5765); return G__5762__delegate(p1, p2, p3, ps); }; G__5762.cljs$core$IFn$_invoke$arity$variadic = G__5762__delegate; return G__5762; }(); some_fn = function(p1, p2, p3, var_args) { var ps = var_args; switch(arguments.length) { case 1: return some_fn__1.call(this, p1); case 2: return some_fn__2.call(this, p1, p2); case 3: return some_fn__3.call(this, p1, p2, p3); default: return some_fn__4.cljs$core$IFn$_invoke$arity$variadic(p1, p2, p3, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; some_fn.cljs$lang$maxFixedArity = 3; some_fn.cljs$lang$applyTo = some_fn__4.cljs$lang$applyTo; some_fn.cljs$core$IFn$_invoke$arity$1 = some_fn__1; some_fn.cljs$core$IFn$_invoke$arity$2 = some_fn__2; some_fn.cljs$core$IFn$_invoke$arity$3 = some_fn__3; some_fn.cljs$core$IFn$_invoke$arity$variadic = some_fn__4.cljs$core$IFn$_invoke$arity$variadic; return some_fn; }(); cljs.core.map = function() { var map = null; var map__2 = function(f, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, s)) { var c = cljs.core.chunk_first.call(null, s); var size = cljs.core.count.call(null, c); var b = cljs.core.chunk_buffer.call(null, size); var n__4400__auto___5767 = size; var i_5768 = 0; while (true) { if (i_5768 < n__4400__auto___5767) { cljs.core.chunk_append.call(null, b, f.call(null, cljs.core._nth.call(null, c, i_5768))); var G__5769 = i_5768 + 1; i_5768 = G__5769; continue; } else { } break; } return cljs.core.chunk_cons.call(null, cljs.core.chunk.call(null, b), map.call(null, f, cljs.core.chunk_rest.call(null, s))); } else { return cljs.core.cons.call(null, f.call(null, cljs.core.first.call(null, s)), map.call(null, f, cljs.core.rest.call(null, s))); } } else { return null; } }, null, null); }; var map__3 = function(f, c1, c2) { return new cljs.core.LazySeq(null, function() { var s1 = cljs.core.seq.call(null, c1); var s2 = cljs.core.seq.call(null, c2); if (s1 && s2) { return cljs.core.cons.call(null, f.call(null, cljs.core.first.call(null, s1), cljs.core.first.call(null, s2)), map.call(null, f, cljs.core.rest.call(null, s1), cljs.core.rest.call(null, s2))); } else { return null; } }, null, null); }; var map__4 = function(f, c1, c2, c3) { return new cljs.core.LazySeq(null, function() { var s1 = cljs.core.seq.call(null, c1); var s2 = cljs.core.seq.call(null, c2); var s3 = cljs.core.seq.call(null, c3); if (s1 && s2 && s3) { return cljs.core.cons.call(null, f.call(null, cljs.core.first.call(null, s1), cljs.core.first.call(null, s2), cljs.core.first.call(null, s3)), map.call(null, f, cljs.core.rest.call(null, s1), cljs.core.rest.call(null, s2), cljs.core.rest.call(null, s3))); } else { return null; } }, null, null); }; var map__5 = function() { var G__5770__delegate = function(f, c1, c2, c3, colls) { var step = function step(cs) { return new cljs.core.LazySeq(null, function() { var ss = map.call(null, cljs.core.seq, cs); if (cljs.core.every_QMARK_.call(null, cljs.core.identity, ss)) { return cljs.core.cons.call(null, map.call(null, cljs.core.first, ss), step.call(null, map.call(null, cljs.core.rest, ss))); } else { return null; } }, null, null); }; return map.call(null, function(step) { return function(p1__5766_SHARP_) { return cljs.core.apply.call(null, f, p1__5766_SHARP_); }; }(step), step.call(null, cljs.core.conj.call(null, colls, c3, c2, c1))); }; var G__5770 = function(f, c1, c2, c3, var_args) { var colls = null; if (arguments.length > 4) { colls = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4), 0); } return G__5770__delegate.call(this, f, c1, c2, c3, colls); }; G__5770.cljs$lang$maxFixedArity = 4; G__5770.cljs$lang$applyTo = function(arglist__5771) { var f = cljs.core.first(arglist__5771); arglist__5771 = cljs.core.next(arglist__5771); var c1 = cljs.core.first(arglist__5771); arglist__5771 = cljs.core.next(arglist__5771); var c2 = cljs.core.first(arglist__5771); arglist__5771 = cljs.core.next(arglist__5771); var c3 = cljs.core.first(arglist__5771); var colls = cljs.core.rest(arglist__5771); return G__5770__delegate(f, c1, c2, c3, colls); }; G__5770.cljs$core$IFn$_invoke$arity$variadic = G__5770__delegate; return G__5770; }(); map = function(f, c1, c2, c3, var_args) { var colls = var_args; switch(arguments.length) { case 2: return map__2.call(this, f, c1); case 3: return map__3.call(this, f, c1, c2); case 4: return map__4.call(this, f, c1, c2, c3); default: return map__5.cljs$core$IFn$_invoke$arity$variadic(f, c1, c2, c3, cljs.core.array_seq(arguments, 4)); } throw new Error("Invalid arity: " + arguments.length); }; map.cljs$lang$maxFixedArity = 4; map.cljs$lang$applyTo = map__5.cljs$lang$applyTo; map.cljs$core$IFn$_invoke$arity$2 = map__2; map.cljs$core$IFn$_invoke$arity$3 = map__3; map.cljs$core$IFn$_invoke$arity$4 = map__4; map.cljs$core$IFn$_invoke$arity$variadic = map__5.cljs$core$IFn$_invoke$arity$variadic; return map; }(); cljs.core.take = function take(n, coll) { return new cljs.core.LazySeq(null, function() { if (n > 0) { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; return cljs.core.cons.call(null, cljs.core.first.call(null, s), take.call(null, n - 1, cljs.core.rest.call(null, s))); } else { return null; } } else { return null; } }, null, null); }; cljs.core.drop = function drop(n, coll) { var step = function(n__$1, coll__$1) { while (true) { var s = cljs.core.seq.call(null, coll__$1); if (n__$1 > 0 && s) { var G__5772 = n__$1 - 1; var G__5773 = cljs.core.rest.call(null, s); n__$1 = G__5772; coll__$1 = G__5773; continue; } else { return s; } break; } }; return new cljs.core.LazySeq(null, function(step) { return function() { return step.call(null, n, coll); }; }(step), null, null); }; cljs.core.drop_last = function() { var drop_last = null; var drop_last__1 = function(s) { return drop_last.call(null, 1, s); }; var drop_last__2 = function(n, s) { return cljs.core.map.call(null, function(x, _) { return x; }, s, cljs.core.drop.call(null, n, s)); }; drop_last = function(n, s) { switch(arguments.length) { case 1: return drop_last__1.call(this, n); case 2: return drop_last__2.call(this, n, s); } throw new Error("Invalid arity: " + arguments.length); }; drop_last.cljs$core$IFn$_invoke$arity$1 = drop_last__1; drop_last.cljs$core$IFn$_invoke$arity$2 = drop_last__2; return drop_last; }(); cljs.core.take_last = function take_last(n, coll) { var s = cljs.core.seq.call(null, coll); var lead = cljs.core.seq.call(null, cljs.core.drop.call(null, n, coll)); while (true) { if (lead) { var G__5774 = cljs.core.next.call(null, s); var G__5775 = cljs.core.next.call(null, lead); s = G__5774; lead = G__5775; continue; } else { return s; } break; } }; cljs.core.drop_while = function drop_while(pred, coll) { var step = function(pred__$1, coll__$1) { while (true) { var s = cljs.core.seq.call(null, coll__$1); if (cljs.core.truth_(function() { var and__3532__auto__ = s; if (and__3532__auto__) { return pred__$1.call(null, cljs.core.first.call(null, s)); } else { return and__3532__auto__; } }())) { var G__5776 = pred__$1; var G__5777 = cljs.core.rest.call(null, s); pred__$1 = G__5776; coll__$1 = G__5777; continue; } else { return s; } break; } }; return new cljs.core.LazySeq(null, function(step) { return function() { return step.call(null, pred, coll); }; }(step), null, null); }; cljs.core.cycle = function cycle(coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; return cljs.core.concat.call(null, s, cycle.call(null, s)); } else { return null; } }, null, null); }; cljs.core.split_at = function split_at(n, coll) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.take.call(null, n, coll), cljs.core.drop.call(null, n, coll)], null); }; cljs.core.repeat = function() { var repeat = null; var repeat__1 = function(x) { return new cljs.core.LazySeq(null, function() { return cljs.core.cons.call(null, x, repeat.call(null, x)); }, null, null); }; var repeat__2 = function(n, x) { return cljs.core.take.call(null, n, repeat.call(null, x)); }; repeat = function(n, x) { switch(arguments.length) { case 1: return repeat__1.call(this, n); case 2: return repeat__2.call(this, n, x); } throw new Error("Invalid arity: " + arguments.length); }; repeat.cljs$core$IFn$_invoke$arity$1 = repeat__1; repeat.cljs$core$IFn$_invoke$arity$2 = repeat__2; return repeat; }(); cljs.core.replicate = function replicate(n, x) { return cljs.core.take.call(null, n, cljs.core.repeat.call(null, x)); }; cljs.core.repeatedly = function() { var repeatedly = null; var repeatedly__1 = function(f) { return new cljs.core.LazySeq(null, function() { return cljs.core.cons.call(null, f.call(null), repeatedly.call(null, f)); }, null, null); }; var repeatedly__2 = function(n, f) { return cljs.core.take.call(null, n, repeatedly.call(null, f)); }; repeatedly = function(n, f) { switch(arguments.length) { case 1: return repeatedly__1.call(this, n); case 2: return repeatedly__2.call(this, n, f); } throw new Error("Invalid arity: " + arguments.length); }; repeatedly.cljs$core$IFn$_invoke$arity$1 = repeatedly__1; repeatedly.cljs$core$IFn$_invoke$arity$2 = repeatedly__2; return repeatedly; }(); cljs.core.iterate = function iterate(f, x) { return cljs.core.cons.call(null, x, new cljs.core.LazySeq(null, function() { return iterate.call(null, f, f.call(null, x)); }, null, null)); }; cljs.core.interleave = function() { var interleave = null; var interleave__2 = function(c1, c2) { return new cljs.core.LazySeq(null, function() { var s1 = cljs.core.seq.call(null, c1); var s2 = cljs.core.seq.call(null, c2); if (s1 && s2) { return cljs.core.cons.call(null, cljs.core.first.call(null, s1), cljs.core.cons.call(null, cljs.core.first.call(null, s2), interleave.call(null, cljs.core.rest.call(null, s1), cljs.core.rest.call(null, s2)))); } else { return null; } }, null, null); }; var interleave__3 = function() { var G__5778__delegate = function(c1, c2, colls) { return new cljs.core.LazySeq(null, function() { var ss = cljs.core.map.call(null, cljs.core.seq, cljs.core.conj.call(null, colls, c2, c1)); if (cljs.core.every_QMARK_.call(null, cljs.core.identity, ss)) { return cljs.core.concat.call(null, cljs.core.map.call(null, cljs.core.first, ss), cljs.core.apply.call(null, interleave, cljs.core.map.call(null, cljs.core.rest, ss))); } else { return null; } }, null, null); }; var G__5778 = function(c1, c2, var_args) { var colls = null; if (arguments.length > 2) { colls = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5778__delegate.call(this, c1, c2, colls); }; G__5778.cljs$lang$maxFixedArity = 2; G__5778.cljs$lang$applyTo = function(arglist__5779) { var c1 = cljs.core.first(arglist__5779); arglist__5779 = cljs.core.next(arglist__5779); var c2 = cljs.core.first(arglist__5779); var colls = cljs.core.rest(arglist__5779); return G__5778__delegate(c1, c2, colls); }; G__5778.cljs$core$IFn$_invoke$arity$variadic = G__5778__delegate; return G__5778; }(); interleave = function(c1, c2, var_args) { var colls = var_args; switch(arguments.length) { case 2: return interleave__2.call(this, c1, c2); default: return interleave__3.cljs$core$IFn$_invoke$arity$variadic(c1, c2, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; interleave.cljs$lang$maxFixedArity = 2; interleave.cljs$lang$applyTo = interleave__3.cljs$lang$applyTo; interleave.cljs$core$IFn$_invoke$arity$2 = interleave__2; interleave.cljs$core$IFn$_invoke$arity$variadic = interleave__3.cljs$core$IFn$_invoke$arity$variadic; return interleave; }(); cljs.core.interpose = function interpose(sep, coll) { return cljs.core.drop.call(null, 1, cljs.core.interleave.call(null, cljs.core.repeat.call(null, sep), coll)); }; cljs.core.flatten1 = function flatten1(colls) { var cat = function cat(coll, colls__$1) { return new cljs.core.LazySeq(null, function() { var temp__4124__auto__ = cljs.core.seq.call(null, coll); if (temp__4124__auto__) { var coll__$1 = temp__4124__auto__; return cljs.core.cons.call(null, cljs.core.first.call(null, coll__$1), cat.call(null, cljs.core.rest.call(null, coll__$1), colls__$1)); } else { if (cljs.core.seq.call(null, colls__$1)) { return cat.call(null, cljs.core.first.call(null, colls__$1), cljs.core.rest.call(null, colls__$1)); } else { return null; } } }, null, null); }; return cat.call(null, null, colls); }; cljs.core.mapcat = function() { var mapcat = null; var mapcat__2 = function(f, coll) { return cljs.core.flatten1.call(null, cljs.core.map.call(null, f, coll)); }; var mapcat__3 = function() { var G__5780__delegate = function(f, coll, colls) { return cljs.core.flatten1.call(null, cljs.core.apply.call(null, cljs.core.map, f, coll, colls)); }; var G__5780 = function(f, coll, var_args) { var colls = null; if (arguments.length > 2) { colls = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return G__5780__delegate.call(this, f, coll, colls); }; G__5780.cljs$lang$maxFixedArity = 2; G__5780.cljs$lang$applyTo = function(arglist__5781) { var f = cljs.core.first(arglist__5781); arglist__5781 = cljs.core.next(arglist__5781); var coll = cljs.core.first(arglist__5781); var colls = cljs.core.rest(arglist__5781); return G__5780__delegate(f, coll, colls); }; G__5780.cljs$core$IFn$_invoke$arity$variadic = G__5780__delegate; return G__5780; }(); mapcat = function(f, coll, var_args) { var colls = var_args; switch(arguments.length) { case 2: return mapcat__2.call(this, f, coll); default: return mapcat__3.cljs$core$IFn$_invoke$arity$variadic(f, coll, cljs.core.array_seq(arguments, 2)); } throw new Error("Invalid arity: " + arguments.length); }; mapcat.cljs$lang$maxFixedArity = 2; mapcat.cljs$lang$applyTo = mapcat__3.cljs$lang$applyTo; mapcat.cljs$core$IFn$_invoke$arity$2 = mapcat__2; mapcat.cljs$core$IFn$_invoke$arity$variadic = mapcat__3.cljs$core$IFn$_invoke$arity$variadic; return mapcat; }(); cljs.core.filter = function filter(pred, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, s)) { var c = cljs.core.chunk_first.call(null, s); var size = cljs.core.count.call(null, c); var b = cljs.core.chunk_buffer.call(null, size); var n__4400__auto___5782 = size; var i_5783 = 0; while (true) { if (i_5783 < n__4400__auto___5782) { if (cljs.core.truth_(pred.call(null, cljs.core._nth.call(null, c, i_5783)))) { cljs.core.chunk_append.call(null, b, cljs.core._nth.call(null, c, i_5783)); } else { } var G__5784 = i_5783 + 1; i_5783 = G__5784; continue; } else { } break; } return cljs.core.chunk_cons.call(null, cljs.core.chunk.call(null, b), filter.call(null, pred, cljs.core.chunk_rest.call(null, s))); } else { var f = cljs.core.first.call(null, s); var r = cljs.core.rest.call(null, s); if (cljs.core.truth_(pred.call(null, f))) { return cljs.core.cons.call(null, f, filter.call(null, pred, r)); } else { return filter.call(null, pred, r); } } } else { return null; } }, null, null); }; cljs.core.remove = function remove(pred, coll) { return cljs.core.filter.call(null, cljs.core.complement.call(null, pred), coll); }; cljs.core.tree_seq = function tree_seq(branch_QMARK_, children, root) { var walk = function walk(node) { return new cljs.core.LazySeq(null, function() { return cljs.core.cons.call(null, node, cljs.core.truth_(branch_QMARK_.call(null, node)) ? cljs.core.mapcat.call(null, walk, children.call(null, node)) : null); }, null, null); }; return walk.call(null, root); }; cljs.core.flatten = function flatten(x) { return cljs.core.filter.call(null, function(p1__5785_SHARP_) { return!cljs.core.sequential_QMARK_.call(null, p1__5785_SHARP_); }, cljs.core.rest.call(null, cljs.core.tree_seq.call(null, cljs.core.sequential_QMARK_, cljs.core.seq, x))); }; cljs.core.into = function into(to, from) { if (!(to == null)) { if (function() { var G__5787 = to; if (G__5787) { var bit__4187__auto__ = G__5787.cljs$lang$protocol_mask$partition1$ & 4; if (bit__4187__auto__ || G__5787.cljs$core$IEditableCollection$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core.persistent_BANG_.call(null, cljs.core.reduce.call(null, cljs.core._conj_BANG_, cljs.core.transient$.call(null, to), from)); } else { return cljs.core.reduce.call(null, cljs.core._conj, to, from); } } else { return cljs.core.reduce.call(null, cljs.core.conj, cljs.core.List.EMPTY, from); } }; cljs.core.mapv = function() { var mapv = null; var mapv__2 = function(f, coll) { return cljs.core.persistent_BANG_.call(null, cljs.core.reduce.call(null, function(v, o) { return cljs.core.conj_BANG_.call(null, v, f.call(null, o)); }, cljs.core.transient$.call(null, cljs.core.PersistentVector.EMPTY), coll)); }; var mapv__3 = function(f, c1, c2) { return cljs.core.into.call(null, cljs.core.PersistentVector.EMPTY, cljs.core.map.call(null, f, c1, c2)); }; var mapv__4 = function(f, c1, c2, c3) { return cljs.core.into.call(null, cljs.core.PersistentVector.EMPTY, cljs.core.map.call(null, f, c1, c2, c3)); }; var mapv__5 = function() { var G__5788__delegate = function(f, c1, c2, c3, colls) { return cljs.core.into.call(null, cljs.core.PersistentVector.EMPTY, cljs.core.apply.call(null, cljs.core.map, f, c1, c2, c3, colls)); }; var G__5788 = function(f, c1, c2, c3, var_args) { var colls = null; if (arguments.length > 4) { colls = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4), 0); } return G__5788__delegate.call(this, f, c1, c2, c3, colls); }; G__5788.cljs$lang$maxFixedArity = 4; G__5788.cljs$lang$applyTo = function(arglist__5789) { var f = cljs.core.first(arglist__5789); arglist__5789 = cljs.core.next(arglist__5789); var c1 = cljs.core.first(arglist__5789); arglist__5789 = cljs.core.next(arglist__5789); var c2 = cljs.core.first(arglist__5789); arglist__5789 = cljs.core.next(arglist__5789); var c3 = cljs.core.first(arglist__5789); var colls = cljs.core.rest(arglist__5789); return G__5788__delegate(f, c1, c2, c3, colls); }; G__5788.cljs$core$IFn$_invoke$arity$variadic = G__5788__delegate; return G__5788; }(); mapv = function(f, c1, c2, c3, var_args) { var colls = var_args; switch(arguments.length) { case 2: return mapv__2.call(this, f, c1); case 3: return mapv__3.call(this, f, c1, c2); case 4: return mapv__4.call(this, f, c1, c2, c3); default: return mapv__5.cljs$core$IFn$_invoke$arity$variadic(f, c1, c2, c3, cljs.core.array_seq(arguments, 4)); } throw new Error("Invalid arity: " + arguments.length); }; mapv.cljs$lang$maxFixedArity = 4; mapv.cljs$lang$applyTo = mapv__5.cljs$lang$applyTo; mapv.cljs$core$IFn$_invoke$arity$2 = mapv__2; mapv.cljs$core$IFn$_invoke$arity$3 = mapv__3; mapv.cljs$core$IFn$_invoke$arity$4 = mapv__4; mapv.cljs$core$IFn$_invoke$arity$variadic = mapv__5.cljs$core$IFn$_invoke$arity$variadic; return mapv; }(); cljs.core.filterv = function filterv(pred, coll) { return cljs.core.persistent_BANG_.call(null, cljs.core.reduce.call(null, function(v, o) { if (cljs.core.truth_(pred.call(null, o))) { return cljs.core.conj_BANG_.call(null, v, o); } else { return v; } }, cljs.core.transient$.call(null, cljs.core.PersistentVector.EMPTY), coll)); }; cljs.core.partition = function() { var partition = null; var partition__2 = function(n, coll) { return partition.call(null, n, n, coll); }; var partition__3 = function(n, step, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; var p = cljs.core.take.call(null, n, s); if (n === cljs.core.count.call(null, p)) { return cljs.core.cons.call(null, p, partition.call(null, n, step, cljs.core.drop.call(null, step, s))); } else { return null; } } else { return null; } }, null, null); }; var partition__4 = function(n, step, pad, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; var p = cljs.core.take.call(null, n, s); if (n === cljs.core.count.call(null, p)) { return cljs.core.cons.call(null, p, partition.call(null, n, step, pad, cljs.core.drop.call(null, step, s))); } else { return cljs.core._conj.call(null, cljs.core.List.EMPTY, cljs.core.take.call(null, n, cljs.core.concat.call(null, p, pad))); } } else { return null; } }, null, null); }; partition = function(n, step, pad, coll) { switch(arguments.length) { case 2: return partition__2.call(this, n, step); case 3: return partition__3.call(this, n, step, pad); case 4: return partition__4.call(this, n, step, pad, coll); } throw new Error("Invalid arity: " + arguments.length); }; partition.cljs$core$IFn$_invoke$arity$2 = partition__2; partition.cljs$core$IFn$_invoke$arity$3 = partition__3; partition.cljs$core$IFn$_invoke$arity$4 = partition__4; return partition; }(); cljs.core.get_in = function() { var get_in = null; var get_in__2 = function(m, ks) { return get_in.call(null, m, ks, null); }; var get_in__3 = function(m, ks, not_found) { var sentinel = cljs.core.lookup_sentinel; var m__$1 = m; var ks__$1 = cljs.core.seq.call(null, ks); while (true) { if (ks__$1) { if (!function() { var G__5791 = m__$1; if (G__5791) { var bit__4194__auto__ = G__5791.cljs$lang$protocol_mask$partition0$ & 256; if (bit__4194__auto__ || G__5791.cljs$core$ILookup$) { return true; } else { if (!G__5791.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ILookup, G__5791); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.ILookup, G__5791); } }()) { return not_found; } else { var m__$2 = cljs.core.get.call(null, m__$1, cljs.core.first.call(null, ks__$1), sentinel); if (sentinel === m__$2) { return not_found; } else { var G__5792 = sentinel; var G__5793 = m__$2; var G__5794 = cljs.core.next.call(null, ks__$1); sentinel = G__5792; m__$1 = G__5793; ks__$1 = G__5794; continue; } } } else { return m__$1; } break; } }; get_in = function(m, ks, not_found) { switch(arguments.length) { case 2: return get_in__2.call(this, m, ks); case 3: return get_in__3.call(this, m, ks, not_found); } throw new Error("Invalid arity: " + arguments.length); }; get_in.cljs$core$IFn$_invoke$arity$2 = get_in__2; get_in.cljs$core$IFn$_invoke$arity$3 = get_in__3; return get_in; }(); cljs.core.assoc_in = function assoc_in(m, p__5795, v) { var vec__5797 = p__5795; var k = cljs.core.nth.call(null, vec__5797, 0, null); var ks = cljs.core.nthnext.call(null, vec__5797, 1); if (ks) { return cljs.core.assoc.call(null, m, k, assoc_in.call(null, cljs.core.get.call(null, m, k), ks, v)); } else { return cljs.core.assoc.call(null, m, k, v); } }; cljs.core.update_in = function() { var update_in = null; var update_in__3 = function(m, p__5798, f) { var vec__5808 = p__5798; var k = cljs.core.nth.call(null, vec__5808, 0, null); var ks = cljs.core.nthnext.call(null, vec__5808, 1); if (ks) { return cljs.core.assoc.call(null, m, k, update_in.call(null, cljs.core.get.call(null, m, k), ks, f)); } else { return cljs.core.assoc.call(null, m, k, f.call(null, cljs.core.get.call(null, m, k))); } }; var update_in__4 = function(m, p__5799, f, a) { var vec__5809 = p__5799; var k = cljs.core.nth.call(null, vec__5809, 0, null); var ks = cljs.core.nthnext.call(null, vec__5809, 1); if (ks) { return cljs.core.assoc.call(null, m, k, update_in.call(null, cljs.core.get.call(null, m, k), ks, f, a)); } else { return cljs.core.assoc.call(null, m, k, f.call(null, cljs.core.get.call(null, m, k), a)); } }; var update_in__5 = function(m, p__5800, f, a, b) { var vec__5810 = p__5800; var k = cljs.core.nth.call(null, vec__5810, 0, null); var ks = cljs.core.nthnext.call(null, vec__5810, 1); if (ks) { return cljs.core.assoc.call(null, m, k, update_in.call(null, cljs.core.get.call(null, m, k), ks, f, a, b)); } else { return cljs.core.assoc.call(null, m, k, f.call(null, cljs.core.get.call(null, m, k), a, b)); } }; var update_in__6 = function(m, p__5801, f, a, b, c) { var vec__5811 = p__5801; var k = cljs.core.nth.call(null, vec__5811, 0, null); var ks = cljs.core.nthnext.call(null, vec__5811, 1); if (ks) { return cljs.core.assoc.call(null, m, k, update_in.call(null, cljs.core.get.call(null, m, k), ks, f, a, b, c)); } else { return cljs.core.assoc.call(null, m, k, f.call(null, cljs.core.get.call(null, m, k), a, b, c)); } }; var update_in__7 = function() { var G__5813__delegate = function(m, p__5802, f, a, b, c, args) { var vec__5812 = p__5802; var k = cljs.core.nth.call(null, vec__5812, 0, null); var ks = cljs.core.nthnext.call(null, vec__5812, 1); if (ks) { return cljs.core.assoc.call(null, m, k, cljs.core.apply.call(null, update_in, cljs.core.get.call(null, m, k), ks, f, a, b, c, args)); } else { return cljs.core.assoc.call(null, m, k, cljs.core.apply.call(null, f, cljs.core.get.call(null, m, k), a, b, c, args)); } }; var G__5813 = function(m, p__5802, f, a, b, c, var_args) { var args = null; if (arguments.length > 6) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 6), 0); } return G__5813__delegate.call(this, m, p__5802, f, a, b, c, args); }; G__5813.cljs$lang$maxFixedArity = 6; G__5813.cljs$lang$applyTo = function(arglist__5814) { var m = cljs.core.first(arglist__5814); arglist__5814 = cljs.core.next(arglist__5814); var p__5802 = cljs.core.first(arglist__5814); arglist__5814 = cljs.core.next(arglist__5814); var f = cljs.core.first(arglist__5814); arglist__5814 = cljs.core.next(arglist__5814); var a = cljs.core.first(arglist__5814); arglist__5814 = cljs.core.next(arglist__5814); var b = cljs.core.first(arglist__5814); arglist__5814 = cljs.core.next(arglist__5814); var c = cljs.core.first(arglist__5814); var args = cljs.core.rest(arglist__5814); return G__5813__delegate(m, p__5802, f, a, b, c, args); }; G__5813.cljs$core$IFn$_invoke$arity$variadic = G__5813__delegate; return G__5813; }(); update_in = function(m, p__5802, f, a, b, c, var_args) { var args = var_args; switch(arguments.length) { case 3: return update_in__3.call(this, m, p__5802, f); case 4: return update_in__4.call(this, m, p__5802, f, a); case 5: return update_in__5.call(this, m, p__5802, f, a, b); case 6: return update_in__6.call(this, m, p__5802, f, a, b, c); default: return update_in__7.cljs$core$IFn$_invoke$arity$variadic(m, p__5802, f, a, b, c, cljs.core.array_seq(arguments, 6)); } throw new Error("Invalid arity: " + arguments.length); }; update_in.cljs$lang$maxFixedArity = 6; update_in.cljs$lang$applyTo = update_in__7.cljs$lang$applyTo; update_in.cljs$core$IFn$_invoke$arity$3 = update_in__3; update_in.cljs$core$IFn$_invoke$arity$4 = update_in__4; update_in.cljs$core$IFn$_invoke$arity$5 = update_in__5; update_in.cljs$core$IFn$_invoke$arity$6 = update_in__6; update_in.cljs$core$IFn$_invoke$arity$variadic = update_in__7.cljs$core$IFn$_invoke$arity$variadic; return update_in; }(); cljs.core.VectorNode = function(edit, arr) { this.edit = edit; this.arr = arr; }; cljs.core.VectorNode.cljs$lang$type = true; cljs.core.VectorNode.cljs$lang$ctorStr = "cljs.core/VectorNode"; cljs.core.VectorNode.cljs$lang$ctorPrWriter = function(this__4114__auto__, writer__4115__auto__, opts__4116__auto__) { return cljs.core._write.call(null, writer__4115__auto__, "cljs.core/VectorNode"); }; cljs.core.__GT_VectorNode = function __GT_VectorNode(edit, arr) { return new cljs.core.VectorNode(edit, arr); }; cljs.core.pv_fresh_node = function pv_fresh_node(edit) { return new cljs.core.VectorNode(edit, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]); }; cljs.core.pv_aget = function pv_aget(node, idx) { return node.arr[idx]; }; cljs.core.pv_aset = function pv_aset(node, idx, val) { return node.arr[idx] = val; }; cljs.core.pv_clone_node = function pv_clone_node(node) { return new cljs.core.VectorNode(node.edit, cljs.core.aclone.call(null, node.arr)); }; cljs.core.tail_off = function tail_off(pv) { var cnt = pv.cnt; if (cnt < 32) { return 0; } else { return cnt - 1 >>> 5 << 5; } }; cljs.core.new_path = function new_path(edit, level, node) { var ll = level; var ret = node; while (true) { if (ll === 0) { return ret; } else { var embed = ret; var r = cljs.core.pv_fresh_node.call(null, edit); var _ = cljs.core.pv_aset.call(null, r, 0, embed); var G__5815 = ll - 5; var G__5816 = r; ll = G__5815; ret = G__5816; continue; } break; } }; cljs.core.push_tail = function push_tail(pv, level, parent, tailnode) { var ret = cljs.core.pv_clone_node.call(null, parent); var subidx = pv.cnt - 1 >>> level & 31; if (5 === level) { cljs.core.pv_aset.call(null, ret, subidx, tailnode); return ret; } else { var child = cljs.core.pv_aget.call(null, parent, subidx); if (!(child == null)) { var node_to_insert = push_tail.call(null, pv, level - 5, child, tailnode); cljs.core.pv_aset.call(null, ret, subidx, node_to_insert); return ret; } else { var node_to_insert = cljs.core.new_path.call(null, null, level - 5, tailnode); cljs.core.pv_aset.call(null, ret, subidx, node_to_insert); return ret; } } }; cljs.core.vector_index_out_of_bounds = function vector_index_out_of_bounds(i, cnt) { throw new Error("No item " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(i) + " in vector of length " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cnt)); }; cljs.core.first_array_for_longvec = function first_array_for_longvec(pv) { var node = pv.root; var level = pv.shift; while (true) { if (level > 0) { var G__5817 = cljs.core.pv_aget.call(null, node, 0); var G__5818 = level - 5; node = G__5817; level = G__5818; continue; } else { return node.arr; } break; } }; cljs.core.unchecked_array_for = function unchecked_array_for(pv, i) { if (i >= cljs.core.tail_off.call(null, pv)) { return pv.tail; } else { var node = pv.root; var level = pv.shift; while (true) { if (level > 0) { var G__5819 = cljs.core.pv_aget.call(null, node, i >>> level & 31); var G__5820 = level - 5; node = G__5819; level = G__5820; continue; } else { return node.arr; } break; } } }; cljs.core.array_for = function array_for(pv, i) { if (0 <= i && i < pv.cnt) { return cljs.core.unchecked_array_for.call(null, pv, i); } else { return cljs.core.vector_index_out_of_bounds.call(null, i, pv.cnt); } }; cljs.core.do_assoc = function do_assoc(pv, level, node, i, val) { var ret = cljs.core.pv_clone_node.call(null, node); if (level === 0) { cljs.core.pv_aset.call(null, ret, i & 31, val); return ret; } else { var subidx = i >>> level & 31; cljs.core.pv_aset.call(null, ret, subidx, do_assoc.call(null, pv, level - 5, cljs.core.pv_aget.call(null, node, subidx), i, val)); return ret; } }; cljs.core.pop_tail = function pop_tail(pv, level, node) { var subidx = pv.cnt - 2 >>> level & 31; if (level > 5) { var new_child = pop_tail.call(null, pv, level - 5, cljs.core.pv_aget.call(null, node, subidx)); if (new_child == null && subidx === 0) { return null; } else { var ret = cljs.core.pv_clone_node.call(null, node); cljs.core.pv_aset.call(null, ret, subidx, new_child); return ret; } } else { if (subidx === 0) { return null; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var ret = cljs.core.pv_clone_node.call(null, node); cljs.core.pv_aset.call(null, ret, subidx, null); return ret; } else { return null; } } } }; cljs.core.PersistentVector = function(meta, cnt, shift, root, tail, __hash) { this.meta = meta; this.cnt = cnt; this.shift = shift; this.root = root; this.tail = tail; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 167668511; this.cljs$lang$protocol_mask$partition1$ = 8196; }; cljs.core.PersistentVector.cljs$lang$type = true; cljs.core.PersistentVector.cljs$lang$ctorStr = "cljs.core/PersistentVector"; cljs.core.PersistentVector.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentVector"); }; cljs.core.PersistentVector.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentVector.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentVector.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, k, null); }; cljs.core.PersistentVector.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, k, not_found) { var self__ = this; var coll__$1 = this; if (typeof k === "number") { return cljs.core._nth.call(null, coll__$1, k, not_found); } else { return not_found; } }; cljs.core.PersistentVector.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = function(v, f, init) { var self__ = this; var v__$1 = this; var step_init = [0, init]; var i = 0; while (true) { if (i < self__.cnt) { var arr = cljs.core.unchecked_array_for.call(null, v__$1, i); var len = arr.length; var init__$1 = function() { var j = 0; var init__$1 = step_init[1]; while (true) { if (j < len) { var init__$2 = f.call(null, init__$1, j + i, arr[j]); if (cljs.core.reduced_QMARK_.call(null, init__$2)) { return init__$2; } else { var G__5822 = j + 1; var G__5823 = init__$2; j = G__5822; init__$1 = G__5823; continue; } } else { step_init[0] = len; step_init[1] = init__$1; return init__$1; } break; } }(); if (cljs.core.reduced_QMARK_.call(null, init__$1)) { return cljs.core.deref.call(null, init__$1); } else { var G__5824 = i + step_init[0]; i = G__5824; continue; } } else { return step_init[1]; } break; } }; cljs.core.PersistentVector.prototype.cljs$core$IIndexed$_nth$arity$2 = function(coll, n) { var self__ = this; var coll__$1 = this; return cljs.core.array_for.call(null, coll__$1, n)[n & 31]; }; cljs.core.PersistentVector.prototype.cljs$core$IIndexed$_nth$arity$3 = function(coll, n, not_found) { var self__ = this; var coll__$1 = this; if (0 <= n && n < self__.cnt) { return cljs.core.unchecked_array_for.call(null, coll__$1, n)[n & 31]; } else { return not_found; } }; cljs.core.PersistentVector.prototype.cljs$core$IVector$_assoc_n$arity$3 = function(coll, n, val) { var self__ = this; var coll__$1 = this; if (0 <= n && n < self__.cnt) { if (cljs.core.tail_off.call(null, coll__$1) <= n) { var new_tail = cljs.core.aclone.call(null, self__.tail); new_tail[n & 31] = val; return new cljs.core.PersistentVector(self__.meta, self__.cnt, self__.shift, self__.root, new_tail, null); } else { return new cljs.core.PersistentVector(self__.meta, self__.cnt, self__.shift, cljs.core.do_assoc.call(null, coll__$1, self__.shift, self__.root, n, val), self__.tail, null); } } else { if (n === self__.cnt) { return cljs.core._conj.call(null, coll__$1, val); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("Index " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(n) + " out of bounds [0," + cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.cnt) + "]"); } else { return null; } } } }; cljs.core.PersistentVector.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentVector.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.PersistentVector(self__.meta, self__.cnt, self__.shift, self__.root, self__.tail, self__.__hash); }; cljs.core.PersistentVector.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.cnt; }; cljs.core.PersistentVector.prototype.cljs$core$IMapEntry$_key$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._nth.call(null, coll__$1, 0); }; cljs.core.PersistentVector.prototype.cljs$core$IMapEntry$_val$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._nth.call(null, coll__$1, 1); }; cljs.core.PersistentVector.prototype.cljs$core$IStack$_peek$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt > 0) { return cljs.core._nth.call(null, coll__$1, self__.cnt - 1); } else { return null; } }; cljs.core.PersistentVector.prototype.cljs$core$IStack$_pop$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt === 0) { throw new Error("Can't pop empty vector"); } else { if (1 === self__.cnt) { return cljs.core._with_meta.call(null, cljs.core.PersistentVector.EMPTY, self__.meta); } else { if (1 < self__.cnt - cljs.core.tail_off.call(null, coll__$1)) { return new cljs.core.PersistentVector(self__.meta, self__.cnt - 1, self__.shift, self__.root, self__.tail.slice(0, -1), null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var new_tail = cljs.core.unchecked_array_for.call(null, coll__$1, self__.cnt - 2); var nr = cljs.core.pop_tail.call(null, coll__$1, self__.shift, self__.root); var new_root = nr == null ? cljs.core.PersistentVector.EMPTY_NODE : nr; var cnt_1 = self__.cnt - 1; if (5 < self__.shift && cljs.core.pv_aget.call(null, new_root, 1) == null) { return new cljs.core.PersistentVector(self__.meta, cnt_1, self__.shift - 5, cljs.core.pv_aget.call(null, new_root, 0), new_tail, null); } else { return new cljs.core.PersistentVector(self__.meta, cnt_1, self__.shift, new_root, new_tail, null); } } else { return null; } } } } }; cljs.core.PersistentVector.prototype.cljs$core$IReversible$_rseq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt > 0) { return new cljs.core.RSeq(coll__$1, self__.cnt - 1, null); } else { return null; } }; cljs.core.PersistentVector.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentVector.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.PersistentVector.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return new cljs.core.TransientVector(self__.cnt, self__.shift, cljs.core.tv_editable_root.call(null, self__.root), cljs.core.tv_editable_tail.call(null, self__.tail)); }; cljs.core.PersistentVector.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.PersistentVector.EMPTY, self__.meta); }; cljs.core.PersistentVector.prototype.cljs$core$IReduce$_reduce$arity$2 = function(v, f) { var self__ = this; var v__$1 = this; return cljs.core.ci_reduce.call(null, v__$1, f); }; cljs.core.PersistentVector.prototype.cljs$core$IReduce$_reduce$arity$3 = function(v, f, start) { var self__ = this; var v__$1 = this; return cljs.core.ci_reduce.call(null, v__$1, f, start); }; cljs.core.PersistentVector.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(coll, k, v) { var self__ = this; var coll__$1 = this; if (typeof k === "number") { return cljs.core._assoc_n.call(null, coll__$1, k, v); } else { throw new Error("Vector's key for assoc must be a number."); } }; cljs.core.PersistentVector.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt === 0) { return null; } else { if (self__.cnt <= 32) { return new cljs.core.IndexedSeq(self__.tail, 0); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.chunked_seq.call(null, coll__$1, cljs.core.first_array_for_longvec.call(null, coll__$1), 0, 0); } else { return null; } } } }; cljs.core.PersistentVector.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentVector(meta__$1, self__.cnt, self__.shift, self__.root, self__.tail, self__.__hash); }; cljs.core.PersistentVector.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; if (self__.cnt - cljs.core.tail_off.call(null, coll__$1) < 32) { var len = self__.tail.length; var new_tail = new Array(len + 1); var n__4400__auto___5825 = len; var i_5826 = 0; while (true) { if (i_5826 < n__4400__auto___5825) { new_tail[i_5826] = self__.tail[i_5826]; var G__5827 = i_5826 + 1; i_5826 = G__5827; continue; } else { } break; } new_tail[len] = o; return new cljs.core.PersistentVector(self__.meta, self__.cnt + 1, self__.shift, self__.root, new_tail, null); } else { var root_overflow_QMARK_ = self__.cnt >>> 5 > 1 << self__.shift; var new_shift = root_overflow_QMARK_ ? self__.shift + 5 : self__.shift; var new_root = root_overflow_QMARK_ ? function() { var n_r = cljs.core.pv_fresh_node.call(null, null); cljs.core.pv_aset.call(null, n_r, 0, self__.root); cljs.core.pv_aset.call(null, n_r, 1, cljs.core.new_path.call(null, null, self__.shift, new cljs.core.VectorNode(null, self__.tail))); return n_r; }() : cljs.core.push_tail.call(null, coll__$1, self__.shift, self__.root, new cljs.core.VectorNode(null, self__.tail)); return new cljs.core.PersistentVector(self__.meta, self__.cnt + 1, new_shift, new_root, [o], null); } }; cljs.core.PersistentVector.prototype.call = function() { var G__5828 = null; var G__5828__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$IIndexed$_nth$arity$2(null, k); }; var G__5828__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$IIndexed$_nth$arity$3(null, k, not_found); }; G__5828 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5828__2.call(this, self__, k); case 3: return G__5828__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5828; }(); cljs.core.PersistentVector.prototype.apply = function(self__, args5821) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5821))); }; cljs.core.PersistentVector.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$IIndexed$_nth$arity$2(null, k); }; cljs.core.PersistentVector.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$IIndexed$_nth$arity$3(null, k, not_found); }; cljs.core.__GT_PersistentVector = function __GT_PersistentVector(meta, cnt, shift, root, tail, __hash) { return new cljs.core.PersistentVector(meta, cnt, shift, root, tail, __hash); }; cljs.core.PersistentVector.EMPTY_NODE = new cljs.core.VectorNode(null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]); cljs.core.PersistentVector.EMPTY = new cljs.core.PersistentVector(null, 0, 5, cljs.core.PersistentVector.EMPTY_NODE, [], 0); cljs.core.PersistentVector.fromArray = function(xs, no_clone) { var l = xs.length; var xs__$1 = no_clone ? xs : cljs.core.aclone.call(null, xs); if (l < 32) { return new cljs.core.PersistentVector(null, l, 5, cljs.core.PersistentVector.EMPTY_NODE, xs__$1, null); } else { var node = xs__$1.slice(0, 32); var v = new cljs.core.PersistentVector(null, 32, 5, cljs.core.PersistentVector.EMPTY_NODE, node, null); var i = 32; var out = cljs.core._as_transient.call(null, v); while (true) { if (i < l) { var G__5829 = i + 1; var G__5830 = cljs.core.conj_BANG_.call(null, out, xs__$1[i]); i = G__5829; out = G__5830; continue; } else { return cljs.core.persistent_BANG_.call(null, out); } break; } } }; cljs.core.vec = function vec(coll) { return cljs.core._persistent_BANG_.call(null, cljs.core.reduce.call(null, cljs.core._conj_BANG_, cljs.core._as_transient.call(null, cljs.core.PersistentVector.EMPTY), coll)); }; cljs.core.vector = function() { var vector__delegate = function(args) { if (args instanceof cljs.core.IndexedSeq && args.i === 0) { return cljs.core.PersistentVector.fromArray.call(null, args.arr, true); } else { return cljs.core.vec.call(null, args); } }; var vector = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return vector__delegate.call(this, args); }; vector.cljs$lang$maxFixedArity = 0; vector.cljs$lang$applyTo = function(arglist__5831) { var args = cljs.core.seq(arglist__5831); return vector__delegate(args); }; vector.cljs$core$IFn$_invoke$arity$variadic = vector__delegate; return vector; }(); cljs.core.ChunkedSeq = function(vec, node, i, off, meta, __hash) { this.vec = vec; this.node = node; this.i = i; this.off = off; this.meta = meta; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 32243948; this.cljs$lang$protocol_mask$partition1$ = 1536; }; cljs.core.ChunkedSeq.cljs$lang$type = true; cljs.core.ChunkedSeq.cljs$lang$ctorStr = "cljs.core/ChunkedSeq"; cljs.core.ChunkedSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ChunkedSeq"); }; cljs.core.ChunkedSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.ChunkedSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.ChunkedSeq.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.off + 1 < self__.node.length) { var s = cljs.core.chunked_seq.call(null, self__.vec, self__.node, self__.i, self__.off + 1); if (s == null) { return null; } else { return s; } } else { return cljs.core._chunked_next.call(null, coll__$1); } }; cljs.core.ChunkedSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.ChunkedSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.ChunkedSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.PersistentVector.EMPTY, self__.meta); }; cljs.core.ChunkedSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.ci_reduce.call(null, cljs.core.subvec.call(null, self__.vec, self__.i + self__.off, cljs.core.count.call(null, self__.vec)), f); }; cljs.core.ChunkedSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.ci_reduce.call(null, cljs.core.subvec.call(null, self__.vec, self__.i + self__.off, cljs.core.count.call(null, self__.vec)), f, start); }; cljs.core.ChunkedSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.node[self__.off]; }; cljs.core.ChunkedSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.off + 1 < self__.node.length) { var s = cljs.core.chunked_seq.call(null, self__.vec, self__.node, self__.i, self__.off + 1); if (s == null) { return cljs.core.List.EMPTY; } else { return s; } } else { return cljs.core._chunked_rest.call(null, coll__$1); } }; cljs.core.ChunkedSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.ChunkedSeq.prototype.cljs$core$IChunkedSeq$_chunked_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.array_chunk.call(null, self__.node, self__.off); }; cljs.core.ChunkedSeq.prototype.cljs$core$IChunkedSeq$_chunked_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var end = self__.i + self__.node.length; if (end < cljs.core._count.call(null, self__.vec)) { return cljs.core.chunked_seq.call(null, self__.vec, cljs.core.unchecked_array_for.call(null, self__.vec, end), end, 0); } else { return cljs.core.List.EMPTY; } }; cljs.core.ChunkedSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, m) { var self__ = this; var coll__$1 = this; return cljs.core.chunked_seq.call(null, self__.vec, self__.node, self__.i, self__.off, m); }; cljs.core.ChunkedSeq.prototype.cljs$core$IWithMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.ChunkedSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.ChunkedSeq.prototype.cljs$core$IChunkedNext$_chunked_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var end = self__.i + self__.node.length; if (end < cljs.core._count.call(null, self__.vec)) { return cljs.core.chunked_seq.call(null, self__.vec, cljs.core.unchecked_array_for.call(null, self__.vec, end), end, 0); } else { return null; } }; cljs.core.__GT_ChunkedSeq = function __GT_ChunkedSeq(vec, node, i, off, meta, __hash) { return new cljs.core.ChunkedSeq(vec, node, i, off, meta, __hash); }; cljs.core.chunked_seq = function() { var chunked_seq = null; var chunked_seq__3 = function(vec, i, off) { return new cljs.core.ChunkedSeq(vec, cljs.core.array_for.call(null, vec, i), i, off, null, null); }; var chunked_seq__4 = function(vec, node, i, off) { return new cljs.core.ChunkedSeq(vec, node, i, off, null, null); }; var chunked_seq__5 = function(vec, node, i, off, meta) { return new cljs.core.ChunkedSeq(vec, node, i, off, meta, null); }; chunked_seq = function(vec, node, i, off, meta) { switch(arguments.length) { case 3: return chunked_seq__3.call(this, vec, node, i); case 4: return chunked_seq__4.call(this, vec, node, i, off); case 5: return chunked_seq__5.call(this, vec, node, i, off, meta); } throw new Error("Invalid arity: " + arguments.length); }; chunked_seq.cljs$core$IFn$_invoke$arity$3 = chunked_seq__3; chunked_seq.cljs$core$IFn$_invoke$arity$4 = chunked_seq__4; chunked_seq.cljs$core$IFn$_invoke$arity$5 = chunked_seq__5; return chunked_seq; }(); cljs.core.Subvec = function(meta, v, start, end, __hash) { this.meta = meta; this.v = v; this.start = start; this.end = end; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 166617887; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.Subvec.cljs$lang$type = true; cljs.core.Subvec.cljs$lang$ctorStr = "cljs.core/Subvec"; cljs.core.Subvec.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Subvec"); }; cljs.core.Subvec.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.Subvec.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.Subvec.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, k, null); }; cljs.core.Subvec.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, k, not_found) { var self__ = this; var coll__$1 = this; if (typeof k === "number") { return cljs.core._nth.call(null, coll__$1, k, not_found); } else { return not_found; } }; cljs.core.Subvec.prototype.cljs$core$IIndexed$_nth$arity$2 = function(coll, n) { var self__ = this; var coll__$1 = this; if (n < 0 || self__.end <= self__.start + n) { return cljs.core.vector_index_out_of_bounds.call(null, n, self__.end - self__.start); } else { return cljs.core._nth.call(null, self__.v, self__.start + n); } }; cljs.core.Subvec.prototype.cljs$core$IIndexed$_nth$arity$3 = function(coll, n, not_found) { var self__ = this; var coll__$1 = this; if (n < 0 || self__.end <= self__.start + n) { return not_found; } else { return cljs.core._nth.call(null, self__.v, self__.start + n, not_found); } }; cljs.core.Subvec.prototype.cljs$core$IVector$_assoc_n$arity$3 = function(coll, n, val) { var self__ = this; var coll__$1 = this; var v_pos = self__.start + n; return cljs.core.build_subvec.call(null, self__.meta, cljs.core.assoc.call(null, self__.v, v_pos, val), self__.start, function() { var x__3851__auto__ = self__.end; var y__3852__auto__ = v_pos + 1; return x__3851__auto__ > y__3852__auto__ ? x__3851__auto__ : y__3852__auto__; }(), null); }; cljs.core.Subvec.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.Subvec.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.Subvec(self__.meta, self__.v, self__.start, self__.end, self__.__hash); }; cljs.core.Subvec.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.end - self__.start; }; cljs.core.Subvec.prototype.cljs$core$IStack$_peek$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._nth.call(null, self__.v, self__.end - 1); }; cljs.core.Subvec.prototype.cljs$core$IStack$_pop$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.start === self__.end) { throw new Error("Can't pop empty vector"); } else { return cljs.core.build_subvec.call(null, self__.meta, self__.v, self__.start, self__.end - 1, null); } }; cljs.core.Subvec.prototype.cljs$core$IReversible$_rseq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (!(self__.start === self__.end)) { return new cljs.core.RSeq(coll__$1, self__.end - self__.start - 1, null); } else { return null; } }; cljs.core.Subvec.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.Subvec.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.Subvec.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.PersistentVector.EMPTY, self__.meta); }; cljs.core.Subvec.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.ci_reduce.call(null, coll__$1, f); }; cljs.core.Subvec.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start__$1) { var self__ = this; var coll__$1 = this; return cljs.core.ci_reduce.call(null, coll__$1, f, start__$1); }; cljs.core.Subvec.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(coll, key, val) { var self__ = this; var coll__$1 = this; if (typeof key === "number") { return cljs.core._assoc_n.call(null, coll__$1, key, val); } else { throw new Error("Subvec's key for assoc must be a number."); } }; cljs.core.Subvec.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var subvec_seq = function(coll__$1) { return function subvec_seq(i) { if (i === self__.end) { return null; } else { return cljs.core.cons.call(null, cljs.core._nth.call(null, self__.v, i), new cljs.core.LazySeq(null, function(coll__$1) { return function() { return subvec_seq.call(null, i + 1); }; }(coll__$1), null, null)); } }; }(coll__$1); return subvec_seq.call(null, self__.start); }; cljs.core.Subvec.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return cljs.core.build_subvec.call(null, meta__$1, self__.v, self__.start, self__.end, self__.__hash); }; cljs.core.Subvec.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.build_subvec.call(null, self__.meta, cljs.core._assoc_n.call(null, self__.v, self__.end, o), self__.start, self__.end + 1, null); }; cljs.core.Subvec.prototype.call = function() { var G__5833 = null; var G__5833__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$IIndexed$_nth$arity$2(null, k); }; var G__5833__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$IIndexed$_nth$arity$3(null, k, not_found); }; G__5833 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5833__2.call(this, self__, k); case 3: return G__5833__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5833; }(); cljs.core.Subvec.prototype.apply = function(self__, args5832) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5832))); }; cljs.core.Subvec.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$IIndexed$_nth$arity$2(null, k); }; cljs.core.Subvec.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$IIndexed$_nth$arity$3(null, k, not_found); }; cljs.core.__GT_Subvec = function __GT_Subvec(meta, v, start, end, __hash) { return new cljs.core.Subvec(meta, v, start, end, __hash); }; cljs.core.build_subvec = function build_subvec(meta, v, start, end, __hash) { while (true) { if (v instanceof cljs.core.Subvec) { var G__5834 = meta; var G__5835 = v.v; var G__5836 = v.start + start; var G__5837 = v.start + end; var G__5838 = __hash; meta = G__5834; v = G__5835; start = G__5836; end = G__5837; __hash = G__5838; continue; } else { var c = cljs.core.count.call(null, v); if (start < 0 || end < 0 || start > c || end > c) { throw new Error("Index out of bounds"); } else { } return new cljs.core.Subvec(meta, v, start, end, __hash); } break; } }; cljs.core.subvec = function() { var subvec = null; var subvec__2 = function(v, start) { return subvec.call(null, v, start, cljs.core.count.call(null, v)); }; var subvec__3 = function(v, start, end) { return cljs.core.build_subvec.call(null, null, v, start, end, null); }; subvec = function(v, start, end) { switch(arguments.length) { case 2: return subvec__2.call(this, v, start); case 3: return subvec__3.call(this, v, start, end); } throw new Error("Invalid arity: " + arguments.length); }; subvec.cljs$core$IFn$_invoke$arity$2 = subvec__2; subvec.cljs$core$IFn$_invoke$arity$3 = subvec__3; return subvec; }(); cljs.core.tv_ensure_editable = function tv_ensure_editable(edit, node) { if (edit === node.edit) { return node; } else { return new cljs.core.VectorNode(edit, cljs.core.aclone.call(null, node.arr)); } }; cljs.core.tv_editable_root = function tv_editable_root(node) { return new cljs.core.VectorNode(function() { var obj5842 = {}; return obj5842; }(), cljs.core.aclone.call(null, node.arr)); }; cljs.core.tv_editable_tail = function tv_editable_tail(tl) { var ret = [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]; cljs.core.array_copy.call(null, tl, 0, ret, 0, tl.length); return ret; }; cljs.core.tv_push_tail = function tv_push_tail(tv, level, parent, tail_node) { var ret = cljs.core.tv_ensure_editable.call(null, tv.root.edit, parent); var subidx = tv.cnt - 1 >>> level & 31; cljs.core.pv_aset.call(null, ret, subidx, level === 5 ? tail_node : function() { var child = cljs.core.pv_aget.call(null, ret, subidx); if (!(child == null)) { return tv_push_tail.call(null, tv, level - 5, child, tail_node); } else { return cljs.core.new_path.call(null, tv.root.edit, level - 5, tail_node); } }()); return ret; }; cljs.core.tv_pop_tail = function tv_pop_tail(tv, level, node) { var node__$1 = cljs.core.tv_ensure_editable.call(null, tv.root.edit, node); var subidx = tv.cnt - 2 >>> level & 31; if (level > 5) { var new_child = tv_pop_tail.call(null, tv, level - 5, cljs.core.pv_aget.call(null, node__$1, subidx)); if (new_child == null && subidx === 0) { return null; } else { cljs.core.pv_aset.call(null, node__$1, subidx, new_child); return node__$1; } } else { if (subidx === 0) { return null; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { cljs.core.pv_aset.call(null, node__$1, subidx, null); return node__$1; } else { return null; } } } }; cljs.core.unchecked_editable_array_for = function unchecked_editable_array_for(tv, i) { if (i >= cljs.core.tail_off.call(null, tv)) { return tv.tail; } else { var root = tv.root; var node = root; var level = tv.shift; while (true) { if (level > 0) { var G__5843 = cljs.core.tv_ensure_editable.call(null, root.edit, cljs.core.pv_aget.call(null, node, i >>> level & 31)); var G__5844 = level - 5; node = G__5843; level = G__5844; continue; } else { return node.arr; } break; } } }; cljs.core.TransientVector = function(cnt, shift, root, tail) { this.cnt = cnt; this.shift = shift; this.root = root; this.tail = tail; this.cljs$lang$protocol_mask$partition0$ = 275; this.cljs$lang$protocol_mask$partition1$ = 88; }; cljs.core.TransientVector.cljs$lang$type = true; cljs.core.TransientVector.cljs$lang$ctorStr = "cljs.core/TransientVector"; cljs.core.TransientVector.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/TransientVector"); }; cljs.core.TransientVector.prototype.call = function() { var G__5846 = null; var G__5846__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__5846__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__5846 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5846__2.call(this, self__, k); case 3: return G__5846__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5846; }(); cljs.core.TransientVector.prototype.apply = function(self__, args5845) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5845))); }; cljs.core.TransientVector.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.TransientVector.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.TransientVector.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, k, null); }; cljs.core.TransientVector.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, k, not_found) { var self__ = this; var coll__$1 = this; if (typeof k === "number") { return cljs.core._nth.call(null, coll__$1, k, not_found); } else { return not_found; } }; cljs.core.TransientVector.prototype.cljs$core$IIndexed$_nth$arity$2 = function(coll, n) { var self__ = this; var coll__$1 = this; if (self__.root.edit) { return cljs.core.array_for.call(null, coll__$1, n)[n & 31]; } else { throw new Error("nth after persistent!"); } }; cljs.core.TransientVector.prototype.cljs$core$IIndexed$_nth$arity$3 = function(coll, n, not_found) { var self__ = this; var coll__$1 = this; if (0 <= n && n < self__.cnt) { return cljs.core._nth.call(null, coll__$1, n); } else { return not_found; } }; cljs.core.TransientVector.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.root.edit) { return self__.cnt; } else { throw new Error("count after persistent!"); } }; cljs.core.TransientVector.prototype.cljs$core$ITransientVector$_assoc_n_BANG_$arity$3 = function(tcoll, n, val) { var self__ = this; var tcoll__$1 = this; if (self__.root.edit) { if (0 <= n && n < self__.cnt) { if (cljs.core.tail_off.call(null, tcoll__$1) <= n) { self__.tail[n & 31] = val; return tcoll__$1; } else { var new_root = function(tcoll__$1) { return function go(level, node) { var node__$1 = cljs.core.tv_ensure_editable.call(null, self__.root.edit, node); if (level === 0) { cljs.core.pv_aset.call(null, node__$1, n & 31, val); return node__$1; } else { var subidx = n >>> level & 31; cljs.core.pv_aset.call(null, node__$1, subidx, go.call(null, level - 5, cljs.core.pv_aget.call(null, node__$1, subidx))); return node__$1; } }; }(tcoll__$1).call(null, self__.shift, self__.root); self__.root = new_root; return tcoll__$1; } } else { if (n === self__.cnt) { return cljs.core._conj_BANG_.call(null, tcoll__$1, val); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("Index " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(n) + " out of bounds for TransientVector of length" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.cnt)); } else { return null; } } } } else { throw new Error("assoc! after persistent!"); } }; cljs.core.TransientVector.prototype.cljs$core$ITransientVector$_pop_BANG_$arity$1 = function(tcoll) { var self__ = this; var tcoll__$1 = this; if (self__.root.edit) { if (self__.cnt === 0) { throw new Error("Can't pop empty vector"); } else { if (1 === self__.cnt) { self__.cnt = 0; return tcoll__$1; } else { if ((self__.cnt - 1 & 31) > 0) { self__.cnt = self__.cnt - 1; return tcoll__$1; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var new_tail = cljs.core.unchecked_editable_array_for.call(null, tcoll__$1, self__.cnt - 2); var new_root = function() { var nr = cljs.core.tv_pop_tail.call(null, tcoll__$1, self__.shift, self__.root); if (!(nr == null)) { return nr; } else { return new cljs.core.VectorNode(self__.root.edit, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]); } }(); if (5 < self__.shift && cljs.core.pv_aget.call(null, new_root, 1) == null) { var new_root__$1 = cljs.core.tv_ensure_editable.call(null, self__.root.edit, cljs.core.pv_aget.call(null, new_root, 0)); self__.root = new_root__$1; self__.shift = self__.shift - 5; self__.cnt = self__.cnt - 1; self__.tail = new_tail; return tcoll__$1; } else { self__.root = new_root; self__.cnt = self__.cnt - 1; self__.tail = new_tail; return tcoll__$1; } } else { return null; } } } } } else { throw new Error("pop! after persistent!"); } }; cljs.core.TransientVector.prototype.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3 = function(tcoll, key, val) { var self__ = this; var tcoll__$1 = this; if (typeof key === "number") { return cljs.core._assoc_n_BANG_.call(null, tcoll__$1, key, val); } else { throw new Error("TransientVector's key for assoc! must be a number."); } }; cljs.core.TransientVector.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 = function(tcoll, o) { var self__ = this; var tcoll__$1 = this; if (self__.root.edit) { if (self__.cnt - cljs.core.tail_off.call(null, tcoll__$1) < 32) { self__.tail[self__.cnt & 31] = o; self__.cnt = self__.cnt + 1; return tcoll__$1; } else { var tail_node = new cljs.core.VectorNode(self__.root.edit, self__.tail); var new_tail = [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]; new_tail[0] = o; self__.tail = new_tail; if (self__.cnt >>> 5 > 1 << self__.shift) { var new_root_array = [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]; var new_shift = self__.shift + 5; new_root_array[0] = self__.root; new_root_array[1] = cljs.core.new_path.call(null, self__.root.edit, self__.shift, tail_node); self__.root = new cljs.core.VectorNode(self__.root.edit, new_root_array); self__.shift = new_shift; self__.cnt = self__.cnt + 1; return tcoll__$1; } else { var new_root = cljs.core.tv_push_tail.call(null, tcoll__$1, self__.shift, self__.root, tail_node); self__.root = new_root; self__.cnt = self__.cnt + 1; return tcoll__$1; } } } else { throw new Error("conj! after persistent!"); } }; cljs.core.TransientVector.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 = function(tcoll) { var self__ = this; var tcoll__$1 = this; if (self__.root.edit) { self__.root.edit = null; var len = self__.cnt - cljs.core.tail_off.call(null, tcoll__$1); var trimmed_tail = new Array(len); cljs.core.array_copy.call(null, self__.tail, 0, trimmed_tail, 0, len); return new cljs.core.PersistentVector(null, self__.cnt, self__.shift, self__.root, trimmed_tail, null); } else { throw new Error("persistent! called twice"); } }; cljs.core.__GT_TransientVector = function __GT_TransientVector(cnt, shift, root, tail) { return new cljs.core.TransientVector(cnt, shift, root, tail); }; cljs.core.PersistentQueueSeq = function(meta, front, rear, __hash) { this.meta = meta; this.front = front; this.rear = rear; this.__hash = __hash; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 31850572; }; cljs.core.PersistentQueueSeq.cljs$lang$type = true; cljs.core.PersistentQueueSeq.cljs$lang$ctorStr = "cljs.core/PersistentQueueSeq"; cljs.core.PersistentQueueSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentQueueSeq"); }; cljs.core.PersistentQueueSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentQueueSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentQueueSeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentQueueSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentQueueSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.PersistentQueueSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.PersistentQueueSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.first.call(null, self__.front); }; cljs.core.PersistentQueueSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var temp__4124__auto__ = cljs.core.next.call(null, self__.front); if (temp__4124__auto__) { var f1 = temp__4124__auto__; return new cljs.core.PersistentQueueSeq(self__.meta, f1, self__.rear, null); } else { if (self__.rear == null) { return cljs.core._empty.call(null, coll__$1); } else { return new cljs.core.PersistentQueueSeq(self__.meta, self__.rear, null, null); } } }; cljs.core.PersistentQueueSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.PersistentQueueSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentQueueSeq(meta__$1, self__.front, self__.rear, self__.__hash); }; cljs.core.PersistentQueueSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_PersistentQueueSeq = function __GT_PersistentQueueSeq(meta, front, rear, __hash) { return new cljs.core.PersistentQueueSeq(meta, front, rear, __hash); }; cljs.core.PersistentQueue = function(meta, count, front, rear, __hash) { this.meta = meta; this.count = count; this.front = front; this.rear = rear; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 31858766; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.PersistentQueue.cljs$lang$type = true; cljs.core.PersistentQueue.cljs$lang$ctorStr = "cljs.core/PersistentQueue"; cljs.core.PersistentQueue.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentQueue"); }; cljs.core.PersistentQueue.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentQueue.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentQueue.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentQueue.prototype.cljs$core$ICloneable$_clone$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentQueue(self__.meta, self__.count, self__.front, self__.rear, self__.__hash); }; cljs.core.PersistentQueue.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.count; }; cljs.core.PersistentQueue.prototype.cljs$core$IStack$_peek$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.first.call(null, self__.front); }; cljs.core.PersistentQueue.prototype.cljs$core$IStack$_pop$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (cljs.core.truth_(self__.front)) { var temp__4124__auto__ = cljs.core.next.call(null, self__.front); if (temp__4124__auto__) { var f1 = temp__4124__auto__; return new cljs.core.PersistentQueue(self__.meta, self__.count - 1, f1, self__.rear, null); } else { return new cljs.core.PersistentQueue(self__.meta, self__.count - 1, cljs.core.seq.call(null, self__.rear), cljs.core.PersistentVector.EMPTY, null); } } else { return coll__$1; } }; cljs.core.PersistentQueue.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentQueue.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.PersistentQueue.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.PersistentQueue.EMPTY; }; cljs.core.PersistentQueue.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.first.call(null, self__.front); }; cljs.core.PersistentQueue.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.rest.call(null, cljs.core.seq.call(null, coll__$1)); }; cljs.core.PersistentQueue.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var rear__$1 = cljs.core.seq.call(null, self__.rear); if (cljs.core.truth_(function() { var or__3544__auto__ = self__.front; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return rear__$1; } }())) { return new cljs.core.PersistentQueueSeq(null, self__.front, cljs.core.seq.call(null, rear__$1), null); } else { return null; } }; cljs.core.PersistentQueue.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentQueue(meta__$1, self__.count, self__.front, self__.rear, self__.__hash); }; cljs.core.PersistentQueue.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; if (cljs.core.truth_(self__.front)) { return new cljs.core.PersistentQueue(self__.meta, self__.count + 1, self__.front, cljs.core.conj.call(null, function() { var or__3544__auto__ = self__.rear; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.PersistentVector.EMPTY; } }(), o), null); } else { return new cljs.core.PersistentQueue(self__.meta, self__.count + 1, cljs.core.conj.call(null, self__.front, o), cljs.core.PersistentVector.EMPTY, null); } }; cljs.core.__GT_PersistentQueue = function __GT_PersistentQueue(meta, count, front, rear, __hash) { return new cljs.core.PersistentQueue(meta, count, front, rear, __hash); }; cljs.core.PersistentQueue.EMPTY = new cljs.core.PersistentQueue(null, 0, null, cljs.core.PersistentVector.EMPTY, 0); cljs.core.NeverEquiv = function() { this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 2097152; }; cljs.core.NeverEquiv.cljs$lang$type = true; cljs.core.NeverEquiv.cljs$lang$ctorStr = "cljs.core/NeverEquiv"; cljs.core.NeverEquiv.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/NeverEquiv"); }; cljs.core.NeverEquiv.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(o, other) { var self__ = this; var o__$1 = this; return false; }; cljs.core.NeverEquiv.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.__GT_NeverEquiv = function __GT_NeverEquiv() { return new cljs.core.NeverEquiv; }; cljs.core.never_equiv = new cljs.core.NeverEquiv; cljs.core.equiv_map = function equiv_map(x, y) { return cljs.core.boolean$.call(null, cljs.core.map_QMARK_.call(null, y) ? cljs.core.count.call(null, x) === cljs.core.count.call(null, y) ? cljs.core.every_QMARK_.call(null, cljs.core.identity, cljs.core.map.call(null, function(xkv) { return cljs.core._EQ_.call(null, cljs.core.get.call(null, y, cljs.core.first.call(null, xkv), cljs.core.never_equiv), cljs.core.second.call(null, xkv)); }, x)) : null : null); }; cljs.core.scan_array = function scan_array(incr, k, array) { var len = array.length; var i = 0; while (true) { if (i < len) { if (k === array[i]) { return i; } else { var G__5847 = i + incr; i = G__5847; continue; } } else { return null; } break; } }; cljs.core.obj_map_compare_keys = function obj_map_compare_keys(a, b) { var a__$1 = cljs.core.hash.call(null, a); var b__$1 = cljs.core.hash.call(null, b); if (a__$1 < b__$1) { return-1; } else { if (a__$1 > b__$1) { return 1; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return 0; } else { return null; } } } }; cljs.core.obj_map__GT_hash_map = function obj_map__GT_hash_map(m, k, v) { var ks = m.keys; var len = ks.length; var so = m.strobj; var mm = cljs.core.meta.call(null, m); var i = 0; var out = cljs.core.transient$.call(null, cljs.core.PersistentHashMap.EMPTY); while (true) { if (i < len) { var k__$1 = ks[i]; var G__5848 = i + 1; var G__5849 = cljs.core.assoc_BANG_.call(null, out, k__$1, so[k__$1]); i = G__5848; out = G__5849; continue; } else { return cljs.core.with_meta.call(null, cljs.core.persistent_BANG_.call(null, cljs.core.assoc_BANG_.call(null, out, k, v)), mm); } break; } }; cljs.core.obj_clone = function obj_clone(obj, ks) { var new_obj = function() { var obj5853 = {}; return obj5853; }(); var l = ks.length; var i_5854 = 0; while (true) { if (i_5854 < l) { var k_5855 = ks[i_5854]; new_obj[k_5855] = obj[k_5855]; var G__5856 = i_5854 + 1; i_5854 = G__5856; continue; } else { } break; } return new_obj; }; cljs.core.ObjMap = function(meta, keys, strobj, update_count, __hash) { this.meta = meta; this.keys = keys; this.strobj = strobj; this.update_count = update_count; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 16123663; this.cljs$lang$protocol_mask$partition1$ = 4; }; cljs.core.ObjMap.cljs$lang$type = true; cljs.core.ObjMap.cljs$lang$ctorStr = "cljs.core/ObjMap"; cljs.core.ObjMap.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ObjMap"); }; cljs.core.ObjMap.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.ObjMap.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.ObjMap.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, k, null); }; cljs.core.ObjMap.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, k, not_found) { var self__ = this; var coll__$1 = this; if (goog.isString(k) && !(cljs.core.scan_array.call(null, 1, k, self__.keys) == null)) { return self__.strobj[k]; } else { return not_found; } }; cljs.core.ObjMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = function(coll, f, init) { var self__ = this; var coll__$1 = this; var len = self__.keys.length; var keys__$1 = self__.keys.sort(cljs.core.obj_map_compare_keys); var init__$1 = init; while (true) { if (cljs.core.seq.call(null, keys__$1)) { var k = cljs.core.first.call(null, keys__$1); var init__$2 = f.call(null, init__$1, k, self__.strobj[k]); if (cljs.core.reduced_QMARK_.call(null, init__$2)) { return cljs.core.deref.call(null, init__$2); } else { var G__5859 = cljs.core.rest.call(null, keys__$1); var G__5860 = init__$2; keys__$1 = G__5859; init__$1 = G__5860; continue; } } else { return init__$1; } break; } }; cljs.core.ObjMap.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.ObjMap.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.keys.length; }; cljs.core.ObjMap.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_unordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.ObjMap.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_map.call(null, coll__$1, other); }; cljs.core.ObjMap.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.transient$.call(null, cljs.core.into.call(null, cljs.core.PersistentHashMap.EMPTY, coll__$1)); }; cljs.core.ObjMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.ObjMap.EMPTY, self__.meta); }; cljs.core.ObjMap.prototype.cljs$core$IMap$_dissoc$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; if (goog.isString(k) && !(cljs.core.scan_array.call(null, 1, k, self__.keys) == null)) { var new_keys = cljs.core.aclone.call(null, self__.keys); var new_strobj = cljs.core.obj_clone.call(null, self__.strobj, self__.keys); new_keys.splice(cljs.core.scan_array.call(null, 1, k, new_keys), 1); delete new_strobj[k]; return new cljs.core.ObjMap(self__.meta, new_keys, new_strobj, self__.update_count + 1, null); } else { return coll__$1; } }; cljs.core.ObjMap.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(coll, k, v) { var self__ = this; var coll__$1 = this; if (goog.isString(k)) { if (self__.update_count > cljs.core.ObjMap.HASHMAP_THRESHOLD || self__.keys.length >= cljs.core.ObjMap.HASHMAP_THRESHOLD) { return cljs.core.obj_map__GT_hash_map.call(null, coll__$1, k, v); } else { if (!(cljs.core.scan_array.call(null, 1, k, self__.keys) == null)) { var new_strobj = cljs.core.obj_clone.call(null, self__.strobj, self__.keys); new_strobj[k] = v; return new cljs.core.ObjMap(self__.meta, self__.keys, new_strobj, self__.update_count + 1, null); } else { var new_strobj = cljs.core.obj_clone.call(null, self__.strobj, self__.keys); var new_keys = cljs.core.aclone.call(null, self__.keys); new_strobj[k] = v; new_keys.push(k); return new cljs.core.ObjMap(self__.meta, new_keys, new_strobj, self__.update_count + 1, null); } } } else { return cljs.core.obj_map__GT_hash_map.call(null, coll__$1, k, v); } }; cljs.core.ObjMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; if (goog.isString(k) && !(cljs.core.scan_array.call(null, 1, k, self__.keys) == null)) { return true; } else { return false; } }; cljs.core.ObjMap.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.keys.length > 0) { return cljs.core.map.call(null, function(coll__$1) { return function(p1__5857_SHARP_) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__5857_SHARP_, self__.strobj[p1__5857_SHARP_]], null); }; }(coll__$1), self__.keys.sort(cljs.core.obj_map_compare_keys)); } else { return null; } }; cljs.core.ObjMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.ObjMap(meta__$1, self__.keys, self__.strobj, self__.update_count, self__.__hash); }; cljs.core.ObjMap.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, entry) { var self__ = this; var coll__$1 = this; if (cljs.core.vector_QMARK_.call(null, entry)) { return cljs.core._assoc.call(null, coll__$1, cljs.core._nth.call(null, entry, 0), cljs.core._nth.call(null, entry, 1)); } else { return cljs.core.reduce.call(null, cljs.core._conj, coll__$1, entry); } }; cljs.core.ObjMap.prototype.call = function() { var G__5861 = null; var G__5861__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__5861__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__5861 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5861__2.call(this, self__, k); case 3: return G__5861__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5861; }(); cljs.core.ObjMap.prototype.apply = function(self__, args5858) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5858))); }; cljs.core.ObjMap.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.ObjMap.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.__GT_ObjMap = function __GT_ObjMap(meta, keys, strobj, update_count, __hash) { return new cljs.core.ObjMap(meta, keys, strobj, update_count, __hash); }; cljs.core.ObjMap.EMPTY = new cljs.core.ObjMap(null, [], function() { var obj5863 = {}; return obj5863; }(), 0, 0); cljs.core.ObjMap.HASHMAP_THRESHOLD = 8; cljs.core.ObjMap.fromObject = function(ks, obj) { return new cljs.core.ObjMap(null, ks, obj, 0, null); }; cljs.core.Iterator = function(s) { this.s = s; }; cljs.core.Iterator.cljs$lang$type = true; cljs.core.Iterator.cljs$lang$ctorStr = "cljs.core/Iterator"; cljs.core.Iterator.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Iterator"); }; cljs.core.Iterator.prototype.next = function() { var self__ = this; var _ = this; if (!(self__.s == null)) { var x = cljs.core.first.call(null, self__.s); self__.s = cljs.core.next.call(null, self__.s); return{"done":false, "value":x}; } else { return{"done":true, "value":null}; } }; cljs.core.__GT_Iterator = function __GT_Iterator(s) { return new cljs.core.Iterator(s); }; cljs.core.iterator = function iterator(coll) { return new cljs.core.Iterator(cljs.core.seq.call(null, coll)); }; cljs.core.EntriesIterator = function(s) { this.s = s; }; cljs.core.EntriesIterator.cljs$lang$type = true; cljs.core.EntriesIterator.cljs$lang$ctorStr = "cljs.core/EntriesIterator"; cljs.core.EntriesIterator.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/EntriesIterator"); }; cljs.core.EntriesIterator.prototype.next = function() { var self__ = this; var _ = this; if (!(self__.s == null)) { var vec__5864 = cljs.core.first.call(null, self__.s); var k = cljs.core.nth.call(null, vec__5864, 0, null); var v = cljs.core.nth.call(null, vec__5864, 1, null); self__.s = cljs.core.next.call(null, self__.s); return{"done":false, "value":[k, v]}; } else { return{"done":true, "value":null}; } }; cljs.core.__GT_EntriesIterator = function __GT_EntriesIterator(s) { return new cljs.core.EntriesIterator(s); }; cljs.core.entries_iterator = function entries_iterator(coll) { return new cljs.core.EntriesIterator(cljs.core.seq.call(null, coll)); }; cljs.core.SetEntriesIterator = function(s) { this.s = s; }; cljs.core.SetEntriesIterator.cljs$lang$type = true; cljs.core.SetEntriesIterator.cljs$lang$ctorStr = "cljs.core/SetEntriesIterator"; cljs.core.SetEntriesIterator.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/SetEntriesIterator"); }; cljs.core.SetEntriesIterator.prototype.next = function() { var self__ = this; var _ = this; if (!(self__.s == null)) { var x = cljs.core.first.call(null, self__.s); self__.s = cljs.core.next.call(null, self__.s); return{"done":false, "value":[x, x]}; } else { return{"done":true, "value":null}; } }; cljs.core.__GT_SetEntriesIterator = function __GT_SetEntriesIterator(s) { return new cljs.core.SetEntriesIterator(s); }; cljs.core.set_entries_iterator = function set_entries_iterator(coll) { return new cljs.core.SetEntriesIterator(cljs.core.seq.call(null, coll)); }; cljs.core.array_map_index_of_nil_QMARK_ = function array_map_index_of_nil_QMARK_(arr, m, k) { var len = arr.length; var i = 0; while (true) { if (len <= i) { return-1; } else { if (arr[i] == null) { return i; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var G__5865 = i + 2; i = G__5865; continue; } else { return null; } } } break; } }; cljs.core.array_map_index_of_keyword_QMARK_ = function array_map_index_of_keyword_QMARK_(arr, m, k) { var len = arr.length; var kstr = k.fqn; var i = 0; while (true) { if (len <= i) { return-1; } else { if (function() { var k_SINGLEQUOTE_ = arr[i]; return k_SINGLEQUOTE_ instanceof cljs.core.Keyword && kstr === k_SINGLEQUOTE_.fqn; }()) { return i; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var G__5866 = i + 2; i = G__5866; continue; } else { return null; } } } break; } }; cljs.core.array_map_index_of_symbol_QMARK_ = function array_map_index_of_symbol_QMARK_(arr, m, k) { var len = arr.length; var kstr = k.str; var i = 0; while (true) { if (len <= i) { return-1; } else { if (function() { var k_SINGLEQUOTE_ = arr[i]; return k_SINGLEQUOTE_ instanceof cljs.core.Symbol && kstr === k_SINGLEQUOTE_.str; }()) { return i; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var G__5867 = i + 2; i = G__5867; continue; } else { return null; } } } break; } }; cljs.core.array_map_index_of_identical_QMARK_ = function array_map_index_of_identical_QMARK_(arr, m, k) { var len = arr.length; var i = 0; while (true) { if (len <= i) { return-1; } else { if (k === arr[i]) { return i; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var G__5868 = i + 2; i = G__5868; continue; } else { return null; } } } break; } }; cljs.core.array_map_index_of_equiv_QMARK_ = function array_map_index_of_equiv_QMARK_(arr, m, k) { var len = arr.length; var i = 0; while (true) { if (len <= i) { return-1; } else { if (cljs.core._EQ_.call(null, k, arr[i])) { return i; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var G__5869 = i + 2; i = G__5869; continue; } else { return null; } } } break; } }; cljs.core.array_map_index_of = function array_map_index_of(m, k) { var arr = m.arr; if (k instanceof cljs.core.Keyword) { return cljs.core.array_map_index_of_keyword_QMARK_.call(null, arr, m, k); } else { if (goog.isString(k) || typeof k === "number") { return cljs.core.array_map_index_of_identical_QMARK_.call(null, arr, m, k); } else { if (k instanceof cljs.core.Symbol) { return cljs.core.array_map_index_of_symbol_QMARK_.call(null, arr, m, k); } else { if (k == null) { return cljs.core.array_map_index_of_nil_QMARK_.call(null, arr, m, k); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.array_map_index_of_equiv_QMARK_.call(null, arr, m, k); } else { return null; } } } } } }; cljs.core.array_map_extend_kv = function array_map_extend_kv(m, k, v) { var arr = m.arr; var l = arr.length; var narr = new Array(l + 2); var i_5870 = 0; while (true) { if (i_5870 < l) { narr[i_5870] = arr[i_5870]; var G__5871 = i_5870 + 1; i_5870 = G__5871; continue; } else { } break; } narr[l] = k; narr[l + 1] = v; return narr; }; cljs.core.PersistentArrayMapSeq = function(arr, i, _meta) { this.arr = arr; this.i = i; this._meta = _meta; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32374990; }; cljs.core.PersistentArrayMapSeq.cljs$lang$type = true; cljs.core.PersistentArrayMapSeq.cljs$lang$ctorStr = "cljs.core/PersistentArrayMapSeq"; cljs.core.PersistentArrayMapSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentArrayMapSeq"); }; cljs.core.PersistentArrayMapSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentArrayMapSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__._meta; }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.i < self__.arr.length - 2) { return new cljs.core.PersistentArrayMapSeq(self__.arr, self__.i + 2, self__._meta); } else { return null; } }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return(self__.arr.length - self__.i) / 2; }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.hash_ordered_coll.call(null, coll__$1); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__._meta); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.arr[self__.i], self__.arr[self__.i + 1]], null); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.i < self__.arr.length - 2) { return new cljs.core.PersistentArrayMapSeq(self__.arr, self__.i + 2, self__._meta); } else { return cljs.core.List.EMPTY; } }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, new_meta) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentArrayMapSeq(self__.arr, self__.i, new_meta); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_PersistentArrayMapSeq = function __GT_PersistentArrayMapSeq(arr, i, _meta) { return new cljs.core.PersistentArrayMapSeq(arr, i, _meta); }; cljs.core.persistent_array_map_seq = function persistent_array_map_seq(arr, i, _meta) { if (i <= arr.length - 2) { return new cljs.core.PersistentArrayMapSeq(arr, i, _meta); } else { return null; } }; cljs.core.PersistentArrayMap = function(meta, cnt, arr, __hash) { this.meta = meta; this.cnt = cnt; this.arr = arr; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 16647951; this.cljs$lang$protocol_mask$partition1$ = 8196; }; cljs.core.PersistentArrayMap.cljs$lang$type = true; cljs.core.PersistentArrayMap.cljs$lang$ctorStr = "cljs.core/PersistentArrayMap"; cljs.core.PersistentArrayMap.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentArrayMap"); }; cljs.core.PersistentArrayMap.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentArrayMap.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentArrayMap.prototype.keys = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.keys.call(null, coll)); }; cljs.core.PersistentArrayMap.prototype.entries = function() { var self__ = this; var coll = this; return cljs.core.entries_iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentArrayMap.prototype.values = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.vals.call(null, coll)); }; cljs.core.PersistentArrayMap.prototype.has = function(k) { var self__ = this; var coll = this; return cljs.core.contains_QMARK_.call(null, coll, k); }; cljs.core.PersistentArrayMap.prototype.get = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentArrayMap.prototype.forEach = function(f) { var self__ = this; var coll = this; var seq__5873 = cljs.core.seq.call(null, coll); var chunk__5874 = null; var count__5875 = 0; var i__5876 = 0; while (true) { if (i__5876 < count__5875) { var vec__5877 = cljs.core._nth.call(null, chunk__5874, i__5876); var k = cljs.core.nth.call(null, vec__5877, 0, null); var v = cljs.core.nth.call(null, vec__5877, 1, null); f.call(null, v, k); var G__5882 = seq__5873; var G__5883 = chunk__5874; var G__5884 = count__5875; var G__5885 = i__5876 + 1; seq__5873 = G__5882; chunk__5874 = G__5883; count__5875 = G__5884; i__5876 = G__5885; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__5873); if (temp__4126__auto__) { var seq__5873__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__5873__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__5873__$1); var G__5886 = cljs.core.chunk_rest.call(null, seq__5873__$1); var G__5887 = c__4300__auto__; var G__5888 = cljs.core.count.call(null, c__4300__auto__); var G__5889 = 0; seq__5873 = G__5886; chunk__5874 = G__5887; count__5875 = G__5888; i__5876 = G__5889; continue; } else { var vec__5878 = cljs.core.first.call(null, seq__5873__$1); var k = cljs.core.nth.call(null, vec__5878, 0, null); var v = cljs.core.nth.call(null, vec__5878, 1, null); f.call(null, v, k); var G__5890 = cljs.core.next.call(null, seq__5873__$1); var G__5891 = null; var G__5892 = 0; var G__5893 = 0; seq__5873 = G__5890; chunk__5874 = G__5891; count__5875 = G__5892; i__5876 = G__5893; continue; } } else { return null; } } break; } }; cljs.core.PersistentArrayMap.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, k, null); }; cljs.core.PersistentArrayMap.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, k, not_found) { var self__ = this; var coll__$1 = this; var idx = cljs.core.array_map_index_of.call(null, coll__$1, k); if (idx === -1) { return not_found; } else { return self__.arr[idx + 1]; } }; cljs.core.PersistentArrayMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = function(coll, f, init) { var self__ = this; var coll__$1 = this; var len = self__.arr.length; var i = 0; var init__$1 = init; while (true) { if (i < len) { var init__$2 = f.call(null, init__$1, self__.arr[i], self__.arr[i + 1]); if (cljs.core.reduced_QMARK_.call(null, init__$2)) { return cljs.core.deref.call(null, init__$2); } else { var G__5894 = i + 2; var G__5895 = init__$2; i = G__5894; init__$1 = G__5895; continue; } } else { return init__$1; } break; } }; cljs.core.PersistentArrayMap.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentArrayMap.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.PersistentArrayMap(self__.meta, self__.cnt, self__.arr, self__.__hash); }; cljs.core.PersistentArrayMap.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.cnt; }; cljs.core.PersistentArrayMap.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_unordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentArrayMap.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_map.call(null, coll__$1, other); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return new cljs.core.TransientArrayMap(function() { var obj5880 = {}; return obj5880; }(), self__.arr.length, cljs.core.aclone.call(null, self__.arr)); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._with_meta.call(null, cljs.core.PersistentArrayMap.EMPTY, self__.meta); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IMap$_dissoc$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; var idx = cljs.core.array_map_index_of.call(null, coll__$1, k); if (idx >= 0) { var len = self__.arr.length; var new_len = len - 2; if (new_len === 0) { return cljs.core._empty.call(null, coll__$1); } else { var new_arr = new Array(new_len); var s = 0; var d = 0; while (true) { if (s >= len) { return new cljs.core.PersistentArrayMap(self__.meta, self__.cnt - 1, new_arr, null); } else { if (cljs.core._EQ_.call(null, k, self__.arr[s])) { var G__5896 = s + 2; var G__5897 = d; s = G__5896; d = G__5897; continue; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { new_arr[d] = self__.arr[s]; new_arr[d + 1] = self__.arr[s + 1]; var G__5898 = s + 2; var G__5899 = d + 2; s = G__5898; d = G__5899; continue; } else { return null; } } } break; } } } else { return coll__$1; } }; cljs.core.PersistentArrayMap.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(coll, k, v) { var self__ = this; var coll__$1 = this; var idx = cljs.core.array_map_index_of.call(null, coll__$1, k); if (idx === -1) { if (self__.cnt < cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD) { var arr__$1 = cljs.core.array_map_extend_kv.call(null, coll__$1, k, v); return new cljs.core.PersistentArrayMap(self__.meta, self__.cnt + 1, arr__$1, null); } else { return cljs.core._with_meta.call(null, cljs.core._assoc.call(null, cljs.core.into.call(null, cljs.core.PersistentHashMap.EMPTY, coll__$1), k, v), self__.meta); } } else { if (v === self__.arr[idx + 1]) { return coll__$1; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var arr__$1 = function() { var G__5881 = cljs.core.aclone.call(null, self__.arr); G__5881[idx + 1] = v; return G__5881; }(); return new cljs.core.PersistentArrayMap(self__.meta, self__.cnt, arr__$1, null); } else { return null; } } } }; cljs.core.PersistentArrayMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return!(cljs.core.array_map_index_of.call(null, coll__$1, k) === -1); }; cljs.core.PersistentArrayMap.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.persistent_array_map_seq.call(null, self__.arr, 0, null); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentArrayMap(meta__$1, self__.cnt, self__.arr, self__.__hash); }; cljs.core.PersistentArrayMap.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, entry) { var self__ = this; var coll__$1 = this; if (cljs.core.vector_QMARK_.call(null, entry)) { return cljs.core._assoc.call(null, coll__$1, cljs.core._nth.call(null, entry, 0), cljs.core._nth.call(null, entry, 1)); } else { var ret = coll__$1; var es = cljs.core.seq.call(null, entry); while (true) { if (es == null) { return ret; } else { var e = cljs.core.first.call(null, es); if (cljs.core.vector_QMARK_.call(null, e)) { var G__5900 = cljs.core._assoc.call(null, ret, cljs.core._nth.call(null, e, 0), cljs.core._nth.call(null, e, 1)); var G__5901 = cljs.core.next.call(null, es); ret = G__5900; es = G__5901; continue; } else { throw new Error("conj on a map takes map entries or seqables of map entries"); } } break; } } }; cljs.core.PersistentArrayMap.prototype.call = function() { var G__5902 = null; var G__5902__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__5902__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__5902 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5902__2.call(this, self__, k); case 3: return G__5902__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5902; }(); cljs.core.PersistentArrayMap.prototype.apply = function(self__, args5872) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5872))); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.__GT_PersistentArrayMap = function __GT_PersistentArrayMap(meta, cnt, arr, __hash) { return new cljs.core.PersistentArrayMap(meta, cnt, arr, __hash); }; cljs.core.PersistentArrayMap.EMPTY = new cljs.core.PersistentArrayMap(null, 0, [], null); cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD = 8; cljs.core.PersistentArrayMap.fromArray = function(arr, no_clone, no_check) { var arr__$1 = no_clone ? arr : cljs.core.aclone.call(null, arr); if (no_check) { var cnt = arr__$1.length / 2; return new cljs.core.PersistentArrayMap(null, cnt, arr__$1, null); } else { var len = arr__$1.length; var i = 0; var ret = cljs.core.transient$.call(null, cljs.core.PersistentArrayMap.EMPTY); while (true) { if (i < len) { var G__5903 = i + 2; var G__5904 = cljs.core._assoc_BANG_.call(null, ret, arr__$1[i], arr__$1[i + 1]); i = G__5903; ret = G__5904; continue; } else { return cljs.core._persistent_BANG_.call(null, ret); } break; } } }; cljs.core.TransientArrayMap = function(editable_QMARK_, len, arr) { this.editable_QMARK_ = editable_QMARK_; this.len = len; this.arr = arr; this.cljs$lang$protocol_mask$partition1$ = 56; this.cljs$lang$protocol_mask$partition0$ = 258; }; cljs.core.TransientArrayMap.cljs$lang$type = true; cljs.core.TransientArrayMap.cljs$lang$ctorStr = "cljs.core/TransientArrayMap"; cljs.core.TransientArrayMap.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/TransientArrayMap"); }; cljs.core.TransientArrayMap.prototype.cljs$core$ITransientMap$_dissoc_BANG_$arity$2 = function(tcoll, key) { var self__ = this; var tcoll__$1 = this; if (cljs.core.truth_(self__.editable_QMARK_)) { var idx = cljs.core.array_map_index_of.call(null, tcoll__$1, key); if (idx >= 0) { self__.arr[idx] = self__.arr[self__.len - 2]; self__.arr[idx + 1] = self__.arr[self__.len - 1]; var G__5905_5907 = self__.arr; G__5905_5907.pop(); G__5905_5907.pop(); self__.len = self__.len - 2; } else { } return tcoll__$1; } else { throw new Error("dissoc! after persistent!"); } }; cljs.core.TransientArrayMap.prototype.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3 = function(tcoll, key, val) { var self__ = this; var tcoll__$1 = this; if (cljs.core.truth_(self__.editable_QMARK_)) { var idx = cljs.core.array_map_index_of.call(null, tcoll__$1, key); if (idx === -1) { if (self__.len + 2 <= 2 * cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD) { self__.len = self__.len + 2; self__.arr.push(key); self__.arr.push(val); return tcoll__$1; } else { return cljs.core.assoc_BANG_.call(null, cljs.core.array__GT_transient_hash_map.call(null, self__.len, self__.arr), key, val); } } else { if (val === self__.arr[idx + 1]) { return tcoll__$1; } else { self__.arr[idx + 1] = val; return tcoll__$1; } } } else { throw new Error("assoc! after persistent!"); } }; cljs.core.TransientArrayMap.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 = function(tcoll, o) { var self__ = this; var tcoll__$1 = this; if (cljs.core.truth_(self__.editable_QMARK_)) { if (function() { var G__5906 = o; if (G__5906) { var bit__4194__auto__ = G__5906.cljs$lang$protocol_mask$partition0$ & 2048; if (bit__4194__auto__ || G__5906.cljs$core$IMapEntry$) { return true; } else { if (!G__5906.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMapEntry, G__5906); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMapEntry, G__5906); } }()) { return cljs.core._assoc_BANG_.call(null, tcoll__$1, cljs.core.key.call(null, o), cljs.core.val.call(null, o)); } else { var es = cljs.core.seq.call(null, o); var tcoll__$2 = tcoll__$1; while (true) { var temp__4124__auto__ = cljs.core.first.call(null, es); if (cljs.core.truth_(temp__4124__auto__)) { var e = temp__4124__auto__; var G__5908 = cljs.core.next.call(null, es); var G__5909 = cljs.core._assoc_BANG_.call(null, tcoll__$2, cljs.core.key.call(null, e), cljs.core.val.call(null, e)); es = G__5908; tcoll__$2 = G__5909; continue; } else { return tcoll__$2; } break; } } } else { throw new Error("conj! after persistent!"); } }; cljs.core.TransientArrayMap.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 = function(tcoll) { var self__ = this; var tcoll__$1 = this; if (cljs.core.truth_(self__.editable_QMARK_)) { self__.editable_QMARK_ = false; return new cljs.core.PersistentArrayMap(null, cljs.core.quot.call(null, self__.len, 2), self__.arr, null); } else { throw new Error("persistent! called twice"); } }; cljs.core.TransientArrayMap.prototype.cljs$core$ILookup$_lookup$arity$2 = function(tcoll, k) { var self__ = this; var tcoll__$1 = this; return cljs.core._lookup.call(null, tcoll__$1, k, null); }; cljs.core.TransientArrayMap.prototype.cljs$core$ILookup$_lookup$arity$3 = function(tcoll, k, not_found) { var self__ = this; var tcoll__$1 = this; if (cljs.core.truth_(self__.editable_QMARK_)) { var idx = cljs.core.array_map_index_of.call(null, tcoll__$1, k); if (idx === -1) { return not_found; } else { return self__.arr[idx + 1]; } } else { throw new Error("lookup after persistent!"); } }; cljs.core.TransientArrayMap.prototype.cljs$core$ICounted$_count$arity$1 = function(tcoll) { var self__ = this; var tcoll__$1 = this; if (cljs.core.truth_(self__.editable_QMARK_)) { return cljs.core.quot.call(null, self__.len, 2); } else { throw new Error("count after persistent!"); } }; cljs.core.__GT_TransientArrayMap = function __GT_TransientArrayMap(editable_QMARK_, len, arr) { return new cljs.core.TransientArrayMap(editable_QMARK_, len, arr); }; cljs.core.array__GT_transient_hash_map = function array__GT_transient_hash_map(len, arr) { var out = cljs.core.transient$.call(null, cljs.core.PersistentHashMap.EMPTY); var i = 0; while (true) { if (i < len) { var G__5910 = cljs.core.assoc_BANG_.call(null, out, arr[i], arr[i + 1]); var G__5911 = i + 2; out = G__5910; i = G__5911; continue; } else { return out; } break; } }; cljs.core.Box = function(val) { this.val = val; }; cljs.core.Box.cljs$lang$type = true; cljs.core.Box.cljs$lang$ctorStr = "cljs.core/Box"; cljs.core.Box.cljs$lang$ctorPrWriter = function(this__4114__auto__, writer__4115__auto__, opts__4116__auto__) { return cljs.core._write.call(null, writer__4115__auto__, "cljs.core/Box"); }; cljs.core.__GT_Box = function __GT_Box(val) { return new cljs.core.Box(val); }; cljs.core.key_test = function key_test(key, other) { if (key === other) { return true; } else { if (cljs.core.keyword_identical_QMARK_.call(null, key, other)) { return true; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core._EQ_.call(null, key, other); } else { return null; } } } }; cljs.core.mask = function mask(hash, shift) { return hash >>> shift & 31; }; cljs.core.clone_and_set = function() { var clone_and_set = null; var clone_and_set__3 = function(arr, i, a) { var G__5914 = cljs.core.aclone.call(null, arr); G__5914[i] = a; return G__5914; }; var clone_and_set__5 = function(arr, i, a, j, b) { var G__5915 = cljs.core.aclone.call(null, arr); G__5915[i] = a; G__5915[j] = b; return G__5915; }; clone_and_set = function(arr, i, a, j, b) { switch(arguments.length) { case 3: return clone_and_set__3.call(this, arr, i, a); case 5: return clone_and_set__5.call(this, arr, i, a, j, b); } throw new Error("Invalid arity: " + arguments.length); }; clone_and_set.cljs$core$IFn$_invoke$arity$3 = clone_and_set__3; clone_and_set.cljs$core$IFn$_invoke$arity$5 = clone_and_set__5; return clone_and_set; }(); cljs.core.remove_pair = function remove_pair(arr, i) { var new_arr = new Array(arr.length - 2); cljs.core.array_copy.call(null, arr, 0, new_arr, 0, 2 * i); cljs.core.array_copy.call(null, arr, 2 * (i + 1), new_arr, 2 * i, new_arr.length - 2 * i); return new_arr; }; cljs.core.bitmap_indexed_node_index = function bitmap_indexed_node_index(bitmap, bit) { return cljs.core.bit_count.call(null, bitmap & bit - 1); }; cljs.core.bitpos = function bitpos(hash, shift) { return 1 << (hash >>> shift & 31); }; cljs.core.edit_and_set = function() { var edit_and_set = null; var edit_and_set__4 = function(inode, edit, i, a) { var editable = inode.ensure_editable(edit); editable.arr[i] = a; return editable; }; var edit_and_set__6 = function(inode, edit, i, a, j, b) { var editable = inode.ensure_editable(edit); editable.arr[i] = a; editable.arr[j] = b; return editable; }; edit_and_set = function(inode, edit, i, a, j, b) { switch(arguments.length) { case 4: return edit_and_set__4.call(this, inode, edit, i, a); case 6: return edit_and_set__6.call(this, inode, edit, i, a, j, b); } throw new Error("Invalid arity: " + arguments.length); }; edit_and_set.cljs$core$IFn$_invoke$arity$4 = edit_and_set__4; edit_and_set.cljs$core$IFn$_invoke$arity$6 = edit_and_set__6; return edit_and_set; }(); cljs.core.inode_kv_reduce = function inode_kv_reduce(arr, f, init) { var len = arr.length; var i = 0; var init__$1 = init; while (true) { if (i < len) { var init__$2 = function() { var k = arr[i]; if (!(k == null)) { return f.call(null, init__$1, k, arr[i + 1]); } else { var node = arr[i + 1]; if (!(node == null)) { return node.kv_reduce(f, init__$1); } else { return init__$1; } } }(); if (cljs.core.reduced_QMARK_.call(null, init__$2)) { return cljs.core.deref.call(null, init__$2); } else { var G__5916 = i + 2; var G__5917 = init__$2; i = G__5916; init__$1 = G__5917; continue; } } else { return init__$1; } break; } }; cljs.core.BitmapIndexedNode = function(edit, bitmap, arr) { this.edit = edit; this.bitmap = bitmap; this.arr = arr; }; cljs.core.BitmapIndexedNode.cljs$lang$type = true; cljs.core.BitmapIndexedNode.cljs$lang$ctorStr = "cljs.core/BitmapIndexedNode"; cljs.core.BitmapIndexedNode.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/BitmapIndexedNode"); }; cljs.core.BitmapIndexedNode.prototype.ensure_editable = function(e) { var self__ = this; var inode = this; if (e === self__.edit) { return inode; } else { var n = cljs.core.bit_count.call(null, self__.bitmap); var new_arr = new Array(n < 0 ? 4 : 2 * (n + 1)); cljs.core.array_copy.call(null, self__.arr, 0, new_arr, 0, 2 * n); return new cljs.core.BitmapIndexedNode(e, self__.bitmap, new_arr); } }; cljs.core.BitmapIndexedNode.prototype.inode_without_BANG_ = function(edit__$1, shift, hash, key, removed_leaf_QMARK_) { var self__ = this; var inode = this; var bit = 1 << (hash >>> shift & 31); if ((self__.bitmap & bit) === 0) { return inode; } else { var idx = cljs.core.bitmap_indexed_node_index.call(null, self__.bitmap, bit); var key_or_nil = self__.arr[2 * idx]; var val_or_node = self__.arr[2 * idx + 1]; if (key_or_nil == null) { var n = val_or_node.inode_without_BANG_(edit__$1, shift + 5, hash, key, removed_leaf_QMARK_); if (n === val_or_node) { return inode; } else { if (!(n == null)) { return cljs.core.edit_and_set.call(null, inode, edit__$1, 2 * idx + 1, n); } else { if (self__.bitmap === bit) { return null; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return inode.edit_and_remove_pair(edit__$1, bit, idx); } else { return null; } } } } } else { if (cljs.core.key_test.call(null, key, key_or_nil)) { removed_leaf_QMARK_[0] = true; return inode.edit_and_remove_pair(edit__$1, bit, idx); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return inode; } else { return null; } } } } }; cljs.core.BitmapIndexedNode.prototype.edit_and_remove_pair = function(e, bit, i) { var self__ = this; var inode = this; if (self__.bitmap === bit) { return null; } else { var editable = inode.ensure_editable(e); var earr = editable.arr; var len = earr.length; editable.bitmap = bit ^ editable.bitmap; cljs.core.array_copy.call(null, earr, 2 * (i + 1), earr, 2 * i, len - 2 * (i + 1)); earr[len - 2] = null; earr[len - 1] = null; return editable; } }; cljs.core.BitmapIndexedNode.prototype.inode_seq = function() { var self__ = this; var inode = this; return cljs.core.create_inode_seq.call(null, self__.arr); }; cljs.core.BitmapIndexedNode.prototype.kv_reduce = function(f, init) { var self__ = this; var inode = this; return cljs.core.inode_kv_reduce.call(null, self__.arr, f, init); }; cljs.core.BitmapIndexedNode.prototype.inode_lookup = function(shift, hash, key, not_found) { var self__ = this; var inode = this; var bit = 1 << (hash >>> shift & 31); if ((self__.bitmap & bit) === 0) { return not_found; } else { var idx = cljs.core.bitmap_indexed_node_index.call(null, self__.bitmap, bit); var key_or_nil = self__.arr[2 * idx]; var val_or_node = self__.arr[2 * idx + 1]; if (key_or_nil == null) { return val_or_node.inode_lookup(shift + 5, hash, key, not_found); } else { if (cljs.core.key_test.call(null, key, key_or_nil)) { return val_or_node; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } } }; cljs.core.BitmapIndexedNode.prototype.inode_assoc_BANG_ = function(edit__$1, shift, hash, key, val, added_leaf_QMARK_) { var self__ = this; var inode = this; var bit = 1 << (hash >>> shift & 31); var idx = cljs.core.bitmap_indexed_node_index.call(null, self__.bitmap, bit); if ((self__.bitmap & bit) === 0) { var n = cljs.core.bit_count.call(null, self__.bitmap); if (2 * n < self__.arr.length) { var editable = inode.ensure_editable(edit__$1); var earr = editable.arr; added_leaf_QMARK_.val = true; cljs.core.array_copy_downward.call(null, earr, 2 * idx, earr, 2 * (idx + 1), 2 * (n - idx)); earr[2 * idx] = key; earr[2 * idx + 1] = val; editable.bitmap = editable.bitmap | bit; return editable; } else { if (n >= 16) { var nodes = [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]; var jdx = hash >>> shift & 31; nodes[jdx] = cljs.core.BitmapIndexedNode.EMPTY.inode_assoc_BANG_(edit__$1, shift + 5, hash, key, val, added_leaf_QMARK_); var i_5918 = 0; var j_5919 = 0; while (true) { if (i_5918 < 32) { if ((self__.bitmap >>> i_5918 & 1) === 0) { var G__5920 = i_5918 + 1; var G__5921 = j_5919; i_5918 = G__5920; j_5919 = G__5921; continue; } else { nodes[i_5918] = !(self__.arr[j_5919] == null) ? cljs.core.BitmapIndexedNode.EMPTY.inode_assoc_BANG_(edit__$1, shift + 5, cljs.core.hash.call(null, self__.arr[j_5919]), self__.arr[j_5919], self__.arr[j_5919 + 1], added_leaf_QMARK_) : self__.arr[j_5919 + 1]; var G__5922 = i_5918 + 1; var G__5923 = j_5919 + 2; i_5918 = G__5922; j_5919 = G__5923; continue; } } else { } break; } return new cljs.core.ArrayNode(edit__$1, n + 1, nodes); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var new_arr = new Array(2 * (n + 4)); cljs.core.array_copy.call(null, self__.arr, 0, new_arr, 0, 2 * idx); new_arr[2 * idx] = key; new_arr[2 * idx + 1] = val; cljs.core.array_copy.call(null, self__.arr, 2 * idx, new_arr, 2 * (idx + 1), 2 * (n - idx)); added_leaf_QMARK_.val = true; var editable = inode.ensure_editable(edit__$1); editable.arr = new_arr; editable.bitmap = editable.bitmap | bit; return editable; } else { return null; } } } } else { var key_or_nil = self__.arr[2 * idx]; var val_or_node = self__.arr[2 * idx + 1]; if (key_or_nil == null) { var n = val_or_node.inode_assoc_BANG_(edit__$1, shift + 5, hash, key, val, added_leaf_QMARK_); if (n === val_or_node) { return inode; } else { return cljs.core.edit_and_set.call(null, inode, edit__$1, 2 * idx + 1, n); } } else { if (cljs.core.key_test.call(null, key, key_or_nil)) { if (val === val_or_node) { return inode; } else { return cljs.core.edit_and_set.call(null, inode, edit__$1, 2 * idx + 1, val); } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { added_leaf_QMARK_.val = true; return cljs.core.edit_and_set.call(null, inode, edit__$1, 2 * idx, null, 2 * idx + 1, cljs.core.create_node.call(null, edit__$1, shift + 5, key_or_nil, val_or_node, hash, key, val)); } else { return null; } } } } }; cljs.core.BitmapIndexedNode.prototype.inode_assoc = function(shift, hash, key, val, added_leaf_QMARK_) { var self__ = this; var inode = this; var bit = 1 << (hash >>> shift & 31); var idx = cljs.core.bitmap_indexed_node_index.call(null, self__.bitmap, bit); if ((self__.bitmap & bit) === 0) { var n = cljs.core.bit_count.call(null, self__.bitmap); if (n >= 16) { var nodes = [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]; var jdx = hash >>> shift & 31; nodes[jdx] = cljs.core.BitmapIndexedNode.EMPTY.inode_assoc(shift + 5, hash, key, val, added_leaf_QMARK_); var i_5924 = 0; var j_5925 = 0; while (true) { if (i_5924 < 32) { if ((self__.bitmap >>> i_5924 & 1) === 0) { var G__5926 = i_5924 + 1; var G__5927 = j_5925; i_5924 = G__5926; j_5925 = G__5927; continue; } else { nodes[i_5924] = !(self__.arr[j_5925] == null) ? cljs.core.BitmapIndexedNode.EMPTY.inode_assoc(shift + 5, cljs.core.hash.call(null, self__.arr[j_5925]), self__.arr[j_5925], self__.arr[j_5925 + 1], added_leaf_QMARK_) : self__.arr[j_5925 + 1]; var G__5928 = i_5924 + 1; var G__5929 = j_5925 + 2; i_5924 = G__5928; j_5925 = G__5929; continue; } } else { } break; } return new cljs.core.ArrayNode(null, n + 1, nodes); } else { var new_arr = new Array(2 * (n + 1)); cljs.core.array_copy.call(null, self__.arr, 0, new_arr, 0, 2 * idx); new_arr[2 * idx] = key; new_arr[2 * idx + 1] = val; cljs.core.array_copy.call(null, self__.arr, 2 * idx, new_arr, 2 * (idx + 1), 2 * (n - idx)); added_leaf_QMARK_.val = true; return new cljs.core.BitmapIndexedNode(null, self__.bitmap | bit, new_arr); } } else { var key_or_nil = self__.arr[2 * idx]; var val_or_node = self__.arr[2 * idx + 1]; if (key_or_nil == null) { var n = val_or_node.inode_assoc(shift + 5, hash, key, val, added_leaf_QMARK_); if (n === val_or_node) { return inode; } else { return new cljs.core.BitmapIndexedNode(null, self__.bitmap, cljs.core.clone_and_set.call(null, self__.arr, 2 * idx + 1, n)); } } else { if (cljs.core.key_test.call(null, key, key_or_nil)) { if (val === val_or_node) { return inode; } else { return new cljs.core.BitmapIndexedNode(null, self__.bitmap, cljs.core.clone_and_set.call(null, self__.arr, 2 * idx + 1, val)); } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { added_leaf_QMARK_.val = true; return new cljs.core.BitmapIndexedNode(null, self__.bitmap, cljs.core.clone_and_set.call(null, self__.arr, 2 * idx, null, 2 * idx + 1, cljs.core.create_node.call(null, shift + 5, key_or_nil, val_or_node, hash, key, val))); } else { return null; } } } } }; cljs.core.BitmapIndexedNode.prototype.inode_find = function(shift, hash, key, not_found) { var self__ = this; var inode = this; var bit = 1 << (hash >>> shift & 31); if ((self__.bitmap & bit) === 0) { return not_found; } else { var idx = cljs.core.bitmap_indexed_node_index.call(null, self__.bitmap, bit); var key_or_nil = self__.arr[2 * idx]; var val_or_node = self__.arr[2 * idx + 1]; if (key_or_nil == null) { return val_or_node.inode_find(shift + 5, hash, key, not_found); } else { if (cljs.core.key_test.call(null, key, key_or_nil)) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [key_or_nil, val_or_node], null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } } }; cljs.core.BitmapIndexedNode.prototype.inode_without = function(shift, hash, key) { var self__ = this; var inode = this; var bit = 1 << (hash >>> shift & 31); if ((self__.bitmap & bit) === 0) { return inode; } else { var idx = cljs.core.bitmap_indexed_node_index.call(null, self__.bitmap, bit); var key_or_nil = self__.arr[2 * idx]; var val_or_node = self__.arr[2 * idx + 1]; if (key_or_nil == null) { var n = val_or_node.inode_without(shift + 5, hash, key); if (n === val_or_node) { return inode; } else { if (!(n == null)) { return new cljs.core.BitmapIndexedNode(null, self__.bitmap, cljs.core.clone_and_set.call(null, self__.arr, 2 * idx + 1, n)); } else { if (self__.bitmap === bit) { return null; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return new cljs.core.BitmapIndexedNode(null, self__.bitmap ^ bit, cljs.core.remove_pair.call(null, self__.arr, idx)); } else { return null; } } } } } else { if (cljs.core.key_test.call(null, key, key_or_nil)) { return new cljs.core.BitmapIndexedNode(null, self__.bitmap ^ bit, cljs.core.remove_pair.call(null, self__.arr, idx)); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return inode; } else { return null; } } } } }; cljs.core.__GT_BitmapIndexedNode = function __GT_BitmapIndexedNode(edit, bitmap, arr) { return new cljs.core.BitmapIndexedNode(edit, bitmap, arr); }; cljs.core.BitmapIndexedNode.EMPTY = new cljs.core.BitmapIndexedNode(null, 0, []); cljs.core.pack_array_node = function pack_array_node(array_node, edit, idx) { var arr = array_node.arr; var len = 2 * (array_node.cnt - 1); var new_arr = new Array(len); var i = 0; var j = 1; var bitmap = 0; while (true) { if (i < len) { if (!(i === idx) && !(arr[i] == null)) { new_arr[j] = arr[i]; var G__5930 = i + 1; var G__5931 = j + 2; var G__5932 = bitmap | 1 << i; i = G__5930; j = G__5931; bitmap = G__5932; continue; } else { var G__5933 = i + 1; var G__5934 = j; var G__5935 = bitmap; i = G__5933; j = G__5934; bitmap = G__5935; continue; } } else { return new cljs.core.BitmapIndexedNode(edit, bitmap, new_arr); } break; } }; cljs.core.ArrayNode = function(edit, cnt, arr) { this.edit = edit; this.cnt = cnt; this.arr = arr; }; cljs.core.ArrayNode.cljs$lang$type = true; cljs.core.ArrayNode.cljs$lang$ctorStr = "cljs.core/ArrayNode"; cljs.core.ArrayNode.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ArrayNode"); }; cljs.core.ArrayNode.prototype.ensure_editable = function(e) { var self__ = this; var inode = this; if (e === self__.edit) { return inode; } else { return new cljs.core.ArrayNode(e, self__.cnt, cljs.core.aclone.call(null, self__.arr)); } }; cljs.core.ArrayNode.prototype.inode_without_BANG_ = function(edit__$1, shift, hash, key, removed_leaf_QMARK_) { var self__ = this; var inode = this; var idx = hash >>> shift & 31; var node = self__.arr[idx]; if (node == null) { return inode; } else { var n = node.inode_without_BANG_(edit__$1, shift + 5, hash, key, removed_leaf_QMARK_); if (n === node) { return inode; } else { if (n == null) { if (self__.cnt <= 8) { return cljs.core.pack_array_node.call(null, inode, edit__$1, idx); } else { var editable = cljs.core.edit_and_set.call(null, inode, edit__$1, idx, n); editable.cnt = editable.cnt - 1; return editable; } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.edit_and_set.call(null, inode, edit__$1, idx, n); } else { return null; } } } } }; cljs.core.ArrayNode.prototype.inode_seq = function() { var self__ = this; var inode = this; return cljs.core.create_array_node_seq.call(null, self__.arr); }; cljs.core.ArrayNode.prototype.kv_reduce = function(f, init) { var self__ = this; var inode = this; var len = self__.arr.length; var i = 0; var init__$1 = init; while (true) { if (i < len) { var node = self__.arr[i]; if (!(node == null)) { var init__$2 = node.kv_reduce(f, init__$1); if (cljs.core.reduced_QMARK_.call(null, init__$2)) { return cljs.core.deref.call(null, init__$2); } else { var G__5936 = i + 1; var G__5937 = init__$2; i = G__5936; init__$1 = G__5937; continue; } } else { var G__5938 = i + 1; var G__5939 = init__$1; i = G__5938; init__$1 = G__5939; continue; } } else { return init__$1; } break; } }; cljs.core.ArrayNode.prototype.inode_lookup = function(shift, hash, key, not_found) { var self__ = this; var inode = this; var idx = hash >>> shift & 31; var node = self__.arr[idx]; if (!(node == null)) { return node.inode_lookup(shift + 5, hash, key, not_found); } else { return not_found; } }; cljs.core.ArrayNode.prototype.inode_assoc_BANG_ = function(edit__$1, shift, hash, key, val, added_leaf_QMARK_) { var self__ = this; var inode = this; var idx = hash >>> shift & 31; var node = self__.arr[idx]; if (node == null) { var editable = cljs.core.edit_and_set.call(null, inode, edit__$1, idx, cljs.core.BitmapIndexedNode.EMPTY.inode_assoc_BANG_(edit__$1, shift + 5, hash, key, val, added_leaf_QMARK_)); editable.cnt = editable.cnt + 1; return editable; } else { var n = node.inode_assoc_BANG_(edit__$1, shift + 5, hash, key, val, added_leaf_QMARK_); if (n === node) { return inode; } else { return cljs.core.edit_and_set.call(null, inode, edit__$1, idx, n); } } }; cljs.core.ArrayNode.prototype.inode_assoc = function(shift, hash, key, val, added_leaf_QMARK_) { var self__ = this; var inode = this; var idx = hash >>> shift & 31; var node = self__.arr[idx]; if (node == null) { return new cljs.core.ArrayNode(null, self__.cnt + 1, cljs.core.clone_and_set.call(null, self__.arr, idx, cljs.core.BitmapIndexedNode.EMPTY.inode_assoc(shift + 5, hash, key, val, added_leaf_QMARK_))); } else { var n = node.inode_assoc(shift + 5, hash, key, val, added_leaf_QMARK_); if (n === node) { return inode; } else { return new cljs.core.ArrayNode(null, self__.cnt, cljs.core.clone_and_set.call(null, self__.arr, idx, n)); } } }; cljs.core.ArrayNode.prototype.inode_find = function(shift, hash, key, not_found) { var self__ = this; var inode = this; var idx = hash >>> shift & 31; var node = self__.arr[idx]; if (!(node == null)) { return node.inode_find(shift + 5, hash, key, not_found); } else { return not_found; } }; cljs.core.ArrayNode.prototype.inode_without = function(shift, hash, key) { var self__ = this; var inode = this; var idx = hash >>> shift & 31; var node = self__.arr[idx]; if (!(node == null)) { var n = node.inode_without(shift + 5, hash, key); if (n === node) { return inode; } else { if (n == null) { if (self__.cnt <= 8) { return cljs.core.pack_array_node.call(null, inode, null, idx); } else { return new cljs.core.ArrayNode(null, self__.cnt - 1, cljs.core.clone_and_set.call(null, self__.arr, idx, n)); } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return new cljs.core.ArrayNode(null, self__.cnt, cljs.core.clone_and_set.call(null, self__.arr, idx, n)); } else { return null; } } } } else { return inode; } }; cljs.core.__GT_ArrayNode = function __GT_ArrayNode(edit, cnt, arr) { return new cljs.core.ArrayNode(edit, cnt, arr); }; cljs.core.hash_collision_node_find_index = function hash_collision_node_find_index(arr, cnt, key) { var lim = 2 * cnt; var i = 0; while (true) { if (i < lim) { if (cljs.core.key_test.call(null, key, arr[i])) { return i; } else { var G__5940 = i + 2; i = G__5940; continue; } } else { return-1; } break; } }; cljs.core.HashCollisionNode = function(edit, collision_hash, cnt, arr) { this.edit = edit; this.collision_hash = collision_hash; this.cnt = cnt; this.arr = arr; }; cljs.core.HashCollisionNode.cljs$lang$type = true; cljs.core.HashCollisionNode.cljs$lang$ctorStr = "cljs.core/HashCollisionNode"; cljs.core.HashCollisionNode.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/HashCollisionNode"); }; cljs.core.HashCollisionNode.prototype.ensure_editable = function(e) { var self__ = this; var inode = this; if (e === self__.edit) { return inode; } else { var new_arr = new Array(2 * (self__.cnt + 1)); cljs.core.array_copy.call(null, self__.arr, 0, new_arr, 0, 2 * self__.cnt); return new cljs.core.HashCollisionNode(e, self__.collision_hash, self__.cnt, new_arr); } }; cljs.core.HashCollisionNode.prototype.inode_without_BANG_ = function(edit__$1, shift, hash, key, removed_leaf_QMARK_) { var self__ = this; var inode = this; var idx = cljs.core.hash_collision_node_find_index.call(null, self__.arr, self__.cnt, key); if (idx === -1) { return inode; } else { removed_leaf_QMARK_[0] = true; if (self__.cnt === 1) { return null; } else { var editable = inode.ensure_editable(edit__$1); var earr = editable.arr; earr[idx] = earr[2 * self__.cnt - 2]; earr[idx + 1] = earr[2 * self__.cnt - 1]; earr[2 * self__.cnt - 1] = null; earr[2 * self__.cnt - 2] = null; editable.cnt = editable.cnt - 1; return editable; } } }; cljs.core.HashCollisionNode.prototype.inode_seq = function() { var self__ = this; var inode = this; return cljs.core.create_inode_seq.call(null, self__.arr); }; cljs.core.HashCollisionNode.prototype.kv_reduce = function(f, init) { var self__ = this; var inode = this; return cljs.core.inode_kv_reduce.call(null, self__.arr, f, init); }; cljs.core.HashCollisionNode.prototype.inode_lookup = function(shift, hash, key, not_found) { var self__ = this; var inode = this; var idx = cljs.core.hash_collision_node_find_index.call(null, self__.arr, self__.cnt, key); if (idx < 0) { return not_found; } else { if (cljs.core.key_test.call(null, key, self__.arr[idx])) { return self__.arr[idx + 1]; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } }; cljs.core.HashCollisionNode.prototype.inode_assoc_BANG_ = function(edit__$1, shift, hash, key, val, added_leaf_QMARK_) { var self__ = this; var inode = this; if (hash === self__.collision_hash) { var idx = cljs.core.hash_collision_node_find_index.call(null, self__.arr, self__.cnt, key); if (idx === -1) { if (self__.arr.length > 2 * self__.cnt) { var editable = cljs.core.edit_and_set.call(null, inode, edit__$1, 2 * self__.cnt, key, 2 * self__.cnt + 1, val); added_leaf_QMARK_.val = true; editable.cnt = editable.cnt + 1; return editable; } else { var len = self__.arr.length; var new_arr = new Array(len + 2); cljs.core.array_copy.call(null, self__.arr, 0, new_arr, 0, len); new_arr[len] = key; new_arr[len + 1] = val; added_leaf_QMARK_.val = true; return inode.ensure_editable_array(edit__$1, self__.cnt + 1, new_arr); } } else { if (self__.arr[idx + 1] === val) { return inode; } else { return cljs.core.edit_and_set.call(null, inode, edit__$1, idx + 1, val); } } } else { return(new cljs.core.BitmapIndexedNode(edit__$1, 1 << (self__.collision_hash >>> shift & 31), [null, inode, null, null])).inode_assoc_BANG_(edit__$1, shift, hash, key, val, added_leaf_QMARK_); } }; cljs.core.HashCollisionNode.prototype.inode_assoc = function(shift, hash, key, val, added_leaf_QMARK_) { var self__ = this; var inode = this; if (hash === self__.collision_hash) { var idx = cljs.core.hash_collision_node_find_index.call(null, self__.arr, self__.cnt, key); if (idx === -1) { var len = 2 * self__.cnt; var new_arr = new Array(len + 2); cljs.core.array_copy.call(null, self__.arr, 0, new_arr, 0, len); new_arr[len] = key; new_arr[len + 1] = val; added_leaf_QMARK_.val = true; return new cljs.core.HashCollisionNode(null, self__.collision_hash, self__.cnt + 1, new_arr); } else { if (cljs.core._EQ_.call(null, self__.arr[idx], val)) { return inode; } else { return new cljs.core.HashCollisionNode(null, self__.collision_hash, self__.cnt, cljs.core.clone_and_set.call(null, self__.arr, idx + 1, val)); } } } else { return(new cljs.core.BitmapIndexedNode(null, 1 << (self__.collision_hash >>> shift & 31), [null, inode])).inode_assoc(shift, hash, key, val, added_leaf_QMARK_); } }; cljs.core.HashCollisionNode.prototype.ensure_editable_array = function(e, count, array) { var self__ = this; var inode = this; if (e === self__.edit) { self__.arr = array; self__.cnt = count; return inode; } else { return new cljs.core.HashCollisionNode(self__.edit, self__.collision_hash, count, array); } }; cljs.core.HashCollisionNode.prototype.inode_find = function(shift, hash, key, not_found) { var self__ = this; var inode = this; var idx = cljs.core.hash_collision_node_find_index.call(null, self__.arr, self__.cnt, key); if (idx < 0) { return not_found; } else { if (cljs.core.key_test.call(null, key, self__.arr[idx])) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.arr[idx], self__.arr[idx + 1]], null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } }; cljs.core.HashCollisionNode.prototype.inode_without = function(shift, hash, key) { var self__ = this; var inode = this; var idx = cljs.core.hash_collision_node_find_index.call(null, self__.arr, self__.cnt, key); if (idx === -1) { return inode; } else { if (self__.cnt === 1) { return null; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return new cljs.core.HashCollisionNode(null, self__.collision_hash, self__.cnt - 1, cljs.core.remove_pair.call(null, self__.arr, cljs.core.quot.call(null, idx, 2))); } else { return null; } } } }; cljs.core.__GT_HashCollisionNode = function __GT_HashCollisionNode(edit, collision_hash, cnt, arr) { return new cljs.core.HashCollisionNode(edit, collision_hash, cnt, arr); }; cljs.core.create_node = function() { var create_node = null; var create_node__6 = function(shift, key1, val1, key2hash, key2, val2) { var key1hash = cljs.core.hash.call(null, key1); if (key1hash === key2hash) { return new cljs.core.HashCollisionNode(null, key1hash, 2, [key1, val1, key2, val2]); } else { var added_leaf_QMARK_ = new cljs.core.Box(false); return cljs.core.BitmapIndexedNode.EMPTY.inode_assoc(shift, key1hash, key1, val1, added_leaf_QMARK_).inode_assoc(shift, key2hash, key2, val2, added_leaf_QMARK_); } }; var create_node__7 = function(edit, shift, key1, val1, key2hash, key2, val2) { var key1hash = cljs.core.hash.call(null, key1); if (key1hash === key2hash) { return new cljs.core.HashCollisionNode(null, key1hash, 2, [key1, val1, key2, val2]); } else { var added_leaf_QMARK_ = new cljs.core.Box(false); return cljs.core.BitmapIndexedNode.EMPTY.inode_assoc_BANG_(edit, shift, key1hash, key1, val1, added_leaf_QMARK_).inode_assoc_BANG_(edit, shift, key2hash, key2, val2, added_leaf_QMARK_); } }; create_node = function(edit, shift, key1, val1, key2hash, key2, val2) { switch(arguments.length) { case 6: return create_node__6.call(this, edit, shift, key1, val1, key2hash, key2); case 7: return create_node__7.call(this, edit, shift, key1, val1, key2hash, key2, val2); } throw new Error("Invalid arity: " + arguments.length); }; create_node.cljs$core$IFn$_invoke$arity$6 = create_node__6; create_node.cljs$core$IFn$_invoke$arity$7 = create_node__7; return create_node; }(); cljs.core.NodeSeq = function(meta, nodes, i, s, __hash) { this.meta = meta; this.nodes = nodes; this.i = i; this.s = s; this.__hash = __hash; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32374860; }; cljs.core.NodeSeq.cljs$lang$type = true; cljs.core.NodeSeq.cljs$lang$ctorStr = "cljs.core/NodeSeq"; cljs.core.NodeSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/NodeSeq"); }; cljs.core.NodeSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.NodeSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.NodeSeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.NodeSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.NodeSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.NodeSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.NodeSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.NodeSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.NodeSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.s == null) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.nodes[self__.i], self__.nodes[self__.i + 1]], null); } else { return cljs.core.first.call(null, self__.s); } }; cljs.core.NodeSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.s == null) { return cljs.core.create_inode_seq.call(null, self__.nodes, self__.i + 2, null); } else { return cljs.core.create_inode_seq.call(null, self__.nodes, self__.i, cljs.core.next.call(null, self__.s)); } }; cljs.core.NodeSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return this$__$1; }; cljs.core.NodeSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.NodeSeq(meta__$1, self__.nodes, self__.i, self__.s, self__.__hash); }; cljs.core.NodeSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_NodeSeq = function __GT_NodeSeq(meta, nodes, i, s, __hash) { return new cljs.core.NodeSeq(meta, nodes, i, s, __hash); }; cljs.core.create_inode_seq = function() { var create_inode_seq = null; var create_inode_seq__1 = function(nodes) { return create_inode_seq.call(null, nodes, 0, null); }; var create_inode_seq__3 = function(nodes, i, s) { if (s == null) { var len = nodes.length; var j = i; while (true) { if (j < len) { if (!(nodes[j] == null)) { return new cljs.core.NodeSeq(null, nodes, j, null, null); } else { var temp__4124__auto__ = nodes[j + 1]; if (cljs.core.truth_(temp__4124__auto__)) { var node = temp__4124__auto__; var temp__4124__auto____$1 = node.inode_seq(); if (cljs.core.truth_(temp__4124__auto____$1)) { var node_seq = temp__4124__auto____$1; return new cljs.core.NodeSeq(null, nodes, j + 2, node_seq, null); } else { var G__5941 = j + 2; j = G__5941; continue; } } else { var G__5942 = j + 2; j = G__5942; continue; } } } else { return null; } break; } } else { return new cljs.core.NodeSeq(null, nodes, i, s, null); } }; create_inode_seq = function(nodes, i, s) { switch(arguments.length) { case 1: return create_inode_seq__1.call(this, nodes); case 3: return create_inode_seq__3.call(this, nodes, i, s); } throw new Error("Invalid arity: " + arguments.length); }; create_inode_seq.cljs$core$IFn$_invoke$arity$1 = create_inode_seq__1; create_inode_seq.cljs$core$IFn$_invoke$arity$3 = create_inode_seq__3; return create_inode_seq; }(); cljs.core.ArrayNodeSeq = function(meta, nodes, i, s, __hash) { this.meta = meta; this.nodes = nodes; this.i = i; this.s = s; this.__hash = __hash; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32374860; }; cljs.core.ArrayNodeSeq.cljs$lang$type = true; cljs.core.ArrayNodeSeq.cljs$lang$ctorStr = "cljs.core/ArrayNodeSeq"; cljs.core.ArrayNodeSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ArrayNodeSeq"); }; cljs.core.ArrayNodeSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.ArrayNodeSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.first.call(null, self__.s); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.create_array_node_seq.call(null, null, self__.nodes, self__.i, cljs.core.next.call(null, self__.s)); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return this$__$1; }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.ArrayNodeSeq(meta__$1, self__.nodes, self__.i, self__.s, self__.__hash); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_ArrayNodeSeq = function __GT_ArrayNodeSeq(meta, nodes, i, s, __hash) { return new cljs.core.ArrayNodeSeq(meta, nodes, i, s, __hash); }; cljs.core.create_array_node_seq = function() { var create_array_node_seq = null; var create_array_node_seq__1 = function(nodes) { return create_array_node_seq.call(null, null, nodes, 0, null); }; var create_array_node_seq__4 = function(meta, nodes, i, s) { if (s == null) { var len = nodes.length; var j = i; while (true) { if (j < len) { var temp__4124__auto__ = nodes[j]; if (cljs.core.truth_(temp__4124__auto__)) { var nj = temp__4124__auto__; var temp__4124__auto____$1 = nj.inode_seq(); if (cljs.core.truth_(temp__4124__auto____$1)) { var ns = temp__4124__auto____$1; return new cljs.core.ArrayNodeSeq(meta, nodes, j + 1, ns, null); } else { var G__5943 = j + 1; j = G__5943; continue; } } else { var G__5944 = j + 1; j = G__5944; continue; } } else { return null; } break; } } else { return new cljs.core.ArrayNodeSeq(meta, nodes, i, s, null); } }; create_array_node_seq = function(meta, nodes, i, s) { switch(arguments.length) { case 1: return create_array_node_seq__1.call(this, meta); case 4: return create_array_node_seq__4.call(this, meta, nodes, i, s); } throw new Error("Invalid arity: " + arguments.length); }; create_array_node_seq.cljs$core$IFn$_invoke$arity$1 = create_array_node_seq__1; create_array_node_seq.cljs$core$IFn$_invoke$arity$4 = create_array_node_seq__4; return create_array_node_seq; }(); cljs.core.PersistentHashMap = function(meta, cnt, root, has_nil_QMARK_, nil_val, __hash) { this.meta = meta; this.cnt = cnt; this.root = root; this.has_nil_QMARK_ = has_nil_QMARK_; this.nil_val = nil_val; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 16123663; this.cljs$lang$protocol_mask$partition1$ = 8196; }; cljs.core.PersistentHashMap.cljs$lang$type = true; cljs.core.PersistentHashMap.cljs$lang$ctorStr = "cljs.core/PersistentHashMap"; cljs.core.PersistentHashMap.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentHashMap"); }; cljs.core.PersistentHashMap.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentHashMap.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentHashMap.prototype.keys = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.keys.call(null, coll)); }; cljs.core.PersistentHashMap.prototype.entries = function() { var self__ = this; var coll = this; return cljs.core.entries_iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentHashMap.prototype.values = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.vals.call(null, coll)); }; cljs.core.PersistentHashMap.prototype.has = function(k) { var self__ = this; var coll = this; return cljs.core.contains_QMARK_.call(null, coll, k); }; cljs.core.PersistentHashMap.prototype.get = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentHashMap.prototype.forEach = function(f) { var self__ = this; var coll = this; var seq__5946 = cljs.core.seq.call(null, coll); var chunk__5947 = null; var count__5948 = 0; var i__5949 = 0; while (true) { if (i__5949 < count__5948) { var vec__5950 = cljs.core._nth.call(null, chunk__5947, i__5949); var k = cljs.core.nth.call(null, vec__5950, 0, null); var v = cljs.core.nth.call(null, vec__5950, 1, null); f.call(null, v, k); var G__5954 = seq__5946; var G__5955 = chunk__5947; var G__5956 = count__5948; var G__5957 = i__5949 + 1; seq__5946 = G__5954; chunk__5947 = G__5955; count__5948 = G__5956; i__5949 = G__5957; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__5946); if (temp__4126__auto__) { var seq__5946__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__5946__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__5946__$1); var G__5958 = cljs.core.chunk_rest.call(null, seq__5946__$1); var G__5959 = c__4300__auto__; var G__5960 = cljs.core.count.call(null, c__4300__auto__); var G__5961 = 0; seq__5946 = G__5958; chunk__5947 = G__5959; count__5948 = G__5960; i__5949 = G__5961; continue; } else { var vec__5951 = cljs.core.first.call(null, seq__5946__$1); var k = cljs.core.nth.call(null, vec__5951, 0, null); var v = cljs.core.nth.call(null, vec__5951, 1, null); f.call(null, v, k); var G__5962 = cljs.core.next.call(null, seq__5946__$1); var G__5963 = null; var G__5964 = 0; var G__5965 = 0; seq__5946 = G__5962; chunk__5947 = G__5963; count__5948 = G__5964; i__5949 = G__5965; continue; } } else { return null; } } break; } }; cljs.core.PersistentHashMap.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, k, null); }; cljs.core.PersistentHashMap.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, k, not_found) { var self__ = this; var coll__$1 = this; if (k == null) { if (self__.has_nil_QMARK_) { return self__.nil_val; } else { return not_found; } } else { if (self__.root == null) { return not_found; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return self__.root.inode_lookup(0, cljs.core.hash.call(null, k), k, not_found); } else { return null; } } } }; cljs.core.PersistentHashMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = function(coll, f, init) { var self__ = this; var coll__$1 = this; var init__$1 = self__.has_nil_QMARK_ ? f.call(null, init, null, self__.nil_val) : init; if (cljs.core.reduced_QMARK_.call(null, init__$1)) { return cljs.core.deref.call(null, init__$1); } else { if (!(self__.root == null)) { return self__.root.kv_reduce(f, init__$1); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return init__$1; } else { return null; } } } }; cljs.core.PersistentHashMap.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentHashMap.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.PersistentHashMap(self__.meta, self__.cnt, self__.root, self__.has_nil_QMARK_, self__.nil_val, self__.__hash); }; cljs.core.PersistentHashMap.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.cnt; }; cljs.core.PersistentHashMap.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_unordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentHashMap.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_map.call(null, coll__$1, other); }; cljs.core.PersistentHashMap.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return new cljs.core.TransientHashMap(function() { var obj5953 = {}; return obj5953; }(), self__.root, self__.cnt, self__.has_nil_QMARK_, self__.nil_val); }; cljs.core.PersistentHashMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._with_meta.call(null, cljs.core.PersistentHashMap.EMPTY, self__.meta); }; cljs.core.PersistentHashMap.prototype.cljs$core$IMap$_dissoc$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; if (k == null) { if (self__.has_nil_QMARK_) { return new cljs.core.PersistentHashMap(self__.meta, self__.cnt - 1, self__.root, false, null, null); } else { return coll__$1; } } else { if (self__.root == null) { return coll__$1; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var new_root = self__.root.inode_without(0, cljs.core.hash.call(null, k), k); if (new_root === self__.root) { return coll__$1; } else { return new cljs.core.PersistentHashMap(self__.meta, self__.cnt - 1, new_root, self__.has_nil_QMARK_, self__.nil_val, null); } } else { return null; } } } }; cljs.core.PersistentHashMap.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(coll, k, v) { var self__ = this; var coll__$1 = this; if (k == null) { if (self__.has_nil_QMARK_ && v === self__.nil_val) { return coll__$1; } else { return new cljs.core.PersistentHashMap(self__.meta, self__.has_nil_QMARK_ ? self__.cnt : self__.cnt + 1, self__.root, true, v, null); } } else { var added_leaf_QMARK_ = new cljs.core.Box(false); var new_root = (self__.root == null ? cljs.core.BitmapIndexedNode.EMPTY : self__.root).inode_assoc(0, cljs.core.hash.call(null, k), k, v, added_leaf_QMARK_); if (new_root === self__.root) { return coll__$1; } else { return new cljs.core.PersistentHashMap(self__.meta, added_leaf_QMARK_.val ? self__.cnt + 1 : self__.cnt, new_root, self__.has_nil_QMARK_, self__.nil_val, null); } } }; cljs.core.PersistentHashMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; if (k == null) { return self__.has_nil_QMARK_; } else { if (self__.root == null) { return false; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return!(self__.root.inode_lookup(0, cljs.core.hash.call(null, k), k, cljs.core.lookup_sentinel) === cljs.core.lookup_sentinel); } else { return null; } } } }; cljs.core.PersistentHashMap.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt > 0) { var s = !(self__.root == null) ? self__.root.inode_seq() : null; if (self__.has_nil_QMARK_) { return cljs.core.cons.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null, self__.nil_val], null), s); } else { return s; } } else { return null; } }; cljs.core.PersistentHashMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentHashMap(meta__$1, self__.cnt, self__.root, self__.has_nil_QMARK_, self__.nil_val, self__.__hash); }; cljs.core.PersistentHashMap.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, entry) { var self__ = this; var coll__$1 = this; if (cljs.core.vector_QMARK_.call(null, entry)) { return cljs.core._assoc.call(null, coll__$1, cljs.core._nth.call(null, entry, 0), cljs.core._nth.call(null, entry, 1)); } else { var ret = coll__$1; var es = cljs.core.seq.call(null, entry); while (true) { if (es == null) { return ret; } else { var e = cljs.core.first.call(null, es); if (cljs.core.vector_QMARK_.call(null, e)) { var G__5966 = cljs.core._assoc.call(null, ret, cljs.core._nth.call(null, e, 0), cljs.core._nth.call(null, e, 1)); var G__5967 = cljs.core.next.call(null, es); ret = G__5966; es = G__5967; continue; } else { throw new Error("conj on a map takes map entries or seqables of map entries"); } } break; } } }; cljs.core.PersistentHashMap.prototype.call = function() { var G__5968 = null; var G__5968__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__5968__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__5968 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5968__2.call(this, self__, k); case 3: return G__5968__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5968; }(); cljs.core.PersistentHashMap.prototype.apply = function(self__, args5945) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5945))); }; cljs.core.PersistentHashMap.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentHashMap.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.__GT_PersistentHashMap = function __GT_PersistentHashMap(meta, cnt, root, has_nil_QMARK_, nil_val, __hash) { return new cljs.core.PersistentHashMap(meta, cnt, root, has_nil_QMARK_, nil_val, __hash); }; cljs.core.PersistentHashMap.EMPTY = new cljs.core.PersistentHashMap(null, 0, null, false, null, 0); cljs.core.PersistentHashMap.fromArrays = function(ks, vs) { var len = ks.length; var i = 0; var out = cljs.core.transient$.call(null, cljs.core.PersistentHashMap.EMPTY); while (true) { if (i < len) { var G__5969 = i + 1; var G__5970 = cljs.core._assoc_BANG_.call(null, out, ks[i], vs[i]); i = G__5969; out = G__5970; continue; } else { return cljs.core.persistent_BANG_.call(null, out); } break; } }; cljs.core.TransientHashMap = function(edit, root, count, has_nil_QMARK_, nil_val) { this.edit = edit; this.root = root; this.count = count; this.has_nil_QMARK_ = has_nil_QMARK_; this.nil_val = nil_val; this.cljs$lang$protocol_mask$partition1$ = 56; this.cljs$lang$protocol_mask$partition0$ = 258; }; cljs.core.TransientHashMap.cljs$lang$type = true; cljs.core.TransientHashMap.cljs$lang$ctorStr = "cljs.core/TransientHashMap"; cljs.core.TransientHashMap.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/TransientHashMap"); }; cljs.core.TransientHashMap.prototype.cljs$core$ITransientMap$_dissoc_BANG_$arity$2 = function(tcoll, key) { var self__ = this; var tcoll__$1 = this; return tcoll__$1.without_BANG_(key); }; cljs.core.TransientHashMap.prototype.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3 = function(tcoll, key, val) { var self__ = this; var tcoll__$1 = this; return tcoll__$1.assoc_BANG_(key, val); }; cljs.core.TransientHashMap.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 = function(tcoll, val) { var self__ = this; var tcoll__$1 = this; return tcoll__$1.conj_BANG_(val); }; cljs.core.TransientHashMap.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 = function(tcoll) { var self__ = this; var tcoll__$1 = this; return tcoll__$1.persistent_BANG_(); }; cljs.core.TransientHashMap.prototype.cljs$core$ILookup$_lookup$arity$2 = function(tcoll, k) { var self__ = this; var tcoll__$1 = this; if (k == null) { if (self__.has_nil_QMARK_) { return self__.nil_val; } else { return null; } } else { if (self__.root == null) { return null; } else { return self__.root.inode_lookup(0, cljs.core.hash.call(null, k), k); } } }; cljs.core.TransientHashMap.prototype.cljs$core$ILookup$_lookup$arity$3 = function(tcoll, k, not_found) { var self__ = this; var tcoll__$1 = this; if (k == null) { if (self__.has_nil_QMARK_) { return self__.nil_val; } else { return not_found; } } else { if (self__.root == null) { return not_found; } else { return self__.root.inode_lookup(0, cljs.core.hash.call(null, k), k, not_found); } } }; cljs.core.TransientHashMap.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.edit) { return self__.count; } else { throw new Error("count after persistent!"); } }; cljs.core.TransientHashMap.prototype.conj_BANG_ = function(o) { var self__ = this; var tcoll = this; if (self__.edit) { if (function() { var G__5971 = o; if (G__5971) { var bit__4194__auto__ = G__5971.cljs$lang$protocol_mask$partition0$ & 2048; if (bit__4194__auto__ || G__5971.cljs$core$IMapEntry$) { return true; } else { if (!G__5971.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMapEntry, G__5971); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMapEntry, G__5971); } }()) { return tcoll.assoc_BANG_(cljs.core.key.call(null, o), cljs.core.val.call(null, o)); } else { var es = cljs.core.seq.call(null, o); var tcoll__$1 = tcoll; while (true) { var temp__4124__auto__ = cljs.core.first.call(null, es); if (cljs.core.truth_(temp__4124__auto__)) { var e = temp__4124__auto__; var G__5972 = cljs.core.next.call(null, es); var G__5973 = tcoll__$1.assoc_BANG_(cljs.core.key.call(null, e), cljs.core.val.call(null, e)); es = G__5972; tcoll__$1 = G__5973; continue; } else { return tcoll__$1; } break; } } } else { throw new Error("conj! after persistent"); } }; cljs.core.TransientHashMap.prototype.assoc_BANG_ = function(k, v) { var self__ = this; var tcoll = this; if (self__.edit) { if (k == null) { if (self__.nil_val === v) { } else { self__.nil_val = v; } if (self__.has_nil_QMARK_) { } else { self__.count = self__.count + 1; self__.has_nil_QMARK_ = true; } return tcoll; } else { var added_leaf_QMARK_ = new cljs.core.Box(false); var node = (self__.root == null ? cljs.core.BitmapIndexedNode.EMPTY : self__.root).inode_assoc_BANG_(self__.edit, 0, cljs.core.hash.call(null, k), k, v, added_leaf_QMARK_); if (node === self__.root) { } else { self__.root = node; } if (added_leaf_QMARK_.val) { self__.count = self__.count + 1; } else { } return tcoll; } } else { throw new Error("assoc! after persistent!"); } }; cljs.core.TransientHashMap.prototype.without_BANG_ = function(k) { var self__ = this; var tcoll = this; if (self__.edit) { if (k == null) { if (self__.has_nil_QMARK_) { self__.has_nil_QMARK_ = false; self__.nil_val = null; self__.count = self__.count - 1; return tcoll; } else { return tcoll; } } else { if (self__.root == null) { return tcoll; } else { var removed_leaf_QMARK_ = new cljs.core.Box(false); var node = self__.root.inode_without_BANG_(self__.edit, 0, cljs.core.hash.call(null, k), k, removed_leaf_QMARK_); if (node === self__.root) { } else { self__.root = node; } if (cljs.core.truth_(removed_leaf_QMARK_[0])) { self__.count = self__.count - 1; } else { } return tcoll; } } } else { throw new Error("dissoc! after persistent!"); } }; cljs.core.TransientHashMap.prototype.persistent_BANG_ = function() { var self__ = this; var tcoll = this; if (self__.edit) { self__.edit = null; return new cljs.core.PersistentHashMap(null, self__.count, self__.root, self__.has_nil_QMARK_, self__.nil_val, null); } else { throw new Error("persistent! called twice"); } }; cljs.core.__GT_TransientHashMap = function __GT_TransientHashMap(edit, root, count, has_nil_QMARK_, nil_val) { return new cljs.core.TransientHashMap(edit, root, count, has_nil_QMARK_, nil_val); }; cljs.core.tree_map_seq_push = function tree_map_seq_push(node, stack, ascending_QMARK_) { var t = node; var stack__$1 = stack; while (true) { if (!(t == null)) { var G__5974 = ascending_QMARK_ ? t.left : t.right; var G__5975 = cljs.core.conj.call(null, stack__$1, t); t = G__5974; stack__$1 = G__5975; continue; } else { return stack__$1; } break; } }; cljs.core.PersistentTreeMapSeq = function(meta, stack, ascending_QMARK_, cnt, __hash) { this.meta = meta; this.stack = stack; this.ascending_QMARK_ = ascending_QMARK_; this.cnt = cnt; this.__hash = __hash; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32374862; }; cljs.core.PersistentTreeMapSeq.cljs$lang$type = true; cljs.core.PersistentTreeMapSeq.cljs$lang$ctorStr = "cljs.core/PersistentTreeMapSeq"; cljs.core.PersistentTreeMapSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentTreeMapSeq"); }; cljs.core.PersistentTreeMapSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentTreeMapSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt < 0) { return cljs.core.count.call(null, cljs.core.next.call(null, coll__$1)) + 1; } else { return self__.cnt; } }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return cljs.core.peek.call(null, self__.stack); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; var t = cljs.core.first.call(null, self__.stack); var next_stack = cljs.core.tree_map_seq_push.call(null, self__.ascending_QMARK_ ? t.right : t.left, cljs.core.next.call(null, self__.stack), self__.ascending_QMARK_); if (!(next_stack == null)) { return new cljs.core.PersistentTreeMapSeq(null, next_stack, self__.ascending_QMARK_, self__.cnt - 1, null); } else { return cljs.core.List.EMPTY; } }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return this$__$1; }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentTreeMapSeq(meta__$1, self__.stack, self__.ascending_QMARK_, self__.cnt, self__.__hash); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_PersistentTreeMapSeq = function __GT_PersistentTreeMapSeq(meta, stack, ascending_QMARK_, cnt, __hash) { return new cljs.core.PersistentTreeMapSeq(meta, stack, ascending_QMARK_, cnt, __hash); }; cljs.core.create_tree_map_seq = function create_tree_map_seq(tree, ascending_QMARK_, cnt) { return new cljs.core.PersistentTreeMapSeq(null, cljs.core.tree_map_seq_push.call(null, tree, null, ascending_QMARK_), ascending_QMARK_, cnt, null); }; cljs.core.balance_left = function balance_left(key, val, ins, right) { if (ins instanceof cljs.core.RedNode) { if (ins.left instanceof cljs.core.RedNode) { return new cljs.core.RedNode(ins.key, ins.val, ins.left.blacken(), new cljs.core.BlackNode(key, val, ins.right, right, null), null); } else { if (ins.right instanceof cljs.core.RedNode) { return new cljs.core.RedNode(ins.right.key, ins.right.val, new cljs.core.BlackNode(ins.key, ins.val, ins.left, ins.right.left, null), new cljs.core.BlackNode(key, val, ins.right.right, right, null), null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return new cljs.core.BlackNode(key, val, ins, right, null); } else { return null; } } } } else { return new cljs.core.BlackNode(key, val, ins, right, null); } }; cljs.core.balance_right = function balance_right(key, val, left, ins) { if (ins instanceof cljs.core.RedNode) { if (ins.right instanceof cljs.core.RedNode) { return new cljs.core.RedNode(ins.key, ins.val, new cljs.core.BlackNode(key, val, left, ins.left, null), ins.right.blacken(), null); } else { if (ins.left instanceof cljs.core.RedNode) { return new cljs.core.RedNode(ins.left.key, ins.left.val, new cljs.core.BlackNode(key, val, left, ins.left.left, null), new cljs.core.BlackNode(ins.key, ins.val, ins.left.right, ins.right, null), null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return new cljs.core.BlackNode(key, val, left, ins, null); } else { return null; } } } } else { return new cljs.core.BlackNode(key, val, left, ins, null); } }; cljs.core.balance_left_del = function balance_left_del(key, val, del, right) { if (del instanceof cljs.core.RedNode) { return new cljs.core.RedNode(key, val, del.blacken(), right, null); } else { if (right instanceof cljs.core.BlackNode) { return cljs.core.balance_right.call(null, key, val, del, right.redden()); } else { if (right instanceof cljs.core.RedNode && right.left instanceof cljs.core.BlackNode) { return new cljs.core.RedNode(right.left.key, right.left.val, new cljs.core.BlackNode(key, val, del, right.left.left, null), cljs.core.balance_right.call(null, right.key, right.val, right.left.right, right.right.redden()), null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("red-black tree invariant violation"); } else { return null; } } } } }; cljs.core.balance_right_del = function balance_right_del(key, val, left, del) { if (del instanceof cljs.core.RedNode) { return new cljs.core.RedNode(key, val, left, del.blacken(), null); } else { if (left instanceof cljs.core.BlackNode) { return cljs.core.balance_left.call(null, key, val, left.redden(), del); } else { if (left instanceof cljs.core.RedNode && left.right instanceof cljs.core.BlackNode) { return new cljs.core.RedNode(left.right.key, left.right.val, cljs.core.balance_left.call(null, left.key, left.val, left.left.redden(), left.right.left), new cljs.core.BlackNode(key, val, left.right.right, del, null), null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw new Error("red-black tree invariant violation"); } else { return null; } } } } }; cljs.core.tree_map_kv_reduce = function tree_map_kv_reduce(node, f, init) { var init__$1 = !(node.left == null) ? tree_map_kv_reduce.call(null, node.left, f, init) : init; if (cljs.core.reduced_QMARK_.call(null, init__$1)) { return cljs.core.deref.call(null, init__$1); } else { var init__$2 = f.call(null, init__$1, node.key, node.val); if (cljs.core.reduced_QMARK_.call(null, init__$2)) { return cljs.core.deref.call(null, init__$2); } else { var init__$3 = !(node.right == null) ? tree_map_kv_reduce.call(null, node.right, f, init__$2) : init__$2; if (cljs.core.reduced_QMARK_.call(null, init__$3)) { return cljs.core.deref.call(null, init__$3); } else { return init__$3; } } } }; cljs.core.BlackNode = function(key, val, left, right, __hash) { this.key = key; this.val = val; this.left = left; this.right = right; this.__hash = __hash; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32402207; }; cljs.core.BlackNode.cljs$lang$type = true; cljs.core.BlackNode.cljs$lang$ctorStr = "cljs.core/BlackNode"; cljs.core.BlackNode.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/BlackNode"); }; cljs.core.BlackNode.prototype.add_right = function(ins) { var self__ = this; var node = this; return ins.balance_right(node); }; cljs.core.BlackNode.prototype.redden = function() { var self__ = this; var node = this; return new cljs.core.RedNode(self__.key, self__.val, self__.left, self__.right, null); }; cljs.core.BlackNode.prototype.blacken = function() { var self__ = this; var node = this; return node; }; cljs.core.BlackNode.prototype.add_left = function(ins) { var self__ = this; var node = this; return ins.balance_left(node); }; cljs.core.BlackNode.prototype.replace = function(key__$1, val__$1, left__$1, right__$1) { var self__ = this; var node = this; return new cljs.core.BlackNode(key__$1, val__$1, left__$1, right__$1, null); }; cljs.core.BlackNode.prototype.balance_left = function(parent) { var self__ = this; var node = this; return new cljs.core.BlackNode(parent.key, parent.val, node, parent.right, null); }; cljs.core.BlackNode.prototype.balance_right = function(parent) { var self__ = this; var node = this; return new cljs.core.BlackNode(parent.key, parent.val, parent.left, node, null); }; cljs.core.BlackNode.prototype.remove_left = function(del) { var self__ = this; var node = this; return cljs.core.balance_left_del.call(null, self__.key, self__.val, del, self__.right); }; cljs.core.BlackNode.prototype.kv_reduce = function(f, init) { var self__ = this; var node = this; return cljs.core.tree_map_kv_reduce.call(null, node, f, init); }; cljs.core.BlackNode.prototype.remove_right = function(del) { var self__ = this; var node = this; return cljs.core.balance_right_del.call(null, self__.key, self__.val, self__.left, del); }; cljs.core.BlackNode.prototype.cljs$core$ILookup$_lookup$arity$2 = function(node, k) { var self__ = this; var node__$1 = this; return cljs.core._nth.call(null, node__$1, k, null); }; cljs.core.BlackNode.prototype.cljs$core$ILookup$_lookup$arity$3 = function(node, k, not_found) { var self__ = this; var node__$1 = this; return cljs.core._nth.call(null, node__$1, k, not_found); }; cljs.core.BlackNode.prototype.cljs$core$IIndexed$_nth$arity$2 = function(node, n) { var self__ = this; var node__$1 = this; if (n === 0) { return self__.key; } else { if (n === 1) { return self__.val; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return null; } else { return null; } } } }; cljs.core.BlackNode.prototype.cljs$core$IIndexed$_nth$arity$3 = function(node, n, not_found) { var self__ = this; var node__$1 = this; if (n === 0) { return self__.key; } else { if (n === 1) { return self__.val; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } }; cljs.core.BlackNode.prototype.cljs$core$IVector$_assoc_n$arity$3 = function(node, n, v) { var self__ = this; var node__$1 = this; return(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val], null)).cljs$core$IVector$_assoc_n$arity$3(null, n, v); }; cljs.core.BlackNode.prototype.cljs$core$IMeta$_meta$arity$1 = function(node) { var self__ = this; var node__$1 = this; return null; }; cljs.core.BlackNode.prototype.cljs$core$ICounted$_count$arity$1 = function(node) { var self__ = this; var node__$1 = this; return 2; }; cljs.core.BlackNode.prototype.cljs$core$IMapEntry$_key$arity$1 = function(node) { var self__ = this; var node__$1 = this; return self__.key; }; cljs.core.BlackNode.prototype.cljs$core$IMapEntry$_val$arity$1 = function(node) { var self__ = this; var node__$1 = this; return self__.val; }; cljs.core.BlackNode.prototype.cljs$core$IStack$_peek$arity$1 = function(node) { var self__ = this; var node__$1 = this; return self__.val; }; cljs.core.BlackNode.prototype.cljs$core$IStack$_pop$arity$1 = function(node) { var self__ = this; var node__$1 = this; return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key], null); }; cljs.core.BlackNode.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.BlackNode.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.BlackNode.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(node) { var self__ = this; var node__$1 = this; return cljs.core.PersistentVector.EMPTY; }; cljs.core.BlackNode.prototype.cljs$core$IReduce$_reduce$arity$2 = function(node, f) { var self__ = this; var node__$1 = this; return cljs.core.ci_reduce.call(null, node__$1, f); }; cljs.core.BlackNode.prototype.cljs$core$IReduce$_reduce$arity$3 = function(node, f, start) { var self__ = this; var node__$1 = this; return cljs.core.ci_reduce.call(null, node__$1, f, start); }; cljs.core.BlackNode.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(node, k, v) { var self__ = this; var node__$1 = this; return cljs.core.assoc.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val], null), k, v); }; cljs.core.BlackNode.prototype.cljs$core$ISeqable$_seq$arity$1 = function(node) { var self__ = this; var node__$1 = this; return cljs.core._conj.call(null, cljs.core._conj.call(null, cljs.core.List.EMPTY, self__.val), self__.key); }; cljs.core.BlackNode.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(node, meta) { var self__ = this; var node__$1 = this; return cljs.core.with_meta.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val], null), meta); }; cljs.core.BlackNode.prototype.cljs$core$ICollection$_conj$arity$2 = function(node, o) { var self__ = this; var node__$1 = this; return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val, o], null); }; cljs.core.BlackNode.prototype.call = function() { var G__5977 = null; var G__5977__2 = function(self__, k) { var self__ = this; var self____$1 = this; var node = self____$1; return node.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__5977__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var node = self____$1; return node.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__5977 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5977__2.call(this, self__, k); case 3: return G__5977__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5977; }(); cljs.core.BlackNode.prototype.apply = function(self__, args5976) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5976))); }; cljs.core.BlackNode.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var node = this; return node.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.BlackNode.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var node = this; return node.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.__GT_BlackNode = function __GT_BlackNode(key, val, left, right, __hash) { return new cljs.core.BlackNode(key, val, left, right, __hash); }; cljs.core.RedNode = function(key, val, left, right, __hash) { this.key = key; this.val = val; this.left = left; this.right = right; this.__hash = __hash; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32402207; }; cljs.core.RedNode.cljs$lang$type = true; cljs.core.RedNode.cljs$lang$ctorStr = "cljs.core/RedNode"; cljs.core.RedNode.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/RedNode"); }; cljs.core.RedNode.prototype.add_right = function(ins) { var self__ = this; var node = this; return new cljs.core.RedNode(self__.key, self__.val, self__.left, ins, null); }; cljs.core.RedNode.prototype.redden = function() { var self__ = this; var node = this; throw new Error("red-black tree invariant violation"); }; cljs.core.RedNode.prototype.blacken = function() { var self__ = this; var node = this; return new cljs.core.BlackNode(self__.key, self__.val, self__.left, self__.right, null); }; cljs.core.RedNode.prototype.add_left = function(ins) { var self__ = this; var node = this; return new cljs.core.RedNode(self__.key, self__.val, ins, self__.right, null); }; cljs.core.RedNode.prototype.replace = function(key__$1, val__$1, left__$1, right__$1) { var self__ = this; var node = this; return new cljs.core.RedNode(key__$1, val__$1, left__$1, right__$1, null); }; cljs.core.RedNode.prototype.balance_left = function(parent) { var self__ = this; var node = this; if (self__.left instanceof cljs.core.RedNode) { return new cljs.core.RedNode(self__.key, self__.val, self__.left.blacken(), new cljs.core.BlackNode(parent.key, parent.val, self__.right, parent.right, null), null); } else { if (self__.right instanceof cljs.core.RedNode) { return new cljs.core.RedNode(self__.right.key, self__.right.val, new cljs.core.BlackNode(self__.key, self__.val, self__.left, self__.right.left, null), new cljs.core.BlackNode(parent.key, parent.val, self__.right.right, parent.right, null), null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return new cljs.core.BlackNode(parent.key, parent.val, node, parent.right, null); } else { return null; } } } }; cljs.core.RedNode.prototype.balance_right = function(parent) { var self__ = this; var node = this; if (self__.right instanceof cljs.core.RedNode) { return new cljs.core.RedNode(self__.key, self__.val, new cljs.core.BlackNode(parent.key, parent.val, parent.left, self__.left, null), self__.right.blacken(), null); } else { if (self__.left instanceof cljs.core.RedNode) { return new cljs.core.RedNode(self__.left.key, self__.left.val, new cljs.core.BlackNode(parent.key, parent.val, parent.left, self__.left.left, null), new cljs.core.BlackNode(self__.key, self__.val, self__.left.right, self__.right, null), null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return new cljs.core.BlackNode(parent.key, parent.val, parent.left, node, null); } else { return null; } } } }; cljs.core.RedNode.prototype.remove_left = function(del) { var self__ = this; var node = this; return new cljs.core.RedNode(self__.key, self__.val, del, self__.right, null); }; cljs.core.RedNode.prototype.kv_reduce = function(f, init) { var self__ = this; var node = this; return cljs.core.tree_map_kv_reduce.call(null, node, f, init); }; cljs.core.RedNode.prototype.remove_right = function(del) { var self__ = this; var node = this; return new cljs.core.RedNode(self__.key, self__.val, self__.left, del, null); }; cljs.core.RedNode.prototype.cljs$core$ILookup$_lookup$arity$2 = function(node, k) { var self__ = this; var node__$1 = this; return cljs.core._nth.call(null, node__$1, k, null); }; cljs.core.RedNode.prototype.cljs$core$ILookup$_lookup$arity$3 = function(node, k, not_found) { var self__ = this; var node__$1 = this; return cljs.core._nth.call(null, node__$1, k, not_found); }; cljs.core.RedNode.prototype.cljs$core$IIndexed$_nth$arity$2 = function(node, n) { var self__ = this; var node__$1 = this; if (n === 0) { return self__.key; } else { if (n === 1) { return self__.val; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return null; } else { return null; } } } }; cljs.core.RedNode.prototype.cljs$core$IIndexed$_nth$arity$3 = function(node, n, not_found) { var self__ = this; var node__$1 = this; if (n === 0) { return self__.key; } else { if (n === 1) { return self__.val; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } }; cljs.core.RedNode.prototype.cljs$core$IVector$_assoc_n$arity$3 = function(node, n, v) { var self__ = this; var node__$1 = this; return(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val], null)).cljs$core$IVector$_assoc_n$arity$3(null, n, v); }; cljs.core.RedNode.prototype.cljs$core$IMeta$_meta$arity$1 = function(node) { var self__ = this; var node__$1 = this; return null; }; cljs.core.RedNode.prototype.cljs$core$ICounted$_count$arity$1 = function(node) { var self__ = this; var node__$1 = this; return 2; }; cljs.core.RedNode.prototype.cljs$core$IMapEntry$_key$arity$1 = function(node) { var self__ = this; var node__$1 = this; return self__.key; }; cljs.core.RedNode.prototype.cljs$core$IMapEntry$_val$arity$1 = function(node) { var self__ = this; var node__$1 = this; return self__.val; }; cljs.core.RedNode.prototype.cljs$core$IStack$_peek$arity$1 = function(node) { var self__ = this; var node__$1 = this; return self__.val; }; cljs.core.RedNode.prototype.cljs$core$IStack$_pop$arity$1 = function(node) { var self__ = this; var node__$1 = this; return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key], null); }; cljs.core.RedNode.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.RedNode.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.RedNode.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(node) { var self__ = this; var node__$1 = this; return cljs.core.PersistentVector.EMPTY; }; cljs.core.RedNode.prototype.cljs$core$IReduce$_reduce$arity$2 = function(node, f) { var self__ = this; var node__$1 = this; return cljs.core.ci_reduce.call(null, node__$1, f); }; cljs.core.RedNode.prototype.cljs$core$IReduce$_reduce$arity$3 = function(node, f, start) { var self__ = this; var node__$1 = this; return cljs.core.ci_reduce.call(null, node__$1, f, start); }; cljs.core.RedNode.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(node, k, v) { var self__ = this; var node__$1 = this; return cljs.core.assoc.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val], null), k, v); }; cljs.core.RedNode.prototype.cljs$core$ISeqable$_seq$arity$1 = function(node) { var self__ = this; var node__$1 = this; return cljs.core._conj.call(null, cljs.core._conj.call(null, cljs.core.List.EMPTY, self__.val), self__.key); }; cljs.core.RedNode.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(node, meta) { var self__ = this; var node__$1 = this; return cljs.core.with_meta.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val], null), meta); }; cljs.core.RedNode.prototype.cljs$core$ICollection$_conj$arity$2 = function(node, o) { var self__ = this; var node__$1 = this; return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key, self__.val, o], null); }; cljs.core.RedNode.prototype.call = function() { var G__5979 = null; var G__5979__2 = function(self__, k) { var self__ = this; var self____$1 = this; var node = self____$1; return node.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__5979__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var node = self____$1; return node.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__5979 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__5979__2.call(this, self__, k); case 3: return G__5979__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__5979; }(); cljs.core.RedNode.prototype.apply = function(self__, args5978) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5978))); }; cljs.core.RedNode.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var node = this; return node.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.RedNode.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var node = this; return node.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.__GT_RedNode = function __GT_RedNode(key, val, left, right, __hash) { return new cljs.core.RedNode(key, val, left, right, __hash); }; cljs.core.tree_map_add = function tree_map_add(comp, tree, k, v, found) { if (tree == null) { return new cljs.core.RedNode(k, v, null, null, null); } else { var c = comp.call(null, k, tree.key); if (c === 0) { found[0] = tree; return null; } else { if (c < 0) { var ins = tree_map_add.call(null, comp, tree.left, k, v, found); if (!(ins == null)) { return tree.add_left(ins); } else { return null; } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var ins = tree_map_add.call(null, comp, tree.right, k, v, found); if (!(ins == null)) { return tree.add_right(ins); } else { return null; } } else { return null; } } } } }; cljs.core.tree_map_append = function tree_map_append(left, right) { if (left == null) { return right; } else { if (right == null) { return left; } else { if (left instanceof cljs.core.RedNode) { if (right instanceof cljs.core.RedNode) { var app = tree_map_append.call(null, left.right, right.left); if (app instanceof cljs.core.RedNode) { return new cljs.core.RedNode(app.key, app.val, new cljs.core.RedNode(left.key, left.val, left.left, app.left, null), new cljs.core.RedNode(right.key, right.val, app.right, right.right, null), null); } else { return new cljs.core.RedNode(left.key, left.val, left.left, new cljs.core.RedNode(right.key, right.val, app, right.right, null), null); } } else { return new cljs.core.RedNode(left.key, left.val, left.left, tree_map_append.call(null, left.right, right), null); } } else { if (right instanceof cljs.core.RedNode) { return new cljs.core.RedNode(right.key, right.val, tree_map_append.call(null, left, right.left), right.right, null); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var app = tree_map_append.call(null, left.right, right.left); if (app instanceof cljs.core.RedNode) { return new cljs.core.RedNode(app.key, app.val, new cljs.core.BlackNode(left.key, left.val, left.left, app.left, null), new cljs.core.BlackNode(right.key, right.val, app.right, right.right, null), null); } else { return cljs.core.balance_left_del.call(null, left.key, left.val, left.left, new cljs.core.BlackNode(right.key, right.val, app, right.right, null)); } } else { return null; } } } } } }; cljs.core.tree_map_remove = function tree_map_remove(comp, tree, k, found) { if (!(tree == null)) { var c = comp.call(null, k, tree.key); if (c === 0) { found[0] = tree; return cljs.core.tree_map_append.call(null, tree.left, tree.right); } else { if (c < 0) { var del = tree_map_remove.call(null, comp, tree.left, k, found); if (!(del == null) || !(found[0] == null)) { if (tree.left instanceof cljs.core.BlackNode) { return cljs.core.balance_left_del.call(null, tree.key, tree.val, del, tree.right); } else { return new cljs.core.RedNode(tree.key, tree.val, del, tree.right, null); } } else { return null; } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var del = tree_map_remove.call(null, comp, tree.right, k, found); if (!(del == null) || !(found[0] == null)) { if (tree.right instanceof cljs.core.BlackNode) { return cljs.core.balance_right_del.call(null, tree.key, tree.val, tree.left, del); } else { return new cljs.core.RedNode(tree.key, tree.val, tree.left, del, null); } } else { return null; } } else { return null; } } } } else { return null; } }; cljs.core.tree_map_replace = function tree_map_replace(comp, tree, k, v) { var tk = tree.key; var c = comp.call(null, k, tk); if (c === 0) { return tree.replace(tk, v, tree.left, tree.right); } else { if (c < 0) { return tree.replace(tk, tree.val, tree_map_replace.call(null, comp, tree.left, k, v), tree.right); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return tree.replace(tk, tree.val, tree.left, tree_map_replace.call(null, comp, tree.right, k, v)); } else { return null; } } } }; cljs.core.PersistentTreeMap = function(comp, tree, cnt, meta, __hash) { this.comp = comp; this.tree = tree; this.cnt = cnt; this.meta = meta; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 418776847; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.PersistentTreeMap.cljs$lang$type = true; cljs.core.PersistentTreeMap.cljs$lang$ctorStr = "cljs.core/PersistentTreeMap"; cljs.core.PersistentTreeMap.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentTreeMap"); }; cljs.core.PersistentTreeMap.prototype.forEach = function(f) { var self__ = this; var coll = this; var seq__5981 = cljs.core.seq.call(null, coll); var chunk__5982 = null; var count__5983 = 0; var i__5984 = 0; while (true) { if (i__5984 < count__5983) { var vec__5985 = cljs.core._nth.call(null, chunk__5982, i__5984); var k = cljs.core.nth.call(null, vec__5985, 0, null); var v = cljs.core.nth.call(null, vec__5985, 1, null); f.call(null, v, k); var G__5987 = seq__5981; var G__5988 = chunk__5982; var G__5989 = count__5983; var G__5990 = i__5984 + 1; seq__5981 = G__5987; chunk__5982 = G__5988; count__5983 = G__5989; i__5984 = G__5990; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__5981); if (temp__4126__auto__) { var seq__5981__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__5981__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__5981__$1); var G__5991 = cljs.core.chunk_rest.call(null, seq__5981__$1); var G__5992 = c__4300__auto__; var G__5993 = cljs.core.count.call(null, c__4300__auto__); var G__5994 = 0; seq__5981 = G__5991; chunk__5982 = G__5992; count__5983 = G__5993; i__5984 = G__5994; continue; } else { var vec__5986 = cljs.core.first.call(null, seq__5981__$1); var k = cljs.core.nth.call(null, vec__5986, 0, null); var v = cljs.core.nth.call(null, vec__5986, 1, null); f.call(null, v, k); var G__5995 = cljs.core.next.call(null, seq__5981__$1); var G__5996 = null; var G__5997 = 0; var G__5998 = 0; seq__5981 = G__5995; chunk__5982 = G__5996; count__5983 = G__5997; i__5984 = G__5998; continue; } } else { return null; } } break; } }; cljs.core.PersistentTreeMap.prototype.get = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentTreeMap.prototype.entries = function() { var self__ = this; var coll = this; return cljs.core.entries_iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentTreeMap.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentTreeMap.prototype.keys = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.keys.call(null, coll)); }; cljs.core.PersistentTreeMap.prototype.values = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.vals.call(null, coll)); }; cljs.core.PersistentTreeMap.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentTreeMap.prototype.entry_at = function(k) { var self__ = this; var coll = this; var t = self__.tree; while (true) { if (!(t == null)) { var c = self__.comp.call(null, k, t.key); if (c === 0) { return t; } else { if (c < 0) { var G__5999 = t.left; t = G__5999; continue; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var G__6000 = t.right; t = G__6000; continue; } else { return null; } } } } else { return null; } break; } }; cljs.core.PersistentTreeMap.prototype.has = function(k) { var self__ = this; var coll = this; return cljs.core.contains_QMARK_.call(null, coll, k); }; cljs.core.PersistentTreeMap.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, k, null); }; cljs.core.PersistentTreeMap.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, k, not_found) { var self__ = this; var coll__$1 = this; var n = coll__$1.entry_at(k); if (!(n == null)) { return n.val; } else { return not_found; } }; cljs.core.PersistentTreeMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = function(coll, f, init) { var self__ = this; var coll__$1 = this; if (!(self__.tree == null)) { return cljs.core.tree_map_kv_reduce.call(null, self__.tree, f, init); } else { return init; } }; cljs.core.PersistentTreeMap.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentTreeMap.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.PersistentTreeMap(self__.comp, self__.tree, self__.cnt, self__.meta, self__.__hash); }; cljs.core.PersistentTreeMap.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.cnt; }; cljs.core.PersistentTreeMap.prototype.cljs$core$IReversible$_rseq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt > 0) { return cljs.core.create_tree_map_seq.call(null, self__.tree, false, self__.cnt); } else { return null; } }; cljs.core.PersistentTreeMap.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_unordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentTreeMap.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_map.call(null, coll__$1, other); }; cljs.core.PersistentTreeMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.PersistentTreeMap.EMPTY, self__.meta); }; cljs.core.PersistentTreeMap.prototype.cljs$core$IMap$_dissoc$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; var found = [null]; var t = cljs.core.tree_map_remove.call(null, self__.comp, self__.tree, k, found); if (t == null) { if (cljs.core.nth.call(null, found, 0) == null) { return coll__$1; } else { return new cljs.core.PersistentTreeMap(self__.comp, null, 0, self__.meta, null); } } else { return new cljs.core.PersistentTreeMap(self__.comp, t.blacken(), self__.cnt - 1, self__.meta, null); } }; cljs.core.PersistentTreeMap.prototype.cljs$core$IAssociative$_assoc$arity$3 = function(coll, k, v) { var self__ = this; var coll__$1 = this; var found = [null]; var t = cljs.core.tree_map_add.call(null, self__.comp, self__.tree, k, v, found); if (t == null) { var found_node = cljs.core.nth.call(null, found, 0); if (cljs.core._EQ_.call(null, v, found_node.val)) { return coll__$1; } else { return new cljs.core.PersistentTreeMap(self__.comp, cljs.core.tree_map_replace.call(null, self__.comp, self__.tree, k, v), self__.cnt, self__.meta, null); } } else { return new cljs.core.PersistentTreeMap(self__.comp, t.blacken(), self__.cnt + 1, self__.meta, null); } }; cljs.core.PersistentTreeMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = function(coll, k) { var self__ = this; var coll__$1 = this; return!(coll__$1.entry_at(k) == null); }; cljs.core.PersistentTreeMap.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (self__.cnt > 0) { return cljs.core.create_tree_map_seq.call(null, self__.tree, true, self__.cnt); } else { return null; } }; cljs.core.PersistentTreeMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentTreeMap(self__.comp, self__.tree, self__.cnt, meta__$1, self__.__hash); }; cljs.core.PersistentTreeMap.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, entry) { var self__ = this; var coll__$1 = this; if (cljs.core.vector_QMARK_.call(null, entry)) { return cljs.core._assoc.call(null, coll__$1, cljs.core._nth.call(null, entry, 0), cljs.core._nth.call(null, entry, 1)); } else { var ret = coll__$1; var es = cljs.core.seq.call(null, entry); while (true) { if (es == null) { return ret; } else { var e = cljs.core.first.call(null, es); if (cljs.core.vector_QMARK_.call(null, e)) { var G__6001 = cljs.core._assoc.call(null, ret, cljs.core._nth.call(null, e, 0), cljs.core._nth.call(null, e, 1)); var G__6002 = cljs.core.next.call(null, es); ret = G__6001; es = G__6002; continue; } else { throw new Error("conj on a map takes map entries or seqables of map entries"); } } break; } } }; cljs.core.PersistentTreeMap.prototype.call = function() { var G__6003 = null; var G__6003__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__6003__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__6003 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__6003__2.call(this, self__, k); case 3: return G__6003__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__6003; }(); cljs.core.PersistentTreeMap.prototype.apply = function(self__, args5980) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args5980))); }; cljs.core.PersistentTreeMap.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentTreeMap.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_sorted_seq$arity$2 = function(coll, ascending_QMARK_) { var self__ = this; var coll__$1 = this; if (self__.cnt > 0) { return cljs.core.create_tree_map_seq.call(null, self__.tree, ascending_QMARK_, self__.cnt); } else { return null; } }; cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_sorted_seq_from$arity$3 = function(coll, k, ascending_QMARK_) { var self__ = this; var coll__$1 = this; if (self__.cnt > 0) { var stack = null; var t = self__.tree; while (true) { if (!(t == null)) { var c = self__.comp.call(null, k, t.key); if (c === 0) { return new cljs.core.PersistentTreeMapSeq(null, cljs.core.conj.call(null, stack, t), ascending_QMARK_, -1, null); } else { if (cljs.core.truth_(ascending_QMARK_)) { if (c < 0) { var G__6004 = cljs.core.conj.call(null, stack, t); var G__6005 = t.left; stack = G__6004; t = G__6005; continue; } else { var G__6006 = stack; var G__6007 = t.right; stack = G__6006; t = G__6007; continue; } } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { if (c > 0) { var G__6008 = cljs.core.conj.call(null, stack, t); var G__6009 = t.right; stack = G__6008; t = G__6009; continue; } else { var G__6010 = stack; var G__6011 = t.left; stack = G__6010; t = G__6011; continue; } } else { return null; } } } } else { if (stack == null) { return null; } else { return new cljs.core.PersistentTreeMapSeq(null, stack, ascending_QMARK_, -1, null); } } break; } } else { return null; } }; cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_entry_key$arity$2 = function(coll, entry) { var self__ = this; var coll__$1 = this; return cljs.core.key.call(null, entry); }; cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_comparator$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.comp; }; cljs.core.__GT_PersistentTreeMap = function __GT_PersistentTreeMap(comp, tree, cnt, meta, __hash) { return new cljs.core.PersistentTreeMap(comp, tree, cnt, meta, __hash); }; cljs.core.PersistentTreeMap.EMPTY = new cljs.core.PersistentTreeMap(cljs.core.compare, null, 0, null, 0); cljs.core.hash_map = function() { var hash_map__delegate = function(keyvals) { var in$ = cljs.core.seq.call(null, keyvals); var out = cljs.core.transient$.call(null, cljs.core.PersistentHashMap.EMPTY); while (true) { if (in$) { var G__6012 = cljs.core.nnext.call(null, in$); var G__6013 = cljs.core.assoc_BANG_.call(null, out, cljs.core.first.call(null, in$), cljs.core.second.call(null, in$)); in$ = G__6012; out = G__6013; continue; } else { return cljs.core.persistent_BANG_.call(null, out); } break; } }; var hash_map = function(var_args) { var keyvals = null; if (arguments.length > 0) { keyvals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return hash_map__delegate.call(this, keyvals); }; hash_map.cljs$lang$maxFixedArity = 0; hash_map.cljs$lang$applyTo = function(arglist__6014) { var keyvals = cljs.core.seq(arglist__6014); return hash_map__delegate(keyvals); }; hash_map.cljs$core$IFn$_invoke$arity$variadic = hash_map__delegate; return hash_map; }(); cljs.core.array_map = function() { var array_map__delegate = function(keyvals) { return new cljs.core.PersistentArrayMap(null, cljs.core.quot.call(null, cljs.core.count.call(null, keyvals), 2), cljs.core.apply.call(null, cljs.core.array, keyvals), null); }; var array_map = function(var_args) { var keyvals = null; if (arguments.length > 0) { keyvals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return array_map__delegate.call(this, keyvals); }; array_map.cljs$lang$maxFixedArity = 0; array_map.cljs$lang$applyTo = function(arglist__6015) { var keyvals = cljs.core.seq(arglist__6015); return array_map__delegate(keyvals); }; array_map.cljs$core$IFn$_invoke$arity$variadic = array_map__delegate; return array_map; }(); cljs.core.obj_map = function() { var obj_map__delegate = function(keyvals) { var ks = []; var obj = function() { var obj6019 = {}; return obj6019; }(); var kvs = cljs.core.seq.call(null, keyvals); while (true) { if (kvs) { ks.push(cljs.core.first.call(null, kvs)); obj[cljs.core.first.call(null, kvs)] = cljs.core.second.call(null, kvs); var G__6020 = cljs.core.nnext.call(null, kvs); kvs = G__6020; continue; } else { return cljs.core.ObjMap.fromObject.call(null, ks, obj); } break; } }; var obj_map = function(var_args) { var keyvals = null; if (arguments.length > 0) { keyvals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return obj_map__delegate.call(this, keyvals); }; obj_map.cljs$lang$maxFixedArity = 0; obj_map.cljs$lang$applyTo = function(arglist__6021) { var keyvals = cljs.core.seq(arglist__6021); return obj_map__delegate(keyvals); }; obj_map.cljs$core$IFn$_invoke$arity$variadic = obj_map__delegate; return obj_map; }(); cljs.core.sorted_map = function() { var sorted_map__delegate = function(keyvals) { var in$ = cljs.core.seq.call(null, keyvals); var out = cljs.core.PersistentTreeMap.EMPTY; while (true) { if (in$) { var G__6022 = cljs.core.nnext.call(null, in$); var G__6023 = cljs.core.assoc.call(null, out, cljs.core.first.call(null, in$), cljs.core.second.call(null, in$)); in$ = G__6022; out = G__6023; continue; } else { return out; } break; } }; var sorted_map = function(var_args) { var keyvals = null; if (arguments.length > 0) { keyvals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return sorted_map__delegate.call(this, keyvals); }; sorted_map.cljs$lang$maxFixedArity = 0; sorted_map.cljs$lang$applyTo = function(arglist__6024) { var keyvals = cljs.core.seq(arglist__6024); return sorted_map__delegate(keyvals); }; sorted_map.cljs$core$IFn$_invoke$arity$variadic = sorted_map__delegate; return sorted_map; }(); cljs.core.sorted_map_by = function() { var sorted_map_by__delegate = function(comparator, keyvals) { var in$ = cljs.core.seq.call(null, keyvals); var out = new cljs.core.PersistentTreeMap(cljs.core.fn__GT_comparator.call(null, comparator), null, 0, null, 0); while (true) { if (in$) { var G__6025 = cljs.core.nnext.call(null, in$); var G__6026 = cljs.core.assoc.call(null, out, cljs.core.first.call(null, in$), cljs.core.second.call(null, in$)); in$ = G__6025; out = G__6026; continue; } else { return out; } break; } }; var sorted_map_by = function(comparator, var_args) { var keyvals = null; if (arguments.length > 1) { keyvals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return sorted_map_by__delegate.call(this, comparator, keyvals); }; sorted_map_by.cljs$lang$maxFixedArity = 1; sorted_map_by.cljs$lang$applyTo = function(arglist__6027) { var comparator = cljs.core.first(arglist__6027); var keyvals = cljs.core.rest(arglist__6027); return sorted_map_by__delegate(comparator, keyvals); }; sorted_map_by.cljs$core$IFn$_invoke$arity$variadic = sorted_map_by__delegate; return sorted_map_by; }(); cljs.core.KeySeq = function(mseq, _meta) { this.mseq = mseq; this._meta = _meta; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32374988; }; cljs.core.KeySeq.cljs$lang$type = true; cljs.core.KeySeq.cljs$lang$ctorStr = "cljs.core/KeySeq"; cljs.core.KeySeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/KeySeq"); }; cljs.core.KeySeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.KeySeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.KeySeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__._meta; }; cljs.core.KeySeq.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var nseq = function() { var G__6028 = self__.mseq; if (G__6028) { var bit__4194__auto__ = G__6028.cljs$lang$protocol_mask$partition0$ & 128; if (bit__4194__auto__ || G__6028.cljs$core$INext$) { return true; } else { if (!G__6028.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6028); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6028); } }() ? cljs.core._next.call(null, self__.mseq) : cljs.core.next.call(null, self__.mseq); if (nseq == null) { return null; } else { return new cljs.core.KeySeq(nseq, self__._meta); } }; cljs.core.KeySeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.hash_ordered_coll.call(null, coll__$1); }; cljs.core.KeySeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.KeySeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__._meta); }; cljs.core.KeySeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.KeySeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.KeySeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var me = cljs.core._first.call(null, self__.mseq); return cljs.core._key.call(null, me); }; cljs.core.KeySeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var nseq = function() { var G__6029 = self__.mseq; if (G__6029) { var bit__4194__auto__ = G__6029.cljs$lang$protocol_mask$partition0$ & 128; if (bit__4194__auto__ || G__6029.cljs$core$INext$) { return true; } else { if (!G__6029.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6029); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6029); } }() ? cljs.core._next.call(null, self__.mseq) : cljs.core.next.call(null, self__.mseq); if (!(nseq == null)) { return new cljs.core.KeySeq(nseq, self__._meta); } else { return cljs.core.List.EMPTY; } }; cljs.core.KeySeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.KeySeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, new_meta) { var self__ = this; var coll__$1 = this; return new cljs.core.KeySeq(self__.mseq, new_meta); }; cljs.core.KeySeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_KeySeq = function __GT_KeySeq(mseq, _meta) { return new cljs.core.KeySeq(mseq, _meta); }; cljs.core.keys = function keys(hash_map) { var temp__4126__auto__ = cljs.core.seq.call(null, hash_map); if (temp__4126__auto__) { var mseq = temp__4126__auto__; return new cljs.core.KeySeq(mseq, null); } else { return null; } }; cljs.core.key = function key(map_entry) { return cljs.core._key.call(null, map_entry); }; cljs.core.ValSeq = function(mseq, _meta) { this.mseq = mseq; this._meta = _meta; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 32374988; }; cljs.core.ValSeq.cljs$lang$type = true; cljs.core.ValSeq.cljs$lang$ctorStr = "cljs.core/ValSeq"; cljs.core.ValSeq.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/ValSeq"); }; cljs.core.ValSeq.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.ValSeq.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.ValSeq.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__._meta; }; cljs.core.ValSeq.prototype.cljs$core$INext$_next$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var nseq = function() { var G__6030 = self__.mseq; if (G__6030) { var bit__4194__auto__ = G__6030.cljs$lang$protocol_mask$partition0$ & 128; if (bit__4194__auto__ || G__6030.cljs$core$INext$) { return true; } else { if (!G__6030.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6030); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6030); } }() ? cljs.core._next.call(null, self__.mseq) : cljs.core.next.call(null, self__.mseq); if (nseq == null) { return null; } else { return new cljs.core.ValSeq(nseq, self__._meta); } }; cljs.core.ValSeq.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.hash_ordered_coll.call(null, coll__$1); }; cljs.core.ValSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.equiv_sequential.call(null, coll__$1, other); }; cljs.core.ValSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__._meta); }; cljs.core.ValSeq.prototype.cljs$core$IReduce$_reduce$arity$2 = function(coll, f) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, coll__$1); }; cljs.core.ValSeq.prototype.cljs$core$IReduce$_reduce$arity$3 = function(coll, f, start) { var self__ = this; var coll__$1 = this; return cljs.core.seq_reduce.call(null, f, start, coll__$1); }; cljs.core.ValSeq.prototype.cljs$core$ISeq$_first$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var me = cljs.core._first.call(null, self__.mseq); return cljs.core._val.call(null, me); }; cljs.core.ValSeq.prototype.cljs$core$ISeq$_rest$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var nseq = function() { var G__6031 = self__.mseq; if (G__6031) { var bit__4194__auto__ = G__6031.cljs$lang$protocol_mask$partition0$ & 128; if (bit__4194__auto__ || G__6031.cljs$core$INext$) { return true; } else { if (!G__6031.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6031); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.INext, G__6031); } }() ? cljs.core._next.call(null, self__.mseq) : cljs.core.next.call(null, self__.mseq); if (!(nseq == null)) { return new cljs.core.ValSeq(nseq, self__._meta); } else { return cljs.core.List.EMPTY; } }; cljs.core.ValSeq.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return coll__$1; }; cljs.core.ValSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, new_meta) { var self__ = this; var coll__$1 = this; return new cljs.core.ValSeq(self__.mseq, new_meta); }; cljs.core.ValSeq.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return cljs.core.cons.call(null, o, coll__$1); }; cljs.core.__GT_ValSeq = function __GT_ValSeq(mseq, _meta) { return new cljs.core.ValSeq(mseq, _meta); }; cljs.core.vals = function vals(hash_map) { var temp__4126__auto__ = cljs.core.seq.call(null, hash_map); if (temp__4126__auto__) { var mseq = temp__4126__auto__; return new cljs.core.ValSeq(mseq, null); } else { return null; } }; cljs.core.val = function val(map_entry) { return cljs.core._val.call(null, map_entry); }; cljs.core.merge = function() { var merge__delegate = function(maps) { if (cljs.core.truth_(cljs.core.some.call(null, cljs.core.identity, maps))) { return cljs.core.reduce.call(null, function(p1__6032_SHARP_, p2__6033_SHARP_) { return cljs.core.conj.call(null, function() { var or__3544__auto__ = p1__6032_SHARP_; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.PersistentArrayMap.EMPTY; } }(), p2__6033_SHARP_); }, maps); } else { return null; } }; var merge = function(var_args) { var maps = null; if (arguments.length > 0) { maps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return merge__delegate.call(this, maps); }; merge.cljs$lang$maxFixedArity = 0; merge.cljs$lang$applyTo = function(arglist__6034) { var maps = cljs.core.seq(arglist__6034); return merge__delegate(maps); }; merge.cljs$core$IFn$_invoke$arity$variadic = merge__delegate; return merge; }(); cljs.core.merge_with = function() { var merge_with__delegate = function(f, maps) { if (cljs.core.truth_(cljs.core.some.call(null, cljs.core.identity, maps))) { var merge_entry = function(m, e) { var k = cljs.core.first.call(null, e); var v = cljs.core.second.call(null, e); if (cljs.core.contains_QMARK_.call(null, m, k)) { return cljs.core.assoc.call(null, m, k, f.call(null, cljs.core.get.call(null, m, k), v)); } else { return cljs.core.assoc.call(null, m, k, v); } }; var merge2 = function(merge_entry) { return function(m1, m2) { return cljs.core.reduce.call(null, merge_entry, function() { var or__3544__auto__ = m1; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.PersistentArrayMap.EMPTY; } }(), cljs.core.seq.call(null, m2)); }; }(merge_entry); return cljs.core.reduce.call(null, merge2, maps); } else { return null; } }; var merge_with = function(f, var_args) { var maps = null; if (arguments.length > 1) { maps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return merge_with__delegate.call(this, f, maps); }; merge_with.cljs$lang$maxFixedArity = 1; merge_with.cljs$lang$applyTo = function(arglist__6035) { var f = cljs.core.first(arglist__6035); var maps = cljs.core.rest(arglist__6035); return merge_with__delegate(f, maps); }; merge_with.cljs$core$IFn$_invoke$arity$variadic = merge_with__delegate; return merge_with; }(); cljs.core.select_keys = function select_keys(map, keyseq) { var ret = cljs.core.PersistentArrayMap.EMPTY; var keys = cljs.core.seq.call(null, keyseq); while (true) { if (keys) { var key = cljs.core.first.call(null, keys); var entry = cljs.core.get.call(null, map, key, new cljs.core.Keyword("cljs.core", "not-found", "cljs.core/not-found", -1572889185)); var G__6036 = cljs.core.not_EQ_.call(null, entry, new cljs.core.Keyword("cljs.core", "not-found", "cljs.core/not-found", -1572889185)) ? cljs.core.assoc.call(null, ret, key, entry) : ret; var G__6037 = cljs.core.next.call(null, keys); ret = G__6036; keys = G__6037; continue; } else { return ret; } break; } }; cljs.core.PersistentHashSet = function(meta, hash_map, __hash) { this.meta = meta; this.hash_map = hash_map; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 15077647; this.cljs$lang$protocol_mask$partition1$ = 8196; }; cljs.core.PersistentHashSet.cljs$lang$type = true; cljs.core.PersistentHashSet.cljs$lang$ctorStr = "cljs.core/PersistentHashSet"; cljs.core.PersistentHashSet.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentHashSet"); }; cljs.core.PersistentHashSet.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentHashSet.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentHashSet.prototype.keys = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentHashSet.prototype.entries = function() { var self__ = this; var coll = this; return cljs.core.set_entries_iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentHashSet.prototype.values = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentHashSet.prototype.has = function(k) { var self__ = this; var coll = this; return cljs.core.contains_QMARK_.call(null, coll, k); }; cljs.core.PersistentHashSet.prototype.forEach = function(f) { var self__ = this; var coll = this; var seq__6040 = cljs.core.seq.call(null, coll); var chunk__6041 = null; var count__6042 = 0; var i__6043 = 0; while (true) { if (i__6043 < count__6042) { var vec__6044 = cljs.core._nth.call(null, chunk__6041, i__6043); var k = cljs.core.nth.call(null, vec__6044, 0, null); var v = cljs.core.nth.call(null, vec__6044, 1, null); f.call(null, v, k); var G__6046 = seq__6040; var G__6047 = chunk__6041; var G__6048 = count__6042; var G__6049 = i__6043 + 1; seq__6040 = G__6046; chunk__6041 = G__6047; count__6042 = G__6048; i__6043 = G__6049; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__6040); if (temp__4126__auto__) { var seq__6040__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6040__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__6040__$1); var G__6050 = cljs.core.chunk_rest.call(null, seq__6040__$1); var G__6051 = c__4300__auto__; var G__6052 = cljs.core.count.call(null, c__4300__auto__); var G__6053 = 0; seq__6040 = G__6050; chunk__6041 = G__6051; count__6042 = G__6052; i__6043 = G__6053; continue; } else { var vec__6045 = cljs.core.first.call(null, seq__6040__$1); var k = cljs.core.nth.call(null, vec__6045, 0, null); var v = cljs.core.nth.call(null, vec__6045, 1, null); f.call(null, v, k); var G__6054 = cljs.core.next.call(null, seq__6040__$1); var G__6055 = null; var G__6056 = 0; var G__6057 = 0; seq__6040 = G__6054; chunk__6041 = G__6055; count__6042 = G__6056; i__6043 = G__6057; continue; } } else { return null; } } break; } }; cljs.core.PersistentHashSet.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, v) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, v, null); }; cljs.core.PersistentHashSet.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, v, not_found) { var self__ = this; var coll__$1 = this; if (cljs.core._contains_key_QMARK_.call(null, self__.hash_map, v)) { return v; } else { return not_found; } }; cljs.core.PersistentHashSet.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentHashSet.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.PersistentHashSet(self__.meta, self__.hash_map, self__.__hash); }; cljs.core.PersistentHashSet.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._count.call(null, self__.hash_map); }; cljs.core.PersistentHashSet.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_unordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentHashSet.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.set_QMARK_.call(null, other) && cljs.core.count.call(null, coll__$1) === cljs.core.count.call(null, other) && cljs.core.every_QMARK_.call(null, function(coll__$1) { return function(p1__6038_SHARP_) { return cljs.core.contains_QMARK_.call(null, coll__$1, p1__6038_SHARP_); }; }(coll__$1), other); }; cljs.core.PersistentHashSet.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return new cljs.core.TransientHashSet(cljs.core._as_transient.call(null, self__.hash_map)); }; cljs.core.PersistentHashSet.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.PersistentHashSet.EMPTY, self__.meta); }; cljs.core.PersistentHashSet.prototype.cljs$core$ISet$_disjoin$arity$2 = function(coll, v) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentHashSet(self__.meta, cljs.core._dissoc.call(null, self__.hash_map, v), null); }; cljs.core.PersistentHashSet.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.keys.call(null, self__.hash_map); }; cljs.core.PersistentHashSet.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentHashSet(meta__$1, self__.hash_map, self__.__hash); }; cljs.core.PersistentHashSet.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentHashSet(self__.meta, cljs.core.assoc.call(null, self__.hash_map, o, null), null); }; cljs.core.PersistentHashSet.prototype.call = function() { var G__6058 = null; var G__6058__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__6058__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__6058 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__6058__2.call(this, self__, k); case 3: return G__6058__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__6058; }(); cljs.core.PersistentHashSet.prototype.apply = function(self__, args6039) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args6039))); }; cljs.core.PersistentHashSet.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentHashSet.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.__GT_PersistentHashSet = function __GT_PersistentHashSet(meta, hash_map, __hash) { return new cljs.core.PersistentHashSet(meta, hash_map, __hash); }; cljs.core.PersistentHashSet.EMPTY = new cljs.core.PersistentHashSet(null, cljs.core.PersistentArrayMap.EMPTY, 0); cljs.core.PersistentHashSet.fromArray = function(items, no_clone) { var len = items.length; if (len <= cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD) { var arr = no_clone ? items : cljs.core.aclone.call(null, items); var i = 0; var out = cljs.core.transient$.call(null, cljs.core.PersistentArrayMap.EMPTY); while (true) { if (i < len) { var G__6059 = i + 1; var G__6060 = cljs.core._assoc_BANG_.call(null, out, items[i], null); i = G__6059; out = G__6060; continue; } else { return new cljs.core.PersistentHashSet(null, cljs.core._persistent_BANG_.call(null, out), null); } break; } } else { var i = 0; var out = cljs.core.transient$.call(null, cljs.core.PersistentHashSet.EMPTY); while (true) { if (i < len) { var G__6061 = i + 1; var G__6062 = cljs.core._conj_BANG_.call(null, out, items[i]); i = G__6061; out = G__6062; continue; } else { return cljs.core._persistent_BANG_.call(null, out); } break; } } }; cljs.core.TransientHashSet = function(transient_map) { this.transient_map = transient_map; this.cljs$lang$protocol_mask$partition0$ = 259; this.cljs$lang$protocol_mask$partition1$ = 136; }; cljs.core.TransientHashSet.cljs$lang$type = true; cljs.core.TransientHashSet.cljs$lang$ctorStr = "cljs.core/TransientHashSet"; cljs.core.TransientHashSet.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/TransientHashSet"); }; cljs.core.TransientHashSet.prototype.call = function() { var G__6064 = null; var G__6064__2 = function(self__, k) { var self__ = this; var self____$1 = this; var tcoll = self____$1; if (cljs.core._lookup.call(null, self__.transient_map, k, cljs.core.lookup_sentinel) === cljs.core.lookup_sentinel) { return null; } else { return k; } }; var G__6064__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var tcoll = self____$1; if (cljs.core._lookup.call(null, self__.transient_map, k, cljs.core.lookup_sentinel) === cljs.core.lookup_sentinel) { return not_found; } else { return k; } }; G__6064 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__6064__2.call(this, self__, k); case 3: return G__6064__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__6064; }(); cljs.core.TransientHashSet.prototype.apply = function(self__, args6063) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args6063))); }; cljs.core.TransientHashSet.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var tcoll = this; if (cljs.core._lookup.call(null, self__.transient_map, k, cljs.core.lookup_sentinel) === cljs.core.lookup_sentinel) { return null; } else { return k; } }; cljs.core.TransientHashSet.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var tcoll = this; if (cljs.core._lookup.call(null, self__.transient_map, k, cljs.core.lookup_sentinel) === cljs.core.lookup_sentinel) { return not_found; } else { return k; } }; cljs.core.TransientHashSet.prototype.cljs$core$ILookup$_lookup$arity$2 = function(tcoll, v) { var self__ = this; var tcoll__$1 = this; return cljs.core._lookup.call(null, tcoll__$1, v, null); }; cljs.core.TransientHashSet.prototype.cljs$core$ILookup$_lookup$arity$3 = function(tcoll, v, not_found) { var self__ = this; var tcoll__$1 = this; if (cljs.core._lookup.call(null, self__.transient_map, v, cljs.core.lookup_sentinel) === cljs.core.lookup_sentinel) { return not_found; } else { return v; } }; cljs.core.TransientHashSet.prototype.cljs$core$ICounted$_count$arity$1 = function(tcoll) { var self__ = this; var tcoll__$1 = this; return cljs.core.count.call(null, self__.transient_map); }; cljs.core.TransientHashSet.prototype.cljs$core$ITransientSet$_disjoin_BANG_$arity$2 = function(tcoll, v) { var self__ = this; var tcoll__$1 = this; self__.transient_map = cljs.core.dissoc_BANG_.call(null, self__.transient_map, v); return tcoll__$1; }; cljs.core.TransientHashSet.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 = function(tcoll, o) { var self__ = this; var tcoll__$1 = this; self__.transient_map = cljs.core.assoc_BANG_.call(null, self__.transient_map, o, null); return tcoll__$1; }; cljs.core.TransientHashSet.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 = function(tcoll) { var self__ = this; var tcoll__$1 = this; return new cljs.core.PersistentHashSet(null, cljs.core.persistent_BANG_.call(null, self__.transient_map), null); }; cljs.core.__GT_TransientHashSet = function __GT_TransientHashSet(transient_map) { return new cljs.core.TransientHashSet(transient_map); }; cljs.core.PersistentTreeSet = function(meta, tree_map, __hash) { this.meta = meta; this.tree_map = tree_map; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 417730831; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.PersistentTreeSet.cljs$lang$type = true; cljs.core.PersistentTreeSet.cljs$lang$ctorStr = "cljs.core/PersistentTreeSet"; cljs.core.PersistentTreeSet.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/PersistentTreeSet"); }; cljs.core.PersistentTreeSet.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.PersistentTreeSet.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.PersistentTreeSet.prototype.keys = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentTreeSet.prototype.entries = function() { var self__ = this; var coll = this; return cljs.core.set_entries_iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentTreeSet.prototype.values = function() { var self__ = this; var coll = this; return cljs.core.iterator.call(null, cljs.core.seq.call(null, coll)); }; cljs.core.PersistentTreeSet.prototype.has = function(k) { var self__ = this; var coll = this; return cljs.core.contains_QMARK_.call(null, coll, k); }; cljs.core.PersistentTreeSet.prototype.forEach = function(f) { var self__ = this; var coll = this; var seq__6067 = cljs.core.seq.call(null, coll); var chunk__6068 = null; var count__6069 = 0; var i__6070 = 0; while (true) { if (i__6070 < count__6069) { var vec__6071 = cljs.core._nth.call(null, chunk__6068, i__6070); var k = cljs.core.nth.call(null, vec__6071, 0, null); var v = cljs.core.nth.call(null, vec__6071, 1, null); f.call(null, v, k); var G__6073 = seq__6067; var G__6074 = chunk__6068; var G__6075 = count__6069; var G__6076 = i__6070 + 1; seq__6067 = G__6073; chunk__6068 = G__6074; count__6069 = G__6075; i__6070 = G__6076; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__6067); if (temp__4126__auto__) { var seq__6067__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6067__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__6067__$1); var G__6077 = cljs.core.chunk_rest.call(null, seq__6067__$1); var G__6078 = c__4300__auto__; var G__6079 = cljs.core.count.call(null, c__4300__auto__); var G__6080 = 0; seq__6067 = G__6077; chunk__6068 = G__6078; count__6069 = G__6079; i__6070 = G__6080; continue; } else { var vec__6072 = cljs.core.first.call(null, seq__6067__$1); var k = cljs.core.nth.call(null, vec__6072, 0, null); var v = cljs.core.nth.call(null, vec__6072, 1, null); f.call(null, v, k); var G__6081 = cljs.core.next.call(null, seq__6067__$1); var G__6082 = null; var G__6083 = 0; var G__6084 = 0; seq__6067 = G__6081; chunk__6068 = G__6082; count__6069 = G__6083; i__6070 = G__6084; continue; } } else { return null; } } break; } }; cljs.core.PersistentTreeSet.prototype.cljs$core$ILookup$_lookup$arity$2 = function(coll, v) { var self__ = this; var coll__$1 = this; return cljs.core._lookup.call(null, coll__$1, v, null); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ILookup$_lookup$arity$3 = function(coll, v, not_found) { var self__ = this; var coll__$1 = this; var n = self__.tree_map.entry_at(v); if (!(n == null)) { return n.key; } else { return not_found; } }; cljs.core.PersistentTreeSet.prototype.cljs$core$IMeta$_meta$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return self__.meta; }; cljs.core.PersistentTreeSet.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.PersistentTreeSet(self__.meta, self__.tree_map, self__.__hash); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ICounted$_count$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.count.call(null, self__.tree_map); }; cljs.core.PersistentTreeSet.prototype.cljs$core$IReversible$_rseq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; if (cljs.core.count.call(null, self__.tree_map) > 0) { return cljs.core.map.call(null, cljs.core.key, cljs.core.rseq.call(null, self__.tree_map)); } else { return null; } }; cljs.core.PersistentTreeSet.prototype.cljs$core$IHash$_hash$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_unordered_coll.call(null, coll__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.PersistentTreeSet.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(coll, other) { var self__ = this; var coll__$1 = this; return cljs.core.set_QMARK_.call(null, other) && cljs.core.count.call(null, coll__$1) === cljs.core.count.call(null, other) && cljs.core.every_QMARK_.call(null, function(coll__$1) { return function(p1__6065_SHARP_) { return cljs.core.contains_QMARK_.call(null, coll__$1, p1__6065_SHARP_); }; }(coll__$1), other); }; cljs.core.PersistentTreeSet.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.with_meta.call(null, cljs.core.PersistentTreeSet.EMPTY, self__.meta); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ISet$_disjoin$arity$2 = function(coll, v) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentTreeSet(self__.meta, cljs.core.dissoc.call(null, self__.tree_map, v), null); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ISeqable$_seq$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core.keys.call(null, self__.tree_map); }; cljs.core.PersistentTreeSet.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(coll, meta__$1) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentTreeSet(meta__$1, self__.tree_map, self__.__hash); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ICollection$_conj$arity$2 = function(coll, o) { var self__ = this; var coll__$1 = this; return new cljs.core.PersistentTreeSet(self__.meta, cljs.core.assoc.call(null, self__.tree_map, o, null), null); }; cljs.core.PersistentTreeSet.prototype.call = function() { var G__6085 = null; var G__6085__2 = function(self__, k) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; var G__6085__3 = function(self__, k, not_found) { var self__ = this; var self____$1 = this; var coll = self____$1; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; G__6085 = function(self__, k, not_found) { switch(arguments.length) { case 2: return G__6085__2.call(this, self__, k); case 3: return G__6085__3.call(this, self__, k, not_found); } throw new Error("Invalid arity: " + arguments.length); }; return G__6085; }(); cljs.core.PersistentTreeSet.prototype.apply = function(self__, args6066) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args6066))); }; cljs.core.PersistentTreeSet.prototype.cljs$core$IFn$_invoke$arity$1 = function(k) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$2(null, k); }; cljs.core.PersistentTreeSet.prototype.cljs$core$IFn$_invoke$arity$2 = function(k, not_found) { var self__ = this; var coll = this; return coll.cljs$core$ILookup$_lookup$arity$3(null, k, not_found); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_sorted_seq$arity$2 = function(coll, ascending_QMARK_) { var self__ = this; var coll__$1 = this; return cljs.core.map.call(null, cljs.core.key, cljs.core._sorted_seq.call(null, self__.tree_map, ascending_QMARK_)); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_sorted_seq_from$arity$3 = function(coll, k, ascending_QMARK_) { var self__ = this; var coll__$1 = this; return cljs.core.map.call(null, cljs.core.key, cljs.core._sorted_seq_from.call(null, self__.tree_map, k, ascending_QMARK_)); }; cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_entry_key$arity$2 = function(coll, entry) { var self__ = this; var coll__$1 = this; return entry; }; cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_comparator$arity$1 = function(coll) { var self__ = this; var coll__$1 = this; return cljs.core._comparator.call(null, self__.tree_map); }; cljs.core.__GT_PersistentTreeSet = function __GT_PersistentTreeSet(meta, tree_map, __hash) { return new cljs.core.PersistentTreeSet(meta, tree_map, __hash); }; cljs.core.PersistentTreeSet.EMPTY = new cljs.core.PersistentTreeSet(null, cljs.core.PersistentTreeMap.EMPTY, 0); cljs.core.set_from_indexed_seq = function set_from_indexed_seq(iseq) { var arr = iseq.arr; var ret = function() { var a__4394__auto__ = arr; var i = 0; var res = cljs.core._as_transient.call(null, cljs.core.PersistentHashSet.EMPTY); while (true) { if (i < a__4394__auto__.length) { var G__6086 = i + 1; var G__6087 = cljs.core._conj_BANG_.call(null, res, arr[i]); i = G__6086; res = G__6087; continue; } else { return res; } break; } }(); return cljs.core._persistent_BANG_.call(null, ret); }; cljs.core.set = function set(coll) { var in$ = cljs.core.seq.call(null, coll); if (in$ == null) { return cljs.core.PersistentHashSet.EMPTY; } else { if (in$ instanceof cljs.core.IndexedSeq && in$.i === 0) { return cljs.core.set_from_indexed_seq.call(null, in$); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var in$__$1 = in$; var out = cljs.core._as_transient.call(null, cljs.core.PersistentHashSet.EMPTY); while (true) { if (!(in$__$1 == null)) { var G__6088 = cljs.core._next.call(null, in$__$1); var G__6089 = cljs.core._conj_BANG_.call(null, out, cljs.core._first.call(null, in$__$1)); in$__$1 = G__6088; out = G__6089; continue; } else { return cljs.core._persistent_BANG_.call(null, out); } break; } } else { return null; } } } }; cljs.core.hash_set = function() { var hash_set = null; var hash_set__0 = function() { return cljs.core.PersistentHashSet.EMPTY; }; var hash_set__1 = function() { var G__6090__delegate = function(keys) { return cljs.core.set.call(null, keys); }; var G__6090 = function(var_args) { var keys = null; if (arguments.length > 0) { keys = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__6090__delegate.call(this, keys); }; G__6090.cljs$lang$maxFixedArity = 0; G__6090.cljs$lang$applyTo = function(arglist__6091) { var keys = cljs.core.seq(arglist__6091); return G__6090__delegate(keys); }; G__6090.cljs$core$IFn$_invoke$arity$variadic = G__6090__delegate; return G__6090; }(); hash_set = function(var_args) { var keys = var_args; switch(arguments.length) { case 0: return hash_set__0.call(this); default: return hash_set__1.cljs$core$IFn$_invoke$arity$variadic(cljs.core.array_seq(arguments, 0)); } throw new Error("Invalid arity: " + arguments.length); }; hash_set.cljs$lang$maxFixedArity = 0; hash_set.cljs$lang$applyTo = hash_set__1.cljs$lang$applyTo; hash_set.cljs$core$IFn$_invoke$arity$0 = hash_set__0; hash_set.cljs$core$IFn$_invoke$arity$variadic = hash_set__1.cljs$core$IFn$_invoke$arity$variadic; return hash_set; }(); cljs.core.sorted_set = function() { var sorted_set__delegate = function(keys) { return cljs.core.reduce.call(null, cljs.core._conj, cljs.core.PersistentTreeSet.EMPTY, keys); }; var sorted_set = function(var_args) { var keys = null; if (arguments.length > 0) { keys = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return sorted_set__delegate.call(this, keys); }; sorted_set.cljs$lang$maxFixedArity = 0; sorted_set.cljs$lang$applyTo = function(arglist__6092) { var keys = cljs.core.seq(arglist__6092); return sorted_set__delegate(keys); }; sorted_set.cljs$core$IFn$_invoke$arity$variadic = sorted_set__delegate; return sorted_set; }(); cljs.core.sorted_set_by = function() { var sorted_set_by__delegate = function(comparator, keys) { return cljs.core.reduce.call(null, cljs.core._conj, new cljs.core.PersistentTreeSet(null, cljs.core.sorted_map_by.call(null, comparator), 0), keys); }; var sorted_set_by = function(comparator, var_args) { var keys = null; if (arguments.length > 1) { keys = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return sorted_set_by__delegate.call(this, comparator, keys); }; sorted_set_by.cljs$lang$maxFixedArity = 1; sorted_set_by.cljs$lang$applyTo = function(arglist__6093) { var comparator = cljs.core.first(arglist__6093); var keys = cljs.core.rest(arglist__6093); return sorted_set_by__delegate(comparator, keys); }; sorted_set_by.cljs$core$IFn$_invoke$arity$variadic = sorted_set_by__delegate; return sorted_set_by; }(); cljs.core.replace = function replace(smap, coll) { if (cljs.core.vector_QMARK_.call(null, coll)) { var n = cljs.core.count.call(null, coll); return cljs.core.reduce.call(null, function(n) { return function(v, i) { var temp__4124__auto__ = cljs.core.find.call(null, smap, cljs.core.nth.call(null, v, i)); if (cljs.core.truth_(temp__4124__auto__)) { var e = temp__4124__auto__; return cljs.core.assoc.call(null, v, i, cljs.core.second.call(null, e)); } else { return v; } }; }(n), coll, cljs.core.take.call(null, n, cljs.core.iterate.call(null, cljs.core.inc, 0))); } else { return cljs.core.map.call(null, function(p1__6094_SHARP_) { var temp__4124__auto__ = cljs.core.find.call(null, smap, p1__6094_SHARP_); if (cljs.core.truth_(temp__4124__auto__)) { var e = temp__4124__auto__; return cljs.core.second.call(null, e); } else { return p1__6094_SHARP_; } }, coll); } }; cljs.core.distinct = function distinct(coll) { var step = function step(xs, seen) { return new cljs.core.LazySeq(null, function() { return function(p__6101, seen__$1) { while (true) { var vec__6102 = p__6101; var f = cljs.core.nth.call(null, vec__6102, 0, null); var xs__$1 = vec__6102; var temp__4126__auto__ = cljs.core.seq.call(null, xs__$1); if (temp__4126__auto__) { var s = temp__4126__auto__; if (cljs.core.contains_QMARK_.call(null, seen__$1, f)) { var G__6103 = cljs.core.rest.call(null, s); var G__6104 = seen__$1; p__6101 = G__6103; seen__$1 = G__6104; continue; } else { return cljs.core.cons.call(null, f, step.call(null, cljs.core.rest.call(null, s), cljs.core.conj.call(null, seen__$1, f))); } } else { return null; } break; } }.call(null, xs, seen); }, null, null); }; return step.call(null, coll, cljs.core.PersistentHashSet.EMPTY); }; cljs.core.butlast = function butlast(s) { var ret = cljs.core.PersistentVector.EMPTY; var s__$1 = s; while (true) { if (cljs.core.next.call(null, s__$1)) { var G__6105 = cljs.core.conj.call(null, ret, cljs.core.first.call(null, s__$1)); var G__6106 = cljs.core.next.call(null, s__$1); ret = G__6105; s__$1 = G__6106; continue; } else { return cljs.core.seq.call(null, ret); } break; } }; cljs.core.name = function name(x) { if (function() { var G__6108 = x; if (G__6108) { var bit__4187__auto__ = G__6108.cljs$lang$protocol_mask$partition1$ & 4096; if (bit__4187__auto__ || G__6108.cljs$core$INamed$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._name.call(null, x); } else { if (typeof x === "string") { return x; } else { throw new Error("Doesn't support name: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(x)); } } }; cljs.core.zipmap = function zipmap(keys, vals) { var map = cljs.core.transient$.call(null, cljs.core.PersistentArrayMap.EMPTY); var ks = cljs.core.seq.call(null, keys); var vs = cljs.core.seq.call(null, vals); while (true) { if (ks && vs) { var G__6109 = cljs.core.assoc_BANG_.call(null, map, cljs.core.first.call(null, ks), cljs.core.first.call(null, vs)); var G__6110 = cljs.core.next.call(null, ks); var G__6111 = cljs.core.next.call(null, vs); map = G__6109; ks = G__6110; vs = G__6111; continue; } else { return cljs.core.persistent_BANG_.call(null, map); } break; } }; cljs.core.max_key = function() { var max_key = null; var max_key__2 = function(k, x) { return x; }; var max_key__3 = function(k, x, y) { if (k.call(null, x) > k.call(null, y)) { return x; } else { return y; } }; var max_key__4 = function() { var G__6114__delegate = function(k, x, y, more) { return cljs.core.reduce.call(null, function(p1__6112_SHARP_, p2__6113_SHARP_) { return max_key.call(null, k, p1__6112_SHARP_, p2__6113_SHARP_); }, max_key.call(null, k, x, y), more); }; var G__6114 = function(k, x, y, var_args) { var more = null; if (arguments.length > 3) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__6114__delegate.call(this, k, x, y, more); }; G__6114.cljs$lang$maxFixedArity = 3; G__6114.cljs$lang$applyTo = function(arglist__6115) { var k = cljs.core.first(arglist__6115); arglist__6115 = cljs.core.next(arglist__6115); var x = cljs.core.first(arglist__6115); arglist__6115 = cljs.core.next(arglist__6115); var y = cljs.core.first(arglist__6115); var more = cljs.core.rest(arglist__6115); return G__6114__delegate(k, x, y, more); }; G__6114.cljs$core$IFn$_invoke$arity$variadic = G__6114__delegate; return G__6114; }(); max_key = function(k, x, y, var_args) { var more = var_args; switch(arguments.length) { case 2: return max_key__2.call(this, k, x); case 3: return max_key__3.call(this, k, x, y); default: return max_key__4.cljs$core$IFn$_invoke$arity$variadic(k, x, y, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; max_key.cljs$lang$maxFixedArity = 3; max_key.cljs$lang$applyTo = max_key__4.cljs$lang$applyTo; max_key.cljs$core$IFn$_invoke$arity$2 = max_key__2; max_key.cljs$core$IFn$_invoke$arity$3 = max_key__3; max_key.cljs$core$IFn$_invoke$arity$variadic = max_key__4.cljs$core$IFn$_invoke$arity$variadic; return max_key; }(); cljs.core.min_key = function() { var min_key = null; var min_key__2 = function(k, x) { return x; }; var min_key__3 = function(k, x, y) { if (k.call(null, x) < k.call(null, y)) { return x; } else { return y; } }; var min_key__4 = function() { var G__6118__delegate = function(k, x, y, more) { return cljs.core.reduce.call(null, function(p1__6116_SHARP_, p2__6117_SHARP_) { return min_key.call(null, k, p1__6116_SHARP_, p2__6117_SHARP_); }, min_key.call(null, k, x, y), more); }; var G__6118 = function(k, x, y, var_args) { var more = null; if (arguments.length > 3) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__6118__delegate.call(this, k, x, y, more); }; G__6118.cljs$lang$maxFixedArity = 3; G__6118.cljs$lang$applyTo = function(arglist__6119) { var k = cljs.core.first(arglist__6119); arglist__6119 = cljs.core.next(arglist__6119); var x = cljs.core.first(arglist__6119); arglist__6119 = cljs.core.next(arglist__6119); var y = cljs.core.first(arglist__6119); var more = cljs.core.rest(arglist__6119); return G__6118__delegate(k, x, y, more); }; G__6118.cljs$core$IFn$_invoke$arity$variadic = G__6118__delegate; return G__6118; }(); min_key = function(k, x, y, var_args) { var more = var_args; switch(arguments.length) { case 2: return min_key__2.call(this, k, x); case 3: return min_key__3.call(this, k, x, y); default: return min_key__4.cljs$core$IFn$_invoke$arity$variadic(k, x, y, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; min_key.cljs$lang$maxFixedArity = 3; min_key.cljs$lang$applyTo = min_key__4.cljs$lang$applyTo; min_key.cljs$core$IFn$_invoke$arity$2 = min_key__2; min_key.cljs$core$IFn$_invoke$arity$3 = min_key__3; min_key.cljs$core$IFn$_invoke$arity$variadic = min_key__4.cljs$core$IFn$_invoke$arity$variadic; return min_key; }(); cljs.core.partition_all = function() { var partition_all = null; var partition_all__2 = function(n, coll) { return partition_all.call(null, n, n, coll); }; var partition_all__3 = function(n, step, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; return cljs.core.cons.call(null, cljs.core.take.call(null, n, s), partition_all.call(null, n, step, cljs.core.drop.call(null, step, s))); } else { return null; } }, null, null); }; partition_all = function(n, step, coll) { switch(arguments.length) { case 2: return partition_all__2.call(this, n, step); case 3: return partition_all__3.call(this, n, step, coll); } throw new Error("Invalid arity: " + arguments.length); }; partition_all.cljs$core$IFn$_invoke$arity$2 = partition_all__2; partition_all.cljs$core$IFn$_invoke$arity$3 = partition_all__3; return partition_all; }(); cljs.core.take_while = function take_while(pred, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; if (cljs.core.truth_(pred.call(null, cljs.core.first.call(null, s)))) { return cljs.core.cons.call(null, cljs.core.first.call(null, s), take_while.call(null, pred, cljs.core.rest.call(null, s))); } else { return null; } } else { return null; } }, null, null); }; cljs.core.mk_bound_fn = function mk_bound_fn(sc, test, key) { return function(e) { var comp = cljs.core._comparator.call(null, sc); return test.call(null, comp.call(null, cljs.core._entry_key.call(null, sc, e), key), 0); }; }; cljs.core.subseq = function() { var subseq = null; var subseq__3 = function(sc, test, key) { var include = cljs.core.mk_bound_fn.call(null, sc, test, key); if (cljs.core.truth_(cljs.core.PersistentHashSet.fromArray([cljs.core._GT_, cljs.core._GT__EQ_], true).call(null, test))) { var temp__4126__auto__ = cljs.core._sorted_seq_from.call(null, sc, key, true); if (cljs.core.truth_(temp__4126__auto__)) { var vec__6122 = temp__4126__auto__; var e = cljs.core.nth.call(null, vec__6122, 0, null); var s = vec__6122; if (cljs.core.truth_(include.call(null, e))) { return s; } else { return cljs.core.next.call(null, s); } } else { return null; } } else { return cljs.core.take_while.call(null, include, cljs.core._sorted_seq.call(null, sc, true)); } }; var subseq__5 = function(sc, start_test, start_key, end_test, end_key) { var temp__4126__auto__ = cljs.core._sorted_seq_from.call(null, sc, start_key, true); if (cljs.core.truth_(temp__4126__auto__)) { var vec__6123 = temp__4126__auto__; var e = cljs.core.nth.call(null, vec__6123, 0, null); var s = vec__6123; return cljs.core.take_while.call(null, cljs.core.mk_bound_fn.call(null, sc, end_test, end_key), cljs.core.truth_(cljs.core.mk_bound_fn.call(null, sc, start_test, start_key).call(null, e)) ? s : cljs.core.next.call(null, s)); } else { return null; } }; subseq = function(sc, start_test, start_key, end_test, end_key) { switch(arguments.length) { case 3: return subseq__3.call(this, sc, start_test, start_key); case 5: return subseq__5.call(this, sc, start_test, start_key, end_test, end_key); } throw new Error("Invalid arity: " + arguments.length); }; subseq.cljs$core$IFn$_invoke$arity$3 = subseq__3; subseq.cljs$core$IFn$_invoke$arity$5 = subseq__5; return subseq; }(); cljs.core.rsubseq = function() { var rsubseq = null; var rsubseq__3 = function(sc, test, key) { var include = cljs.core.mk_bound_fn.call(null, sc, test, key); if (cljs.core.truth_(cljs.core.PersistentHashSet.fromArray([cljs.core._LT_, cljs.core._LT__EQ_], true).call(null, test))) { var temp__4126__auto__ = cljs.core._sorted_seq_from.call(null, sc, key, false); if (cljs.core.truth_(temp__4126__auto__)) { var vec__6126 = temp__4126__auto__; var e = cljs.core.nth.call(null, vec__6126, 0, null); var s = vec__6126; if (cljs.core.truth_(include.call(null, e))) { return s; } else { return cljs.core.next.call(null, s); } } else { return null; } } else { return cljs.core.take_while.call(null, include, cljs.core._sorted_seq.call(null, sc, false)); } }; var rsubseq__5 = function(sc, start_test, start_key, end_test, end_key) { var temp__4126__auto__ = cljs.core._sorted_seq_from.call(null, sc, end_key, false); if (cljs.core.truth_(temp__4126__auto__)) { var vec__6127 = temp__4126__auto__; var e = cljs.core.nth.call(null, vec__6127, 0, null); var s = vec__6127; return cljs.core.take_while.call(null, cljs.core.mk_bound_fn.call(null, sc, start_test, start_key), cljs.core.truth_(cljs.core.mk_bound_fn.call(null, sc, end_test, end_key).call(null, e)) ? s : cljs.core.next.call(null, s)); } else { return null; } }; rsubseq = function(sc, start_test, start_key, end_test, end_key) { switch(arguments.length) { case 3: return rsubseq__3.call(this, sc, start_test, start_key); case 5: return rsubseq__5.call(this, sc, start_test, start_key, end_test, end_key); } throw new Error("Invalid arity: " + arguments.length); }; rsubseq.cljs$core$IFn$_invoke$arity$3 = rsubseq__3; rsubseq.cljs$core$IFn$_invoke$arity$5 = rsubseq__5; return rsubseq; }(); cljs.core.Range = function(meta, start, end, step, __hash) { this.meta = meta; this.start = start; this.end = end; this.step = step; this.__hash = __hash; this.cljs$lang$protocol_mask$partition0$ = 32375006; this.cljs$lang$protocol_mask$partition1$ = 8192; }; cljs.core.Range.cljs$lang$type = true; cljs.core.Range.cljs$lang$ctorStr = "cljs.core/Range"; cljs.core.Range.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Range"); }; cljs.core.Range.prototype.toString = function() { var self__ = this; var coll = this; return cljs.core.pr_str_STAR_.call(null, coll); }; cljs.core.Range.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.Range.prototype.cljs$core$IIndexed$_nth$arity$2 = function(rng, n) { var self__ = this; var rng__$1 = this; if (n < cljs.core._count.call(null, rng__$1)) { return self__.start + n * self__.step; } else { if (self__.start > self__.end && self__.step === 0) { return self__.start; } else { throw new Error("Index out of bounds"); } } }; cljs.core.Range.prototype.cljs$core$IIndexed$_nth$arity$3 = function(rng, n, not_found) { var self__ = this; var rng__$1 = this; if (n < cljs.core._count.call(null, rng__$1)) { return self__.start + n * self__.step; } else { if (self__.start > self__.end && self__.step === 0) { return self__.start; } else { return not_found; } } }; cljs.core.Range.prototype.cljs$core$IMeta$_meta$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; return self__.meta; }; cljs.core.Range.prototype.cljs$core$ICloneable$_clone$arity$1 = function(_) { var self__ = this; var ___$1 = this; return new cljs.core.Range(self__.meta, self__.start, self__.end, self__.step, self__.__hash); }; cljs.core.Range.prototype.cljs$core$INext$_next$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; if (self__.step > 0) { if (self__.start + self__.step < self__.end) { return new cljs.core.Range(self__.meta, self__.start + self__.step, self__.end, self__.step, null); } else { return null; } } else { if (self__.start + self__.step > self__.end) { return new cljs.core.Range(self__.meta, self__.start + self__.step, self__.end, self__.step, null); } else { return null; } } }; cljs.core.Range.prototype.cljs$core$ICounted$_count$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; if (cljs.core.not.call(null, cljs.core._seq.call(null, rng__$1))) { return 0; } else { return Math.ceil((self__.end - self__.start) / self__.step); } }; cljs.core.Range.prototype.cljs$core$IHash$_hash$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; var h__3955__auto__ = self__.__hash; if (!(h__3955__auto__ == null)) { return h__3955__auto__; } else { var h__3955__auto____$1 = cljs.core.hash_ordered_coll.call(null, rng__$1); self__.__hash = h__3955__auto____$1; return h__3955__auto____$1; } }; cljs.core.Range.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(rng, other) { var self__ = this; var rng__$1 = this; return cljs.core.equiv_sequential.call(null, rng__$1, other); }; cljs.core.Range.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; return cljs.core.with_meta.call(null, cljs.core.List.EMPTY, self__.meta); }; cljs.core.Range.prototype.cljs$core$IReduce$_reduce$arity$2 = function(rng, f) { var self__ = this; var rng__$1 = this; return cljs.core.ci_reduce.call(null, rng__$1, f); }; cljs.core.Range.prototype.cljs$core$IReduce$_reduce$arity$3 = function(rng, f, s) { var self__ = this; var rng__$1 = this; return cljs.core.ci_reduce.call(null, rng__$1, f, s); }; cljs.core.Range.prototype.cljs$core$ISeq$_first$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; if (cljs.core._seq.call(null, rng__$1) == null) { return null; } else { return self__.start; } }; cljs.core.Range.prototype.cljs$core$ISeq$_rest$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; if (!(cljs.core._seq.call(null, rng__$1) == null)) { return new cljs.core.Range(self__.meta, self__.start + self__.step, self__.end, self__.step, null); } else { return cljs.core.List.EMPTY; } }; cljs.core.Range.prototype.cljs$core$ISeqable$_seq$arity$1 = function(rng) { var self__ = this; var rng__$1 = this; if (self__.step > 0) { if (self__.start < self__.end) { return rng__$1; } else { return null; } } else { if (self__.start > self__.end) { return rng__$1; } else { return null; } } }; cljs.core.Range.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = function(rng, meta__$1) { var self__ = this; var rng__$1 = this; return new cljs.core.Range(meta__$1, self__.start, self__.end, self__.step, self__.__hash); }; cljs.core.Range.prototype.cljs$core$ICollection$_conj$arity$2 = function(rng, o) { var self__ = this; var rng__$1 = this; return cljs.core.cons.call(null, o, rng__$1); }; cljs.core.__GT_Range = function __GT_Range(meta, start, end, step, __hash) { return new cljs.core.Range(meta, start, end, step, __hash); }; cljs.core.range = function() { var range = null; var range__0 = function() { return range.call(null, 0, Number.MAX_VALUE, 1); }; var range__1 = function(end) { return range.call(null, 0, end, 1); }; var range__2 = function(start, end) { return range.call(null, start, end, 1); }; var range__3 = function(start, end, step) { return new cljs.core.Range(null, start, end, step, null); }; range = function(start, end, step) { switch(arguments.length) { case 0: return range__0.call(this); case 1: return range__1.call(this, start); case 2: return range__2.call(this, start, end); case 3: return range__3.call(this, start, end, step); } throw new Error("Invalid arity: " + arguments.length); }; range.cljs$core$IFn$_invoke$arity$0 = range__0; range.cljs$core$IFn$_invoke$arity$1 = range__1; range.cljs$core$IFn$_invoke$arity$2 = range__2; range.cljs$core$IFn$_invoke$arity$3 = range__3; return range; }(); cljs.core.take_nth = function take_nth(n, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; return cljs.core.cons.call(null, cljs.core.first.call(null, s), take_nth.call(null, n, cljs.core.drop.call(null, n, s))); } else { return null; } }, null, null); }; cljs.core.split_with = function split_with(pred, coll) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.take_while.call(null, pred, coll), cljs.core.drop_while.call(null, pred, coll)], null); }; cljs.core.partition_by = function partition_by(f, coll) { return new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; var fst = cljs.core.first.call(null, s); var fv = f.call(null, fst); var run = cljs.core.cons.call(null, fst, cljs.core.take_while.call(null, function(fst, fv, s, temp__4126__auto__) { return function(p1__6128_SHARP_) { return cljs.core._EQ_.call(null, fv, f.call(null, p1__6128_SHARP_)); }; }(fst, fv, s, temp__4126__auto__), cljs.core.next.call(null, s))); return cljs.core.cons.call(null, run, partition_by.call(null, f, cljs.core.seq.call(null, cljs.core.drop.call(null, cljs.core.count.call(null, run), s)))); } else { return null; } }, null, null); }; cljs.core.frequencies = function frequencies(coll) { return cljs.core.persistent_BANG_.call(null, cljs.core.reduce.call(null, function(counts, x) { return cljs.core.assoc_BANG_.call(null, counts, x, cljs.core.get.call(null, counts, x, 0) + 1); }, cljs.core.transient$.call(null, cljs.core.PersistentArrayMap.EMPTY), coll)); }; cljs.core.reductions = function() { var reductions = null; var reductions__2 = function(f, coll) { return new cljs.core.LazySeq(null, function() { var temp__4124__auto__ = cljs.core.seq.call(null, coll); if (temp__4124__auto__) { var s = temp__4124__auto__; return reductions.call(null, f, cljs.core.first.call(null, s), cljs.core.rest.call(null, s)); } else { return cljs.core._conj.call(null, cljs.core.List.EMPTY, f.call(null)); } }, null, null); }; var reductions__3 = function(f, init, coll) { return cljs.core.cons.call(null, init, new cljs.core.LazySeq(null, function() { var temp__4126__auto__ = cljs.core.seq.call(null, coll); if (temp__4126__auto__) { var s = temp__4126__auto__; return reductions.call(null, f, f.call(null, init, cljs.core.first.call(null, s)), cljs.core.rest.call(null, s)); } else { return null; } }, null, null)); }; reductions = function(f, init, coll) { switch(arguments.length) { case 2: return reductions__2.call(this, f, init); case 3: return reductions__3.call(this, f, init, coll); } throw new Error("Invalid arity: " + arguments.length); }; reductions.cljs$core$IFn$_invoke$arity$2 = reductions__2; reductions.cljs$core$IFn$_invoke$arity$3 = reductions__3; return reductions; }(); cljs.core.juxt = function() { var juxt = null; var juxt__1 = function(f) { return function() { var G__6139 = null; var G__6139__0 = function() { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null)], null); }; var G__6139__1 = function(x) { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x)], null); }; var G__6139__2 = function(x, y) { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x, y)], null); }; var G__6139__3 = function(x, y, z) { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x, y, z)], null); }; var G__6139__4 = function() { var G__6140__delegate = function(x, y, z, args) { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.apply.call(null, f, x, y, z, args)], null); }; var G__6140 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__6140__delegate.call(this, x, y, z, args); }; G__6140.cljs$lang$maxFixedArity = 3; G__6140.cljs$lang$applyTo = function(arglist__6141) { var x = cljs.core.first(arglist__6141); arglist__6141 = cljs.core.next(arglist__6141); var y = cljs.core.first(arglist__6141); arglist__6141 = cljs.core.next(arglist__6141); var z = cljs.core.first(arglist__6141); var args = cljs.core.rest(arglist__6141); return G__6140__delegate(x, y, z, args); }; G__6140.cljs$core$IFn$_invoke$arity$variadic = G__6140__delegate; return G__6140; }(); G__6139 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return G__6139__0.call(this); case 1: return G__6139__1.call(this, x); case 2: return G__6139__2.call(this, x, y); case 3: return G__6139__3.call(this, x, y, z); default: return G__6139__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__6139.cljs$lang$maxFixedArity = 3; G__6139.cljs$lang$applyTo = G__6139__4.cljs$lang$applyTo; return G__6139; }(); }; var juxt__2 = function(f, g) { return function() { var G__6142 = null; var G__6142__0 = function() { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null), g.call(null)], null); }; var G__6142__1 = function(x) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x), g.call(null, x)], null); }; var G__6142__2 = function(x, y) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x, y), g.call(null, x, y)], null); }; var G__6142__3 = function(x, y, z) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x, y, z), g.call(null, x, y, z)], null); }; var G__6142__4 = function() { var G__6143__delegate = function(x, y, z, args) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.apply.call(null, f, x, y, z, args), cljs.core.apply.call(null, g, x, y, z, args)], null); }; var G__6143 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__6143__delegate.call(this, x, y, z, args); }; G__6143.cljs$lang$maxFixedArity = 3; G__6143.cljs$lang$applyTo = function(arglist__6144) { var x = cljs.core.first(arglist__6144); arglist__6144 = cljs.core.next(arglist__6144); var y = cljs.core.first(arglist__6144); arglist__6144 = cljs.core.next(arglist__6144); var z = cljs.core.first(arglist__6144); var args = cljs.core.rest(arglist__6144); return G__6143__delegate(x, y, z, args); }; G__6143.cljs$core$IFn$_invoke$arity$variadic = G__6143__delegate; return G__6143; }(); G__6142 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return G__6142__0.call(this); case 1: return G__6142__1.call(this, x); case 2: return G__6142__2.call(this, x, y); case 3: return G__6142__3.call(this, x, y, z); default: return G__6142__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__6142.cljs$lang$maxFixedArity = 3; G__6142.cljs$lang$applyTo = G__6142__4.cljs$lang$applyTo; return G__6142; }(); }; var juxt__3 = function(f, g, h) { return function() { var G__6145 = null; var G__6145__0 = function() { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null), g.call(null), h.call(null)], null); }; var G__6145__1 = function(x) { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x), g.call(null, x), h.call(null, x)], null); }; var G__6145__2 = function(x, y) { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x, y), g.call(null, x, y), h.call(null, x, y)], null); }; var G__6145__3 = function(x, y, z) { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [f.call(null, x, y, z), g.call(null, x, y, z), h.call(null, x, y, z)], null); }; var G__6145__4 = function() { var G__6146__delegate = function(x, y, z, args) { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.apply.call(null, f, x, y, z, args), cljs.core.apply.call(null, g, x, y, z, args), cljs.core.apply.call(null, h, x, y, z, args)], null); }; var G__6146 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__6146__delegate.call(this, x, y, z, args); }; G__6146.cljs$lang$maxFixedArity = 3; G__6146.cljs$lang$applyTo = function(arglist__6147) { var x = cljs.core.first(arglist__6147); arglist__6147 = cljs.core.next(arglist__6147); var y = cljs.core.first(arglist__6147); arglist__6147 = cljs.core.next(arglist__6147); var z = cljs.core.first(arglist__6147); var args = cljs.core.rest(arglist__6147); return G__6146__delegate(x, y, z, args); }; G__6146.cljs$core$IFn$_invoke$arity$variadic = G__6146__delegate; return G__6146; }(); G__6145 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return G__6145__0.call(this); case 1: return G__6145__1.call(this, x); case 2: return G__6145__2.call(this, x, y); case 3: return G__6145__3.call(this, x, y, z); default: return G__6145__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__6145.cljs$lang$maxFixedArity = 3; G__6145.cljs$lang$applyTo = G__6145__4.cljs$lang$applyTo; return G__6145; }(); }; var juxt__4 = function() { var G__6148__delegate = function(f, g, h, fs) { var fs__$1 = cljs.core.list_STAR_.call(null, f, g, h, fs); return function(fs__$1) { return function() { var G__6149 = null; var G__6149__0 = function() { return cljs.core.reduce.call(null, function(fs__$1) { return function(p1__6129_SHARP_, p2__6130_SHARP_) { return cljs.core.conj.call(null, p1__6129_SHARP_, p2__6130_SHARP_.call(null)); }; }(fs__$1), cljs.core.PersistentVector.EMPTY, fs__$1); }; var G__6149__1 = function(x) { return cljs.core.reduce.call(null, function(fs__$1) { return function(p1__6131_SHARP_, p2__6132_SHARP_) { return cljs.core.conj.call(null, p1__6131_SHARP_, p2__6132_SHARP_.call(null, x)); }; }(fs__$1), cljs.core.PersistentVector.EMPTY, fs__$1); }; var G__6149__2 = function(x, y) { return cljs.core.reduce.call(null, function(fs__$1) { return function(p1__6133_SHARP_, p2__6134_SHARP_) { return cljs.core.conj.call(null, p1__6133_SHARP_, p2__6134_SHARP_.call(null, x, y)); }; }(fs__$1), cljs.core.PersistentVector.EMPTY, fs__$1); }; var G__6149__3 = function(x, y, z) { return cljs.core.reduce.call(null, function(fs__$1) { return function(p1__6135_SHARP_, p2__6136_SHARP_) { return cljs.core.conj.call(null, p1__6135_SHARP_, p2__6136_SHARP_.call(null, x, y, z)); }; }(fs__$1), cljs.core.PersistentVector.EMPTY, fs__$1); }; var G__6149__4 = function() { var G__6150__delegate = function(x, y, z, args) { return cljs.core.reduce.call(null, function(fs__$1) { return function(p1__6137_SHARP_, p2__6138_SHARP_) { return cljs.core.conj.call(null, p1__6137_SHARP_, cljs.core.apply.call(null, p2__6138_SHARP_, x, y, z, args)); }; }(fs__$1), cljs.core.PersistentVector.EMPTY, fs__$1); }; var G__6150 = function(x, y, z, var_args) { var args = null; if (arguments.length > 3) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__6150__delegate.call(this, x, y, z, args); }; G__6150.cljs$lang$maxFixedArity = 3; G__6150.cljs$lang$applyTo = function(arglist__6151) { var x = cljs.core.first(arglist__6151); arglist__6151 = cljs.core.next(arglist__6151); var y = cljs.core.first(arglist__6151); arglist__6151 = cljs.core.next(arglist__6151); var z = cljs.core.first(arglist__6151); var args = cljs.core.rest(arglist__6151); return G__6150__delegate(x, y, z, args); }; G__6150.cljs$core$IFn$_invoke$arity$variadic = G__6150__delegate; return G__6150; }(); G__6149 = function(x, y, z, var_args) { var args = var_args; switch(arguments.length) { case 0: return G__6149__0.call(this); case 1: return G__6149__1.call(this, x); case 2: return G__6149__2.call(this, x, y); case 3: return G__6149__3.call(this, x, y, z); default: return G__6149__4.cljs$core$IFn$_invoke$arity$variadic(x, y, z, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; G__6149.cljs$lang$maxFixedArity = 3; G__6149.cljs$lang$applyTo = G__6149__4.cljs$lang$applyTo; return G__6149; }(); }(fs__$1); }; var G__6148 = function(f, g, h, var_args) { var fs = null; if (arguments.length > 3) { fs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3), 0); } return G__6148__delegate.call(this, f, g, h, fs); }; G__6148.cljs$lang$maxFixedArity = 3; G__6148.cljs$lang$applyTo = function(arglist__6152) { var f = cljs.core.first(arglist__6152); arglist__6152 = cljs.core.next(arglist__6152); var g = cljs.core.first(arglist__6152); arglist__6152 = cljs.core.next(arglist__6152); var h = cljs.core.first(arglist__6152); var fs = cljs.core.rest(arglist__6152); return G__6148__delegate(f, g, h, fs); }; G__6148.cljs$core$IFn$_invoke$arity$variadic = G__6148__delegate; return G__6148; }(); juxt = function(f, g, h, var_args) { var fs = var_args; switch(arguments.length) { case 1: return juxt__1.call(this, f); case 2: return juxt__2.call(this, f, g); case 3: return juxt__3.call(this, f, g, h); default: return juxt__4.cljs$core$IFn$_invoke$arity$variadic(f, g, h, cljs.core.array_seq(arguments, 3)); } throw new Error("Invalid arity: " + arguments.length); }; juxt.cljs$lang$maxFixedArity = 3; juxt.cljs$lang$applyTo = juxt__4.cljs$lang$applyTo; juxt.cljs$core$IFn$_invoke$arity$1 = juxt__1; juxt.cljs$core$IFn$_invoke$arity$2 = juxt__2; juxt.cljs$core$IFn$_invoke$arity$3 = juxt__3; juxt.cljs$core$IFn$_invoke$arity$variadic = juxt__4.cljs$core$IFn$_invoke$arity$variadic; return juxt; }(); cljs.core.dorun = function() { var dorun = null; var dorun__1 = function(coll) { while (true) { if (cljs.core.seq.call(null, coll)) { var G__6153 = cljs.core.next.call(null, coll); coll = G__6153; continue; } else { return null; } break; } }; var dorun__2 = function(n, coll) { while (true) { if (cljs.core.seq.call(null, coll) && n > 0) { var G__6154 = n - 1; var G__6155 = cljs.core.next.call(null, coll); n = G__6154; coll = G__6155; continue; } else { return null; } break; } }; dorun = function(n, coll) { switch(arguments.length) { case 1: return dorun__1.call(this, n); case 2: return dorun__2.call(this, n, coll); } throw new Error("Invalid arity: " + arguments.length); }; dorun.cljs$core$IFn$_invoke$arity$1 = dorun__1; dorun.cljs$core$IFn$_invoke$arity$2 = dorun__2; return dorun; }(); cljs.core.doall = function() { var doall = null; var doall__1 = function(coll) { cljs.core.dorun.call(null, coll); return coll; }; var doall__2 = function(n, coll) { cljs.core.dorun.call(null, n, coll); return coll; }; doall = function(n, coll) { switch(arguments.length) { case 1: return doall__1.call(this, n); case 2: return doall__2.call(this, n, coll); } throw new Error("Invalid arity: " + arguments.length); }; doall.cljs$core$IFn$_invoke$arity$1 = doall__1; doall.cljs$core$IFn$_invoke$arity$2 = doall__2; return doall; }(); cljs.core.regexp_QMARK_ = function regexp_QMARK_(o) { return o instanceof RegExp; }; cljs.core.re_matches = function re_matches(re, s) { if (typeof s === "string") { var matches = re.exec(s); if (cljs.core._EQ_.call(null, cljs.core.first.call(null, matches), s)) { if (cljs.core.count.call(null, matches) === 1) { return cljs.core.first.call(null, matches); } else { return cljs.core.vec.call(null, matches); } } else { return null; } } else { throw new TypeError("re-matches must match against a string."); } }; cljs.core.re_find = function re_find(re, s) { if (typeof s === "string") { var matches = re.exec(s); if (matches == null) { return null; } else { if (cljs.core.count.call(null, matches) === 1) { return cljs.core.first.call(null, matches); } else { return cljs.core.vec.call(null, matches); } } } else { throw new TypeError("re-find must match against a string."); } }; cljs.core.re_seq = function re_seq(re, s) { var match_data = cljs.core.re_find.call(null, re, s); var match_idx = s.search(re); var match_str = cljs.core.coll_QMARK_.call(null, match_data) ? cljs.core.first.call(null, match_data) : match_data; var post_match = cljs.core.subs.call(null, s, match_idx + cljs.core.count.call(null, match_str)); if (cljs.core.truth_(match_data)) { return new cljs.core.LazySeq(null, function(match_data, match_idx, match_str, post_match) { return function() { return cljs.core.cons.call(null, match_data, cljs.core.seq.call(null, post_match) ? re_seq.call(null, re, post_match) : null); }; }(match_data, match_idx, match_str, post_match), null, null); } else { return null; } }; cljs.core.re_pattern = function re_pattern(s) { var vec__6157 = cljs.core.re_find.call(null, /^(?:\(\?([idmsux]*)\))?(.*)/, s); var _ = cljs.core.nth.call(null, vec__6157, 0, null); var flags = cljs.core.nth.call(null, vec__6157, 1, null); var pattern = cljs.core.nth.call(null, vec__6157, 2, null); return new RegExp(pattern, flags); }; cljs.core.pr_sequential_writer = function pr_sequential_writer(writer, print_one, begin, sep, end, opts, coll) { var _STAR_print_level_STAR_6159 = cljs.core._STAR_print_level_STAR_; try { cljs.core._STAR_print_level_STAR_ = cljs.core._STAR_print_level_STAR_ == null ? null : cljs.core._STAR_print_level_STAR_ - 1; if (!(cljs.core._STAR_print_level_STAR_ == null) && cljs.core._STAR_print_level_STAR_ < 0) { return cljs.core._write.call(null, writer, "#"); } else { cljs.core._write.call(null, writer, begin); if (cljs.core.seq.call(null, coll)) { print_one.call(null, cljs.core.first.call(null, coll), writer, opts); } else { } var coll_6160__$1 = cljs.core.next.call(null, coll); var n_6161 = (new cljs.core.Keyword(null, "print-length", "print-length", 1931866356)).cljs$core$IFn$_invoke$arity$1(opts) - 1; while (true) { if (coll_6160__$1 && (n_6161 == null || !(n_6161 === 0))) { cljs.core._write.call(null, writer, sep); print_one.call(null, cljs.core.first.call(null, coll_6160__$1), writer, opts); var G__6162 = cljs.core.next.call(null, coll_6160__$1); var G__6163 = n_6161 - 1; coll_6160__$1 = G__6162; n_6161 = G__6163; continue; } else { if (cljs.core.seq.call(null, coll_6160__$1) && n_6161 === 0) { cljs.core._write.call(null, writer, sep); cljs.core._write.call(null, writer, "..."); } else { } } break; } return cljs.core._write.call(null, writer, end); } } finally { cljs.core._STAR_print_level_STAR_ = _STAR_print_level_STAR_6159; } }; cljs.core.write_all = function() { var write_all__delegate = function(writer, ss) { var seq__6168 = cljs.core.seq.call(null, ss); var chunk__6169 = null; var count__6170 = 0; var i__6171 = 0; while (true) { if (i__6171 < count__6170) { var s = cljs.core._nth.call(null, chunk__6169, i__6171); cljs.core._write.call(null, writer, s); var G__6172 = seq__6168; var G__6173 = chunk__6169; var G__6174 = count__6170; var G__6175 = i__6171 + 1; seq__6168 = G__6172; chunk__6169 = G__6173; count__6170 = G__6174; i__6171 = G__6175; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__6168); if (temp__4126__auto__) { var seq__6168__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6168__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__6168__$1); var G__6176 = cljs.core.chunk_rest.call(null, seq__6168__$1); var G__6177 = c__4300__auto__; var G__6178 = cljs.core.count.call(null, c__4300__auto__); var G__6179 = 0; seq__6168 = G__6176; chunk__6169 = G__6177; count__6170 = G__6178; i__6171 = G__6179; continue; } else { var s = cljs.core.first.call(null, seq__6168__$1); cljs.core._write.call(null, writer, s); var G__6180 = cljs.core.next.call(null, seq__6168__$1); var G__6181 = null; var G__6182 = 0; var G__6183 = 0; seq__6168 = G__6180; chunk__6169 = G__6181; count__6170 = G__6182; i__6171 = G__6183; continue; } } else { return null; } } break; } }; var write_all = function(writer, var_args) { var ss = null; if (arguments.length > 1) { ss = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return write_all__delegate.call(this, writer, ss); }; write_all.cljs$lang$maxFixedArity = 1; write_all.cljs$lang$applyTo = function(arglist__6184) { var writer = cljs.core.first(arglist__6184); var ss = cljs.core.rest(arglist__6184); return write_all__delegate(writer, ss); }; write_all.cljs$core$IFn$_invoke$arity$variadic = write_all__delegate; return write_all; }(); cljs.core.string_print = function string_print(x) { cljs.core._STAR_print_fn_STAR_.call(null, x); return null; }; cljs.core.flush = function flush() { return null; }; cljs.core.char_escapes = function() { var obj6186 = {'"':'\\"', "\\":"\\\\", "\b":"\\b", "\f":"\\f", "\n":"\\n", "\r":"\\r", "\t":"\\t"}; return obj6186; }(); cljs.core.quote_string = function quote_string(s) { return'"' + cljs.core.str.cljs$core$IFn$_invoke$arity$1(s.replace(RegExp('[\\\\"\b\f\n\r\t]', "g"), function(match) { return cljs.core.char_escapes[match]; })) + '"'; }; cljs.core.pr_writer = function pr_writer(obj, writer, opts) { if (obj == null) { return cljs.core._write.call(null, writer, "nil"); } else { if (void 0 === obj) { return cljs.core._write.call(null, writer, "#\x3cundefined\x3e"); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { if (cljs.core.truth_(function() { var and__3532__auto__ = cljs.core.get.call(null, opts, new cljs.core.Keyword(null, "meta", "meta", 1499536964)); if (cljs.core.truth_(and__3532__auto__)) { var and__3532__auto____$1 = function() { var G__6192 = obj; if (G__6192) { var bit__4194__auto__ = G__6192.cljs$lang$protocol_mask$partition0$ & 131072; if (bit__4194__auto__ || G__6192.cljs$core$IMeta$) { return true; } else { if (!G__6192.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMeta, G__6192); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IMeta, G__6192); } }(); if (and__3532__auto____$1) { return cljs.core.meta.call(null, obj); } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }())) { cljs.core._write.call(null, writer, "^"); pr_writer.call(null, cljs.core.meta.call(null, obj), writer, opts); cljs.core._write.call(null, writer, " "); } else { } if (obj == null) { return cljs.core._write.call(null, writer, "nil"); } else { if (obj.cljs$lang$type) { return obj.cljs$lang$ctorPrWriter(obj, writer, opts); } else { if (function() { var G__6193 = obj; if (G__6193) { var bit__4187__auto__ = G__6193.cljs$lang$protocol_mask$partition0$ & 2147483648; if (bit__4187__auto__ || G__6193.cljs$core$IPrintWithWriter$) { return true; } else { return false; } } else { return false; } }()) { return cljs.core._pr_writer.call(null, obj, writer, opts); } else { if (cljs.core.type.call(null, obj) === Boolean || typeof obj === "number") { return cljs.core._write.call(null, writer, "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj)); } else { if (cljs.core.object_QMARK_.call(null, obj)) { cljs.core._write.call(null, writer, "#js "); return cljs.core.print_map.call(null, cljs.core.map.call(null, function(k) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.keyword.call(null, k), obj[k]], null); }, cljs.core.js_keys.call(null, obj)), pr_writer, writer, opts); } else { if (obj instanceof Array) { return cljs.core.pr_sequential_writer.call(null, writer, pr_writer, "#js [", " ", "]", opts, obj); } else { if (goog.isString(obj)) { if (cljs.core.truth_((new cljs.core.Keyword(null, "readably", "readably", 1129599760)).cljs$core$IFn$_invoke$arity$1(opts))) { return cljs.core._write.call(null, writer, cljs.core.quote_string.call(null, obj)); } else { return cljs.core._write.call(null, writer, obj); } } else { if (cljs.core.fn_QMARK_.call(null, obj)) { return cljs.core.write_all.call(null, writer, "#\x3c", "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj), "\x3e"); } else { if (obj instanceof Date) { var normalize = function(n, len) { var ns = "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(n); while (true) { if (cljs.core.count.call(null, ns) < len) { var G__6195 = "0" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns); ns = G__6195; continue; } else { return ns; } break; } }; return cljs.core.write_all.call(null, writer, '#inst "', "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj.getUTCFullYear()), "-", normalize.call(null, obj.getUTCMonth() + 1, 2), "-", normalize.call(null, obj.getUTCDate(), 2), "T", normalize.call(null, obj.getUTCHours(), 2), ":", normalize.call(null, obj.getUTCMinutes(), 2), ":", normalize.call(null, obj.getUTCSeconds(), 2), ".", normalize.call(null, obj.getUTCMilliseconds(), 3), "-", '00:00"'); } else { if (cljs.core.regexp_QMARK_.call(null, obj)) { return cljs.core.write_all.call(null, writer, '#"', obj.source, '"'); } else { if (function() { var G__6194 = obj; if (G__6194) { var bit__4194__auto__ = G__6194.cljs$lang$protocol_mask$partition0$ & 2147483648; if (bit__4194__auto__ || G__6194.cljs$core$IPrintWithWriter$) { return true; } else { if (!G__6194.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IPrintWithWriter, G__6194); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IPrintWithWriter, G__6194); } }()) { return cljs.core._pr_writer.call(null, obj, writer, opts); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.core.write_all.call(null, writer, "#\x3c", "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj), "\x3e"); } else { return null; } } } } } } } } } } } } } else { return null; } } } }; cljs.core.pr_seq_writer = function pr_seq_writer(objs, writer, opts) { cljs.core.pr_writer.call(null, cljs.core.first.call(null, objs), writer, opts); var seq__6200 = cljs.core.seq.call(null, cljs.core.next.call(null, objs)); var chunk__6201 = null; var count__6202 = 0; var i__6203 = 0; while (true) { if (i__6203 < count__6202) { var obj = cljs.core._nth.call(null, chunk__6201, i__6203); cljs.core._write.call(null, writer, " "); cljs.core.pr_writer.call(null, obj, writer, opts); var G__6204 = seq__6200; var G__6205 = chunk__6201; var G__6206 = count__6202; var G__6207 = i__6203 + 1; seq__6200 = G__6204; chunk__6201 = G__6205; count__6202 = G__6206; i__6203 = G__6207; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__6200); if (temp__4126__auto__) { var seq__6200__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6200__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__6200__$1); var G__6208 = cljs.core.chunk_rest.call(null, seq__6200__$1); var G__6209 = c__4300__auto__; var G__6210 = cljs.core.count.call(null, c__4300__auto__); var G__6211 = 0; seq__6200 = G__6208; chunk__6201 = G__6209; count__6202 = G__6210; i__6203 = G__6211; continue; } else { var obj = cljs.core.first.call(null, seq__6200__$1); cljs.core._write.call(null, writer, " "); cljs.core.pr_writer.call(null, obj, writer, opts); var G__6212 = cljs.core.next.call(null, seq__6200__$1); var G__6213 = null; var G__6214 = 0; var G__6215 = 0; seq__6200 = G__6212; chunk__6201 = G__6213; count__6202 = G__6214; i__6203 = G__6215; continue; } } else { return null; } } break; } }; cljs.core.pr_sb_with_opts = function pr_sb_with_opts(objs, opts) { var sb = new goog.string.StringBuffer; var writer = new cljs.core.StringBufferWriter(sb); cljs.core.pr_seq_writer.call(null, objs, writer, opts); cljs.core._flush.call(null, writer); return sb; }; cljs.core.pr_str_with_opts = function pr_str_with_opts(objs, opts) { if (cljs.core.empty_QMARK_.call(null, objs)) { return ""; } else { return "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.pr_sb_with_opts.call(null, objs, opts)); } }; cljs.core.prn_str_with_opts = function prn_str_with_opts(objs, opts) { if (cljs.core.empty_QMARK_.call(null, objs)) { return "\n"; } else { var sb = cljs.core.pr_sb_with_opts.call(null, objs, opts); sb.append("\n"); return "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb); } }; cljs.core.pr_with_opts = function pr_with_opts(objs, opts) { return cljs.core.string_print.call(null, cljs.core.pr_str_with_opts.call(null, objs, opts)); }; cljs.core.newline = function newline(opts) { cljs.core.string_print.call(null, "\n"); if (cljs.core.truth_(cljs.core.get.call(null, opts, new cljs.core.Keyword(null, "flush-on-newline", "flush-on-newline", -151457939)))) { return cljs.core.flush.call(null); } else { return null; } }; cljs.core.pr_str = function() { var pr_str__delegate = function(objs) { return cljs.core.pr_str_with_opts.call(null, objs, cljs.core.pr_opts.call(null)); }; var pr_str = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return pr_str__delegate.call(this, objs); }; pr_str.cljs$lang$maxFixedArity = 0; pr_str.cljs$lang$applyTo = function(arglist__6216) { var objs = cljs.core.seq(arglist__6216); return pr_str__delegate(objs); }; pr_str.cljs$core$IFn$_invoke$arity$variadic = pr_str__delegate; return pr_str; }(); cljs.core.prn_str = function() { var prn_str__delegate = function(objs) { return cljs.core.prn_str_with_opts.call(null, objs, cljs.core.pr_opts.call(null)); }; var prn_str = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return prn_str__delegate.call(this, objs); }; prn_str.cljs$lang$maxFixedArity = 0; prn_str.cljs$lang$applyTo = function(arglist__6217) { var objs = cljs.core.seq(arglist__6217); return prn_str__delegate(objs); }; prn_str.cljs$core$IFn$_invoke$arity$variadic = prn_str__delegate; return prn_str; }(); cljs.core.pr = function() { var pr__delegate = function(objs) { return cljs.core.pr_with_opts.call(null, objs, cljs.core.pr_opts.call(null)); }; var pr = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return pr__delegate.call(this, objs); }; pr.cljs$lang$maxFixedArity = 0; pr.cljs$lang$applyTo = function(arglist__6218) { var objs = cljs.core.seq(arglist__6218); return pr__delegate(objs); }; pr.cljs$core$IFn$_invoke$arity$variadic = pr__delegate; return pr; }(); cljs.core.print = function() { var cljs_core_print__delegate = function(objs) { return cljs.core.pr_with_opts.call(null, objs, cljs.core.assoc.call(null, cljs.core.pr_opts.call(null), new cljs.core.Keyword(null, "readably", "readably", 1129599760), false)); }; var cljs_core_print = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return cljs_core_print__delegate.call(this, objs); }; cljs_core_print.cljs$lang$maxFixedArity = 0; cljs_core_print.cljs$lang$applyTo = function(arglist__6219) { var objs = cljs.core.seq(arglist__6219); return cljs_core_print__delegate(objs); }; cljs_core_print.cljs$core$IFn$_invoke$arity$variadic = cljs_core_print__delegate; return cljs_core_print; }(); cljs.core.print_str = function() { var print_str__delegate = function(objs) { return cljs.core.pr_str_with_opts.call(null, objs, cljs.core.assoc.call(null, cljs.core.pr_opts.call(null), new cljs.core.Keyword(null, "readably", "readably", 1129599760), false)); }; var print_str = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return print_str__delegate.call(this, objs); }; print_str.cljs$lang$maxFixedArity = 0; print_str.cljs$lang$applyTo = function(arglist__6220) { var objs = cljs.core.seq(arglist__6220); return print_str__delegate(objs); }; print_str.cljs$core$IFn$_invoke$arity$variadic = print_str__delegate; return print_str; }(); cljs.core.println = function() { var println__delegate = function(objs) { cljs.core.pr_with_opts.call(null, objs, cljs.core.assoc.call(null, cljs.core.pr_opts.call(null), new cljs.core.Keyword(null, "readably", "readably", 1129599760), false)); if (cljs.core.truth_(cljs.core._STAR_print_newline_STAR_)) { return cljs.core.newline.call(null, cljs.core.pr_opts.call(null)); } else { return null; } }; var println = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return println__delegate.call(this, objs); }; println.cljs$lang$maxFixedArity = 0; println.cljs$lang$applyTo = function(arglist__6221) { var objs = cljs.core.seq(arglist__6221); return println__delegate(objs); }; println.cljs$core$IFn$_invoke$arity$variadic = println__delegate; return println; }(); cljs.core.println_str = function() { var println_str__delegate = function(objs) { return cljs.core.prn_str_with_opts.call(null, objs, cljs.core.assoc.call(null, cljs.core.pr_opts.call(null), new cljs.core.Keyword(null, "readably", "readably", 1129599760), false)); }; var println_str = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return println_str__delegate.call(this, objs); }; println_str.cljs$lang$maxFixedArity = 0; println_str.cljs$lang$applyTo = function(arglist__6222) { var objs = cljs.core.seq(arglist__6222); return println_str__delegate(objs); }; println_str.cljs$core$IFn$_invoke$arity$variadic = println_str__delegate; return println_str; }(); cljs.core.prn = function() { var prn__delegate = function(objs) { cljs.core.pr_with_opts.call(null, objs, cljs.core.pr_opts.call(null)); if (cljs.core.truth_(cljs.core._STAR_print_newline_STAR_)) { return cljs.core.newline.call(null, cljs.core.pr_opts.call(null)); } else { return null; } }; var prn = function(var_args) { var objs = null; if (arguments.length > 0) { objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return prn__delegate.call(this, objs); }; prn.cljs$lang$maxFixedArity = 0; prn.cljs$lang$applyTo = function(arglist__6223) { var objs = cljs.core.seq(arglist__6223); return prn__delegate(objs); }; prn.cljs$core$IFn$_invoke$arity$variadic = prn__delegate; return prn; }(); cljs.core.print_map = function print_map(m, print_one, writer, opts) { return cljs.core.pr_sequential_writer.call(null, writer, function(e, w, opts__$1) { print_one.call(null, cljs.core.key.call(null, e), w, opts__$1); cljs.core._write.call(null, w, " "); return print_one.call(null, cljs.core.val.call(null, e), w, opts__$1); }, "{", ", ", "}", opts, cljs.core.seq.call(null, m)); }; cljs.core.IndexedSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.IndexedSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.LazySeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.LazySeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.NodeSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.NodeSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.BlackNode.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.BlackNode.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "[", " ", "]", opts, coll__$1); }; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.PersistentTreeSet.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentTreeSet.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "#{", " ", "}", opts, coll__$1); }; cljs.core.ChunkedSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.ChunkedSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.ObjMap.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.ObjMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.print_map.call(null, coll__$1, cljs.core.pr_writer, writer, opts); }; cljs.core.Cons.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.Cons.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.RSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.RSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.PersistentHashMap.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentHashMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.print_map.call(null, coll__$1, cljs.core.pr_writer, writer, opts); }; cljs.core.ArrayNodeSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.ArrayNodeSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.Subvec.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.Subvec.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "[", " ", "]", opts, coll__$1); }; cljs.core.PersistentTreeMap.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentTreeMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.print_map.call(null, coll__$1, cljs.core.pr_writer, writer, opts); }; cljs.core.PersistentHashSet.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentHashSet.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "#{", " ", "}", opts, coll__$1); }; cljs.core.ChunkedCons.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.ChunkedCons.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.ValSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.ValSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.RedNode.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.RedNode.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "[", " ", "]", opts, coll__$1); }; cljs.core.PersistentVector.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentVector.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "[", " ", "]", opts, coll__$1); }; cljs.core.PersistentQueueSeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentQueueSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.EmptyList.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.EmptyList.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core._write.call(null, writer, "()"); }; cljs.core.PersistentQueue.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentQueue.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "#queue [", " ", "]", opts, cljs.core.seq.call(null, coll__$1)); }; cljs.core.PersistentArrayMap.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.PersistentArrayMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.print_map.call(null, coll__$1, cljs.core.pr_writer, writer, opts); }; cljs.core.Range.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.Range.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.KeySeq.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.KeySeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.List.prototype.cljs$core$IPrintWithWriter$ = true; cljs.core.List.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(coll, writer, opts) { var coll__$1 = this; return cljs.core.pr_sequential_writer.call(null, writer, cljs.core.pr_writer, "(", " ", ")", opts, coll__$1); }; cljs.core.PersistentVector.prototype.cljs$core$IComparable$ = true; cljs.core.PersistentVector.prototype.cljs$core$IComparable$_compare$arity$2 = function(x, y) { var x__$1 = this; return cljs.core.compare_indexed.call(null, x__$1, y); }; cljs.core.Subvec.prototype.cljs$core$IComparable$ = true; cljs.core.Subvec.prototype.cljs$core$IComparable$_compare$arity$2 = function(x, y) { var x__$1 = this; return cljs.core.compare_indexed.call(null, x__$1, y); }; cljs.core.Keyword.prototype.cljs$core$IComparable$ = true; cljs.core.Keyword.prototype.cljs$core$IComparable$_compare$arity$2 = function(x, y) { var x__$1 = this; return cljs.core.compare_symbols.call(null, x__$1, y); }; cljs.core.Symbol.prototype.cljs$core$IComparable$ = true; cljs.core.Symbol.prototype.cljs$core$IComparable$_compare$arity$2 = function(x, y) { var x__$1 = this; return cljs.core.compare_symbols.call(null, x__$1, y); }; cljs.core.IAtom = function() { var obj6225 = {}; return obj6225; }(); cljs.core.IReset = function() { var obj6227 = {}; return obj6227; }(); cljs.core._reset_BANG_ = function _reset_BANG_(o, new_value) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$IReset$_reset_BANG_$arity$2; } else { return and__3532__auto__; } }()) { return o.cljs$core$IReset$_reset_BANG_$arity$2(o, new_value); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._reset_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._reset_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IReset.-reset!", o); } } }().call(null, o, new_value); } }; cljs.core.ISwap = function() { var obj6229 = {}; return obj6229; }(); cljs.core._swap_BANG_ = function() { var _swap_BANG_ = null; var _swap_BANG___2 = function(o, f) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$ISwap$_swap_BANG_$arity$2; } else { return and__3532__auto__; } }()) { return o.cljs$core$ISwap$_swap_BANG_$arity$2(o, f); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._swap_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._swap_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISwap.-swap!", o); } } }().call(null, o, f); } }; var _swap_BANG___3 = function(o, f, a) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$ISwap$_swap_BANG_$arity$3; } else { return and__3532__auto__; } }()) { return o.cljs$core$ISwap$_swap_BANG_$arity$3(o, f, a); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._swap_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._swap_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISwap.-swap!", o); } } }().call(null, o, f, a); } }; var _swap_BANG___4 = function(o, f, a, b) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$ISwap$_swap_BANG_$arity$4; } else { return and__3532__auto__; } }()) { return o.cljs$core$ISwap$_swap_BANG_$arity$4(o, f, a, b); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._swap_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._swap_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISwap.-swap!", o); } } }().call(null, o, f, a, b); } }; var _swap_BANG___5 = function(o, f, a, b, xs) { if (function() { var and__3532__auto__ = o; if (and__3532__auto__) { return o.cljs$core$ISwap$_swap_BANG_$arity$5; } else { return and__3532__auto__; } }()) { return o.cljs$core$ISwap$_swap_BANG_$arity$5(o, f, a, b, xs); } else { var x__4171__auto__ = o == null ? null : o; return function() { var or__3544__auto__ = cljs.core._swap_BANG_[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._swap_BANG_["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "ISwap.-swap!", o); } } }().call(null, o, f, a, b, xs); } }; _swap_BANG_ = function(o, f, a, b, xs) { switch(arguments.length) { case 2: return _swap_BANG___2.call(this, o, f); case 3: return _swap_BANG___3.call(this, o, f, a); case 4: return _swap_BANG___4.call(this, o, f, a, b); case 5: return _swap_BANG___5.call(this, o, f, a, b, xs); } throw new Error("Invalid arity: " + arguments.length); }; _swap_BANG_.cljs$core$IFn$_invoke$arity$2 = _swap_BANG___2; _swap_BANG_.cljs$core$IFn$_invoke$arity$3 = _swap_BANG___3; _swap_BANG_.cljs$core$IFn$_invoke$arity$4 = _swap_BANG___4; _swap_BANG_.cljs$core$IFn$_invoke$arity$5 = _swap_BANG___5; return _swap_BANG_; }(); cljs.core.Atom = function(state, meta, validator, watches) { this.state = state; this.meta = meta; this.validator = validator; this.watches = watches; this.cljs$lang$protocol_mask$partition0$ = 2153938944; this.cljs$lang$protocol_mask$partition1$ = 16386; }; cljs.core.Atom.cljs$lang$type = true; cljs.core.Atom.cljs$lang$ctorStr = "cljs.core/Atom"; cljs.core.Atom.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Atom"); }; cljs.core.Atom.prototype.cljs$core$IHash$_hash$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return goog.getUid(this$__$1); }; cljs.core.Atom.prototype.cljs$core$IWatchable$_notify_watches$arity$3 = function(this$, oldval, newval) { var self__ = this; var this$__$1 = this; var seq__6230 = cljs.core.seq.call(null, self__.watches); var chunk__6231 = null; var count__6232 = 0; var i__6233 = 0; while (true) { if (i__6233 < count__6232) { var vec__6234 = cljs.core._nth.call(null, chunk__6231, i__6233); var key = cljs.core.nth.call(null, vec__6234, 0, null); var f = cljs.core.nth.call(null, vec__6234, 1, null); f.call(null, key, this$__$1, oldval, newval); var G__6236 = seq__6230; var G__6237 = chunk__6231; var G__6238 = count__6232; var G__6239 = i__6233 + 1; seq__6230 = G__6236; chunk__6231 = G__6237; count__6232 = G__6238; i__6233 = G__6239; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__6230); if (temp__4126__auto__) { var seq__6230__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6230__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__6230__$1); var G__6240 = cljs.core.chunk_rest.call(null, seq__6230__$1); var G__6241 = c__4300__auto__; var G__6242 = cljs.core.count.call(null, c__4300__auto__); var G__6243 = 0; seq__6230 = G__6240; chunk__6231 = G__6241; count__6232 = G__6242; i__6233 = G__6243; continue; } else { var vec__6235 = cljs.core.first.call(null, seq__6230__$1); var key = cljs.core.nth.call(null, vec__6235, 0, null); var f = cljs.core.nth.call(null, vec__6235, 1, null); f.call(null, key, this$__$1, oldval, newval); var G__6244 = cljs.core.next.call(null, seq__6230__$1); var G__6245 = null; var G__6246 = 0; var G__6247 = 0; seq__6230 = G__6244; chunk__6231 = G__6245; count__6232 = G__6246; i__6233 = G__6247; continue; } } else { return null; } } break; } }; cljs.core.Atom.prototype.cljs$core$IWatchable$_add_watch$arity$3 = function(this$, key, f) { var self__ = this; var this$__$1 = this; this$__$1.watches = cljs.core.assoc.call(null, self__.watches, key, f); return this$__$1; }; cljs.core.Atom.prototype.cljs$core$IWatchable$_remove_watch$arity$2 = function(this$, key) { var self__ = this; var this$__$1 = this; return this$__$1.watches = cljs.core.dissoc.call(null, self__.watches, key); }; cljs.core.Atom.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(a, writer, opts) { var self__ = this; var a__$1 = this; cljs.core._write.call(null, writer, "#\x3cAtom: "); cljs.core.pr_writer.call(null, self__.state, writer, opts); return cljs.core._write.call(null, writer, "\x3e"); }; cljs.core.Atom.prototype.cljs$core$IMeta$_meta$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.meta; }; cljs.core.Atom.prototype.cljs$core$IDeref$_deref$arity$1 = function(_) { var self__ = this; var ___$1 = this; return self__.state; }; cljs.core.Atom.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(o, other) { var self__ = this; var o__$1 = this; return o__$1 === other; }; cljs.core.Atom.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.__GT_Atom = function __GT_Atom(state, meta, validator, watches) { return new cljs.core.Atom(state, meta, validator, watches); }; cljs.core.atom = function() { var atom = null; var atom__1 = function(x) { return new cljs.core.Atom(x, null, null, null); }; var atom__2 = function() { var G__6251__delegate = function(x, p__6248) { var map__6250 = p__6248; var map__6250__$1 = cljs.core.seq_QMARK_.call(null, map__6250) ? cljs.core.apply.call(null, cljs.core.hash_map, map__6250) : map__6250; var validator = cljs.core.get.call(null, map__6250__$1, new cljs.core.Keyword(null, "validator", "validator", -1966190681)); var meta = cljs.core.get.call(null, map__6250__$1, new cljs.core.Keyword(null, "meta", "meta", 1499536964)); return new cljs.core.Atom(x, meta, validator, null); }; var G__6251 = function(x, var_args) { var p__6248 = null; if (arguments.length > 1) { p__6248 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return G__6251__delegate.call(this, x, p__6248); }; G__6251.cljs$lang$maxFixedArity = 1; G__6251.cljs$lang$applyTo = function(arglist__6252) { var x = cljs.core.first(arglist__6252); var p__6248 = cljs.core.rest(arglist__6252); return G__6251__delegate(x, p__6248); }; G__6251.cljs$core$IFn$_invoke$arity$variadic = G__6251__delegate; return G__6251; }(); atom = function(x, var_args) { var p__6248 = var_args; switch(arguments.length) { case 1: return atom__1.call(this, x); default: return atom__2.cljs$core$IFn$_invoke$arity$variadic(x, cljs.core.array_seq(arguments, 1)); } throw new Error("Invalid arity: " + arguments.length); }; atom.cljs$lang$maxFixedArity = 1; atom.cljs$lang$applyTo = atom__2.cljs$lang$applyTo; atom.cljs$core$IFn$_invoke$arity$1 = atom__1; atom.cljs$core$IFn$_invoke$arity$variadic = atom__2.cljs$core$IFn$_invoke$arity$variadic; return atom; }(); cljs.core.reset_BANG_ = function reset_BANG_(a, new_value) { if (a instanceof cljs.core.Atom) { var validate = a.validator; if (validate == null) { } else { if (cljs.core.truth_(validate.call(null, new_value))) { } else { throw new Error("Assert failed: Validator rejected reference state\n" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.pr_str.call(null, cljs.core.list(new cljs.core.Symbol(null, "validate", "validate", 1439230700, null), new cljs.core.Symbol(null, "new-value", "new-value", -1567397401, null))))); } } var old_value = a.state; a.state = new_value; if (a.watches == null) { } else { cljs.core._notify_watches.call(null, a, old_value, new_value); } return new_value; } else { return cljs.core._reset_BANG_.call(null, a, new_value); } }; cljs.core.deref = function deref(o) { return cljs.core._deref.call(null, o); }; cljs.core.swap_BANG_ = function() { var swap_BANG_ = null; var swap_BANG___2 = function(a, f) { if (a instanceof cljs.core.Atom) { return cljs.core.reset_BANG_.call(null, a, f.call(null, a.state)); } else { return cljs.core._swap_BANG_.call(null, a, f); } }; var swap_BANG___3 = function(a, f, x) { if (a instanceof cljs.core.Atom) { return cljs.core.reset_BANG_.call(null, a, f.call(null, a.state, x)); } else { return cljs.core._swap_BANG_.call(null, a, f, x); } }; var swap_BANG___4 = function(a, f, x, y) { if (a instanceof cljs.core.Atom) { return cljs.core.reset_BANG_.call(null, a, f.call(null, a.state, x, y)); } else { return cljs.core._swap_BANG_.call(null, a, f, x, y); } }; var swap_BANG___5 = function() { var G__6253__delegate = function(a, f, x, y, more) { if (a instanceof cljs.core.Atom) { return cljs.core.reset_BANG_.call(null, a, cljs.core.apply.call(null, f, a.state, x, y, more)); } else { return cljs.core._swap_BANG_.call(null, a, f, x, y, more); } }; var G__6253 = function(a, f, x, y, var_args) { var more = null; if (arguments.length > 4) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4), 0); } return G__6253__delegate.call(this, a, f, x, y, more); }; G__6253.cljs$lang$maxFixedArity = 4; G__6253.cljs$lang$applyTo = function(arglist__6254) { var a = cljs.core.first(arglist__6254); arglist__6254 = cljs.core.next(arglist__6254); var f = cljs.core.first(arglist__6254); arglist__6254 = cljs.core.next(arglist__6254); var x = cljs.core.first(arglist__6254); arglist__6254 = cljs.core.next(arglist__6254); var y = cljs.core.first(arglist__6254); var more = cljs.core.rest(arglist__6254); return G__6253__delegate(a, f, x, y, more); }; G__6253.cljs$core$IFn$_invoke$arity$variadic = G__6253__delegate; return G__6253; }(); swap_BANG_ = function(a, f, x, y, var_args) { var more = var_args; switch(arguments.length) { case 2: return swap_BANG___2.call(this, a, f); case 3: return swap_BANG___3.call(this, a, f, x); case 4: return swap_BANG___4.call(this, a, f, x, y); default: return swap_BANG___5.cljs$core$IFn$_invoke$arity$variadic(a, f, x, y, cljs.core.array_seq(arguments, 4)); } throw new Error("Invalid arity: " + arguments.length); }; swap_BANG_.cljs$lang$maxFixedArity = 4; swap_BANG_.cljs$lang$applyTo = swap_BANG___5.cljs$lang$applyTo; swap_BANG_.cljs$core$IFn$_invoke$arity$2 = swap_BANG___2; swap_BANG_.cljs$core$IFn$_invoke$arity$3 = swap_BANG___3; swap_BANG_.cljs$core$IFn$_invoke$arity$4 = swap_BANG___4; swap_BANG_.cljs$core$IFn$_invoke$arity$variadic = swap_BANG___5.cljs$core$IFn$_invoke$arity$variadic; return swap_BANG_; }(); cljs.core.compare_and_set_BANG_ = function compare_and_set_BANG_(a, oldval, newval) { if (cljs.core._EQ_.call(null, a.state, oldval)) { cljs.core.reset_BANG_.call(null, a, newval); return true; } else { return false; } }; cljs.core.set_validator_BANG_ = function set_validator_BANG_(iref, val) { return iref.validator = val; }; cljs.core.get_validator = function get_validator(iref) { return iref.validator; }; cljs.core.alter_meta_BANG_ = function() { var alter_meta_BANG___delegate = function(iref, f, args) { return iref.meta = cljs.core.apply.call(null, f, iref.meta, args); }; var alter_meta_BANG_ = function(iref, f, var_args) { var args = null; if (arguments.length > 2) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return alter_meta_BANG___delegate.call(this, iref, f, args); }; alter_meta_BANG_.cljs$lang$maxFixedArity = 2; alter_meta_BANG_.cljs$lang$applyTo = function(arglist__6255) { var iref = cljs.core.first(arglist__6255); arglist__6255 = cljs.core.next(arglist__6255); var f = cljs.core.first(arglist__6255); var args = cljs.core.rest(arglist__6255); return alter_meta_BANG___delegate(iref, f, args); }; alter_meta_BANG_.cljs$core$IFn$_invoke$arity$variadic = alter_meta_BANG___delegate; return alter_meta_BANG_; }(); cljs.core.reset_meta_BANG_ = function reset_meta_BANG_(iref, m) { return iref.meta = m; }; cljs.core.add_watch = function add_watch(iref, key, f) { return cljs.core._add_watch.call(null, iref, key, f); }; cljs.core.remove_watch = function remove_watch(iref, key) { return cljs.core._remove_watch.call(null, iref, key); }; cljs.core.gensym_counter = null; cljs.core.gensym = function() { var gensym = null; var gensym__0 = function() { return gensym.call(null, "G__"); }; var gensym__1 = function(prefix_string) { if (cljs.core.gensym_counter == null) { cljs.core.gensym_counter = cljs.core.atom.call(null, 0); } else { } return cljs.core.symbol.call(null, "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(prefix_string) + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.swap_BANG_.call(null, cljs.core.gensym_counter, cljs.core.inc))); }; gensym = function(prefix_string) { switch(arguments.length) { case 0: return gensym__0.call(this); case 1: return gensym__1.call(this, prefix_string); } throw new Error("Invalid arity: " + arguments.length); }; gensym.cljs$core$IFn$_invoke$arity$0 = gensym__0; gensym.cljs$core$IFn$_invoke$arity$1 = gensym__1; return gensym; }(); cljs.core.fixture1 = 1; cljs.core.fixture2 = 2; cljs.core.Delay = function(f, value) { this.f = f; this.value = value; this.cljs$lang$protocol_mask$partition1$ = 1; this.cljs$lang$protocol_mask$partition0$ = 32768; }; cljs.core.Delay.cljs$lang$type = true; cljs.core.Delay.cljs$lang$ctorStr = "cljs.core/Delay"; cljs.core.Delay.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/Delay"); }; cljs.core.Delay.prototype.cljs$core$IPending$_realized_QMARK_$arity$1 = function(d) { var self__ = this; var d__$1 = this; return cljs.core.not.call(null, self__.f); }; cljs.core.Delay.prototype.cljs$core$IDeref$_deref$arity$1 = function(_) { var self__ = this; var ___$1 = this; if (cljs.core.truth_(self__.f)) { self__.value = self__.f.call(null); self__.f = null; } else { } return self__.value; }; cljs.core.__GT_Delay = function __GT_Delay(f, value) { return new cljs.core.Delay(f, value); }; cljs.core.delay_QMARK_ = function delay_QMARK_(x) { return x instanceof cljs.core.Delay; }; cljs.core.force = function force(x) { if (cljs.core.delay_QMARK_.call(null, x)) { return cljs.core.deref.call(null, x); } else { return x; } }; cljs.core.realized_QMARK_ = function realized_QMARK_(d) { return cljs.core._realized_QMARK_.call(null, d); }; cljs.core.IEncodeJS = function() { var obj6257 = {}; return obj6257; }(); cljs.core._clj__GT_js = function _clj__GT_js(x) { if (function() { var and__3532__auto__ = x; if (and__3532__auto__) { return x.cljs$core$IEncodeJS$_clj__GT_js$arity$1; } else { return and__3532__auto__; } }()) { return x.cljs$core$IEncodeJS$_clj__GT_js$arity$1(x); } else { var x__4171__auto__ = x == null ? null : x; return function() { var or__3544__auto__ = cljs.core._clj__GT_js[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._clj__GT_js["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IEncodeJS.-clj-\x3ejs", x); } } }().call(null, x); } }; cljs.core._key__GT_js = function _key__GT_js(x) { if (function() { var and__3532__auto__ = x; if (and__3532__auto__) { return x.cljs$core$IEncodeJS$_key__GT_js$arity$1; } else { return and__3532__auto__; } }()) { return x.cljs$core$IEncodeJS$_key__GT_js$arity$1(x); } else { var x__4171__auto__ = x == null ? null : x; return function() { var or__3544__auto__ = cljs.core._key__GT_js[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._key__GT_js["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IEncodeJS.-key-\x3ejs", x); } } }().call(null, x); } }; cljs.core.key__GT_js = function key__GT_js(k) { if (function() { var G__6259 = k; if (G__6259) { var bit__4194__auto__ = null; if (cljs.core.truth_(function() { var or__3544__auto__ = bit__4194__auto__; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return G__6259.cljs$core$IEncodeJS$; } }())) { return true; } else { if (!G__6259.cljs$lang$protocol_mask$partition$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IEncodeJS, G__6259); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IEncodeJS, G__6259); } }()) { return cljs.core._clj__GT_js.call(null, k); } else { if (typeof k === "string" || typeof k === "number" || k instanceof cljs.core.Keyword || k instanceof cljs.core.Symbol) { return cljs.core.clj__GT_js.call(null, k); } else { return cljs.core.pr_str.call(null, k); } } }; cljs.core.clj__GT_js = function clj__GT_js(x) { if (x == null) { return null; } else { if (function() { var G__6273 = x; if (G__6273) { var bit__4194__auto__ = null; if (cljs.core.truth_(function() { var or__3544__auto__ = bit__4194__auto__; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return G__6273.cljs$core$IEncodeJS$; } }())) { return true; } else { if (!G__6273.cljs$lang$protocol_mask$partition$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IEncodeJS, G__6273); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IEncodeJS, G__6273); } }()) { return cljs.core._clj__GT_js.call(null, x); } else { if (x instanceof cljs.core.Keyword) { return cljs.core.name.call(null, x); } else { if (x instanceof cljs.core.Symbol) { return "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(x); } else { if (cljs.core.map_QMARK_.call(null, x)) { var m = function() { var obj6275 = {}; return obj6275; }(); var seq__6276_6286 = cljs.core.seq.call(null, x); var chunk__6277_6287 = null; var count__6278_6288 = 0; var i__6279_6289 = 0; while (true) { if (i__6279_6289 < count__6278_6288) { var vec__6280_6290 = cljs.core._nth.call(null, chunk__6277_6287, i__6279_6289); var k_6291 = cljs.core.nth.call(null, vec__6280_6290, 0, null); var v_6292 = cljs.core.nth.call(null, vec__6280_6290, 1, null); m[cljs.core.key__GT_js.call(null, k_6291)] = clj__GT_js.call(null, v_6292); var G__6293 = seq__6276_6286; var G__6294 = chunk__6277_6287; var G__6295 = count__6278_6288; var G__6296 = i__6279_6289 + 1; seq__6276_6286 = G__6293; chunk__6277_6287 = G__6294; count__6278_6288 = G__6295; i__6279_6289 = G__6296; continue; } else { var temp__4126__auto___6297 = cljs.core.seq.call(null, seq__6276_6286); if (temp__4126__auto___6297) { var seq__6276_6298__$1 = temp__4126__auto___6297; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6276_6298__$1)) { var c__4300__auto___6299 = cljs.core.chunk_first.call(null, seq__6276_6298__$1); var G__6300 = cljs.core.chunk_rest.call(null, seq__6276_6298__$1); var G__6301 = c__4300__auto___6299; var G__6302 = cljs.core.count.call(null, c__4300__auto___6299); var G__6303 = 0; seq__6276_6286 = G__6300; chunk__6277_6287 = G__6301; count__6278_6288 = G__6302; i__6279_6289 = G__6303; continue; } else { var vec__6281_6304 = cljs.core.first.call(null, seq__6276_6298__$1); var k_6305 = cljs.core.nth.call(null, vec__6281_6304, 0, null); var v_6306 = cljs.core.nth.call(null, vec__6281_6304, 1, null); m[cljs.core.key__GT_js.call(null, k_6305)] = clj__GT_js.call(null, v_6306); var G__6307 = cljs.core.next.call(null, seq__6276_6298__$1); var G__6308 = null; var G__6309 = 0; var G__6310 = 0; seq__6276_6286 = G__6307; chunk__6277_6287 = G__6308; count__6278_6288 = G__6309; i__6279_6289 = G__6310; continue; } } else { } } break; } return m; } else { if (cljs.core.coll_QMARK_.call(null, x)) { var arr = []; var seq__6282_6311 = cljs.core.seq.call(null, cljs.core.map.call(null, clj__GT_js, x)); var chunk__6283_6312 = null; var count__6284_6313 = 0; var i__6285_6314 = 0; while (true) { if (i__6285_6314 < count__6284_6313) { var x_6315__$1 = cljs.core._nth.call(null, chunk__6283_6312, i__6285_6314); arr.push(x_6315__$1); var G__6316 = seq__6282_6311; var G__6317 = chunk__6283_6312; var G__6318 = count__6284_6313; var G__6319 = i__6285_6314 + 1; seq__6282_6311 = G__6316; chunk__6283_6312 = G__6317; count__6284_6313 = G__6318; i__6285_6314 = G__6319; continue; } else { var temp__4126__auto___6320 = cljs.core.seq.call(null, seq__6282_6311); if (temp__4126__auto___6320) { var seq__6282_6321__$1 = temp__4126__auto___6320; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6282_6321__$1)) { var c__4300__auto___6322 = cljs.core.chunk_first.call(null, seq__6282_6321__$1); var G__6323 = cljs.core.chunk_rest.call(null, seq__6282_6321__$1); var G__6324 = c__4300__auto___6322; var G__6325 = cljs.core.count.call(null, c__4300__auto___6322); var G__6326 = 0; seq__6282_6311 = G__6323; chunk__6283_6312 = G__6324; count__6284_6313 = G__6325; i__6285_6314 = G__6326; continue; } else { var x_6327__$1 = cljs.core.first.call(null, seq__6282_6321__$1); arr.push(x_6327__$1); var G__6328 = cljs.core.next.call(null, seq__6282_6321__$1); var G__6329 = null; var G__6330 = 0; var G__6331 = 0; seq__6282_6311 = G__6328; chunk__6283_6312 = G__6329; count__6284_6313 = G__6330; i__6285_6314 = G__6331; continue; } } else { } } break; } return arr; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return x; } else { return null; } } } } } } } }; cljs.core.IEncodeClojure = function() { var obj6333 = {}; return obj6333; }(); cljs.core._js__GT_clj = function _js__GT_clj(x, options) { if (function() { var and__3532__auto__ = x; if (and__3532__auto__) { return x.cljs$core$IEncodeClojure$_js__GT_clj$arity$2; } else { return and__3532__auto__; } }()) { return x.cljs$core$IEncodeClojure$_js__GT_clj$arity$2(x, options); } else { var x__4171__auto__ = x == null ? null : x; return function() { var or__3544__auto__ = cljs.core._js__GT_clj[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._js__GT_clj["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IEncodeClojure.-js-\x3eclj", x); } } }().call(null, x, options); } }; cljs.core.js__GT_clj = function() { var js__GT_clj = null; var js__GT_clj__1 = function(x) { return js__GT_clj.call(null, x, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "keywordize-keys", "keywordize-keys", 1310784252), false], null)); }; var js__GT_clj__2 = function() { var G__6354__delegate = function(x, opts) { if (function() { var G__6344 = x; if (G__6344) { var bit__4194__auto__ = null; if (cljs.core.truth_(function() { var or__3544__auto__ = bit__4194__auto__; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return G__6344.cljs$core$IEncodeClojure$; } }())) { return true; } else { if (!G__6344.cljs$lang$protocol_mask$partition$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IEncodeClojure, G__6344); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IEncodeClojure, G__6344); } }()) { return cljs.core._js__GT_clj.call(null, x, cljs.core.apply.call(null, cljs.core.array_map, opts)); } else { if (cljs.core.seq.call(null, opts)) { var map__6345 = opts; var map__6345__$1 = cljs.core.seq_QMARK_.call(null, map__6345) ? cljs.core.apply.call(null, cljs.core.hash_map, map__6345) : map__6345; var keywordize_keys = cljs.core.get.call(null, map__6345__$1, new cljs.core.Keyword(null, "keywordize-keys", "keywordize-keys", 1310784252)); var keyfn = cljs.core.truth_(keywordize_keys) ? cljs.core.keyword : cljs.core.str; var f = function(map__6345, map__6345__$1, keywordize_keys, keyfn) { return function thisfn(x__$1) { if (cljs.core.seq_QMARK_.call(null, x__$1)) { return cljs.core.doall.call(null, cljs.core.map.call(null, thisfn, x__$1)); } else { if (cljs.core.coll_QMARK_.call(null, x__$1)) { return cljs.core.into.call(null, cljs.core.empty.call(null, x__$1), cljs.core.map.call(null, thisfn, x__$1)); } else { if (x__$1 instanceof Array) { return cljs.core.vec.call(null, cljs.core.map.call(null, thisfn, x__$1)); } else { if (cljs.core.type.call(null, x__$1) === Object) { return cljs.core.into.call(null, cljs.core.PersistentArrayMap.EMPTY, function() { var iter__4269__auto__ = function(map__6345, map__6345__$1, keywordize_keys, keyfn) { return function iter__6350(s__6351) { return new cljs.core.LazySeq(null, function(map__6345, map__6345__$1, keywordize_keys, keyfn) { return function() { var s__6351__$1 = s__6351; while (true) { var temp__4126__auto__ = cljs.core.seq.call(null, s__6351__$1); if (temp__4126__auto__) { var s__6351__$2 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, s__6351__$2)) { var c__4267__auto__ = cljs.core.chunk_first.call(null, s__6351__$2); var size__4268__auto__ = cljs.core.count.call(null, c__4267__auto__); var b__6353 = cljs.core.chunk_buffer.call(null, size__4268__auto__); if (function() { var i__6352 = 0; while (true) { if (i__6352 < size__4268__auto__) { var k = cljs.core._nth.call(null, c__4267__auto__, i__6352); cljs.core.chunk_append.call(null, b__6353, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [keyfn.call(null, k), thisfn.call(null, x__$1[k])], null)); var G__6355 = i__6352 + 1; i__6352 = G__6355; continue; } else { return true; } break; } }()) { return cljs.core.chunk_cons.call(null, cljs.core.chunk.call(null, b__6353), iter__6350.call(null, cljs.core.chunk_rest.call(null, s__6351__$2))); } else { return cljs.core.chunk_cons.call(null, cljs.core.chunk.call(null, b__6353), null); } } else { var k = cljs.core.first.call(null, s__6351__$2); return cljs.core.cons.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [keyfn.call(null, k), thisfn.call(null, x__$1[k])], null), iter__6350.call(null, cljs.core.rest.call(null, s__6351__$2))); } } else { return null; } break; } }; }(map__6345, map__6345__$1, keywordize_keys, keyfn), null, null); }; }(map__6345, map__6345__$1, keywordize_keys, keyfn); return iter__4269__auto__.call(null, cljs.core.js_keys.call(null, x__$1)); }()); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return x__$1; } else { return null; } } } } } }; }(map__6345, map__6345__$1, keywordize_keys, keyfn); return f.call(null, x); } else { return null; } } }; var G__6354 = function(x, var_args) { var opts = null; if (arguments.length > 1) { opts = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return G__6354__delegate.call(this, x, opts); }; G__6354.cljs$lang$maxFixedArity = 1; G__6354.cljs$lang$applyTo = function(arglist__6356) { var x = cljs.core.first(arglist__6356); var opts = cljs.core.rest(arglist__6356); return G__6354__delegate(x, opts); }; G__6354.cljs$core$IFn$_invoke$arity$variadic = G__6354__delegate; return G__6354; }(); js__GT_clj = function(x, var_args) { var opts = var_args; switch(arguments.length) { case 1: return js__GT_clj__1.call(this, x); default: return js__GT_clj__2.cljs$core$IFn$_invoke$arity$variadic(x, cljs.core.array_seq(arguments, 1)); } throw new Error("Invalid arity: " + arguments.length); }; js__GT_clj.cljs$lang$maxFixedArity = 1; js__GT_clj.cljs$lang$applyTo = js__GT_clj__2.cljs$lang$applyTo; js__GT_clj.cljs$core$IFn$_invoke$arity$1 = js__GT_clj__1; js__GT_clj.cljs$core$IFn$_invoke$arity$variadic = js__GT_clj__2.cljs$core$IFn$_invoke$arity$variadic; return js__GT_clj; }(); cljs.core.memoize = function memoize(f) { var mem = cljs.core.atom.call(null, cljs.core.PersistentArrayMap.EMPTY); return function(mem) { return function() { var G__6357__delegate = function(args) { var v = cljs.core.get.call(null, cljs.core.deref.call(null, mem), args, cljs.core.lookup_sentinel); if (v === cljs.core.lookup_sentinel) { var ret = cljs.core.apply.call(null, f, args); cljs.core.swap_BANG_.call(null, mem, cljs.core.assoc, args, ret); return ret; } else { return v; } }; var G__6357 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__6357__delegate.call(this, args); }; G__6357.cljs$lang$maxFixedArity = 0; G__6357.cljs$lang$applyTo = function(arglist__6358) { var args = cljs.core.seq(arglist__6358); return G__6357__delegate(args); }; G__6357.cljs$core$IFn$_invoke$arity$variadic = G__6357__delegate; return G__6357; }(); }(mem); }; cljs.core.trampoline = function() { var trampoline = null; var trampoline__1 = function(f) { while (true) { var ret = f.call(null); if (cljs.core.fn_QMARK_.call(null, ret)) { var G__6359 = ret; f = G__6359; continue; } else { return ret; } break; } }; var trampoline__2 = function() { var G__6360__delegate = function(f, args) { return trampoline.call(null, function() { return cljs.core.apply.call(null, f, args); }); }; var G__6360 = function(f, var_args) { var args = null; if (arguments.length > 1) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return G__6360__delegate.call(this, f, args); }; G__6360.cljs$lang$maxFixedArity = 1; G__6360.cljs$lang$applyTo = function(arglist__6361) { var f = cljs.core.first(arglist__6361); var args = cljs.core.rest(arglist__6361); return G__6360__delegate(f, args); }; G__6360.cljs$core$IFn$_invoke$arity$variadic = G__6360__delegate; return G__6360; }(); trampoline = function(f, var_args) { var args = var_args; switch(arguments.length) { case 1: return trampoline__1.call(this, f); default: return trampoline__2.cljs$core$IFn$_invoke$arity$variadic(f, cljs.core.array_seq(arguments, 1)); } throw new Error("Invalid arity: " + arguments.length); }; trampoline.cljs$lang$maxFixedArity = 1; trampoline.cljs$lang$applyTo = trampoline__2.cljs$lang$applyTo; trampoline.cljs$core$IFn$_invoke$arity$1 = trampoline__1; trampoline.cljs$core$IFn$_invoke$arity$variadic = trampoline__2.cljs$core$IFn$_invoke$arity$variadic; return trampoline; }(); cljs.core.rand = function() { var rand = null; var rand__0 = function() { return rand.call(null, 1); }; var rand__1 = function(n) { return Math.random.call(null) * n; }; rand = function(n) { switch(arguments.length) { case 0: return rand__0.call(this); case 1: return rand__1.call(this, n); } throw new Error("Invalid arity: " + arguments.length); }; rand.cljs$core$IFn$_invoke$arity$0 = rand__0; rand.cljs$core$IFn$_invoke$arity$1 = rand__1; return rand; }(); cljs.core.rand_int = function rand_int(n) { return Math.floor.call(null, Math.random.call(null) * n); }; cljs.core.rand_nth = function rand_nth(coll) { return cljs.core.nth.call(null, coll, cljs.core.rand_int.call(null, cljs.core.count.call(null, coll))); }; cljs.core.group_by = function group_by(f, coll) { return cljs.core.reduce.call(null, function(ret, x) { var k = f.call(null, x); return cljs.core.assoc.call(null, ret, k, cljs.core.conj.call(null, cljs.core.get.call(null, ret, k, cljs.core.PersistentVector.EMPTY), x)); }, cljs.core.PersistentArrayMap.EMPTY, coll); }; cljs.core.make_hierarchy = function make_hierarchy() { return new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null, "parents", "parents", -2027538891), cljs.core.PersistentArrayMap.EMPTY, new cljs.core.Keyword(null, "descendants", "descendants", 1824886031), cljs.core.PersistentArrayMap.EMPTY, new cljs.core.Keyword(null, "ancestors", "ancestors", -776045424), cljs.core.PersistentArrayMap.EMPTY], null); }; cljs.core._global_hierarchy = null; cljs.core.get_global_hierarchy = function get_global_hierarchy() { if (cljs.core._global_hierarchy == null) { cljs.core._global_hierarchy = cljs.core.atom.call(null, cljs.core.make_hierarchy.call(null)); } else { } return cljs.core._global_hierarchy; }; cljs.core.swap_global_hierarchy_BANG_ = function() { var swap_global_hierarchy_BANG___delegate = function(f, args) { return cljs.core.apply.call(null, cljs.core.swap_BANG_, cljs.core.get_global_hierarchy.call(null), f, args); }; var swap_global_hierarchy_BANG_ = function(f, var_args) { var args = null; if (arguments.length > 1) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return swap_global_hierarchy_BANG___delegate.call(this, f, args); }; swap_global_hierarchy_BANG_.cljs$lang$maxFixedArity = 1; swap_global_hierarchy_BANG_.cljs$lang$applyTo = function(arglist__6362) { var f = cljs.core.first(arglist__6362); var args = cljs.core.rest(arglist__6362); return swap_global_hierarchy_BANG___delegate(f, args); }; swap_global_hierarchy_BANG_.cljs$core$IFn$_invoke$arity$variadic = swap_global_hierarchy_BANG___delegate; return swap_global_hierarchy_BANG_; }(); cljs.core.isa_QMARK_ = function() { var isa_QMARK_ = null; var isa_QMARK___2 = function(child, parent) { return isa_QMARK_.call(null, cljs.core.deref.call(null, cljs.core.get_global_hierarchy.call(null)), child, parent); }; var isa_QMARK___3 = function(h, child, parent) { var or__3544__auto__ = cljs.core._EQ_.call(null, child, parent); if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core.contains_QMARK_.call(null, (new cljs.core.Keyword(null, "ancestors", "ancestors", -776045424)).cljs$core$IFn$_invoke$arity$1(h).call(null, child), parent); if (or__3544__auto____$1) { return or__3544__auto____$1; } else { var and__3532__auto__ = cljs.core.vector_QMARK_.call(null, parent); if (and__3532__auto__) { var and__3532__auto____$1 = cljs.core.vector_QMARK_.call(null, child); if (and__3532__auto____$1) { var and__3532__auto____$2 = cljs.core.count.call(null, parent) === cljs.core.count.call(null, child); if (and__3532__auto____$2) { var ret = true; var i = 0; while (true) { if (!ret || i === cljs.core.count.call(null, parent)) { return ret; } else { var G__6363 = isa_QMARK_.call(null, h, child.call(null, i), parent.call(null, i)); var G__6364 = i + 1; ret = G__6363; i = G__6364; continue; } break; } } else { return and__3532__auto____$2; } } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } } } }; isa_QMARK_ = function(h, child, parent) { switch(arguments.length) { case 2: return isa_QMARK___2.call(this, h, child); case 3: return isa_QMARK___3.call(this, h, child, parent); } throw new Error("Invalid arity: " + arguments.length); }; isa_QMARK_.cljs$core$IFn$_invoke$arity$2 = isa_QMARK___2; isa_QMARK_.cljs$core$IFn$_invoke$arity$3 = isa_QMARK___3; return isa_QMARK_; }(); cljs.core.parents = function() { var parents = null; var parents__1 = function(tag) { return parents.call(null, cljs.core.deref.call(null, cljs.core.get_global_hierarchy.call(null)), tag); }; var parents__2 = function(h, tag) { return cljs.core.not_empty.call(null, cljs.core.get.call(null, (new cljs.core.Keyword(null, "parents", "parents", -2027538891)).cljs$core$IFn$_invoke$arity$1(h), tag)); }; parents = function(h, tag) { switch(arguments.length) { case 1: return parents__1.call(this, h); case 2: return parents__2.call(this, h, tag); } throw new Error("Invalid arity: " + arguments.length); }; parents.cljs$core$IFn$_invoke$arity$1 = parents__1; parents.cljs$core$IFn$_invoke$arity$2 = parents__2; return parents; }(); cljs.core.ancestors = function() { var ancestors = null; var ancestors__1 = function(tag) { return ancestors.call(null, cljs.core.deref.call(null, cljs.core.get_global_hierarchy.call(null)), tag); }; var ancestors__2 = function(h, tag) { return cljs.core.not_empty.call(null, cljs.core.get.call(null, (new cljs.core.Keyword(null, "ancestors", "ancestors", -776045424)).cljs$core$IFn$_invoke$arity$1(h), tag)); }; ancestors = function(h, tag) { switch(arguments.length) { case 1: return ancestors__1.call(this, h); case 2: return ancestors__2.call(this, h, tag); } throw new Error("Invalid arity: " + arguments.length); }; ancestors.cljs$core$IFn$_invoke$arity$1 = ancestors__1; ancestors.cljs$core$IFn$_invoke$arity$2 = ancestors__2; return ancestors; }(); cljs.core.descendants = function() { var descendants = null; var descendants__1 = function(tag) { return descendants.call(null, cljs.core.deref.call(null, cljs.core.get_global_hierarchy.call(null)), tag); }; var descendants__2 = function(h, tag) { return cljs.core.not_empty.call(null, cljs.core.get.call(null, (new cljs.core.Keyword(null, "descendants", "descendants", 1824886031)).cljs$core$IFn$_invoke$arity$1(h), tag)); }; descendants = function(h, tag) { switch(arguments.length) { case 1: return descendants__1.call(this, h); case 2: return descendants__2.call(this, h, tag); } throw new Error("Invalid arity: " + arguments.length); }; descendants.cljs$core$IFn$_invoke$arity$1 = descendants__1; descendants.cljs$core$IFn$_invoke$arity$2 = descendants__2; return descendants; }(); cljs.core.derive = function() { var derive = null; var derive__2 = function(tag, parent) { if (cljs.core.truth_(cljs.core.namespace.call(null, parent))) { } else { throw new Error("Assert failed: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.pr_str.call(null, cljs.core.list(new cljs.core.Symbol(null, "namespace", "namespace", 1263021155, null), new cljs.core.Symbol(null, "parent", "parent", 761652748, null))))); } cljs.core.swap_global_hierarchy_BANG_.call(null, derive, tag, parent); return null; }; var derive__3 = function(h, tag, parent) { if (cljs.core.not_EQ_.call(null, tag, parent)) { } else { throw new Error("Assert failed: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.pr_str.call(null, cljs.core.list(new cljs.core.Symbol(null, "not\x3d", "not\x3d", 1466536204, null), new cljs.core.Symbol(null, "tag", "tag", 350170304, null), new cljs.core.Symbol(null, "parent", "parent", 761652748, null))))); } var tp = (new cljs.core.Keyword(null, "parents", "parents", -2027538891)).cljs$core$IFn$_invoke$arity$1(h); var td = (new cljs.core.Keyword(null, "descendants", "descendants", 1824886031)).cljs$core$IFn$_invoke$arity$1(h); var ta = (new cljs.core.Keyword(null, "ancestors", "ancestors", -776045424)).cljs$core$IFn$_invoke$arity$1(h); var tf = function(tp, td, ta) { return function(m, source, sources, target, targets) { return cljs.core.reduce.call(null, function(tp, td, ta) { return function(ret, k) { return cljs.core.assoc.call(null, ret, k, cljs.core.reduce.call(null, cljs.core.conj, cljs.core.get.call(null, targets, k, cljs.core.PersistentHashSet.EMPTY), cljs.core.cons.call(null, target, targets.call(null, target)))); }; }(tp, td, ta), m, cljs.core.cons.call(null, source, sources.call(null, source))); }; }(tp, td, ta); var or__3544__auto__ = cljs.core.contains_QMARK_.call(null, tp.call(null, tag), parent) ? null : function() { if (cljs.core.contains_QMARK_.call(null, ta.call(null, tag), parent)) { throw new Error("" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag) + "already has" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(parent) + "as ancestor"); } else { } if (cljs.core.contains_QMARK_.call(null, ta.call(null, parent), tag)) { throw new Error("Cyclic derivation:" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(parent) + "has" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag) + "as ancestor"); } else { } return new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null, "parents", "parents", -2027538891), cljs.core.assoc.call(null, (new cljs.core.Keyword(null, "parents", "parents", -2027538891)).cljs$core$IFn$_invoke$arity$1(h), tag, cljs.core.conj.call(null, cljs.core.get.call(null, tp, tag, cljs.core.PersistentHashSet.EMPTY), parent)), new cljs.core.Keyword(null, "ancestors", "ancestors", -776045424), tf.call(null, (new cljs.core.Keyword(null, "ancestors", "ancestors", -776045424)).cljs$core$IFn$_invoke$arity$1(h), tag, td, parent, ta), new cljs.core.Keyword(null, "descendants", "descendants", 1824886031), tf.call(null, (new cljs.core.Keyword(null, "descendants", "descendants", 1824886031)).cljs$core$IFn$_invoke$arity$1(h), parent, ta, tag, td)], null); }(); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return h; } }; derive = function(h, tag, parent) { switch(arguments.length) { case 2: return derive__2.call(this, h, tag); case 3: return derive__3.call(this, h, tag, parent); } throw new Error("Invalid arity: " + arguments.length); }; derive.cljs$core$IFn$_invoke$arity$2 = derive__2; derive.cljs$core$IFn$_invoke$arity$3 = derive__3; return derive; }(); cljs.core.underive = function() { var underive = null; var underive__2 = function(tag, parent) { cljs.core.swap_global_hierarchy_BANG_.call(null, underive, tag, parent); return null; }; var underive__3 = function(h, tag, parent) { var parentMap = (new cljs.core.Keyword(null, "parents", "parents", -2027538891)).cljs$core$IFn$_invoke$arity$1(h); var childsParents = cljs.core.truth_(parentMap.call(null, tag)) ? cljs.core.disj.call(null, parentMap.call(null, tag), parent) : cljs.core.PersistentHashSet.EMPTY; var newParents = cljs.core.truth_(cljs.core.not_empty.call(null, childsParents)) ? cljs.core.assoc.call(null, parentMap, tag, childsParents) : cljs.core.dissoc.call(null, parentMap, tag); var deriv_seq = cljs.core.flatten.call(null, cljs.core.map.call(null, function(parentMap, childsParents, newParents) { return function(p1__6365_SHARP_) { return cljs.core.cons.call(null, cljs.core.first.call(null, p1__6365_SHARP_), cljs.core.interpose.call(null, cljs.core.first.call(null, p1__6365_SHARP_), cljs.core.second.call(null, p1__6365_SHARP_))); }; }(parentMap, childsParents, newParents), cljs.core.seq.call(null, newParents))); if (cljs.core.contains_QMARK_.call(null, parentMap.call(null, tag), parent)) { return cljs.core.reduce.call(null, function(parentMap, childsParents, newParents, deriv_seq) { return function(p1__6366_SHARP_, p2__6367_SHARP_) { return cljs.core.apply.call(null, cljs.core.derive, p1__6366_SHARP_, p2__6367_SHARP_); }; }(parentMap, childsParents, newParents, deriv_seq), cljs.core.make_hierarchy.call(null), cljs.core.partition.call(null, 2, deriv_seq)); } else { return h; } }; underive = function(h, tag, parent) { switch(arguments.length) { case 2: return underive__2.call(this, h, tag); case 3: return underive__3.call(this, h, tag, parent); } throw new Error("Invalid arity: " + arguments.length); }; underive.cljs$core$IFn$_invoke$arity$2 = underive__2; underive.cljs$core$IFn$_invoke$arity$3 = underive__3; return underive; }(); cljs.core.reset_cache = function reset_cache(method_cache, method_table, cached_hierarchy, hierarchy) { cljs.core.swap_BANG_.call(null, method_cache, function(_) { return cljs.core.deref.call(null, method_table); }); return cljs.core.swap_BANG_.call(null, cached_hierarchy, function(_) { return cljs.core.deref.call(null, hierarchy); }); }; cljs.core.prefers_STAR_ = function prefers_STAR_(x, y, prefer_table) { var xprefs = cljs.core.deref.call(null, prefer_table).call(null, x); var or__3544__auto__ = cljs.core.truth_(function() { var and__3532__auto__ = xprefs; if (cljs.core.truth_(and__3532__auto__)) { return xprefs.call(null, y); } else { return and__3532__auto__; } }()) ? true : null; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { var or__3544__auto____$1 = function() { var ps = cljs.core.parents.call(null, y); while (true) { if (cljs.core.count.call(null, ps) > 0) { if (cljs.core.truth_(prefers_STAR_.call(null, x, cljs.core.first.call(null, ps), prefer_table))) { } else { } var G__6368 = cljs.core.rest.call(null, ps); ps = G__6368; continue; } else { return null; } break; } }(); if (cljs.core.truth_(or__3544__auto____$1)) { return or__3544__auto____$1; } else { var or__3544__auto____$2 = function() { var ps = cljs.core.parents.call(null, x); while (true) { if (cljs.core.count.call(null, ps) > 0) { if (cljs.core.truth_(prefers_STAR_.call(null, cljs.core.first.call(null, ps), y, prefer_table))) { } else { } var G__6369 = cljs.core.rest.call(null, ps); ps = G__6369; continue; } else { return null; } break; } }(); if (cljs.core.truth_(or__3544__auto____$2)) { return or__3544__auto____$2; } else { return false; } } } }; cljs.core.dominates = function dominates(x, y, prefer_table) { var or__3544__auto__ = cljs.core.prefers_STAR_.call(null, x, y, prefer_table); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.core.isa_QMARK_.call(null, x, y); } }; cljs.core.find_and_cache_best_method = function find_and_cache_best_method(name, dispatch_val, hierarchy, method_table, prefer_table, method_cache, cached_hierarchy) { var best_entry = cljs.core.reduce.call(null, function(be, p__6372) { var vec__6373 = p__6372; var k = cljs.core.nth.call(null, vec__6373, 0, null); var _ = cljs.core.nth.call(null, vec__6373, 1, null); var e = vec__6373; if (cljs.core.isa_QMARK_.call(null, cljs.core.deref.call(null, hierarchy), dispatch_val, k)) { var be2 = cljs.core.truth_(function() { var or__3544__auto__ = be == null; if (or__3544__auto__) { return or__3544__auto__; } else { return cljs.core.dominates.call(null, k, cljs.core.first.call(null, be), prefer_table); } }()) ? e : be; if (cljs.core.truth_(cljs.core.dominates.call(null, cljs.core.first.call(null, be2), k, prefer_table))) { } else { throw new Error("Multiple methods in multimethod '" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(name) + "' match dispatch value: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val) + " -\x3e " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(k) + " and " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first.call(null, be2)) + ", and neither is preferred"); } return be2; } else { return be; } }, null, cljs.core.deref.call(null, method_table)); if (cljs.core.truth_(best_entry)) { if (cljs.core._EQ_.call(null, cljs.core.deref.call(null, cached_hierarchy), cljs.core.deref.call(null, hierarchy))) { cljs.core.swap_BANG_.call(null, method_cache, cljs.core.assoc, dispatch_val, cljs.core.second.call(null, best_entry)); return cljs.core.second.call(null, best_entry); } else { cljs.core.reset_cache.call(null, method_cache, method_table, cached_hierarchy, hierarchy); return find_and_cache_best_method.call(null, name, dispatch_val, hierarchy, method_table, prefer_table, method_cache, cached_hierarchy); } } else { return null; } }; cljs.core.IMultiFn = function() { var obj6375 = {}; return obj6375; }(); cljs.core._reset = function _reset(mf) { if (function() { var and__3532__auto__ = mf; if (and__3532__auto__) { return mf.cljs$core$IMultiFn$_reset$arity$1; } else { return and__3532__auto__; } }()) { return mf.cljs$core$IMultiFn$_reset$arity$1(mf); } else { var x__4171__auto__ = mf == null ? null : mf; return function() { var or__3544__auto__ = cljs.core._reset[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._reset["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMultiFn.-reset", mf); } } }().call(null, mf); } }; cljs.core._add_method = function _add_method(mf, dispatch_val, method) { if (function() { var and__3532__auto__ = mf; if (and__3532__auto__) { return mf.cljs$core$IMultiFn$_add_method$arity$3; } else { return and__3532__auto__; } }()) { return mf.cljs$core$IMultiFn$_add_method$arity$3(mf, dispatch_val, method); } else { var x__4171__auto__ = mf == null ? null : mf; return function() { var or__3544__auto__ = cljs.core._add_method[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._add_method["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMultiFn.-add-method", mf); } } }().call(null, mf, dispatch_val, method); } }; cljs.core._remove_method = function _remove_method(mf, dispatch_val) { if (function() { var and__3532__auto__ = mf; if (and__3532__auto__) { return mf.cljs$core$IMultiFn$_remove_method$arity$2; } else { return and__3532__auto__; } }()) { return mf.cljs$core$IMultiFn$_remove_method$arity$2(mf, dispatch_val); } else { var x__4171__auto__ = mf == null ? null : mf; return function() { var or__3544__auto__ = cljs.core._remove_method[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._remove_method["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMultiFn.-remove-method", mf); } } }().call(null, mf, dispatch_val); } }; cljs.core._prefer_method = function _prefer_method(mf, dispatch_val, dispatch_val_y) { if (function() { var and__3532__auto__ = mf; if (and__3532__auto__) { return mf.cljs$core$IMultiFn$_prefer_method$arity$3; } else { return and__3532__auto__; } }()) { return mf.cljs$core$IMultiFn$_prefer_method$arity$3(mf, dispatch_val, dispatch_val_y); } else { var x__4171__auto__ = mf == null ? null : mf; return function() { var or__3544__auto__ = cljs.core._prefer_method[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._prefer_method["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMultiFn.-prefer-method", mf); } } }().call(null, mf, dispatch_val, dispatch_val_y); } }; cljs.core._get_method = function _get_method(mf, dispatch_val) { if (function() { var and__3532__auto__ = mf; if (and__3532__auto__) { return mf.cljs$core$IMultiFn$_get_method$arity$2; } else { return and__3532__auto__; } }()) { return mf.cljs$core$IMultiFn$_get_method$arity$2(mf, dispatch_val); } else { var x__4171__auto__ = mf == null ? null : mf; return function() { var or__3544__auto__ = cljs.core._get_method[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._get_method["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMultiFn.-get-method", mf); } } }().call(null, mf, dispatch_val); } }; cljs.core._methods = function _methods(mf) { if (function() { var and__3532__auto__ = mf; if (and__3532__auto__) { return mf.cljs$core$IMultiFn$_methods$arity$1; } else { return and__3532__auto__; } }()) { return mf.cljs$core$IMultiFn$_methods$arity$1(mf); } else { var x__4171__auto__ = mf == null ? null : mf; return function() { var or__3544__auto__ = cljs.core._methods[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._methods["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMultiFn.-methods", mf); } } }().call(null, mf); } }; cljs.core._prefers = function _prefers(mf) { if (function() { var and__3532__auto__ = mf; if (and__3532__auto__) { return mf.cljs$core$IMultiFn$_prefers$arity$1; } else { return and__3532__auto__; } }()) { return mf.cljs$core$IMultiFn$_prefers$arity$1(mf); } else { var x__4171__auto__ = mf == null ? null : mf; return function() { var or__3544__auto__ = cljs.core._prefers[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._prefers["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IMultiFn.-prefers", mf); } } }().call(null, mf); } }; cljs.core.throw_no_method_error = function throw_no_method_error(name, dispatch_val) { throw new Error("No method in multimethod '" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(name) + "' for dispatch value: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val)); }; cljs.core.MultiFn = function(name, dispatch_fn, default_dispatch_val, hierarchy, method_table, prefer_table, method_cache, cached_hierarchy) { this.name = name; this.dispatch_fn = dispatch_fn; this.default_dispatch_val = default_dispatch_val; this.hierarchy = hierarchy; this.method_table = method_table; this.prefer_table = prefer_table; this.method_cache = method_cache; this.cached_hierarchy = cached_hierarchy; this.cljs$lang$protocol_mask$partition0$ = 4194305; this.cljs$lang$protocol_mask$partition1$ = 256; }; cljs.core.MultiFn.cljs$lang$type = true; cljs.core.MultiFn.cljs$lang$ctorStr = "cljs.core/MultiFn"; cljs.core.MultiFn.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/MultiFn"); }; cljs.core.MultiFn.prototype.cljs$core$IHash$_hash$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return goog.getUid(this$__$1); }; cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_reset$arity$1 = function(mf) { var self__ = this; var mf__$1 = this; cljs.core.swap_BANG_.call(null, self__.method_table, function(mf__$1) { return function(mf__$2) { return cljs.core.PersistentArrayMap.EMPTY; }; }(mf__$1)); cljs.core.swap_BANG_.call(null, self__.method_cache, function(mf__$1) { return function(mf__$2) { return cljs.core.PersistentArrayMap.EMPTY; }; }(mf__$1)); cljs.core.swap_BANG_.call(null, self__.prefer_table, function(mf__$1) { return function(mf__$2) { return cljs.core.PersistentArrayMap.EMPTY; }; }(mf__$1)); cljs.core.swap_BANG_.call(null, self__.cached_hierarchy, function(mf__$1) { return function(mf__$2) { return null; }; }(mf__$1)); return mf__$1; }; cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_add_method$arity$3 = function(mf, dispatch_val, method) { var self__ = this; var mf__$1 = this; cljs.core.swap_BANG_.call(null, self__.method_table, cljs.core.assoc, dispatch_val, method); cljs.core.reset_cache.call(null, self__.method_cache, self__.method_table, self__.cached_hierarchy, self__.hierarchy); return mf__$1; }; cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_remove_method$arity$2 = function(mf, dispatch_val) { var self__ = this; var mf__$1 = this; cljs.core.swap_BANG_.call(null, self__.method_table, cljs.core.dissoc, dispatch_val); cljs.core.reset_cache.call(null, self__.method_cache, self__.method_table, self__.cached_hierarchy, self__.hierarchy); return mf__$1; }; cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_get_method$arity$2 = function(mf, dispatch_val) { var self__ = this; var mf__$1 = this; if (cljs.core._EQ_.call(null, cljs.core.deref.call(null, self__.cached_hierarchy), cljs.core.deref.call(null, self__.hierarchy))) { } else { cljs.core.reset_cache.call(null, self__.method_cache, self__.method_table, self__.cached_hierarchy, self__.hierarchy); } var temp__4124__auto__ = cljs.core.deref.call(null, self__.method_cache).call(null, dispatch_val); if (cljs.core.truth_(temp__4124__auto__)) { var target_fn = temp__4124__auto__; return target_fn; } else { var temp__4124__auto____$1 = cljs.core.find_and_cache_best_method.call(null, self__.name, dispatch_val, self__.hierarchy, self__.method_table, self__.prefer_table, self__.method_cache, self__.cached_hierarchy); if (cljs.core.truth_(temp__4124__auto____$1)) { var target_fn = temp__4124__auto____$1; return target_fn; } else { return cljs.core.deref.call(null, self__.method_table).call(null, self__.default_dispatch_val); } } }; cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_prefer_method$arity$3 = function(mf, dispatch_val_x, dispatch_val_y) { var self__ = this; var mf__$1 = this; if (cljs.core.truth_(cljs.core.prefers_STAR_.call(null, dispatch_val_x, dispatch_val_y, self__.prefer_table))) { throw new Error("Preference conflict in multimethod '" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.name) + "': " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val_y) + " is already preferred to " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val_x)); } else { } cljs.core.swap_BANG_.call(null, self__.prefer_table, function(mf__$1) { return function(old) { return cljs.core.assoc.call(null, old, dispatch_val_x, cljs.core.conj.call(null, cljs.core.get.call(null, old, dispatch_val_x, cljs.core.PersistentHashSet.EMPTY), dispatch_val_y)); }; }(mf__$1)); return cljs.core.reset_cache.call(null, self__.method_cache, self__.method_table, self__.cached_hierarchy, self__.hierarchy); }; cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_methods$arity$1 = function(mf) { var self__ = this; var mf__$1 = this; return cljs.core.deref.call(null, self__.method_table); }; cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_prefers$arity$1 = function(mf) { var self__ = this; var mf__$1 = this; return cljs.core.deref.call(null, self__.prefer_table); }; cljs.core.MultiFn.prototype.call = function() { var G__6377 = null; var G__6377__2 = function(self__, a) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a); }; var G__6377__3 = function(self__, a, b) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b); }; var G__6377__4 = function(self__, a, b, c) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c); }; var G__6377__5 = function(self__, a, b, c, d) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d); }; var G__6377__6 = function(self__, a, b, c, d, e) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e); }; var G__6377__7 = function(self__, a, b, c, d, e, f) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f); }; var G__6377__8 = function(self__, a, b, c, d, e, f, g) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g); }; var G__6377__9 = function(self__, a, b, c, d, e, f, g, h) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h); }; var G__6377__10 = function(self__, a, b, c, d, e, f, g, h, i) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i); }; var G__6377__11 = function(self__, a, b, c, d, e, f, g, h, i, j) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j); }; var G__6377__12 = function(self__, a, b, c, d, e, f, g, h, i, j, k) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k); }; var G__6377__13 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l); }; var G__6377__14 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m); }; var G__6377__15 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n); }; var G__6377__16 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); }; var G__6377__17 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); }; var G__6377__18 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); }; var G__6377__19 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); }; var G__6377__20 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); }; var G__6377__21 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); }; var G__6377__22 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest) { var self__ = this; var self____$1 = this; var mf = self____$1; var dispatch_val = cljs.core.apply.call(null, self__.dispatch_fn, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return cljs.core.apply.call(null, target_fn, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); }; G__6377 = function(self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest) { switch(arguments.length) { case 2: return G__6377__2.call(this, self__, a); case 3: return G__6377__3.call(this, self__, a, b); case 4: return G__6377__4.call(this, self__, a, b, c); case 5: return G__6377__5.call(this, self__, a, b, c, d); case 6: return G__6377__6.call(this, self__, a, b, c, d, e); case 7: return G__6377__7.call(this, self__, a, b, c, d, e, f); case 8: return G__6377__8.call(this, self__, a, b, c, d, e, f, g); case 9: return G__6377__9.call(this, self__, a, b, c, d, e, f, g, h); case 10: return G__6377__10.call(this, self__, a, b, c, d, e, f, g, h, i); case 11: return G__6377__11.call(this, self__, a, b, c, d, e, f, g, h, i, j); case 12: return G__6377__12.call(this, self__, a, b, c, d, e, f, g, h, i, j, k); case 13: return G__6377__13.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l); case 14: return G__6377__14.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m); case 15: return G__6377__15.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n); case 16: return G__6377__16.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); case 17: return G__6377__17.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); case 18: return G__6377__18.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); case 19: return G__6377__19.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); case 20: return G__6377__20.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); case 21: return G__6377__21.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); case 22: return G__6377__22.call(this, self__, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); } throw new Error("Invalid arity: " + arguments.length); }; return G__6377; }(); cljs.core.MultiFn.prototype.apply = function(self__, args6376) { var self__ = this; var self____$1 = this; return self____$1.call.apply(self____$1, [self____$1].concat(cljs.core.aclone.call(null, args6376))); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$1 = function(a) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$2 = function(a, b) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$3 = function(a, b, c) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$4 = function(a, b, c, d) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$5 = function(a, b, c, d, e) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$6 = function(a, b, c, d, e, f) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$7 = function(a, b, c, d, e, f, g) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$8 = function(a, b, c, d, e, f, g, h) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$9 = function(a, b, c, d, e, f, g, h, i) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$10 = function(a, b, c, d, e, f, g, h, i, j) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$11 = function(a, b, c, d, e, f, g, h, i, j, k) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$12 = function(a, b, c, d, e, f, g, h, i, j, k, l) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$13 = function(a, b, c, d, e, f, g, h, i, j, k, l, m) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$14 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$15 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$16 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$17 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$18 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$19 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$20 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) { var self__ = this; var mf = this; var dispatch_val = self__.dispatch_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return target_fn.call(null, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t); }; cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$21 = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest) { var self__ = this; var mf = this; var dispatch_val = cljs.core.apply.call(null, self__.dispatch_fn, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); var target_fn = mf.cljs$core$IMultiFn$_get_method$arity$2(null, dispatch_val); if (cljs.core.truth_(target_fn)) { } else { cljs.core.throw_no_method_error.call(null, self__.name, dispatch_val); } return cljs.core.apply.call(null, target_fn, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, rest); }; cljs.core.__GT_MultiFn = function __GT_MultiFn(name, dispatch_fn, default_dispatch_val, hierarchy, method_table, prefer_table, method_cache, cached_hierarchy) { return new cljs.core.MultiFn(name, dispatch_fn, default_dispatch_val, hierarchy, method_table, prefer_table, method_cache, cached_hierarchy); }; cljs.core.remove_all_methods = function remove_all_methods(multifn) { return cljs.core._reset.call(null, multifn); }; cljs.core.remove_method = function remove_method(multifn, dispatch_val) { return cljs.core._remove_method.call(null, multifn, dispatch_val); }; cljs.core.prefer_method = function prefer_method(multifn, dispatch_val_x, dispatch_val_y) { return cljs.core._prefer_method.call(null, multifn, dispatch_val_x, dispatch_val_y); }; cljs.core.methods$ = function methods$(multifn) { return cljs.core._methods.call(null, multifn); }; cljs.core.get_method = function get_method(multifn, dispatch_val) { return cljs.core._get_method.call(null, multifn, dispatch_val); }; cljs.core.prefers = function prefers(multifn) { return cljs.core._prefers.call(null, multifn); }; cljs.core.UUID = function(uuid) { this.uuid = uuid; this.cljs$lang$protocol_mask$partition1$ = 0; this.cljs$lang$protocol_mask$partition0$ = 2153775104; }; cljs.core.UUID.cljs$lang$type = true; cljs.core.UUID.cljs$lang$ctorStr = "cljs.core/UUID"; cljs.core.UUID.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.core/UUID"); }; cljs.core.UUID.prototype.cljs$core$IHash$_hash$arity$1 = function(this$) { var self__ = this; var this$__$1 = this; return goog.string.hashCode(cljs.core.pr_str.call(null, this$__$1)); }; cljs.core.UUID.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = function(_, writer, ___$1) { var self__ = this; var ___$2 = this; return cljs.core._write.call(null, writer, '#uuid "' + cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.uuid) + '"'); }; cljs.core.UUID.prototype.cljs$core$IEquiv$_equiv$arity$2 = function(_, other) { var self__ = this; var ___$1 = this; return other instanceof cljs.core.UUID && self__.uuid === other.uuid; }; cljs.core.UUID.prototype.toString = function() { var self__ = this; var _ = this; return self__.uuid; }; cljs.core.UUID.prototype.equiv = function(other) { var self__ = this; var this$ = this; return this$.cljs$core$IEquiv$_equiv$arity$2(null, other); }; cljs.core.__GT_UUID = function __GT_UUID(uuid) { return new cljs.core.UUID(uuid); }; cljs.core.ExceptionInfo = function(message, data, cause) { this.message = message; this.data = data; this.cause = cause; }; cljs.core.ExceptionInfo.cljs$lang$type = true; cljs.core.ExceptionInfo.cljs$lang$ctorStr = "cljs.core/ExceptionInfo"; cljs.core.ExceptionInfo.cljs$lang$ctorPrWriter = function(this__4114__auto__, writer__4115__auto__, opts__4116__auto__) { return cljs.core._write.call(null, writer__4115__auto__, "cljs.core/ExceptionInfo"); }; cljs.core.__GT_ExceptionInfo = function __GT_ExceptionInfo(message, data, cause) { return new cljs.core.ExceptionInfo(message, data, cause); }; cljs.core.ExceptionInfo.prototype = new Error; cljs.core.ExceptionInfo.prototype.constructor = cljs.core.ExceptionInfo; cljs.core.ex_info = function() { var ex_info = null; var ex_info__2 = function(msg, map) { return new cljs.core.ExceptionInfo(msg, map, null); }; var ex_info__3 = function(msg, map, cause) { return new cljs.core.ExceptionInfo(msg, map, cause); }; ex_info = function(msg, map, cause) { switch(arguments.length) { case 2: return ex_info__2.call(this, msg, map); case 3: return ex_info__3.call(this, msg, map, cause); } throw new Error("Invalid arity: " + arguments.length); }; ex_info.cljs$core$IFn$_invoke$arity$2 = ex_info__2; ex_info.cljs$core$IFn$_invoke$arity$3 = ex_info__3; return ex_info; }(); cljs.core.ex_data = function ex_data(ex) { if (ex instanceof cljs.core.ExceptionInfo) { return ex.data; } else { return null; } }; cljs.core.ex_message = function ex_message(ex) { if (ex instanceof Error) { return ex.message; } else { return null; } }; cljs.core.ex_cause = function ex_cause(ex) { if (ex instanceof cljs.core.ExceptionInfo) { return ex.cause; } else { return null; } }; cljs.core.comparator = function comparator(pred) { return function(x, y) { if (cljs.core.truth_(pred.call(null, x, y))) { return-1; } else { if (cljs.core.truth_(pred.call(null, y, x))) { return 1; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return 0; } else { return null; } } } }; }; cljs.core.special_symbol_QMARK_ = function special_symbol_QMARK_(x) { return cljs.core.contains_QMARK_.call(null, new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 19, [new cljs.core.Symbol(null, "\x26", "\x26", -2144855648, null), null, new cljs.core.Symbol(null, "defrecord*", "defrecord*", -1936366207, null), null, new cljs.core.Symbol(null, "try", "try", -1273693247, null), null, new cljs.core.Symbol(null, "loop*", "loop*", 615029416, null), null, new cljs.core.Symbol(null, "do", "do", 1686842252, null), null, new cljs.core.Symbol(null, "letfn*", "letfn*", -110097810, null), null, new cljs.core.Symbol(null, "if", "if", 1181717262, null), null, new cljs.core.Symbol(null, "new", "new", -444906321, null), null, new cljs.core.Symbol(null, "ns", "ns", 2082130287, null), null, new cljs.core.Symbol(null, "deftype*", "deftype*", 962659890, null), null, new cljs.core.Symbol(null, "let*", "let*", 1920721458, null), null, new cljs.core.Symbol(null, "js*", "js*", -1134233646, null), null, new cljs.core.Symbol(null, "fn*", "fn*", -752876845, null), null, new cljs.core.Symbol(null, "recur", "recur", 1202958259, null), null, new cljs.core.Symbol(null, "set!", "set!", 250714521, null), null, new cljs.core.Symbol(null, ".", ".", 1975675962, null), null, new cljs.core.Symbol(null, "quote", "quote", 1377916282, null), null, new cljs.core.Symbol(null, "throw", "throw", 595905694, null), null, new cljs.core.Symbol(null, "def", "def", 597100991, null), null], null), null), x); }; goog.provide("calabash_script.utils"); goog.require("cljs.core"); calabash_script.utils.target = function target() { return UIATarget.localTarget(); }; calabash_script.utils.app = function app() { return calabash_script.utils.target.call(null).frontMostApp(); }; calabash_script.utils.windows = function windows() { return cljs.core.seq.call(null, calabash_script.utils.app.call(null).windows().toArray()); }; calabash_script.utils.window = function window__$1() { var main = calabash_script.utils.app.call(null).mainWindow(); if (cljs.core.truth_(main.hitpoint())) { return main; } else { return cljs.core.first.call(null, cljs.core.filter.call(null, function(main) { return function(p1__5233_SHARP_) { return p1__5233_SHARP_.hitpoint(); }; }(main), calabash_script.utils.windows.call(null))); } }; calabash_script.utils.keyboard = function keyboard() { return calabash_script.utils.app.call(null).keyboard(); }; calabash_script.utils.rounded_map = function() { var rounded_map__delegate = function(cljmap, keys) { var round_key = function(cljmap__$1, key) { var temp__4124__auto__ = cljs.core.get.call(null, cljmap__$1, key); if (cljs.core.truth_(temp__4124__auto__)) { var kv = temp__4124__auto__; return cljs.core.assoc.call(null, cljmap__$1, key, Math.round(kv)); } else { return cljmap__$1; } }; return cljs.core.reduce.call(null, round_key, cljmap, cljs.core.cons.call(null, new cljs.core.Keyword(null, "x", "x", 2099068185), cljs.core.cons.call(null, new cljs.core.Keyword(null, "y", "y", -1757859776), keys))); }; var rounded_map = function(cljmap, var_args) { var keys = null; if (arguments.length > 1) { keys = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return rounded_map__delegate.call(this, cljmap, keys); }; rounded_map.cljs$lang$maxFixedArity = 1; rounded_map.cljs$lang$applyTo = function(arglist__5234) { var cljmap = cljs.core.first(arglist__5234); var keys = cljs.core.rest(arglist__5234); return rounded_map__delegate(cljmap, keys); }; rounded_map.cljs$core$IFn$_invoke$arity$variadic = rounded_map__delegate; return rounded_map; }(); calabash_script.utils.uia_point = function() { var uia_point__delegate = function(cljmap, keys) { return cljs.core.clj__GT_js.call(null, cljs.core.apply.call(null, calabash_script.utils.rounded_map, cljmap, keys)); }; var uia_point = function(cljmap, var_args) { var keys = null; if (arguments.length > 1) { keys = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return uia_point__delegate.call(this, cljmap, keys); }; uia_point.cljs$lang$maxFixedArity = 1; uia_point.cljs$lang$applyTo = function(arglist__5235) { var cljmap = cljs.core.first(arglist__5235); var keys = cljs.core.rest(arglist__5235); return uia_point__delegate(cljmap, keys); }; uia_point.cljs$core$IFn$_invoke$arity$variadic = uia_point__delegate; return uia_point; }(); calabash_script.utils._STAR_screenshot_count_STAR_ = cljs.core.atom.call(null, 1); calabash_script.utils.screenshot = function screenshot(name) { var cnt = cljs.core.deref.call(null, calabash_script.utils._STAR_screenshot_count_STAR_); if (cljs.core.truth_(cnt)) { cljs.core.swap_BANG_.call(null, calabash_script.utils._STAR_screenshot_count_STAR_, cljs.core.inc); } else { } return calabash_script.utils.target.call(null).captureScreenWithName("" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(name) + cljs.core.str.cljs$core$IFn$_invoke$arity$1(function() { var or__3544__auto__ = cnt; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return ""; } }())); }; calabash_script.utils._STAR_localizations_STAR_ = new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "keyboard", "keyboard", -617357087), new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "return", "return", -1891502105), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "en", "en", 88457073), "return", new cljs.core.Keyword(null, "da", "da", -742035943), "retur"], null)], null)], null); calabash_script.utils.localization_for = function localization_for(domain, msg) { var lang = cljs.core.keyword.call(null, function() { var or__3544__auto__ = cljs.core.first.call(null, calabash_script.utils.app.call(null).preferencesValueForKey("AppleLanguages")); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return "en"; } }()); return cljs.core.get_in.call(null, calabash_script.utils._STAR_localizations_STAR_, new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [domain, msg, lang], null)); }; calabash_script.utils.normalize = function normalize(uia_el) { if (uia_el instanceof UIAElementNil) { return null; } else { return uia_el; } }; goog.provide("calabash_script.gestures"); goog.require("cljs.core"); calabash_script.gestures.swipe_deltas = new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null, "light", "light", 1918998747), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), 75, new cljs.core.Keyword(null, "dy", "dy", 1719547243), -1], null), new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), -1, new cljs.core.Keyword(null, "dy", "dy", 1719547243), 75], null)], null), new cljs.core.Keyword(null, "normal", "normal", -1519123858), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), 100, new cljs.core.Keyword(null, "dy", "dy", 1719547243), -1], null), new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), -1, new cljs.core.Keyword(null, "dy", "dy", 1719547243), 100], null)], null), new cljs.core.Keyword(null, "strong", "strong", 269529E3), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), 150, new cljs.core.Keyword(null, "dy", "dy", 1719547243), -1], null), new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), -1, new cljs.core.Keyword(null, "dy", "dy", 1719547243), 150], null)], null), new cljs.core.Keyword(null, "hard", "hard", 2068420191), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), 300, new cljs.core.Keyword(null, "dy", "dy", 1719547243), -1], null), new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "dx", "dx", -381796732), -1, new cljs.core.Keyword(null, "dy", "dy", 1719547243), 300], null)], null)], null); calabash_script.gestures.select_swipe_delta = function select_swipe_delta(options) { var temp__4124__auto__ = (new cljs.core.Keyword(null, "swipe-delta", "swipe-delta", 718546506)).cljs$core$IFn$_invoke$arity$1(options); if (cljs.core.truth_(temp__4124__auto__)) { var swipe_delta = temp__4124__auto__; return swipe_delta; } else { var delta_key = function() { var or__3544__auto__ = (new cljs.core.Keyword(null, "force", "force", 781957286)).cljs$core$IFn$_invoke$arity$1(options); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return new cljs.core.Keyword(null, "normal", "normal", -1519123858); } }(); return calabash_script.gestures.swipe_deltas.call(null, delta_key); } }; calabash_script.gestures.calculate_swipe_to_offset = function calculate_swipe_to_offset(p__5161, options) { var map__5164 = p__5161; var map__5164__$1 = cljs.core.seq_QMARK_.call(null, map__5164) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5164) : map__5164; var y = cljs.core.get.call(null, map__5164__$1, new cljs.core.Keyword(null, "y", "y", -1757859776)); var x = cljs.core.get.call(null, map__5164__$1, new cljs.core.Keyword(null, "x", "x", 2099068185)); var swipe_delta = calabash_script.gestures.select_swipe_delta.call(null, options); var base_movement = function() { var G__5165 = (new cljs.core.Keyword(null, "direction", "direction", -633359395)).cljs$core$IFn$_invoke$arity$1(options) instanceof cljs.core.Keyword ? (new cljs.core.Keyword(null, "direction", "direction", -633359395)).cljs$core$IFn$_invoke$arity$1(options).fqn : null; switch(G__5165) { case "down": return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), x + cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.Keyword(null, "dx", "dx", -381796732)], null)), new cljs.core.Keyword(null, "y", "y", -1757859776), y + cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.Keyword(null, "dy", "dy", 1719547243)], null))], null); break; case "up": return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), x + cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.Keyword(null, "dx", "dx", -381796732)], null)), new cljs.core.Keyword(null, "y", "y", -1757859776), y - cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "vertical", "vertical", 718696748), new cljs.core.Keyword(null, "dy", "dy", 1719547243)], null))], null); break; case "right": return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), x + cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.Keyword(null, "dx", "dx", -381796732)], null)), new cljs.core.Keyword(null, "y", "y", -1757859776), y + cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.Keyword(null, "dy", "dy", 1719547243)], null))], null); break; case "left": return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), x - cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.Keyword(null, "dx", "dx", -381796732)], null)), new cljs.core.Keyword(null, "y", "y", -1757859776), y + cljs.core.get_in.call(null, swipe_delta, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "horizontal", "horizontal", 2062109475), new cljs.core.Keyword(null, "dy", "dy", 1719547243)], null))], null); break; default: throw new Error("No matching clause: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1((new cljs.core.Keyword(null, "direction", "direction", -633359395)).cljs$core$IFn$_invoke$arity$1(options)));; } }(); return cljs.core.merge_with.call(null, cljs.core._PLUS_, base_movement, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), cljs.core.get.call(null, options, new cljs.core.Keyword(null, "dx", "dx", -381796732), 0), new cljs.core.Keyword(null, "y", "y", -1757859776), cljs.core.get.call(null, options, new cljs.core.Keyword(null, "dy", "dy", 1719547243), 0)], null)); }; calabash_script.gestures.pinch_delta = new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "in", "in", -1531184865), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), 25, new cljs.core.Keyword(null, "y", "y", -1757859776), -25], null), new cljs.core.Keyword(null, "out", "out", -910545517), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), -25, new cljs.core.Keyword(null, "y", "y", -1757859776), 25], null)], null); calabash_script.gestures.calculate_pinch_offset = function calculate_pinch_offset(in_or_out, offset, options) { return cljs.core.merge_with.call(null, cljs.core._PLUS_, offset, cljs.core.get.call(null, calabash_script.gestures.pinch_delta, in_or_out)); }; calabash_script.gestures.drag_inside_delta = new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null, "left", "left", -399115937), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), -.4, new cljs.core.Keyword(null, "y", "y", -1757859776), .02], null), new cljs.core.Keyword(null, "right", "right", -452581833), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), .4, new cljs.core.Keyword(null, "y", "y", -1757859776), .02], null), new cljs.core.Keyword(null, "up", "up", -269712113), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), .02, new cljs.core.Keyword(null, "y", "y", -1757859776), -.4], null), new cljs.core.Keyword(null, "down", "down", 1565245570), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), .02, new cljs.core.Keyword(null, "y", "y", -1757859776), .4], null)], null); calabash_script.gestures.drag_inside_offset = function drag_inside_offset(dir, start_offset) { return cljs.core.merge_with.call(null, cljs.core._PLUS_, start_offset, cljs.core.get.call(null, calabash_script.gestures.drag_inside_delta, dir)); }; goog.provide("calabash_script.log"); goog.require("cljs.core"); calabash_script.log.log = function() { var log__delegate = function(more) { return UIALogger.logMessage(cljs.core.apply.call(null, cljs.core.str, more)); }; var log = function(var_args) { var more = null; if (arguments.length > 0) { more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return log__delegate.call(this, more); }; log.cljs$lang$maxFixedArity = 0; log.cljs$lang$applyTo = function(arglist__5167) { var more = cljs.core.seq(arglist__5167); return log__delegate(more); }; log.cljs$core$IFn$_invoke$arity$variadic = log__delegate; return log; }(); calabash_script.log.logTree = function logTree(el) { return el.logElementTree(); }; goog.provide("calabash_script.convert"); goog.require("cljs.core"); calabash_script.convert.point__GT_map = function point__GT_map(rect) { var temp__4124__auto__ = rect.origin; if (cljs.core.truth_(temp__4124__auto__)) { var point = temp__4124__auto__; return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), point.x, new cljs.core.Keyword(null, "y", "y", -1757859776), point.y], null); } else { return cljs.core.PersistentArrayMap.EMPTY; } }; calabash_script.convert.size__GT_map = function size__GT_map(rect) { var temp__4124__auto__ = rect.size; if (cljs.core.truth_(temp__4124__auto__)) { var size = temp__4124__auto__; return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "width", "width", -384071477), size.width, new cljs.core.Keyword(null, "height", "height", 1025178622), size.height], null); } else { return cljs.core.PersistentArrayMap.EMPTY; } }; calabash_script.convert.uia__GT_map = function uia__GT_map(uia_el) { var rect = function() { var temp__4124__auto__ = uia_el.rect(); if (cljs.core.truth_(temp__4124__auto__)) { var rect = temp__4124__auto__; return cljs.core.merge.call(null, calabash_script.convert.point__GT_map.call(null, rect), calabash_script.convert.size__GT_map.call(null, rect)); } else { return cljs.core.PersistentArrayMap.EMPTY; } }(); var hp = function() { var temp__4124__auto__ = uia_el.hitpoint(); if (cljs.core.truth_(temp__4124__auto__)) { var point = temp__4124__auto__; return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), point.x, new cljs.core.Keyword(null, "y", "y", -1757859776), point.y], null); } else { return cljs.core.PersistentArrayMap.EMPTY; } }(); return new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null, "el", "el", -1618201118), uia_el, new cljs.core.Keyword(null, "hit-point", "hit-point", -2109832655), hp, new cljs.core.Keyword(null, "rect", "rect", -108902628), rect, new cljs.core.Keyword(null, "name", "name", 1843675177), cljs.core.truth_(uia_el.name) ? uia_el.name() : null, new cljs.core.Keyword(null, "label", "label", 1718410804), cljs.core.truth_(uia_el.label) ? uia_el.label() : null], null); }; goog.provide("calabash_script.uia"); goog.require("cljs.core"); calabash_script.uia.classes = function() { var clz_map = cljs.core.into.call(null, cljs.core.PersistentArrayMap.EMPTY, cljs.core.PersistentVector.fromArray([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "actionSheet", "actionSheet", 378123368), typeof UIAActionSheet != "undefined" && UIAActionSheet], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "activityIndicator", "activityIndicator", 746558731), typeof UIAActivityIndicator != "undefined" && UIAActivityIndicator], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "activityView", "activityView", 1328183938), typeof UIAActivityView != "undefined" && UIAActivityView], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "alert", "alert", -571950580), typeof UIAAlert != "undefined" && UIAAlert], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "application", "application", 551185447), typeof UIAApplication != "undefined" && UIAApplication], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "button", "button", 1456579943), typeof UIAButton != "undefined" && UIAButton], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "collectionView", "collectionView", -1733789860), typeof UIACollectionView != "undefined" && UIACollectionView], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "editingMenu", "editingMenu", 748948756), typeof UIAEditingMenu != "undefined" && UIAEditingMenu], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "element", "element", 1974019749), typeof UIAElement != "undefined" && UIAElement], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "elementArray", "elementArray", -1008212442), typeof UIAElementArray != "undefined" && UIAElementArray], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "host", "host", -1558485167), typeof UIAHost != "undefined" && UIAHost], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "key", "key", -1516042587), typeof UIAKey != "undefined" && UIAKey], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "keyboard", "keyboard", -617357087), typeof UIAKeyboard != "undefined" && UIAKeyboard], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "link", "link", -1769163468), typeof UIALink != "undefined" && UIALink], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "logger", "logger", -220675947), typeof UIALogger != "undefined" && UIALogger], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "navigationBar", "navigationBar", 1149411523), typeof UIANavigationBar != "undefined" && UIANavigationBar], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "pageIndicator", "pageIndicator", -378657018), typeof UIAPageIndicator != "undefined" && UIAPageIndicator], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "picker", "picker", -659389603), typeof UIAPicker != "undefined" && UIAPicker], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "pickerWheel", "pickerWheel", -1671462083), typeof UIAPickerWheel != "undefined" && UIAPickerWheel], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "popover", "popover", -1809582136), typeof UIAPopover != "undefined" && UIAPopover], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "progressIndicator", "progressIndicator", 2062500300), typeof UIAProgressIndicator != "undefined" && UIAProgressIndicator], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "scrollView", "scrollView", -348983689), typeof UIAScrollView != "undefined" && UIAScrollView], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "searchBar", "searchBar", -740001193), typeof UIASearchBar != "undefined" && UIASearchBar], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "secureTextField", "secureTextField", -285504369), typeof UIASecureTextField != "undefined" && UIASecureTextField], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "segmentedControl", "segmentedControl", -71623097), typeof UIASegmentedControl != "undefined" && UIASegmentedControl], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "slider", "slider", -472668865), typeof UIASlider != "undefined" && UIASlider], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "staticText", "staticText", -1611085920), typeof UIAStaticText != "undefined" && UIAStaticText], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "statusBar", "statusBar", -1701424242), typeof UIAStatusBar != "undefined" && UIAStatusBar], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "switch", "switch", 71881310), typeof UIASwitch != "undefined" && UIASwitch], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "tabBar", "tabBar", 1577101600), typeof UIATabBar != "undefined" && UIATabBar], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "tableCell", "tableCell", 906613416), typeof UIATableCell != "undefined" && UIATableCell], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "tableGroup", "tableGroup", -908539678), typeof UIATableGroup != "undefined" && UIATableGroup], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "tableView", "tableView", 1883850591), typeof UIATableView != "undefined" && UIATableView], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "target", "target", 253001721), typeof UIATarget != "undefined" && UIATarget], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "textField", "textField", -585123195), typeof UIATextField != "undefined" && UIATextField], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "textView", "textView", -1135056028), typeof UIATextView != "undefined" && UIATextView], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "toolbar", "toolbar", -1172789065), typeof UIAToolbar != "undefined" && UIAToolbar], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "webView", "webView", -852934268), typeof UIAWebView != "undefined" && UIAWebView], null), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "window", "window", 724519534), typeof UIAWindow != "undefined" && UIAWindow], null)], true)); return cljs.core.assoc.call(null, clz_map, new cljs.core.Keyword(null, "view", "view", 1247994814), Object); }(); goog.provide("calabash_script.query"); goog.require("cljs.core"); goog.require("calabash_script.utils"); goog.require("calabash_script.utils"); goog.require("calabash_script.convert"); goog.require("calabash_script.convert"); goog.require("calabash_script.uia"); goog.require("calabash_script.uia"); goog.require("calabash_script.log"); goog.require("calabash_script.log"); calabash_script.query.dir_QMARK_ = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null, "parent", "parent", -878878779), null, new cljs.core.Keyword(null, "descendant", "descendant", 188254602), null, new cljs.core.Keyword(null, "child", "child", 623967545), null], null), null); calabash_script.query.desc = function desc(el, acc) { var temp__4124__auto__ = cljs.core.seq.call(null, el); if (temp__4124__auto__) { var els = temp__4124__auto__; var children = cljs.core.mapcat.call(null, function(els, temp__4124__auto__) { return function(p1__5168_SHARP_) { return desc.call(null, p1__5168_SHARP_, cljs.core.PersistentVector.EMPTY); }; }(els, temp__4124__auto__), els); return cljs.core.reduce.call(null, cljs.core.conj, acc, cljs.core.cons.call(null, el, children)); } else { return cljs.core.conj.call(null, acc, el); } }; calabash_script.query.dir_seq = function() { var method_table__4410__auto__ = cljs.core.atom.call(null, cljs.core.PersistentArrayMap.EMPTY); var prefer_table__4411__auto__ = cljs.core.atom.call(null, cljs.core.PersistentArrayMap.EMPTY); var method_cache__4412__auto__ = cljs.core.atom.call(null, cljs.core.PersistentArrayMap.EMPTY); var cached_hierarchy__4413__auto__ = cljs.core.atom.call(null, cljs.core.PersistentArrayMap.EMPTY); var hierarchy__4414__auto__ = cljs.core.get.call(null, cljs.core.PersistentArrayMap.EMPTY, new cljs.core.Keyword(null, "hierarchy", "hierarchy", -1053470341), cljs.core.get_global_hierarchy.call(null)); return new cljs.core.MultiFn("dir-seq", function(method_table__4410__auto__, prefer_table__4411__auto__, method_cache__4412__auto__, cached_hierarchy__4413__auto__, hierarchy__4414__auto__) { return function(dir, _) { return dir; }; }(method_table__4410__auto__, prefer_table__4411__auto__, method_cache__4412__auto__, cached_hierarchy__4413__auto__, hierarchy__4414__auto__), new cljs.core.Keyword(null, "default", "default", -1987822328), hierarchy__4414__auto__, method_table__4410__auto__, prefer_table__4411__auto__, method_cache__4412__auto__, cached_hierarchy__4413__auto__); }(); cljs.core._add_method.call(null, calabash_script.query.dir_seq, new cljs.core.Keyword(null, "parent", "parent", -878878779), function(_, coll) { var no_parent_QMARK_ = function(el) { return cljs.core.not.call(null, el.parent) || el.parent() == null || el.parent() instanceof UIAApplication; }; var parents = function(no_parent_QMARK_) { return function(el, acc) { while (true) { if (no_parent_QMARK_.call(null, el)) { return acc; } else { var p = el.parent(); var G__5169 = p; var G__5170 = cljs.core.conj.call(null, acc, p); el = G__5169; acc = G__5170; continue; } break; } }; }(no_parent_QMARK_); return cljs.core.mapcat.call(null, function(no_parent_QMARK_, parents) { return function(x) { return parents.call(null, x, cljs.core.PersistentVector.EMPTY); }; }(no_parent_QMARK_, parents), coll); }); cljs.core._add_method.call(null, calabash_script.query.dir_seq, new cljs.core.Keyword(null, "child", "child", 623967545), function(_, coll) { return cljs.core.mapcat.call(null, cljs.core.seq, coll); }); cljs.core._add_method.call(null, calabash_script.query.dir_seq, new cljs.core.Keyword(null, "descendant", "descendant", 188254602), function(_, coll) { return cljs.core.mapcat.call(null, function(p1__5171_SHARP_) { return calabash_script.query.desc.call(null, p1__5171_SHARP_, cljs.core.PersistentVector.EMPTY); }, coll); }); calabash_script.query.valid_QMARK_ = function valid_QMARK_(el) { return!(el == null || el instanceof UIAElementNil); }; calabash_script.query.filter_by_type = function filter_by_type(type, coll) { var uia_class = calabash_script.uia.classes.call(null, type); return cljs.core.filter.call(null, function(uia_class) { return function(x) { return calabash_script.query.valid_QMARK_.call(null, x) && x instanceof uia_class; }; }(uia_class), coll); }; calabash_script.query.matches_QMARK_ = function matches_QMARK_(sel, obj, val) { if (sel instanceof cljs.core.Keyword || typeof sel === "string") { var kw_sel = cljs.core.keyword.call(null, sel); if (cljs.core._EQ_.call(null, new cljs.core.Keyword(null, "marked", "marked", 1403026280), kw_sel)) { var or__3544__auto__ = cljs.core._EQ_.call(null, obj.name(), val); if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.core._EQ_.call(null, obj.label(), val); if (or__3544__auto____$1) { return or__3544__auto____$1; } else { var and__3532__auto__ = obj.value; if (cljs.core.truth_(and__3532__auto__)) { return cljs.core._EQ_.call(null, obj.value(), val); } else { return and__3532__auto__; } } } } else { var res = obj.withValueForKey(val, cljs.core.name.call(null, kw_sel)); return calabash_script.query.valid_QMARK_.call(null, res); } } else { if (cljs.core.vector_QMARK_.call(null, sel)) { var G__5173 = cljs.core.count.call(null, sel); switch(G__5173) { case 2: var key = cljs.core.name.call(null, cljs.core.first.call(null, sel)); var rel = cljs.core.name.call(null, cljs.core.second.call(null, sel)); return calabash_script.query.valid_QMARK_.call(null, obj.withPredicate("" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(key) + " " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(rel) + " " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(val))); break; default: return null; } } else { return null; } } }; calabash_script.query.query_map = function query_map(q, coll, dir) { var filter_fn = function(x) { return cljs.core.every_QMARK_.call(null, cljs.core.true_QMARK_, cljs.core.map.call(null, function(p__5177) { var vec__5178 = p__5177; var sel = cljs.core.nth.call(null, vec__5178, 0, null); var val = cljs.core.nth.call(null, vec__5178, 1, null); return calabash_script.query.matches_QMARK_.call(null, sel, x, val); }, q)); }; return cljs.core.filter.call(null, filter_fn, coll); }; calabash_script.query.IQuery = function() { var obj5180 = {}; return obj5180; }(); calabash_script.query._query = function _query(q, coll, dir) { if (function() { var and__3532__auto__ = q; if (and__3532__auto__) { return q.calabash_script$query$IQuery$_query$arity$3; } else { return and__3532__auto__; } }()) { return q.calabash_script$query$IQuery$_query$arity$3(q, coll, dir); } else { var x__4171__auto__ = q == null ? null : q; return function() { var or__3544__auto__ = calabash_script.query._query[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = calabash_script.query._query["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "IQuery.-query", q); } } }().call(null, q, coll, dir); } }; cljs.core.PersistentHashMap.prototype.calabash_script$query$IQuery$ = true; cljs.core.PersistentHashMap.prototype.calabash_script$query$IQuery$_query$arity$3 = function(q, coll, dir) { var q__$1 = this; return calabash_script.query.query_map.call(null, q__$1, coll, dir); }; cljs.core.PersistentArrayMap.prototype.calabash_script$query$IQuery$ = true; cljs.core.PersistentArrayMap.prototype.calabash_script$query$IQuery$_query$arity$3 = function(q, coll, dir) { var q__$1 = this; return calabash_script.query.query_map.call(null, q__$1, coll, dir); }; cljs.core.ObjMap.prototype.calabash_script$query$IQuery$ = true; cljs.core.ObjMap.prototype.calabash_script$query$IQuery$_query$arity$3 = function(q, coll, dir) { var q__$1 = this; return calabash_script.query.query_map.call(null, q__$1, coll, dir); }; cljs.core.PersistentVector.prototype.calabash_script$query$IQuery$ = true; cljs.core.PersistentVector.prototype.calabash_script$query$IQuery$_query$arity$3 = function(q, coll, dir) { var q__$1 = this; return cljs.core.first.call(null, cljs.core.reduce.call(null, function(q__$1) { return function(p__5181, next) { var vec__5182 = p__5181; var coll__$1 = cljs.core.nth.call(null, vec__5182, 0, null); var dir__$1 = cljs.core.nth.call(null, vec__5182, 1, null); if (cljs.core.truth_(calabash_script.query.dir_QMARK_.call(null, next))) { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [coll__$1, next], null); } else { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [calabash_script.query._query.call(null, next, coll__$1, dir__$1), dir__$1], null); } }; }(q__$1), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [coll, dir], null), q__$1)); }; String.prototype.calabash_script$query$IQuery$ = true; String.prototype.calabash_script$query$IQuery$_query$arity$3 = function(kw, coll, dir) { var kw__$1 = this; return calabash_script.query.filter_by_type.call(null, cljs.core.keyword.call(null, kw__$1), calabash_script.query.dir_seq.call(null, dir, coll)); }; cljs.core.Symbol.prototype.calabash_script$query$IQuery$ = true; cljs.core.Symbol.prototype.calabash_script$query$IQuery$_query$arity$3 = function(s, coll, dir) { var s__$1 = this; return calabash_script.query._query.call(null, cljs.core.keyword.call(null, s__$1), coll, dir); }; cljs.core.Keyword.prototype.calabash_script$query$IQuery$ = true; cljs.core.Keyword.prototype.calabash_script$query$IQuery$_query$arity$3 = function(kw, coll, dir) { var kw__$1 = this; return calabash_script.query.filter_by_type.call(null, kw__$1, calabash_script.query.dir_seq.call(null, dir, coll)); }; goog.provide("calabash_script.tests"); goog.require("cljs.core"); goog.require("calabash_script.utils"); goog.require("calabash_script.utils"); goog.require("calabash_script.log"); goog.require("calabash_script.log"); calabash_script.tests.fail = function() { var fail__delegate = function(reason, kwargs) { var map__5184 = cljs.core.apply.call(null, cljs.core.hash_map, kwargs); var map__5184__$1 = cljs.core.seq_QMARK_.call(null, map__5184) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5184) : map__5184; var screenshot = cljs.core.get.call(null, map__5184__$1, new cljs.core.Keyword(null, "screenshot", "screenshot", 697978558), "screenshot"); throw new Error(reason); }; var fail = function(reason, var_args) { var kwargs = null; if (arguments.length > 1) { kwargs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return fail__delegate.call(this, reason, kwargs); }; fail.cljs$lang$maxFixedArity = 1; fail.cljs$lang$applyTo = function(arglist__5185) { var reason = cljs.core.first(arglist__5185); var kwargs = cljs.core.rest(arglist__5185); return fail__delegate(reason, kwargs); }; fail.cljs$core$IFn$_invoke$arity$variadic = fail__delegate; return fail; }(); calabash_script.tests.fail_if = function() { var fail_if__delegate = function(condition, kwargs) { var map__5187 = cljs.core.apply.call(null, cljs.core.hash_map, kwargs); var map__5187__$1 = cljs.core.seq_QMARK_.call(null, map__5187) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5187) : map__5187; var screenshot = cljs.core.get.call(null, map__5187__$1, new cljs.core.Keyword(null, "screenshot", "screenshot", 697978558), "screenshot"); var message = cljs.core.get.call(null, map__5187__$1, new cljs.core.Keyword(null, "message", "message", -406056002), "Failed"); if (cljs.core.truth_(condition)) { return calabash_script.tests.fail.call(null, message, screenshot); } else { return null; } }; var fail_if = function(condition, var_args) { var kwargs = null; if (arguments.length > 1) { kwargs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return fail_if__delegate.call(this, condition, kwargs); }; fail_if.cljs$lang$maxFixedArity = 1; fail_if.cljs$lang$applyTo = function(arglist__5188) { var condition = cljs.core.first(arglist__5188); var kwargs = cljs.core.rest(arglist__5188); return fail_if__delegate(condition, kwargs); }; fail_if.cljs$core$IFn$_invoke$arity$variadic = fail_if__delegate; return fail_if; }(); calabash_script.tests.fail_if_not = function() { var fail_if_not__delegate = function(x, kwargs) { return cljs.core.apply.call(null, calabash_script.tests.fail_if, cljs.core.not.call(null, x), kwargs); }; var fail_if_not = function(x, var_args) { var kwargs = null; if (arguments.length > 1) { kwargs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return fail_if_not__delegate.call(this, x, kwargs); }; fail_if_not.cljs$lang$maxFixedArity = 1; fail_if_not.cljs$lang$applyTo = function(arglist__5189) { var x = cljs.core.first(arglist__5189); var kwargs = cljs.core.rest(arglist__5189); return fail_if_not__delegate(x, kwargs); }; fail_if_not.cljs$core$IFn$_invoke$arity$variadic = fail_if_not__delegate; return fail_if_not; }(); calabash_script.tests._STAR_uia_tests_STAR_ = cljs.core.atom.call(null, cljs.core.PersistentArrayMap.EMPTY); calabash_script.tests.define_uia_test = function define_uia_test(doc, test) { return cljs.core.swap_BANG_.call(null, calabash_script.tests._STAR_uia_tests_STAR_, cljs.core.assoc, doc, test); }; calabash_script.tests.run_all_BANG_ = function run_all_BANG_() { calabash_script.log.log.call(null, "Running tests: ", cljs.core.keys.call(null, cljs.core.deref.call(null, calabash_script.tests._STAR_uia_tests_STAR_))); var seq__5198_5206 = cljs.core.seq.call(null, cljs.core.deref.call(null, calabash_script.tests._STAR_uia_tests_STAR_)); var chunk__5199_5207 = null; var count__5200_5208 = 0; var i__5201_5209 = 0; while (true) { if (i__5201_5209 < count__5200_5208) { var vec__5202_5210 = cljs.core._nth.call(null, chunk__5199_5207, i__5201_5209); var name_5211 = cljs.core.nth.call(null, vec__5202_5210, 0, null); var test_5212 = cljs.core.nth.call(null, vec__5202_5210, 1, null); UIALogger.logStart(name_5211); try { test_5212.call(null); cljs.core.swap_BANG_.call(null, calabash_script.tests._STAR_uia_tests_STAR_, cljs.core.assoc, name_5211, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "result", "result", 1415092211), new cljs.core.Keyword(null, "pass", "pass", 1574159993)], null)); UIALogger.logPass(name_5211); } catch (e5203) { if (e5203 instanceof Object) { var e_5213 = e5203; cljs.core.swap_BANG_.call(null, calabash_script.tests._STAR_uia_tests_STAR_, cljs.core.assoc, name_5211, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "result", "result", 1415092211), new cljs.core.Keyword(null, "fail", "fail", 1706214930), new cljs.core.Keyword(null, "message", "message", -406056002), "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(e_5213)], null)); UIALogger.logFail(name_5211); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw e5203; } else { } } } var G__5214 = seq__5198_5206; var G__5215 = chunk__5199_5207; var G__5216 = count__5200_5208; var G__5217 = i__5201_5209 + 1; seq__5198_5206 = G__5214; chunk__5199_5207 = G__5215; count__5200_5208 = G__5216; i__5201_5209 = G__5217; continue; } else { var temp__4126__auto___5218 = cljs.core.seq.call(null, seq__5198_5206); if (temp__4126__auto___5218) { var seq__5198_5219__$1 = temp__4126__auto___5218; if (cljs.core.chunked_seq_QMARK_.call(null, seq__5198_5219__$1)) { var c__4300__auto___5220 = cljs.core.chunk_first.call(null, seq__5198_5219__$1); var G__5221 = cljs.core.chunk_rest.call(null, seq__5198_5219__$1); var G__5222 = c__4300__auto___5220; var G__5223 = cljs.core.count.call(null, c__4300__auto___5220); var G__5224 = 0; seq__5198_5206 = G__5221; chunk__5199_5207 = G__5222; count__5200_5208 = G__5223; i__5201_5209 = G__5224; continue; } else { var vec__5204_5225 = cljs.core.first.call(null, seq__5198_5219__$1); var name_5226 = cljs.core.nth.call(null, vec__5204_5225, 0, null); var test_5227 = cljs.core.nth.call(null, vec__5204_5225, 1, null); UIALogger.logStart(name_5226); try { test_5227.call(null); cljs.core.swap_BANG_.call(null, calabash_script.tests._STAR_uia_tests_STAR_, cljs.core.assoc, name_5226, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "result", "result", 1415092211), new cljs.core.Keyword(null, "pass", "pass", 1574159993)], null)); UIALogger.logPass(name_5226); } catch (e5205) { if (e5205 instanceof Object) { var e_5228 = e5205; cljs.core.swap_BANG_.call(null, calabash_script.tests._STAR_uia_tests_STAR_, cljs.core.assoc, name_5226, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "result", "result", 1415092211), new cljs.core.Keyword(null, "fail", "fail", 1706214930), new cljs.core.Keyword(null, "message", "message", -406056002), "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(e_5228)], null)); UIALogger.logFail(name_5226); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw e5205; } else { } } } var G__5229 = cljs.core.next.call(null, seq__5198_5219__$1); var G__5230 = null; var G__5231 = 0; var G__5232 = 0; seq__5198_5206 = G__5229; chunk__5199_5207 = G__5230; count__5200_5208 = G__5231; i__5201_5209 = G__5232; continue; } } else { } } break; } return calabash_script.log.log.call(null, cljs.core.deref.call(null, calabash_script.tests._STAR_uia_tests_STAR_)); }; goog.provide("calabash_script.core"); goog.require("cljs.core"); goog.require("calabash_script.query"); goog.require("calabash_script.tests"); goog.require("calabash_script.gestures"); goog.require("calabash_script.log"); goog.require("calabash_script.log"); goog.require("calabash_script.uia"); goog.require("calabash_script.query"); goog.require("calabash_script.convert"); goog.require("calabash_script.tests"); goog.require("calabash_script.convert"); goog.require("calabash_script.gestures"); goog.require("calabash_script.utils"); goog.require("calabash_script.uia"); goog.require("calabash_script.utils"); calabash_script.utils.target.call(null).setTimeout(0); cljs.core._STAR_print_fn_STAR_ = function() { var G__5014__delegate = function(args) { return calabash_script.log.log.call(null, cljs.core.apply.call(null, cljs.core.str, args)); }; var G__5014 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5014__delegate.call(this, args); }; G__5014.cljs$lang$maxFixedArity = 0; G__5014.cljs$lang$applyTo = function(arglist__5015) { var args = cljs.core.seq(arglist__5015); return G__5014__delegate(args); }; G__5014.cljs$core$IFn$_invoke$arity$variadic = G__5014__delegate; return G__5014; }(); UIAElement.prototype.cljs$core$ISeqable$ = true; UIAElement.prototype.cljs$core$ISeqable$_seq$arity$1 = function(this$) { var this$__$1 = this; return cljs.core.seq.call(null, this$__$1.elements().toArray()); }; UIAKey.prototype.cljs$core$ISeqable$ = true; UIAKey.prototype.cljs$core$ISeqable$_seq$arity$1 = function(this$) { var this$__$1 = this; return null; }; calabash_script.core.sleep = function sleep(x) { return calabash_script.utils.target.call(null).delay(x); }; calabash_script.core.duration_exceeds_QMARK_ = function duration_exceeds_QMARK_(start, max) { var end = new Date; var dur_sec = (end - start) / 1E3; return dur_sec >= max; }; calabash_script.core.wait_for = function wait_for(p__5016, pred) { var map__5018 = p__5016; var map__5018__$1 = cljs.core.seq_QMARK_.call(null, map__5018) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5018) : map__5018; var options = map__5018__$1; var screenshot = cljs.core.get.call(null, map__5018__$1, new cljs.core.Keyword(null, "screenshot", "screenshot", 697978558), false); var message = cljs.core.get.call(null, map__5018__$1, new cljs.core.Keyword(null, "message", "message", -406056002), "Timed out waiting..."); var post_timeout = cljs.core.get.call(null, map__5018__$1, new cljs.core.Keyword(null, "post-timeout", "post-timeout", -1900055223), 0); var retry_frequency = cljs.core.get.call(null, map__5018__$1, new cljs.core.Keyword(null, "retry-frequency", "retry-frequency", 512696345), .2); var timeout = cljs.core.get.call(null, map__5018__$1, new cljs.core.Keyword(null, "timeout", "timeout", -318625318), 30); var start = new Date; var actions = cljs.core.repeatedly.call(null, function(start, map__5018, map__5018__$1, options, screenshot, message, post_timeout, retry_frequency, timeout) { return function() { var res = pred.call(null); if (cljs.core.truth_(res)) { } else { calabash_script.core.sleep.call(null, retry_frequency); } return res; }; }(start, map__5018, map__5018__$1, options, screenshot, message, post_timeout, retry_frequency, timeout)); var results = cljs.core.filter.call(null, function(start, actions, map__5018, map__5018__$1, options, screenshot, message, post_timeout, retry_frequency, timeout) { return function(res) { if (calabash_script.core.duration_exceeds_QMARK_.call(null, start, timeout)) { calabash_script.tests.fail.call(null, message, function() { var and__3532__auto__ = screenshot; if (cljs.core.truth_(and__3532__auto__)) { return "timeout"; } else { return and__3532__auto__; } }()); } else { } return res; }; }(start, actions, map__5018, map__5018__$1, options, screenshot, message, post_timeout, retry_frequency, timeout), actions); var result = cljs.core.first.call(null, results); if (post_timeout > 0) { calabash_script.core.sleep.call(null, post_timeout); } else { } return result; }; calabash_script.core.query = function() { var query = null; var query__1 = function(q) { return query.call(null, q, cljs.core._conj.call(null, cljs.core.List.EMPTY, calabash_script.utils.window.call(null))); }; var query__2 = function(q, coll) { return query.call(null, q, coll, new cljs.core.Keyword(null, "descendant", "descendant", 188254602)); }; var query__3 = function(q, coll, dir) { return cljs.core.map.call(null, calabash_script.convert.uia__GT_map, calabash_script.query._query.call(null, q, coll, dir)); }; query = function(q, coll, dir) { switch(arguments.length) { case 1: return query__1.call(this, q); case 2: return query__2.call(this, q, coll); case 3: return query__3.call(this, q, coll, dir); } throw new Error("Invalid arity: " + arguments.length); }; query.cljs$core$IFn$_invoke$arity$1 = query__1; query.cljs$core$IFn$_invoke$arity$2 = query__2; query.cljs$core$IFn$_invoke$arity$3 = query__3; return query; }(); calabash_script.core.query_el = function() { var query_el__delegate = function(args) { return cljs.core.map.call(null, new cljs.core.Keyword(null, "el", "el", -1618201118), cljs.core.apply.call(null, calabash_script.core.query, args)); }; var query_el = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return query_el__delegate.call(this, args); }; query_el.cljs$lang$maxFixedArity = 0; query_el.cljs$lang$applyTo = function(arglist__5019) { var args = cljs.core.seq(arglist__5019); return query_el__delegate(args); }; query_el.cljs$core$IFn$_invoke$arity$variadic = query_el__delegate; return query_el; }(); calabash_script.core.log_query = function() { var log_query__delegate = function(args) { return calabash_script.log.log.call(null, cljs.core.apply.call(null, calabash_script.core.query, args)); }; var log_query = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return log_query__delegate.call(this, args); }; log_query.cljs$lang$maxFixedArity = 0; log_query.cljs$lang$applyTo = function(arglist__5020) { var args = cljs.core.seq(arglist__5020); return log_query__delegate(args); }; log_query.cljs$core$IFn$_invoke$arity$variadic = log_query__delegate; return log_query; }(); calabash_script.core.log_tree_query = function() { var log_tree_query__delegate = function(args) { var temp__4126__auto__ = cljs.core.seq.call(null, cljs.core.apply.call(null, calabash_script.core.query_el, args)); if (temp__4126__auto__) { var res = temp__4126__auto__; return calabash_script.log.logTree.call(null, cljs.core.first.call(null, res)); } else { return null; } }; var log_tree_query = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return log_tree_query__delegate.call(this, args); }; log_tree_query.cljs$lang$maxFixedArity = 0; log_tree_query.cljs$lang$applyTo = function(arglist__5021) { var args = cljs.core.seq(arglist__5021); return log_tree_query__delegate(args); }; log_tree_query.cljs$core$IFn$_invoke$arity$variadic = log_tree_query__delegate; return log_tree_query; }(); calabash_script.core.log_tree_mark = function log_tree_mark(mark) { var temp__4126__auto__ = cljs.core.seq.call(null, calabash_script.core.query_el.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "view", "view", 1247994814), new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "marked", "marked", 1403026280), mark], null)], null))); if (temp__4126__auto__) { var res = temp__4126__auto__; return calabash_script.log.logTree.call(null, cljs.core.first.call(null, res)); } else { return null; } }; calabash_script.core.wait_for_elements_ready = function() { var wait_for_elements_ready__delegate = function(p__5022, args) { var map__5024 = p__5022; var map__5024__$1 = cljs.core.seq_QMARK_.call(null, map__5024) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5024) : map__5024; var wait_opts = map__5024__$1; var message = cljs.core.get.call(null, map__5024__$1, new cljs.core.Keyword(null, "message", "message", -406056002), "Timed out waiting for " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(args)); return calabash_script.core.wait_for.call(null, cljs.core.merge.call(null, wait_opts, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "message", "message", -406056002), message], null)), function(map__5024, map__5024__$1, wait_opts, message) { return function() { var temp__4126__auto__ = cljs.core.seq.call(null, cljs.core.apply.call(null, calabash_script.core.query_el, args)); if (temp__4126__auto__) { var els = temp__4126__auto__; return cljs.core.every_QMARK_.call(null, function(els, temp__4126__auto__, map__5024, map__5024__$1, wait_opts, message) { return function(el) { var and__3532__auto__ = el.isVisible(); if (cljs.core.truth_(and__3532__auto__)) { return el.isValid(); } else { return and__3532__auto__; } }; }(els, temp__4126__auto__, map__5024, map__5024__$1, wait_opts, message), els); } else { return null; } }; }(map__5024, map__5024__$1, wait_opts, message)); }; var wait_for_elements_ready = function(p__5022, var_args) { var args = null; if (arguments.length > 1) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return wait_for_elements_ready__delegate.call(this, p__5022, args); }; wait_for_elements_ready.cljs$lang$maxFixedArity = 1; wait_for_elements_ready.cljs$lang$applyTo = function(arglist__5025) { var p__5022 = cljs.core.first(arglist__5025); var args = cljs.core.rest(arglist__5025); return wait_for_elements_ready__delegate(p__5022, args); }; wait_for_elements_ready.cljs$core$IFn$_invoke$arity$variadic = wait_for_elements_ready__delegate; return wait_for_elements_ready; }(); calabash_script.core.wait_for_mark_ready = function wait_for_mark_ready(p__5026, mark) { var map__5028 = p__5026; var map__5028__$1 = cljs.core.seq_QMARK_.call(null, map__5028) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5028) : map__5028; var wait_opts = map__5028__$1; var message = cljs.core.get.call(null, map__5028__$1, new cljs.core.Keyword(null, "message", "message", -406056002), "Timed out waiting for " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(mark)); return calabash_script.core.wait_for_elements_ready.call(null, cljs.core.merge.call(null, wait_opts, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "message", "message", -406056002), message], null)), new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "view", "view", 1247994814), new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "marked", "marked", 1403026280), mark], null)], null)); }; calabash_script.core.perform_on = function() { var perform_on__delegate = function(action, args) { var temp__4124__auto__ = cljs.core.seq.call(null, cljs.core.apply.call(null, calabash_script.core.query_el, args)); if (temp__4124__auto__) { var res = temp__4124__auto__; return action.call(null, res); } else { return calabash_script.tests.fail.call(null, cljs.core.apply.call(null, cljs.core.str, "No results for query ", args)); } }; var perform_on = function(action, var_args) { var args = null; if (arguments.length > 1) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return perform_on__delegate.call(this, action, args); }; perform_on.cljs$lang$maxFixedArity = 1; perform_on.cljs$lang$applyTo = function(arglist__5029) { var action = cljs.core.first(arglist__5029); var args = cljs.core.rest(arglist__5029); return perform_on__delegate(action, args); }; perform_on.cljs$core$IFn$_invoke$arity$variadic = perform_on__delegate; return perform_on; }(); calabash_script.core.perform_on_first = function() { var perform_on_first__delegate = function(action, args) { return cljs.core.apply.call(null, calabash_script.core.perform_on, function(els) { return action.call(null, cljs.core.first.call(null, els)); }, args); }; var perform_on_first = function(action, var_args) { var args = null; if (arguments.length > 1) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return perform_on_first__delegate.call(this, action, args); }; perform_on_first.cljs$lang$maxFixedArity = 1; perform_on_first.cljs$lang$applyTo = function(arglist__5030) { var action = cljs.core.first(arglist__5030); var args = cljs.core.rest(arglist__5030); return perform_on_first__delegate(action, args); }; perform_on_first.cljs$core$IFn$_invoke$arity$variadic = perform_on_first__delegate; return perform_on_first; }(); calabash_script.core.tap = function() { var tap__delegate = function(args) { return cljs.core.apply.call(null, calabash_script.core.perform_on_first, function(p1__5031_SHARP_) { return p1__5031_SHARP_.tap(); }, args); }; var tap = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return tap__delegate.call(this, args); }; tap.cljs$lang$maxFixedArity = 0; tap.cljs$lang$applyTo = function(arglist__5032) { var args = cljs.core.seq(arglist__5032); return tap__delegate(args); }; tap.cljs$core$IFn$_invoke$arity$variadic = tap__delegate; return tap; }(); calabash_script.core.double_tap = function() { var double_tap__delegate = function(args) { return cljs.core.apply.call(null, calabash_script.core.perform_on_first, function(p1__5033_SHARP_) { return p1__5033_SHARP_.doubleTap(); }, args); }; var double_tap = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return double_tap__delegate.call(this, args); }; double_tap.cljs$lang$maxFixedArity = 0; double_tap.cljs$lang$applyTo = function(arglist__5034) { var args = cljs.core.seq(arglist__5034); return double_tap__delegate(args); }; double_tap.cljs$core$IFn$_invoke$arity$variadic = double_tap__delegate; return double_tap; }(); calabash_script.core.double_tap_offset = function double_tap_offset(offset) { return calabash_script.utils.target.call(null).doubleTap(calabash_script.utils.uia_point.call(null, offset)); }; calabash_script.core.two_finger_tap = function() { var two_finger_tap__delegate = function(args) { return cljs.core.apply.call(null, calabash_script.core.perform_on_first, function(p1__5035_SHARP_) { return p1__5035_SHARP_.twoFingerTap(); }, args); }; var two_finger_tap = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return two_finger_tap__delegate.call(this, args); }; two_finger_tap.cljs$lang$maxFixedArity = 0; two_finger_tap.cljs$lang$applyTo = function(arglist__5036) { var args = cljs.core.seq(arglist__5036); return two_finger_tap__delegate(args); }; two_finger_tap.cljs$core$IFn$_invoke$arity$variadic = two_finger_tap__delegate; return two_finger_tap; }(); calabash_script.core.two_finger_tap_offset = function two_finger_tap_offset(offset) { return calabash_script.utils.target.call(null).twoFingerTap(calabash_script.utils.uia_point.call(null, offset)); }; calabash_script.core.flick_offset = function flick_offset(from, to) { return calabash_script.utils.target.call(null).flickFromTo(calabash_script.utils.uia_point.call(null, from), calabash_script.utils.uia_point.call(null, to)); }; calabash_script.core.pan = function() { var pan__delegate = function(src_query, tgt_query, kwargs) { var map__5038 = kwargs; var map__5038__$1 = cljs.core.seq_QMARK_.call(null, map__5038) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5038) : map__5038; var duration = cljs.core.get.call(null, map__5038__$1, new cljs.core.Keyword(null, "duration", "duration", 1444101068), 1); var src = cljs.core.first.call(null, cljs.core.seq.call(null, calabash_script.core.query.call(null, src_query))); var tgt = cljs.core.first.call(null, cljs.core.seq.call(null, calabash_script.core.query.call(null, tgt_query))); calabash_script.tests.fail_if_not.call(null, function() { var and__3532__auto__ = src; if (cljs.core.truth_(and__3532__auto__)) { return tgt; } else { return and__3532__auto__; } }(), cljs.core.apply.call(null, cljs.core.str, "Unable to find results for both of ", src_query, tgt_query)); return calabash_script.utils.target.call(null).dragFromToForDuration(cljs.core.clj__GT_js.call(null, (new cljs.core.Keyword(null, "hit-point", "hit-point", -2109832655)).cljs$core$IFn$_invoke$arity$1(src)), cljs.core.clj__GT_js.call(null, (new cljs.core.Keyword(null, "hit-point", "hit-point", -2109832655)).cljs$core$IFn$_invoke$arity$1(tgt)), duration); }; var pan = function(src_query, tgt_query, var_args) { var kwargs = null; if (arguments.length > 2) { kwargs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return pan__delegate.call(this, src_query, tgt_query, kwargs); }; pan.cljs$lang$maxFixedArity = 2; pan.cljs$lang$applyTo = function(arglist__5039) { var src_query = cljs.core.first(arglist__5039); arglist__5039 = cljs.core.next(arglist__5039); var tgt_query = cljs.core.first(arglist__5039); var kwargs = cljs.core.rest(arglist__5039); return pan__delegate(src_query, tgt_query, kwargs); }; pan.cljs$core$IFn$_invoke$arity$variadic = pan__delegate; return pan; }(); calabash_script.core.pan_offset = function() { var pan_offset__delegate = function(src_offset, tgt_offset, p__5040) { var vec__5043 = p__5040; var options = cljs.core.nth.call(null, vec__5043, 0, null); var map__5044 = options; var map__5044__$1 = cljs.core.seq_QMARK_.call(null, map__5044) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5044) : map__5044; var duration = cljs.core.get.call(null, map__5044__$1, new cljs.core.Keyword(null, "duration", "duration", 1444101068), .75); return calabash_script.utils.target.call(null).dragFromToForDuration(calabash_script.utils.uia_point.call(null, src_offset), calabash_script.utils.uia_point.call(null, tgt_offset), duration); }; var pan_offset = function(src_offset, tgt_offset, var_args) { var p__5040 = null; if (arguments.length > 2) { p__5040 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return pan_offset__delegate.call(this, src_offset, tgt_offset, p__5040); }; pan_offset.cljs$lang$maxFixedArity = 2; pan_offset.cljs$lang$applyTo = function(arglist__5045) { var src_offset = cljs.core.first(arglist__5045); arglist__5045 = cljs.core.next(arglist__5045); var tgt_offset = cljs.core.first(arglist__5045); var p__5040 = cljs.core.rest(arglist__5045); return pan_offset__delegate(src_offset, tgt_offset, p__5040); }; pan_offset.cljs$core$IFn$_invoke$arity$variadic = pan_offset__delegate; return pan_offset; }(); calabash_script.core.default_offset = function default_offset() { var hp = calabash_script.utils.window.call(null).hitpoint(); return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), hp.x, new cljs.core.Keyword(null, "y", "y", -1757859776), hp.y], null); }; calabash_script.core.swipe = function() { var swipe__delegate = function(dir, query_spec, p__5047) { var vec__5050 = p__5047; var options = cljs.core.nth.call(null, vec__5050, 0, null); var map__5051 = options; var map__5051__$1 = cljs.core.seq_QMARK_.call(null, map__5051) ? cljs.core.apply.call(null, cljs.core.hash_map, map__5051) : map__5051; var defaults = map__5051__$1; var duration = cljs.core.get.call(null, map__5051__$1, new cljs.core.Keyword(null, "duration", "duration", 1444101068), .5); var endOffset = cljs.core.get.call(null, map__5051__$1, new cljs.core.Keyword(null, "endOffset", "endOffset", 815744685)); var startOffset = cljs.core.get.call(null, map__5051__$1, new cljs.core.Keyword(null, "startOffset", "startOffset", -590231263), new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null, "x", "x", 2099068185), .5, new cljs.core.Keyword(null, "y", "y", -1757859776), .5], null)); var end_offset = function() { var or__3544__auto__ = endOffset; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return calabash_script.gestures.drag_inside_offset.call(null, cljs.core.keyword.call(null, dir), startOffset); } }(); var duration__$1 = function() { var or__3544__auto__ = duration; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return.5; } }(); return calabash_script.core.perform_on_first.call(null, function(map__5051, map__5051__$1, defaults, duration, endOffset, startOffset, end_offset, duration__$1, vec__5050, options) { return function(p1__5046_SHARP_) { return p1__5046_SHARP_.dragInsideWithOptions(cljs.core.clj__GT_js.call(null, cljs.core.assoc.call(null, defaults, new cljs.core.Keyword(null, "startOffset", "startOffset", -590231263), calabash_script.utils.rounded_map.call(null, startOffset), new cljs.core.Keyword(null, "duration", "duration", 1444101068), duration__$1, new cljs.core.Keyword(null, "endOffset", "endOffset", 815744685), calabash_script.utils.rounded_map.call(null, end_offset)))); }; }(map__5051, map__5051__$1, defaults, duration, endOffset, startOffset, end_offset, duration__$1, vec__5050, options), query_spec); }; var swipe = function(dir, query_spec, var_args) { var p__5047 = null; if (arguments.length > 2) { p__5047 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return swipe__delegate.call(this, dir, query_spec, p__5047); }; swipe.cljs$lang$maxFixedArity = 2; swipe.cljs$lang$applyTo = function(arglist__5052) { var dir = cljs.core.first(arglist__5052); arglist__5052 = cljs.core.next(arglist__5052); var query_spec = cljs.core.first(arglist__5052); var p__5047 = cljs.core.rest(arglist__5052); return swipe__delegate(dir, query_spec, p__5047); }; swipe.cljs$core$IFn$_invoke$arity$variadic = swipe__delegate; return swipe; }(); calabash_script.core.swipe_mark = function() { var swipe_mark__delegate = function(dir, mark, args) { return cljs.core.apply.call(null, calabash_script.core.swipe, dir, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "view", "view", 1247994814), new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "marked", "marked", 1403026280), mark], null)], null), args); }; var swipe_mark = function(dir, mark, var_args) { var args = null; if (arguments.length > 2) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return swipe_mark__delegate.call(this, dir, mark, args); }; swipe_mark.cljs$lang$maxFixedArity = 2; swipe_mark.cljs$lang$applyTo = function(arglist__5053) { var dir = cljs.core.first(arglist__5053); arglist__5053 = cljs.core.next(arglist__5053); var mark = cljs.core.first(arglist__5053); var args = cljs.core.rest(arglist__5053); return swipe_mark__delegate(dir, mark, args); }; swipe_mark.cljs$core$IFn$_invoke$arity$variadic = swipe_mark__delegate; return swipe_mark; }(); calabash_script.core.swipe_offset = function() { var swipe_offset__delegate = function(offset, p__5054) { var vec__5056 = p__5054; var options = cljs.core.nth.call(null, vec__5056, 0, null); var offset__$1 = function() { var or__3544__auto__ = offset; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return calabash_script.core.default_offset.call(null); } }(); var from_offset = offset__$1; var to_offset = calabash_script.gestures.calculate_swipe_to_offset.call(null, offset__$1, options); var duration = function() { var or__3544__auto__ = (new cljs.core.Keyword(null, "duration", "duration", 1444101068)).cljs$core$IFn$_invoke$arity$1(options); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return.5; } }(); return calabash_script.utils.target.call(null).dragFromToForDuration(calabash_script.utils.uia_point.call(null, from_offset), calabash_script.utils.uia_point.call(null, to_offset), duration); }; var swipe_offset = function(offset, var_args) { var p__5054 = null; if (arguments.length > 1) { p__5054 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return swipe_offset__delegate.call(this, offset, p__5054); }; swipe_offset.cljs$lang$maxFixedArity = 1; swipe_offset.cljs$lang$applyTo = function(arglist__5057) { var offset = cljs.core.first(arglist__5057); var p__5054 = cljs.core.rest(arglist__5057); return swipe_offset__delegate(offset, p__5054); }; swipe_offset.cljs$core$IFn$_invoke$arity$variadic = swipe_offset__delegate; return swipe_offset; }(); calabash_script.core.pinch = function() { var pinch__delegate = function(in_or_out, q, p__5058) { var vec__5060 = p__5058; var options = cljs.core.nth.call(null, vec__5060, 0, null); throw new Error; }; var pinch = function(in_or_out, q, var_args) { var p__5058 = null; if (arguments.length > 2) { p__5058 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return pinch__delegate.call(this, in_or_out, q, p__5058); }; pinch.cljs$lang$maxFixedArity = 2; pinch.cljs$lang$applyTo = function(arglist__5061) { var in_or_out = cljs.core.first(arglist__5061); arglist__5061 = cljs.core.next(arglist__5061); var q = cljs.core.first(arglist__5061); var p__5058 = cljs.core.rest(arglist__5061); return pinch__delegate(in_or_out, q, p__5058); }; pinch.cljs$core$IFn$_invoke$arity$variadic = pinch__delegate; return pinch; }(); calabash_script.core.pinch_offset = function() { var pinch_offset__delegate = function(in_or_out, offset, p__5062) { var vec__5065 = p__5062; var options = cljs.core.nth.call(null, vec__5065, 0, null); var offset__$1 = function() { var or__3544__auto__ = offset; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return calabash_script.core.default_offset.call(null); } }(); var from_offset = offset__$1; var to_offset = calabash_script.gestures.calculate_pinch_offset.call(null, in_or_out, offset__$1, options); var duration = function() { var or__3544__auto__ = (new cljs.core.Keyword(null, "duration", "duration", 1444101068)).cljs$core$IFn$_invoke$arity$1(options); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return.5; } }(); var js_from_offset = calabash_script.utils.uia_point.call(null, from_offset); var js_to_offset = calabash_script.utils.uia_point.call(null, to_offset); var G__5066 = in_or_out instanceof cljs.core.Keyword ? in_or_out.fqn : null; switch(G__5066) { case "out": return calabash_script.utils.target.call(null).pinchCloseFromToForDuration(js_from_offset, js_to_offset, duration); break; case "in": return calabash_script.utils.target.call(null).pinchOpenFromToForDuration(js_from_offset, js_to_offset, duration); break; default: throw new Error("No matching clause: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(in_or_out));; } }; var pinch_offset = function(in_or_out, offset, var_args) { var p__5062 = null; if (arguments.length > 2) { p__5062 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2), 0); } return pinch_offset__delegate.call(this, in_or_out, offset, p__5062); }; pinch_offset.cljs$lang$maxFixedArity = 2; pinch_offset.cljs$lang$applyTo = function(arglist__5068) { var in_or_out = cljs.core.first(arglist__5068); arglist__5068 = cljs.core.next(arglist__5068); var offset = cljs.core.first(arglist__5068); var p__5062 = cljs.core.rest(arglist__5068); return pinch_offset__delegate(in_or_out, offset, p__5062); }; pinch_offset.cljs$core$IFn$_invoke$arity$variadic = pinch_offset__delegate; return pinch_offset; }(); calabash_script.core.scroll_to = function() { var scroll_to__delegate = function(args) { return cljs.core.apply.call(null, calabash_script.core.perform_on_first, function(p1__5069_SHARP_) { return p1__5069_SHARP_.scrollToVisible(); }, args); }; var scroll_to = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return scroll_to__delegate.call(this, args); }; scroll_to.cljs$lang$maxFixedArity = 0; scroll_to.cljs$lang$applyTo = function(arglist__5070) { var args = cljs.core.seq(arglist__5070); return scroll_to__delegate(args); }; scroll_to.cljs$core$IFn$_invoke$arity$variadic = scroll_to__delegate; return scroll_to; }(); calabash_script.core.touch_hold = function() { var touch_hold__delegate = function(duration, args) { return cljs.core.apply.call(null, calabash_script.core.perform_on_first, function(p1__5071_SHARP_) { return p1__5071_SHARP_.touchAndHold(duration); }, args); }; var touch_hold = function(duration, var_args) { var args = null; if (arguments.length > 1) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return touch_hold__delegate.call(this, duration, args); }; touch_hold.cljs$lang$maxFixedArity = 1; touch_hold.cljs$lang$applyTo = function(arglist__5072) { var duration = cljs.core.first(arglist__5072); var args = cljs.core.rest(arglist__5072); return touch_hold__delegate(duration, args); }; touch_hold.cljs$core$IFn$_invoke$arity$variadic = touch_hold__delegate; return touch_hold; }(); calabash_script.core.touch_hold_offset = function touch_hold_offset(duration, offset) { return calabash_script.utils.target.call(null).touchAndHold(calabash_script.utils.uia_point.call(null, offset), duration); }; calabash_script.core.select_picker_values = function select_picker_values(values) { calabash_script.log.log.call(null, "Picker select values", values); var temp__4124__auto__ = calabash_script.core.find_first_picker.call(null); if (cljs.core.truth_(temp__4124__auto__)) { var picker = temp__4124__auto__; var wheels = picker.wheels().toArray(); var seq__5079 = cljs.core.seq.call(null, values); var chunk__5080 = null; var count__5081 = 0; var i__5082 = 0; while (true) { if (i__5082 < count__5081) { var vec__5083 = cljs.core._nth.call(null, chunk__5080, i__5082); var index = cljs.core.nth.call(null, vec__5083, 0, null); var value = cljs.core.nth.call(null, vec__5083, 1, null); cljs.core.nth.call(null, wheels, index).selectValue(value); var G__5085 = seq__5079; var G__5086 = chunk__5080; var G__5087 = count__5081; var G__5088 = i__5082 + 1; seq__5079 = G__5085; chunk__5080 = G__5086; count__5081 = G__5087; i__5082 = G__5088; continue; } else { var temp__4126__auto__ = cljs.core.seq.call(null, seq__5079); if (temp__4126__auto__) { var seq__5079__$1 = temp__4126__auto__; if (cljs.core.chunked_seq_QMARK_.call(null, seq__5079__$1)) { var c__4300__auto__ = cljs.core.chunk_first.call(null, seq__5079__$1); var G__5089 = cljs.core.chunk_rest.call(null, seq__5079__$1); var G__5090 = c__4300__auto__; var G__5091 = cljs.core.count.call(null, c__4300__auto__); var G__5092 = 0; seq__5079 = G__5089; chunk__5080 = G__5090; count__5081 = G__5091; i__5082 = G__5092; continue; } else { var vec__5084 = cljs.core.first.call(null, seq__5079__$1); var index = cljs.core.nth.call(null, vec__5084, 0, null); var value = cljs.core.nth.call(null, vec__5084, 1, null); cljs.core.nth.call(null, wheels, index).selectValue(value); var G__5093 = cljs.core.next.call(null, seq__5079__$1); var G__5094 = null; var G__5095 = 0; var G__5096 = 0; seq__5079 = G__5093; chunk__5080 = G__5094; count__5081 = G__5095; i__5082 = G__5096; continue; } } else { return null; } } break; } } else { throw new Error("No visible picker"); } }; calabash_script.core.orientations = new cljs.core.PersistentArrayMap.fromArray([UIA_DEVICE_ORIENTATION_UNKNOWN, new cljs.core.Keyword(null, "unknown", "unknown", -935977881), UIA_DEVICE_ORIENTATION_PORTRAIT, new cljs.core.Keyword(null, "portrait", "portrait", -9810007), UIA_DEVICE_ORIENTATION_PORTRAIT_UPSIDEDOWN, new cljs.core.Keyword(null, "portrait-upside-down", "portrait-upside-down", -1423632691), UIA_DEVICE_ORIENTATION_LANDSCAPELEFT, new cljs.core.Keyword(null, "landscape-left", "landscape-left", 1001896585), UIA_DEVICE_ORIENTATION_LANDSCAPERIGHT, new cljs.core.Keyword(null, "landscape-right", "landscape-right", -1983559906), UIA_DEVICE_ORIENTATION_FACEUP, new cljs.core.Keyword(null, "faceup", "faceup", -968891193), UIA_DEVICE_ORIENTATION_FACEDOWN, new cljs.core.Keyword(null, "facedown", "facedown", 621441688)], true, false); calabash_script.core.rotatable_orientations = new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [UIA_DEVICE_ORIENTATION_PORTRAIT, UIA_DEVICE_ORIENTATION_LANDSCAPERIGHT, UIA_DEVICE_ORIENTATION_PORTRAIT_UPSIDEDOWN, UIA_DEVICE_ORIENTATION_LANDSCAPELEFT], null); calabash_script.core.clockwise_orientations = cljs.core.partition.call(null, 2, 1, cljs.core.cycle.call(null, calabash_script.core.rotatable_orientations)); calabash_script.core.relative_orientation = function relative_orientation(orientation, dir) { if (cljs.core.truth_(cljs.core.some.call(null, function(p1__5097_SHARP_) { return cljs.core._EQ_.call(null, orientation, p1__5097_SHARP_); }, calabash_script.core.rotatable_orientations))) { var dir__$1 = function() { var G__5100 = dir instanceof cljs.core.Keyword ? dir.fqn : null; switch(G__5100) { case "right": return new cljs.core.Keyword(null, "clockwise", "clockwise", -2131077918); break; case "left": return new cljs.core.Keyword(null, "counter-clockwise", "counter-clockwise", -1354602408); break; default: return dir; } }(); var orientations = cljs.core._EQ_.call(null, new cljs.core.Keyword(null, "clockwise", "clockwise", -2131077918), dir__$1) ? calabash_script.core.clockwise_orientations : cljs.core.map.call(null, cljs.core.reverse, calabash_script.core.clockwise_orientations); return cljs.core.second.call(null, cljs.core.first.call(null, cljs.core.filter.call(null, function(dir__$1, orientations) { return function(p1__5098_SHARP_) { return cljs.core._EQ_.call(null, orientation, cljs.core.first.call(null, p1__5098_SHARP_)); }; }(dir__$1, orientations), orientations))); } else { throw new Error("Can't rotate orientation: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(orientation)); } }; calabash_script.core.orientation = function orientation() { return cljs.core.get.call(null, calabash_script.core.orientations, calabash_script.utils.target.call(null).deviceOrientation()); }; calabash_script.core.rotate = function rotate(dir) { return calabash_script.utils.target.call(null).setDeviceOrientation(calabash_script.core.relative_orientation.call(null, calabash_script.utils.target.call(null).deviceOrientation(), dir)); }; calabash_script.core._STAR_alert_handlers_STAR_ = cljs.core.atom.call(null, cljs.core._conj.call(null, cljs.core.List.EMPTY, cljs.core.constantly.call(null, true))); calabash_script.core.set_alert_handler_BANG_ = function set_alert_handler_BANG_(handler) { return calabash_script.utils.target.call(null)["onAlert"] = handler; }; calabash_script.core.add_alert_handler_BANG_ = function add_alert_handler_BANG_(handler) { return cljs.core.swap_BANG_.call(null, calabash_script.core._STAR_alert_handlers_STAR_, function(p1__5102_SHARP_) { return cljs.core.cons.call(null, handler, p1__5102_SHARP_); }); }; calabash_script.core.set_alert_handler_BANG_.call(null, function(alert) { var handler_values = cljs.core.map.call(null, function(h) { return h.call(null, alert); }, cljs.core.deref.call(null, calabash_script.core._STAR_alert_handlers_STAR_)); return cljs.core.first.call(null, cljs.core.filter.call(null, cljs.core.true_QMARK_, handler_values)); }); calabash_script.core.alert = function alert__$1() { return calabash_script.utils.normalize.call(null, calabash_script.utils.app.call(null).alert()); }; calabash_script.core.alert_texts = function alert_texts() { return null; }; calabash_script.core.keyboard_visible_QMARK_ = function keyboard_visible_QMARK_() { return calabash_script.query.valid_QMARK_.call(null, calabash_script.utils.keyboard.call(null)); }; calabash_script.core.element_with_keyboard_focus = function element_with_keyboard_focus() { return cljs.core.first.call(null, cljs.core.filter.call(null, function(p1__5103_SHARP_) { return cljs.core._EQ_.call(null, 1, p1__5103_SHARP_.hasKeyboardFocus()); }, cljs.core.concat.call(null, calabash_script.core.query_el.call(null, new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "textField", "textField", -585123195)], null), calabash_script.utils.windows.call(null)), calabash_script.core.query_el.call(null, new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "textView", "textView", -1135056028)], null), calabash_script.utils.windows.call(null))))); }; calabash_script.core.keyboard_enter_text = function() { var keyboard_enter_text__delegate = function(txt, args) { calabash_script.tests.fail_if_not.call(null, calabash_script.core.keyboard_visible_QMARK_.call(null), "Keyboard not visible"); var temp__4124__auto__ = calabash_script.core.element_with_keyboard_focus.call(null); if (cljs.core.truth_(temp__4124__auto__)) { var tf = temp__4124__auto__; var tf_serialized = calabash_script.convert.uia__GT_map.call(null, tf); var reset_to = function() { var or__3544__auto__ = cljs.core.first.call(null, args); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return ""; } }(); var locate_key_error_reg = /failed to locate key/; var kb = calabash_script.utils.keyboard.call(null); var num_failed_keys = cljs.core.atom.call(null, 0); calabash_script.core.wait_for.call(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null, "retry-frequency", "retry-frequency", 512696345), 1, new cljs.core.Keyword(null, "timeout", "timeout", -318625318), 60, new cljs.core.Keyword(null, "message", "message", -406056002), "Unable to type: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(txt)], null), function(tf_serialized, reset_to, locate_key_error_reg, kb, num_failed_keys, tf, temp__4124__auto__) { return function() { try { kb.typeString(txt); return true; } catch (e5105) { if (e5105 instanceof Error) { var err = e5105; var err_str_5106 = "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(err); calabash_script.log.log.call(null, ".typeString failed with error: '", err_str_5106, "'"); if (cljs.core.truth_(cljs.core.re_find.call(null, locate_key_error_reg, err_str_5106))) { cljs.core.swap_BANG_.call(null, num_failed_keys, cljs.core.inc); if (cljs.core.deref.call(null, num_failed_keys) > 3) { throw err; } else { } } else { } calabash_script.log.log.call(null, "Restoring to text: '", reset_to, "'"); tf.setValue(reset_to); return false; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw e5105; } else { return null; } } } }; }(tf_serialized, reset_to, locate_key_error_reg, kb, num_failed_keys, tf, temp__4124__auto__)); return tf_serialized; } else { return calabash_script.utils.keyboard.call(null).typeString(txt); } }; var keyboard_enter_text = function(txt, var_args) { var args = null; if (arguments.length > 1) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return keyboard_enter_text__delegate.call(this, txt, args); }; keyboard_enter_text.cljs$lang$maxFixedArity = 1; keyboard_enter_text.cljs$lang$applyTo = function(arglist__5107) { var txt = cljs.core.first(arglist__5107); var args = cljs.core.rest(arglist__5107); return keyboard_enter_text__delegate(txt, args); }; keyboard_enter_text.cljs$core$IFn$_invoke$arity$variadic = keyboard_enter_text__delegate; return keyboard_enter_text; }(); calabash_script.core.enter = function enter() { calabash_script.tests.fail_if_not.call(null, calabash_script.core.keyboard_visible_QMARK_.call(null), "Keyboard not visible"); return calabash_script.utils.keyboard.call(null).typeString("\n"); }; calabash_script.core.deactivate = function deactivate(duration) { var max_retry = 5; var i = 0; while (true) { var val = calabash_script.utils.target.call(null).deactivateAppForDuration(duration); if (cljs.core.truth_(function() { var or__3544__auto__ = val; if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return i >= max_retry; } }())) { return val; } else { var G__5108 = i + 1; i = G__5108; continue; } break; } }; calabash_script.core.tap_mark = function tap_mark(mark) { return calabash_script.core.tap.call(null, new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "view", "view", 1247994814), new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "marked", "marked", 1403026280), mark], null)], null)); }; calabash_script.core.tap_offset = function() { var tap_offset__delegate = function(offset, p__5109) { var vec__5112 = p__5109; var options = cljs.core.nth.call(null, vec__5112, 0, null); return calabash_script.core.wait_for.call(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null, "retry-frequency", "retry-frequency", 512696345), .5, new cljs.core.Keyword(null, "timeout", "timeout", -318625318), 20, new cljs.core.Keyword(null, "message", "message", -406056002), "Unable to tap-offset: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(offset)], null), function(vec__5112, options) { return function() { try { calabash_script.utils.target.call(null).tapWithOptions(calabash_script.utils.uia_point.call(null, offset), cljs.core.clj__GT_js.call(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "duration", "duration", 1444101068), function() { var or__3544__auto__ = (new cljs.core.Keyword(null, "duration", "duration", 1444101068)).cljs$core$IFn$_invoke$arity$1(options); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return.1; } }()], null))); return true; } catch (e5113) { if (e5113 instanceof Error) { var err = e5113; calabash_script.log.log.call(null, "tap-offset failed", err); return false; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { throw e5113; } else { return null; } } } }; }(vec__5112, options)); }; var tap_offset = function(offset, var_args) { var p__5109 = null; if (arguments.length > 1) { p__5109 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return tap_offset__delegate.call(this, offset, p__5109); }; tap_offset.cljs$lang$maxFixedArity = 1; tap_offset.cljs$lang$applyTo = function(arglist__5114) { var offset = cljs.core.first(arglist__5114); var p__5109 = cljs.core.rest(arglist__5114); return tap_offset__delegate(offset, p__5109); }; tap_offset.cljs$core$IFn$_invoke$arity$variadic = tap_offset__delegate; return tap_offset; }(); calabash_script.core.element_exists_QMARK_ = function() { var element_exists_QMARK___delegate = function(args) { return cljs.core.boolean$.call(null, cljs.core.seq.call(null, cljs.core.apply.call(null, calabash_script.core.query, args))); }; var element_exists_QMARK_ = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return element_exists_QMARK___delegate.call(this, args); }; element_exists_QMARK_.cljs$lang$maxFixedArity = 0; element_exists_QMARK_.cljs$lang$applyTo = function(arglist__5115) { var args = cljs.core.seq(arglist__5115); return element_exists_QMARK___delegate(args); }; element_exists_QMARK_.cljs$core$IFn$_invoke$arity$variadic = element_exists_QMARK___delegate; return element_exists_QMARK_; }(); calabash_script.core.element_does_not_exist_QMARK_ = function() { var element_does_not_exist_QMARK___delegate = function(args) { return cljs.core.not.call(null, cljs.core.apply.call(null, calabash_script.core.element_exists_QMARK_, args)); }; var element_does_not_exist_QMARK_ = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return element_does_not_exist_QMARK___delegate.call(this, args); }; element_does_not_exist_QMARK_.cljs$lang$maxFixedArity = 0; element_does_not_exist_QMARK_.cljs$lang$applyTo = function(arglist__5116) { var args = cljs.core.seq(arglist__5116); return element_does_not_exist_QMARK___delegate(args); }; element_does_not_exist_QMARK_.cljs$core$IFn$_invoke$arity$variadic = element_does_not_exist_QMARK___delegate; return element_does_not_exist_QMARK_; }(); calabash_script.core.check_element_exists = function() { var check_element_exists__delegate = function(args) { if (cljs.core.truth_(cljs.core.apply.call(null, calabash_script.core.element_exists_QMARK_, args))) { return null; } else { return calabash_script.tests.fail.call(null, "Element does not exist: ", cljs.core.apply.call(null, cljs.core.str, args)); } }; var check_element_exists = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return check_element_exists__delegate.call(this, args); }; check_element_exists.cljs$lang$maxFixedArity = 0; check_element_exists.cljs$lang$applyTo = function(arglist__5117) { var args = cljs.core.seq(arglist__5117); return check_element_exists__delegate(args); }; check_element_exists.cljs$core$IFn$_invoke$arity$variadic = check_element_exists__delegate; return check_element_exists; }(); calabash_script.core.check_element_does_not_exist = function() { var check_element_does_not_exist__delegate = function(args) { if (cljs.core.truth_(cljs.core.apply.call(null, calabash_script.core.element_exists_QMARK_, args))) { return calabash_script.tests.fail.call(null, "Element does exist: ", cljs.core.apply.call(null, cljs.core.str, args)); } else { return null; } }; var check_element_does_not_exist = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return check_element_does_not_exist__delegate.call(this, args); }; check_element_does_not_exist.cljs$lang$maxFixedArity = 0; check_element_does_not_exist.cljs$lang$applyTo = function(arglist__5118) { var args = cljs.core.seq(arglist__5118); return check_element_does_not_exist__delegate(args); }; check_element_does_not_exist.cljs$core$IFn$_invoke$arity$variadic = check_element_does_not_exist__delegate; return check_element_does_not_exist; }(); calabash_script.core.names = function() { var names__delegate = function(args) { return cljs.core.map.call(null, new cljs.core.Keyword(null, "name", "name", 1843675177), cljs.core.apply.call(null, calabash_script.core.query, args)); }; var names = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return names__delegate.call(this, args); }; names.cljs$lang$maxFixedArity = 0; names.cljs$lang$applyTo = function(arglist__5119) { var args = cljs.core.seq(arglist__5119); return names__delegate(args); }; names.cljs$core$IFn$_invoke$arity$variadic = names__delegate; return names; }(); calabash_script.core.set_location = function set_location(location) { return calabash_script.utils.target.call(null).setLocation(cljs.core.clj__GT_js.call(null, location)); }; calabash_script.core.find_first_picker = function find_first_picker() { var windows = cljs.core.reverse.call(null, calabash_script.utils.windows.call(null)); return cljs.core.first.call(null, cljs.core.mapcat.call(null, function(windows) { return function(p1__5120_SHARP_) { return calabash_script.core.query_el.call(null, new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null, "picker", "picker", -659389603)], null), cljs.core._conj.call(null, cljs.core.List.EMPTY, p1__5120_SHARP_)); }; }(windows), windows)); }; goog.provide("cljs.reader"); goog.require("cljs.core"); goog.require("goog.string"); goog.require("goog.string"); cljs.reader.PushbackReader = function() { var obj6379 = {}; return obj6379; }(); cljs.reader.read_char = function read_char(reader) { if (function() { var and__3532__auto__ = reader; if (and__3532__auto__) { return reader.cljs$reader$PushbackReader$read_char$arity$1; } else { return and__3532__auto__; } }()) { return reader.cljs$reader$PushbackReader$read_char$arity$1(reader); } else { var x__4171__auto__ = reader == null ? null : reader; return function() { var or__3544__auto__ = cljs.reader.read_char[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.reader.read_char["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "PushbackReader.read-char", reader); } } }().call(null, reader); } }; cljs.reader.unread = function unread(reader, ch) { if (function() { var and__3532__auto__ = reader; if (and__3532__auto__) { return reader.cljs$reader$PushbackReader$unread$arity$2; } else { return and__3532__auto__; } }()) { return reader.cljs$reader$PushbackReader$unread$arity$2(reader, ch); } else { var x__4171__auto__ = reader == null ? null : reader; return function() { var or__3544__auto__ = cljs.reader.unread[goog.typeOf(x__4171__auto__)]; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.reader.unread["_"]; if (or__3544__auto____$1) { return or__3544__auto____$1; } else { throw cljs.core.missing_protocol.call(null, "PushbackReader.unread", reader); } } }().call(null, reader, ch); } }; cljs.reader.StringPushbackReader = function(s, buffer, idx) { this.s = s; this.buffer = buffer; this.idx = idx; }; cljs.reader.StringPushbackReader.cljs$lang$type = true; cljs.reader.StringPushbackReader.cljs$lang$ctorStr = "cljs.reader/StringPushbackReader"; cljs.reader.StringPushbackReader.cljs$lang$ctorPrWriter = function(this__4111__auto__, writer__4112__auto__, opt__4113__auto__) { return cljs.core._write.call(null, writer__4112__auto__, "cljs.reader/StringPushbackReader"); }; cljs.reader.StringPushbackReader.prototype.cljs$reader$PushbackReader$ = true; cljs.reader.StringPushbackReader.prototype.cljs$reader$PushbackReader$read_char$arity$1 = function(reader) { var self__ = this; var reader__$1 = this; if (self__.buffer.length === 0) { self__.idx = self__.idx + 1; return self__.s[self__.idx]; } else { return self__.buffer.pop(); } }; cljs.reader.StringPushbackReader.prototype.cljs$reader$PushbackReader$unread$arity$2 = function(reader, ch) { var self__ = this; var reader__$1 = this; return self__.buffer.push(ch); }; cljs.reader.__GT_StringPushbackReader = function __GT_StringPushbackReader(s, buffer, idx) { return new cljs.reader.StringPushbackReader(s, buffer, idx); }; cljs.reader.push_back_reader = function push_back_reader(s) { return new cljs.reader.StringPushbackReader(s, [], -1); }; cljs.reader.whitespace_QMARK_ = function whitespace_QMARK_(ch) { var or__3544__auto__ = goog.string.isBreakingWhitespace(ch); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return "," === ch; } }; cljs.reader.numeric_QMARK_ = function numeric_QMARK_(ch) { return goog.string.isNumeric(ch); }; cljs.reader.comment_prefix_QMARK_ = function comment_prefix_QMARK_(ch) { return ";" === ch; }; cljs.reader.number_literal_QMARK_ = function number_literal_QMARK_(reader, initch) { return cljs.reader.numeric_QMARK_.call(null, initch) || ("+" === initch || "-" === initch) && cljs.reader.numeric_QMARK_.call(null, function() { var next_ch = cljs.reader.read_char.call(null, reader); cljs.reader.unread.call(null, reader, next_ch); return next_ch; }()); }; cljs.reader.reader_error = function() { var reader_error__delegate = function(rdr, msg) { throw new Error(cljs.core.apply.call(null, cljs.core.str, msg)); }; var reader_error = function(rdr, var_args) { var msg = null; if (arguments.length > 1) { msg = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1), 0); } return reader_error__delegate.call(this, rdr, msg); }; reader_error.cljs$lang$maxFixedArity = 1; reader_error.cljs$lang$applyTo = function(arglist__6380) { var rdr = cljs.core.first(arglist__6380); var msg = cljs.core.rest(arglist__6380); return reader_error__delegate(rdr, msg); }; reader_error.cljs$core$IFn$_invoke$arity$variadic = reader_error__delegate; return reader_error; }(); cljs.reader.macro_terminating_QMARK_ = function macro_terminating_QMARK_(ch) { var and__3532__auto__ = !(ch === "#"); if (and__3532__auto__) { var and__3532__auto____$1 = !(ch === "'"); if (and__3532__auto____$1) { var and__3532__auto____$2 = !(ch === ":"); if (and__3532__auto____$2) { return cljs.reader.macros.call(null, ch); } else { return and__3532__auto____$2; } } else { return and__3532__auto____$1; } } else { return and__3532__auto__; } }; cljs.reader.read_token = function read_token(rdr, initch) { var sb = new goog.string.StringBuffer(initch); var ch = cljs.reader.read_char.call(null, rdr); while (true) { if (ch == null || cljs.reader.whitespace_QMARK_.call(null, ch) || cljs.reader.macro_terminating_QMARK_.call(null, ch)) { cljs.reader.unread.call(null, rdr, ch); return sb.toString(); } else { var G__6381 = function() { sb.append(ch); return sb; }(); var G__6382 = cljs.reader.read_char.call(null, rdr); sb = G__6381; ch = G__6382; continue; } break; } }; cljs.reader.skip_line = function skip_line(reader, _) { while (true) { var ch = cljs.reader.read_char.call(null, reader); if (ch === "\n" || ch === "\r" || ch == null) { return reader; } else { continue; } break; } }; cljs.reader.int_pattern = cljs.core.re_pattern.call(null, "^([-+]?)(?:(0)|([1-9][0-9]*)|0[xX]([0-9A-Fa-f]+)|0([0-7]+)|([1-9][0-9]?)[rR]([0-9A-Za-z]+))(N)?$"); cljs.reader.ratio_pattern = cljs.core.re_pattern.call(null, "^([-+]?[0-9]+)/([0-9]+)$"); cljs.reader.float_pattern = cljs.core.re_pattern.call(null, "^([-+]?[0-9]+(\\.[0-9]*)?([eE][-+]?[0-9]+)?)(M)?$"); cljs.reader.symbol_pattern = cljs.core.re_pattern.call(null, "^[:]?([^0-9/].*/)?([^0-9/][^/]*)$"); cljs.reader.re_matches_STAR_ = function re_matches_STAR_(re, s) { var matches = re.exec(s); if (!(matches == null) && matches[0] === s) { if (matches.length === 1) { return matches[0]; } else { return matches; } } else { return null; } }; cljs.reader.match_int = function match_int(s) { var groups = cljs.reader.re_matches_STAR_.call(null, cljs.reader.int_pattern, s); var zero = groups[2]; if (!(zero == null)) { return 0; } else { var a = cljs.core.truth_(groups[3]) ? [groups[3], 10] : cljs.core.truth_(groups[4]) ? [groups[4], 16] : cljs.core.truth_(groups[5]) ? [groups[5], 8] : cljs.core.truth_(groups[6]) ? [groups[7], parseInt(groups[6], 10)] : new cljs.core.Keyword(null, "else", "else", -1508377146) ? [null, null] : null; var n = a[0]; var radix = a[1]; if (n == null) { return null; } else { var parsed = parseInt(n, radix); if ("-" === groups[1]) { return-parsed; } else { return parsed; } } } }; cljs.reader.match_ratio = function match_ratio(s) { var groups = cljs.reader.re_matches_STAR_.call(null, cljs.reader.ratio_pattern, s); var numinator = groups[1]; var denominator = groups[2]; return parseInt(numinator, 10) / parseInt(denominator, 10); }; cljs.reader.match_float = function match_float(s) { return parseFloat(s); }; cljs.reader.match_number = function match_number(s) { if (cljs.core.truth_(cljs.reader.re_matches_STAR_.call(null, cljs.reader.int_pattern, s))) { return cljs.reader.match_int.call(null, s); } else { if (cljs.core.truth_(cljs.reader.re_matches_STAR_.call(null, cljs.reader.ratio_pattern, s))) { return cljs.reader.match_ratio.call(null, s); } else { if (cljs.core.truth_(cljs.reader.re_matches_STAR_.call(null, cljs.reader.float_pattern, s))) { return cljs.reader.match_float.call(null, s); } else { return null; } } } }; cljs.reader.escape_char_map = function escape_char_map(c) { if (c === "t") { return "\t"; } else { if (c === "r") { return "\r"; } else { if (c === "n") { return "\n"; } else { if (c === "\\") { return "\\"; } else { if (c === '"') { return'"'; } else { if (c === "b") { return "\b"; } else { if (c === "f") { return "\f"; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return null; } else { return null; } } } } } } } } }; cljs.reader.read_2_chars = function read_2_chars(reader) { return(new goog.string.StringBuffer(cljs.reader.read_char.call(null, reader), cljs.reader.read_char.call(null, reader))).toString(); }; cljs.reader.read_4_chars = function read_4_chars(reader) { return(new goog.string.StringBuffer(cljs.reader.read_char.call(null, reader), cljs.reader.read_char.call(null, reader), cljs.reader.read_char.call(null, reader), cljs.reader.read_char.call(null, reader))).toString(); }; cljs.reader.unicode_2_pattern = cljs.core.re_pattern.call(null, "^[0-9A-Fa-f]{2}$"); cljs.reader.unicode_4_pattern = cljs.core.re_pattern.call(null, "^[0-9A-Fa-f]{4}$"); cljs.reader.validate_unicode_escape = function validate_unicode_escape(unicode_pattern, reader, escape_char, unicode_str) { if (cljs.core.truth_(cljs.core.re_matches.call(null, unicode_pattern, unicode_str))) { return unicode_str; } else { return cljs.reader.reader_error.call(null, reader, "Unexpected unicode escape \\", escape_char, unicode_str); } }; cljs.reader.make_unicode_char = function make_unicode_char(code_str) { var code = parseInt(code_str, 16); return String.fromCharCode(code); }; cljs.reader.escape_char = function escape_char(buffer, reader) { var ch = cljs.reader.read_char.call(null, reader); var mapresult = cljs.reader.escape_char_map.call(null, ch); if (cljs.core.truth_(mapresult)) { return mapresult; } else { if (ch === "x") { return cljs.reader.make_unicode_char.call(null, cljs.reader.validate_unicode_escape.call(null, cljs.reader.unicode_2_pattern, reader, ch, cljs.reader.read_2_chars.call(null, reader))); } else { if (ch === "u") { return cljs.reader.make_unicode_char.call(null, cljs.reader.validate_unicode_escape.call(null, cljs.reader.unicode_4_pattern, reader, ch, cljs.reader.read_4_chars.call(null, reader))); } else { if (cljs.reader.numeric_QMARK_.call(null, ch)) { return String.fromCharCode(ch); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.reader.reader_error.call(null, reader, "Unexpected unicode escape \\", ch); } else { return null; } } } } } }; cljs.reader.read_past = function read_past(pred, rdr) { var ch = cljs.reader.read_char.call(null, rdr); while (true) { if (cljs.core.truth_(pred.call(null, ch))) { var G__6383 = cljs.reader.read_char.call(null, rdr); ch = G__6383; continue; } else { return ch; } break; } }; cljs.reader.read_delimited_list = function read_delimited_list(delim, rdr, recursive_QMARK_) { var a = cljs.core.transient$.call(null, cljs.core.PersistentVector.EMPTY); while (true) { var ch = cljs.reader.read_past.call(null, cljs.reader.whitespace_QMARK_, rdr); if (cljs.core.truth_(ch)) { } else { cljs.reader.reader_error.call(null, rdr, "EOF while reading"); } if (delim === ch) { return cljs.core.persistent_BANG_.call(null, a); } else { var temp__4124__auto__ = cljs.reader.macros.call(null, ch); if (cljs.core.truth_(temp__4124__auto__)) { var macrofn = temp__4124__auto__; var mret = macrofn.call(null, rdr, ch); var G__6384 = mret === rdr ? a : cljs.core.conj_BANG_.call(null, a, mret); a = G__6384; continue; } else { cljs.reader.unread.call(null, rdr, ch); var o = cljs.reader.read.call(null, rdr, true, null, recursive_QMARK_); var G__6385 = o === rdr ? a : cljs.core.conj_BANG_.call(null, a, o); a = G__6385; continue; } } break; } }; cljs.reader.not_implemented = function not_implemented(rdr, ch) { return cljs.reader.reader_error.call(null, rdr, "Reader for ", ch, " not implemented yet"); }; cljs.reader.read_dispatch = function read_dispatch(rdr, _) { var ch = cljs.reader.read_char.call(null, rdr); var dm = cljs.reader.dispatch_macros.call(null, ch); if (cljs.core.truth_(dm)) { return dm.call(null, rdr, _); } else { var temp__4124__auto__ = cljs.reader.maybe_read_tagged_type.call(null, rdr, ch); if (cljs.core.truth_(temp__4124__auto__)) { var obj = temp__4124__auto__; return obj; } else { return cljs.reader.reader_error.call(null, rdr, "No dispatch macro for ", ch); } } }; cljs.reader.read_unmatched_delimiter = function read_unmatched_delimiter(rdr, ch) { return cljs.reader.reader_error.call(null, rdr, "Unmached delimiter ", ch); }; cljs.reader.read_list = function read_list(rdr, _) { return cljs.core.apply.call(null, cljs.core.list, cljs.reader.read_delimited_list.call(null, ")", rdr, true)); }; cljs.reader.read_comment = cljs.reader.skip_line; cljs.reader.read_vector = function read_vector(rdr, _) { return cljs.reader.read_delimited_list.call(null, "]", rdr, true); }; cljs.reader.read_map = function read_map(rdr, _) { var l = cljs.reader.read_delimited_list.call(null, "}", rdr, true); if (cljs.core.odd_QMARK_.call(null, cljs.core.count.call(null, l))) { cljs.reader.reader_error.call(null, rdr, "Map literal must contain an even number of forms"); } else { } return cljs.core.apply.call(null, cljs.core.hash_map, l); }; cljs.reader.read_number = function read_number(reader, initch) { var buffer = new goog.string.StringBuffer(initch); var ch = cljs.reader.read_char.call(null, reader); while (true) { if (cljs.core.truth_(function() { var or__3544__auto__ = ch == null; if (or__3544__auto__) { return or__3544__auto__; } else { var or__3544__auto____$1 = cljs.reader.whitespace_QMARK_.call(null, ch); if (or__3544__auto____$1) { return or__3544__auto____$1; } else { return cljs.reader.macros.call(null, ch); } } }())) { cljs.reader.unread.call(null, reader, ch); var s = buffer.toString(); var or__3544__auto__ = cljs.reader.match_number.call(null, s); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return cljs.reader.reader_error.call(null, reader, "Invalid number format [", s, "]"); } } else { var G__6386 = function() { buffer.append(ch); return buffer; }(); var G__6387 = cljs.reader.read_char.call(null, reader); buffer = G__6386; ch = G__6387; continue; } break; } }; cljs.reader.read_string_STAR_ = function read_string_STAR_(reader, _) { var buffer = new goog.string.StringBuffer; var ch = cljs.reader.read_char.call(null, reader); while (true) { if (ch == null) { return cljs.reader.reader_error.call(null, reader, "EOF while reading"); } else { if ("\\" === ch) { var G__6388 = function() { buffer.append(cljs.reader.escape_char.call(null, buffer, reader)); return buffer; }(); var G__6389 = cljs.reader.read_char.call(null, reader); buffer = G__6388; ch = G__6389; continue; } else { if ('"' === ch) { return buffer.toString(); } else { if (new cljs.core.Keyword(null, "default", "default", -1987822328)) { var G__6390 = function() { buffer.append(ch); return buffer; }(); var G__6391 = cljs.reader.read_char.call(null, reader); buffer = G__6390; ch = G__6391; continue; } else { return null; } } } } break; } }; cljs.reader.read_raw_string_STAR_ = function read_raw_string_STAR_(reader, _) { var buffer = new goog.string.StringBuffer; var ch = cljs.reader.read_char.call(null, reader); while (true) { if (ch == null) { return cljs.reader.reader_error.call(null, reader, "EOF while reading"); } else { if ("\\" === ch) { buffer.append(ch); var nch = cljs.reader.read_char.call(null, reader); if (nch == null) { return cljs.reader.reader_error.call(null, reader, "EOF while reading"); } else { var G__6396 = function() { var G__6394 = buffer; G__6394.append(nch); return G__6394; }(); var G__6397 = cljs.reader.read_char.call(null, reader); buffer = G__6396; ch = G__6397; continue; } } else { if ('"' === ch) { return buffer.toString(); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var G__6398 = function() { var G__6395 = buffer; G__6395.append(ch); return G__6395; }(); var G__6399 = cljs.reader.read_char.call(null, reader); buffer = G__6398; ch = G__6399; continue; } else { return null; } } } } break; } }; cljs.reader.special_symbols = function special_symbols(t, not_found) { if (t === "nil") { return null; } else { if (t === "true") { return true; } else { if (t === "false") { return false; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return not_found; } else { return null; } } } } }; cljs.reader.read_symbol = function read_symbol(reader, initch) { var token = cljs.reader.read_token.call(null, reader, initch); if (cljs.core.truth_(goog.string.contains(token, "/"))) { return cljs.core.symbol.call(null, cljs.core.subs.call(null, token, 0, token.indexOf("/")), cljs.core.subs.call(null, token, token.indexOf("/") + 1, token.length)); } else { return cljs.reader.special_symbols.call(null, token, cljs.core.symbol.call(null, token)); } }; cljs.reader.read_keyword = function read_keyword(reader, initch) { var token = cljs.reader.read_token.call(null, reader, cljs.reader.read_char.call(null, reader)); var a = cljs.reader.re_matches_STAR_.call(null, cljs.reader.symbol_pattern, token); var token__$1 = a[0]; var ns = a[1]; var name = a[2]; if (!(void 0 === ns) && ns.substring(ns.length - 2, ns.length) === ":/" || name[name.length - 1] === ":" || !(token__$1.indexOf("::", 1) === -1)) { return cljs.reader.reader_error.call(null, reader, "Invalid token: ", token__$1); } else { if (!(ns == null) && ns.length > 0) { return cljs.core.keyword.call(null, ns.substring(0, ns.indexOf("/")), name); } else { return cljs.core.keyword.call(null, token__$1); } } }; cljs.reader.desugar_meta = function desugar_meta(f) { if (f instanceof cljs.core.Symbol) { return new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "tag", "tag", -1290361223), f], null); } else { if (typeof f === "string") { return new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null, "tag", "tag", -1290361223), f], null); } else { if (f instanceof cljs.core.Keyword) { return new cljs.core.PersistentArrayMap.fromArray([f, true], true, false); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return f; } else { return null; } } } } }; cljs.reader.wrapping_reader = function wrapping_reader(sym) { return function(rdr, _) { return cljs.core._conj.call(null, cljs.core._conj.call(null, cljs.core.List.EMPTY, cljs.reader.read.call(null, rdr, true, null, true)), sym); }; }; cljs.reader.throwing_reader = function throwing_reader(msg) { return function(rdr, _) { return cljs.reader.reader_error.call(null, rdr, msg); }; }; cljs.reader.read_meta = function read_meta(rdr, _) { var m = cljs.reader.desugar_meta.call(null, cljs.reader.read.call(null, rdr, true, null, true)); if (cljs.core.map_QMARK_.call(null, m)) { } else { cljs.reader.reader_error.call(null, rdr, "Metadata must be Symbol,Keyword,String or Map"); } var o = cljs.reader.read.call(null, rdr, true, null, true); if (function() { var G__6401 = o; if (G__6401) { var bit__4194__auto__ = G__6401.cljs$lang$protocol_mask$partition0$ & 262144; if (bit__4194__auto__ || G__6401.cljs$core$IWithMeta$) { return true; } else { if (!G__6401.cljs$lang$protocol_mask$partition0$) { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IWithMeta, G__6401); } else { return false; } } } else { return cljs.core.native_satisfies_QMARK_.call(null, cljs.core.IWithMeta, G__6401); } }()) { return cljs.core.with_meta.call(null, o, cljs.core.merge.call(null, cljs.core.meta.call(null, o), m)); } else { return cljs.reader.reader_error.call(null, rdr, "Metadata can only be applied to IWithMetas"); } }; cljs.reader.read_set = function read_set(rdr, _) { return cljs.core.set.call(null, cljs.reader.read_delimited_list.call(null, "}", rdr, true)); }; cljs.reader.read_regex = function read_regex(rdr, ch) { return cljs.core.re_pattern.call(null, cljs.reader.read_raw_string_STAR_.call(null, rdr, ch)); }; cljs.reader.read_discard = function read_discard(rdr, _) { cljs.reader.read.call(null, rdr, true, null, true); return rdr; }; cljs.reader.macros = function macros(c) { if (c === '"') { return cljs.reader.read_string_STAR_; } else { if (c === ":") { return cljs.reader.read_keyword; } else { if (c === ";") { return cljs.reader.read_comment; } else { if (c === "'") { return cljs.reader.wrapping_reader.call(null, new cljs.core.Symbol(null, "quote", "quote", 1377916282, null)); } else { if (c === "@") { return cljs.reader.wrapping_reader.call(null, new cljs.core.Symbol(null, "deref", "deref", 1494944732, null)); } else { if (c === "^") { return cljs.reader.read_meta; } else { if (c === "`") { return cljs.reader.not_implemented; } else { if (c === "~") { return cljs.reader.not_implemented; } else { if (c === "(") { return cljs.reader.read_list; } else { if (c === ")") { return cljs.reader.read_unmatched_delimiter; } else { if (c === "[") { return cljs.reader.read_vector; } else { if (c === "]") { return cljs.reader.read_unmatched_delimiter; } else { if (c === "{") { return cljs.reader.read_map; } else { if (c === "}") { return cljs.reader.read_unmatched_delimiter; } else { if (c === "\\") { return cljs.reader.read_char; } else { if (c === "#") { return cljs.reader.read_dispatch; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return null; } else { return null; } } } } } } } } } } } } } } } } } }; cljs.reader.dispatch_macros = function dispatch_macros(s) { if (s === "{") { return cljs.reader.read_set; } else { if (s === "\x3c") { return cljs.reader.throwing_reader.call(null, "Unreadable form"); } else { if (s === '"') { return cljs.reader.read_regex; } else { if (s === "!") { return cljs.reader.read_comment; } else { if (s === "_") { return cljs.reader.read_discard; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return null; } else { return null; } } } } } } }; cljs.reader.read = function read(reader, eof_is_error, sentinel, is_recursive) { while (true) { var ch = cljs.reader.read_char.call(null, reader); if (ch == null) { if (cljs.core.truth_(eof_is_error)) { return cljs.reader.reader_error.call(null, reader, "EOF while reading"); } else { return sentinel; } } else { if (cljs.reader.whitespace_QMARK_.call(null, ch)) { var G__6402 = reader; var G__6403 = eof_is_error; var G__6404 = sentinel; var G__6405 = is_recursive; reader = G__6402; eof_is_error = G__6403; sentinel = G__6404; is_recursive = G__6405; continue; } else { if (cljs.reader.comment_prefix_QMARK_.call(null, ch)) { var G__6406 = cljs.reader.read_comment.call(null, reader, ch); var G__6407 = eof_is_error; var G__6408 = sentinel; var G__6409 = is_recursive; reader = G__6406; eof_is_error = G__6407; sentinel = G__6408; is_recursive = G__6409; continue; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var f = cljs.reader.macros.call(null, ch); var res = cljs.core.truth_(f) ? f.call(null, reader, ch) : cljs.reader.number_literal_QMARK_.call(null, reader, ch) ? cljs.reader.read_number.call(null, reader, ch) : new cljs.core.Keyword(null, "else", "else", -1508377146) ? cljs.reader.read_symbol.call(null, reader, ch) : null; if (res === reader) { var G__6410 = reader; var G__6411 = eof_is_error; var G__6412 = sentinel; var G__6413 = is_recursive; reader = G__6410; eof_is_error = G__6411; sentinel = G__6412; is_recursive = G__6413; continue; } else { return res; } } else { return null; } } } } break; } }; cljs.reader.read_string = function read_string(s) { var r = cljs.reader.push_back_reader.call(null, s); return cljs.reader.read.call(null, r, false, null, false); }; cljs.reader.zero_fill_right_and_truncate = function zero_fill_right_and_truncate(s, width) { if (cljs.core._EQ_.call(null, width, cljs.core.count.call(null, s))) { return s; } else { if (width < cljs.core.count.call(null, s)) { return cljs.core.subs.call(null, s, 0, width); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { var b = new goog.string.StringBuffer(s); while (true) { if (b.getLength() < width) { var G__6414 = b.append("0"); b = G__6414; continue; } else { return b.toString(); } break; } } else { return null; } } } }; cljs.reader.divisible_QMARK_ = function divisible_QMARK_(num, div) { return cljs.core.mod.call(null, num, div) === 0; }; cljs.reader.indivisible_QMARK_ = function indivisible_QMARK_(num, div) { return!cljs.reader.divisible_QMARK_.call(null, num, div); }; cljs.reader.leap_year_QMARK_ = function leap_year_QMARK_(year) { return cljs.reader.divisible_QMARK_.call(null, year, 4) && (cljs.reader.indivisible_QMARK_.call(null, year, 100) || cljs.reader.divisible_QMARK_.call(null, year, 400)); }; cljs.reader.days_in_month = function() { var dim_norm = new cljs.core.PersistentVector(null, 13, 5, cljs.core.PersistentVector.EMPTY_NODE, [null, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31], null); var dim_leap = new cljs.core.PersistentVector(null, 13, 5, cljs.core.PersistentVector.EMPTY_NODE, [null, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31], null); return function(dim_norm, dim_leap) { return function(month, leap_year_QMARK_) { return cljs.core.get.call(null, cljs.core.truth_(leap_year_QMARK_) ? dim_leap : dim_norm, month); }; }(dim_norm, dim_leap); }(); cljs.reader.timestamp_regex = /(\d\d\d\d)(?:-(\d\d)(?:-(\d\d)(?:[T](\d\d)(?::(\d\d)(?::(\d\d)(?:[.](\d+))?)?)?)?)?)?(?:[Z]|([-+])(\d\d):(\d\d))?/; cljs.reader.parse_int = function parse_int(s) { var n = parseInt(s, 10); if (cljs.core.not.call(null, isNaN(n))) { return n; } else { return null; } }; cljs.reader.check = function check(low, n, high, msg) { if (low <= n && n <= high) { } else { cljs.reader.reader_error.call(null, null, "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(msg) + " Failed: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(low) + "\x3c\x3d" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(n) + "\x3c\x3d" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(high)); } return n; }; cljs.reader.parse_and_validate_timestamp = function parse_and_validate_timestamp(s) { var vec__6416 = cljs.core.re_matches.call(null, cljs.reader.timestamp_regex, s); var _ = cljs.core.nth.call(null, vec__6416, 0, null); var years = cljs.core.nth.call(null, vec__6416, 1, null); var months = cljs.core.nth.call(null, vec__6416, 2, null); var days = cljs.core.nth.call(null, vec__6416, 3, null); var hours = cljs.core.nth.call(null, vec__6416, 4, null); var minutes = cljs.core.nth.call(null, vec__6416, 5, null); var seconds = cljs.core.nth.call(null, vec__6416, 6, null); var fraction = cljs.core.nth.call(null, vec__6416, 7, null); var offset_sign = cljs.core.nth.call(null, vec__6416, 8, null); var offset_hours = cljs.core.nth.call(null, vec__6416, 9, null); var offset_minutes = cljs.core.nth.call(null, vec__6416, 10, null); var v = vec__6416; if (cljs.core.not.call(null, v)) { return cljs.reader.reader_error.call(null, null, "Unrecognized date/time syntax: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(s)); } else { var years__$1 = cljs.reader.parse_int.call(null, years); var months__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, months); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 1; } }(); var days__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, days); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 1; } }(); var hours__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, hours); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 0; } }(); var minutes__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, minutes); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 0; } }(); var seconds__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, seconds); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 0; } }(); var fraction__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, cljs.reader.zero_fill_right_and_truncate.call(null, fraction, 3)); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 0; } }(); var offset_sign__$1 = cljs.core._EQ_.call(null, offset_sign, "-") ? -1 : 1; var offset_hours__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, offset_hours); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 0; } }(); var offset_minutes__$1 = function() { var or__3544__auto__ = cljs.reader.parse_int.call(null, offset_minutes); if (cljs.core.truth_(or__3544__auto__)) { return or__3544__auto__; } else { return 0; } }(); var offset = offset_sign__$1 * (offset_hours__$1 * 60 + offset_minutes__$1); return new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [years__$1, cljs.reader.check.call(null, 1, months__$1, 12, "timestamp month field must be in range 1..12"), cljs.reader.check.call(null, 1, days__$1, cljs.reader.days_in_month.call(null, months__$1, cljs.reader.leap_year_QMARK_.call(null, years__$1)), "timestamp day field must be in range 1..last day in month"), cljs.reader.check.call(null, 0, hours__$1, 23, "timestamp hour field must be in range 0..23"), cljs.reader.check.call(null, 0, minutes__$1, 59, "timestamp minute field must be in range 0..59"), cljs.reader.check.call(null, 0, seconds__$1, cljs.core._EQ_.call(null, minutes__$1, 59) ? 60 : 59, "timestamp second field must be in range 0..60"), cljs.reader.check.call(null, 0, fraction__$1, 999, "timestamp millisecond field must be in range 0..999"), offset], null); } }; cljs.reader.parse_timestamp = function parse_timestamp(ts) { var temp__4124__auto__ = cljs.reader.parse_and_validate_timestamp.call(null, ts); if (cljs.core.truth_(temp__4124__auto__)) { var vec__6418 = temp__4124__auto__; var years = cljs.core.nth.call(null, vec__6418, 0, null); var months = cljs.core.nth.call(null, vec__6418, 1, null); var days = cljs.core.nth.call(null, vec__6418, 2, null); var hours = cljs.core.nth.call(null, vec__6418, 3, null); var minutes = cljs.core.nth.call(null, vec__6418, 4, null); var seconds = cljs.core.nth.call(null, vec__6418, 5, null); var ms = cljs.core.nth.call(null, vec__6418, 6, null); var offset = cljs.core.nth.call(null, vec__6418, 7, null); return new Date(Date.UTC(years, months - 1, days, hours, minutes, seconds, ms) - offset * 60 * 1E3); } else { return cljs.reader.reader_error.call(null, null, "Unrecognized date/time syntax: " + cljs.core.str.cljs$core$IFn$_invoke$arity$1(ts)); } }; cljs.reader.read_date = function read_date(s) { if (typeof s === "string") { return cljs.reader.parse_timestamp.call(null, s); } else { return cljs.reader.reader_error.call(null, null, "Instance literal expects a string for its timestamp."); } }; cljs.reader.read_queue = function read_queue(elems) { if (cljs.core.vector_QMARK_.call(null, elems)) { return cljs.core.into.call(null, cljs.core.PersistentQueue.EMPTY, elems); } else { return cljs.reader.reader_error.call(null, null, "Queue literal expects a vector for its elements."); } }; cljs.reader.read_js = function read_js(form) { if (cljs.core.vector_QMARK_.call(null, form)) { var arr = []; var seq__6431_6443 = cljs.core.seq.call(null, form); var chunk__6432_6444 = null; var count__6433_6445 = 0; var i__6434_6446 = 0; while (true) { if (i__6434_6446 < count__6433_6445) { var x_6447 = cljs.core._nth.call(null, chunk__6432_6444, i__6434_6446); arr.push(x_6447); var G__6448 = seq__6431_6443; var G__6449 = chunk__6432_6444; var G__6450 = count__6433_6445; var G__6451 = i__6434_6446 + 1; seq__6431_6443 = G__6448; chunk__6432_6444 = G__6449; count__6433_6445 = G__6450; i__6434_6446 = G__6451; continue; } else { var temp__4126__auto___6452 = cljs.core.seq.call(null, seq__6431_6443); if (temp__4126__auto___6452) { var seq__6431_6453__$1 = temp__4126__auto___6452; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6431_6453__$1)) { var c__4300__auto___6454 = cljs.core.chunk_first.call(null, seq__6431_6453__$1); var G__6455 = cljs.core.chunk_rest.call(null, seq__6431_6453__$1); var G__6456 = c__4300__auto___6454; var G__6457 = cljs.core.count.call(null, c__4300__auto___6454); var G__6458 = 0; seq__6431_6443 = G__6455; chunk__6432_6444 = G__6456; count__6433_6445 = G__6457; i__6434_6446 = G__6458; continue; } else { var x_6459 = cljs.core.first.call(null, seq__6431_6453__$1); arr.push(x_6459); var G__6460 = cljs.core.next.call(null, seq__6431_6453__$1); var G__6461 = null; var G__6462 = 0; var G__6463 = 0; seq__6431_6443 = G__6460; chunk__6432_6444 = G__6461; count__6433_6445 = G__6462; i__6434_6446 = G__6463; continue; } } else { } } break; } return arr; } else { if (cljs.core.map_QMARK_.call(null, form)) { var obj = function() { var obj6436 = {}; return obj6436; }(); var seq__6437_6464 = cljs.core.seq.call(null, form); var chunk__6438_6465 = null; var count__6439_6466 = 0; var i__6440_6467 = 0; while (true) { if (i__6440_6467 < count__6439_6466) { var vec__6441_6468 = cljs.core._nth.call(null, chunk__6438_6465, i__6440_6467); var k_6469 = cljs.core.nth.call(null, vec__6441_6468, 0, null); var v_6470 = cljs.core.nth.call(null, vec__6441_6468, 1, null); obj[cljs.core.name.call(null, k_6469)] = v_6470; var G__6471 = seq__6437_6464; var G__6472 = chunk__6438_6465; var G__6473 = count__6439_6466; var G__6474 = i__6440_6467 + 1; seq__6437_6464 = G__6471; chunk__6438_6465 = G__6472; count__6439_6466 = G__6473; i__6440_6467 = G__6474; continue; } else { var temp__4126__auto___6475 = cljs.core.seq.call(null, seq__6437_6464); if (temp__4126__auto___6475) { var seq__6437_6476__$1 = temp__4126__auto___6475; if (cljs.core.chunked_seq_QMARK_.call(null, seq__6437_6476__$1)) { var c__4300__auto___6477 = cljs.core.chunk_first.call(null, seq__6437_6476__$1); var G__6478 = cljs.core.chunk_rest.call(null, seq__6437_6476__$1); var G__6479 = c__4300__auto___6477; var G__6480 = cljs.core.count.call(null, c__4300__auto___6477); var G__6481 = 0; seq__6437_6464 = G__6478; chunk__6438_6465 = G__6479; count__6439_6466 = G__6480; i__6440_6467 = G__6481; continue; } else { var vec__6442_6482 = cljs.core.first.call(null, seq__6437_6476__$1); var k_6483 = cljs.core.nth.call(null, vec__6442_6482, 0, null); var v_6484 = cljs.core.nth.call(null, vec__6442_6482, 1, null); obj[cljs.core.name.call(null, k_6483)] = v_6484; var G__6485 = cljs.core.next.call(null, seq__6437_6476__$1); var G__6486 = null; var G__6487 = 0; var G__6488 = 0; seq__6437_6464 = G__6485; chunk__6438_6465 = G__6486; count__6439_6466 = G__6487; i__6440_6467 = G__6488; continue; } } else { } } break; } return obj; } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.reader.reader_error.call(null, null, "JS literal expects a vector or map containing only string or unqualified keyword keys"); } else { return null; } } } }; cljs.reader.read_uuid = function read_uuid(uuid) { if (typeof uuid === "string") { return new cljs.core.UUID(uuid); } else { return cljs.reader.reader_error.call(null, null, "UUID literal expects a string as its representation."); } }; cljs.reader._STAR_tag_table_STAR_ = cljs.core.atom.call(null, new cljs.core.PersistentArrayMap(null, 4, ["inst", cljs.reader.read_date, "uuid", cljs.reader.read_uuid, "queue", cljs.reader.read_queue, "js", cljs.reader.read_js], null)); cljs.reader._STAR_default_data_reader_fn_STAR_ = cljs.core.atom.call(null, null); cljs.reader.maybe_read_tagged_type = function maybe_read_tagged_type(rdr, initch) { var tag = cljs.reader.read_symbol.call(null, rdr, initch); var pfn = cljs.core.get.call(null, cljs.core.deref.call(null, cljs.reader._STAR_tag_table_STAR_), "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag)); var dfn = cljs.core.deref.call(null, cljs.reader._STAR_default_data_reader_fn_STAR_); if (cljs.core.truth_(pfn)) { return pfn.call(null, cljs.reader.read.call(null, rdr, true, null, false)); } else { if (cljs.core.truth_(dfn)) { return dfn.call(null, tag, cljs.reader.read.call(null, rdr, true, null, false)); } else { if (new cljs.core.Keyword(null, "else", "else", -1508377146)) { return cljs.reader.reader_error.call(null, rdr, "Could not find tag parser for ", "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag), " in ", cljs.core.pr_str.call(null, cljs.core.keys.call(null, cljs.core.deref.call(null, cljs.reader._STAR_tag_table_STAR_)))); } else { return null; } } } }; cljs.reader.register_tag_parser_BANG_ = function register_tag_parser_BANG_(tag, f) { var tag__$1 = "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag); var old_parser = cljs.core.get.call(null, cljs.core.deref.call(null, cljs.reader._STAR_tag_table_STAR_), tag__$1); cljs.core.swap_BANG_.call(null, cljs.reader._STAR_tag_table_STAR_, cljs.core.assoc, tag__$1, f); return old_parser; }; cljs.reader.deregister_tag_parser_BANG_ = function deregister_tag_parser_BANG_(tag) { var tag__$1 = "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag); var old_parser = cljs.core.get.call(null, cljs.core.deref.call(null, cljs.reader._STAR_tag_table_STAR_), tag__$1); cljs.core.swap_BANG_.call(null, cljs.reader._STAR_tag_table_STAR_, cljs.core.dissoc, tag__$1); return old_parser; }; cljs.reader.register_default_tag_parser_BANG_ = function register_default_tag_parser_BANG_(f) { var old_parser = cljs.core.deref.call(null, cljs.reader._STAR_default_data_reader_fn_STAR_); cljs.core.swap_BANG_.call(null, cljs.reader._STAR_default_data_reader_fn_STAR_, function(old_parser) { return function(_) { return f; }; }(old_parser)); return old_parser; }; cljs.reader.deregister_default_tag_parser_BANG_ = function deregister_default_tag_parser_BANG_() { var old_parser = cljs.core.deref.call(null, cljs.reader._STAR_default_data_reader_fn_STAR_); cljs.core.swap_BANG_.call(null, cljs.reader._STAR_default_data_reader_fn_STAR_, function(old_parser) { return function(_) { return null; }; }(old_parser)); return old_parser; }; goog.provide("uia"); goog.require("cljs.core"); goog.require("calabash_script.utils"); goog.require("calabash_script.utils"); goog.require("cljs.reader"); goog.require("cljs.reader"); goog.require("calabash_script.core"); goog.require("calabash_script.core"); goog.require("calabash_script.log"); goog.require("calabash_script.log"); uia.wrap_query_fn = function wrap_query_fn(qfn) { return function() { var G__5157__delegate = function(args) { return cljs.core.clj__GT_js.call(null, cljs.core.apply.call(null, qfn, cljs.core.map.call(null, cljs.reader.read_string, args))); }; var G__5157 = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return G__5157__delegate.call(this, args); }; G__5157.cljs$lang$maxFixedArity = 0; G__5157.cljs$lang$applyTo = function(arglist__5158) { var args = cljs.core.seq(arglist__5158); return G__5157__delegate(args); }; G__5157.cljs$core$IFn$_invoke$arity$variadic = G__5157__delegate; return G__5157; }(); }; uia.queryEl = function() { var queryEl__delegate = function(args) { return cljs.core.first.call(null, cljs.core.apply.call(null, calabash_script.core.query_el, cljs.core.map.call(null, cljs.reader.read_string, args))); }; var queryEl = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return queryEl__delegate.call(this, args); }; queryEl.cljs$lang$maxFixedArity = 0; queryEl.cljs$lang$applyTo = function(arglist__5159) { var args = cljs.core.seq(arglist__5159); return queryEl__delegate(args); }; queryEl.cljs$core$IFn$_invoke$arity$variadic = queryEl__delegate; return queryEl; }(); goog.exportSymbol("uia.queryEl", uia.queryEl); uia.queryElWindows = function queryElWindows(q) { return cljs.core.first.call(null, calabash_script.core.query_el.call(null, cljs.reader.read_string.call(null, q), calabash_script.utils.windows.call(null))); }; goog.exportSymbol("uia.queryElWindows", uia.queryElWindows); uia.elementWithKeyboardFocus = function elementWithKeyboardFocus() { return calabash_script.core.element_with_keyboard_focus.call(null); }; goog.exportSymbol("uia.elementWithKeyboardFocus", uia.elementWithKeyboardFocus); uia.query = uia.wrap_query_fn.call(null, calabash_script.core.query); goog.exportSymbol("uia.query", uia.query); uia.queryWindows = function queryWindows(q) { return cljs.core.clj__GT_js.call(null, calabash_script.core.query.call(null, cljs.reader.read_string.call(null, q), calabash_script.utils.windows.call(null))); }; goog.exportSymbol("uia.queryWindows", uia.queryWindows); uia.names = uia.wrap_query_fn.call(null, calabash_script.core.names); goog.exportSymbol("uia.names", uia.names); uia.tap = uia.wrap_query_fn.call(null, calabash_script.core.tap); goog.exportSymbol("uia.tap", uia.tap); uia.tapMark = function tapMark(mark) { return cljs.core.clj__GT_js.call(null, calabash_script.core.tap_mark.call(null, mark)); }; goog.exportSymbol("uia.tapMark", uia.tapMark); uia.tapOffset = uia.wrap_query_fn.call(null, calabash_script.core.tap_offset); goog.exportSymbol("uia.tapOffset", uia.tapOffset); uia.doubleTap = uia.wrap_query_fn.call(null, calabash_script.core.double_tap); goog.exportSymbol("uia.doubleTap", uia.doubleTap); uia.doubleTapOffset = uia.wrap_query_fn.call(null, calabash_script.core.double_tap_offset); goog.exportSymbol("uia.doubleTapOffset", uia.doubleTapOffset); uia.twoFingerTap = uia.wrap_query_fn.call(null, calabash_script.core.two_finger_tap); goog.exportSymbol("uia.twoFingerTap", uia.twoFingerTap); uia.twoFingerTapOffset = uia.wrap_query_fn.call(null, calabash_script.core.two_finger_tap_offset); goog.exportSymbol("uia.twoFingerTapOffset", uia.twoFingerTapOffset); uia.flickOffset = uia.wrap_query_fn.call(null, calabash_script.core.flick_offset); goog.exportSymbol("uia.flickOffset", uia.flickOffset); uia.touchHold = uia.wrap_query_fn.call(null, calabash_script.core.touch_hold); goog.exportSymbol("uia.touchHold", uia.touchHold); uia.touchHoldOffset = uia.wrap_query_fn.call(null, calabash_script.core.touch_hold_offset); goog.exportSymbol("uia.touchHoldOffset", uia.touchHoldOffset); uia.pan = uia.wrap_query_fn.call(null, calabash_script.core.pan); goog.exportSymbol("uia.pan", uia.pan); uia.panOffset = uia.wrap_query_fn.call(null, calabash_script.core.pan_offset); goog.exportSymbol("uia.panOffset", uia.panOffset); uia.swipe = uia.wrap_query_fn.call(null, calabash_script.core.swipe); goog.exportSymbol("uia.swipe", uia.swipe); uia.swipeMark = uia.wrap_query_fn.call(null, calabash_script.core.swipe_mark); goog.exportSymbol("uia.swipeMark", uia.swipeMark); uia.swipeOffset = uia.wrap_query_fn.call(null, calabash_script.core.swipe_offset); goog.exportSymbol("uia.swipeOffset", uia.swipeOffset); uia.pinch = uia.wrap_query_fn.call(null, calabash_script.core.pinch); goog.exportSymbol("uia.pinch", uia.pinch); uia.pinchOffset = uia.wrap_query_fn.call(null, calabash_script.core.pinch_offset); goog.exportSymbol("uia.pinchOffset", uia.pinchOffset); uia.scrollTo = uia.wrap_query_fn.call(null, calabash_script.core.scroll_to); goog.exportSymbol("uia.scrollTo", uia.scrollTo); uia.elementExists = uia.wrap_query_fn.call(null, calabash_script.core.element_exists_QMARK_); goog.exportSymbol("uia.elementExists", uia.elementExists); uia.elementDoesNotExist = uia.wrap_query_fn.call(null, calabash_script.core.element_does_not_exist_QMARK_); goog.exportSymbol("uia.elementDoesNotExist", uia.elementDoesNotExist); uia.selectPickerValues = function selectPickerValues(values_map) { return calabash_script.core.select_picker_values.call(null, cljs.reader.read_string.call(null, values_map)); }; goog.exportSymbol("uia.selectPickerValues", uia.selectPickerValues); uia.app = function app() { return calabash_script.utils.app.call(null); }; goog.exportSymbol("uia.app", uia.app); uia.window = function window__$1() { return calabash_script.utils.window.call(null); }; goog.exportSymbol("uia.window", uia.window); uia.keyboard = function keyboard() { return calabash_script.utils.keyboard.call(null); }; goog.exportSymbol("uia.keyboard", uia.keyboard); uia.alert = function alert__$1() { return calabash_script.core.alert.call(null); }; goog.exportSymbol("uia.alert", uia.alert); uia.screenshot = function screenshot(name) { return calabash_script.utils.screenshot.call(null, name); }; goog.exportSymbol("uia.screenshot", uia.screenshot); uia.typeString = function() { var typeString__delegate = function(args) { return cljs.core.clj__GT_js.call(null, cljs.core.apply.call(null, calabash_script.core.keyboard_enter_text, args)); }; var typeString = function(var_args) { var args = null; if (arguments.length > 0) { args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0), 0); } return typeString__delegate.call(this, args); }; typeString.cljs$lang$maxFixedArity = 0; typeString.cljs$lang$applyTo = function(arglist__5160) { var args = cljs.core.seq(arglist__5160); return typeString__delegate(args); }; typeString.cljs$core$IFn$_invoke$arity$variadic = typeString__delegate; return typeString; }(); goog.exportSymbol("uia.typeString", uia.typeString); uia.enter = function enter() { return calabash_script.core.enter.call(null); }; goog.exportSymbol("uia.enter", uia.enter); uia.setLocation = function setLocation(location) { return calabash_script.core.set_location.call(null, cljs.reader.read_string.call(null, location)); }; goog.exportSymbol("uia.setLocation", uia.setLocation); uia.deactivate = uia.wrap_query_fn.call(null, calabash_script.core.deactivate); goog.exportSymbol("uia.deactivate", uia.deactivate); uia.logQuery = uia.wrap_query_fn.call(null, calabash_script.core.log_query); goog.exportSymbol("uia.logQuery", uia.logQuery); uia.logTreeQuery = uia.wrap_query_fn.call(null, calabash_script.core.log_tree_query); goog.exportSymbol("uia.logTreeQuery", uia.logTreeQuery); uia.logTreeMark = function logTreeMark(mark) { return calabash_script.core.log_tree_mark.call(null, mark); }; goog.exportSymbol("uia.logTreeMark", uia.logTreeMark); uia.waitForElementsReady = uia.wrap_query_fn.call(null, calabash_script.core.wait_for_elements_ready); goog.exportSymbol("uia.waitForElementsReady", uia.waitForElementsReady); uia.waitForMarkReady = function waitForMarkReady(wait_opts, mark) { return calabash_script.core.wait_for_mark_ready.call(null, cljs.reader.read_string.call(null, wait_opts), mark); }; goog.exportSymbol("uia.waitForMarkReady", uia.waitForMarkReady); uia.rotate = function rotate(dir) { return calabash_script.core.rotate.call(null, cljs.core.keyword.call(null, cljs.reader.read_string.call(null, dir))); }; goog.exportSymbol("uia.rotate", uia.rotate); uia.orientation = function orientation() { return "" + cljs.core.str.cljs$core$IFn$_invoke$arity$1(calabash_script.core.orientation.call(null)); }; goog.exportSymbol("uia.orientation", uia.orientation); goog.provide("calabash_script.ext"); goog.require("cljs.core");